cpu_asm.c, mips_emit*.h: Link cross-block jumps via indirect branches instead of patching the native code. This slows down ROM access, however, which should be compiled eagerly with native code branch patching.

Unrelated changes:
* arm_guru_meditation.c: Dump the translation cache when the Guru Meditation screen appears. Dumps are made into {rom | ram | bios}_cache.bin at the root of the storage card. (DSTwo-specific)
cpu_asm.c, mips_emit*.h: Patch the native code address into branches targetting read-only code areas. (Branches towards writable code areas are still forced to be indirect.)

Unrelated changes:
* arm_guru_meditation.c, cpu_asm.c: Show recoverable error screens when the number of exits or instructions in a block exceeds the limits.
Merge branch 'master' into basic-blocks
cpu_asm.c: Compile shorter code blocks for GBA RAM lines. Also stop keeping track of branches internal to the blocks, ending them at the first unconditional branch.
arm_guru_meditation.c: Allow the recoverable error screens to be dismissed by pressing a key.
Merge branch 'master' into basic-blocks

Conflicts:
	source/nds/cpu_asm.c
Damn it, forgot to remove a conflict resolution tag.
Merge branch 'master' into basic-blocks
Detect more sound buffer underruns. (DSTwo-specific)
Merge branch 'master' into basic-blocks
In fast-forward mode, avoid loud pops by dampening large amplitude changes.
Release beta 11. (basic-blocks)
The ROM is mirrored 3 times. Add the mirrors to the list of read-only code addresses for fast linking.
Merge branch 'master' into basic-blocks