cpu/sh4: make DMAC run as soon as it is requested.

This is required by SGNASCAR. Now SGNASCAR uploads a sane CP program, and
attract mode kind of works (except for indirect mesh rendering and some other
issues).

What happens is that SGNASCAR uses an evil loop to copy stuff -- textures,
models, CP commands -- from the MASKROM to master RAM, slave RAM, and CMDRAM.
At some point, SGNASCAR issues an *async* DMAC operation, which requires the
02xxxxxx aperture to point to some MASKROM bank, and immediately after that it
reprograms the 02xxxxxx aperture to point to another bank and issues a MEMCTL
DMA operation. If the DMAC doesn't end quickly enough, it will end up reading
from the wrong MASKROM bank and transfer garbage to CMDRAM.
hikaru/gpu: implement stub for command 005.

It is heavily used in SGNASCAR.
hikaru/gpu: use insn size encoded in the opcode itself.
hikaru/renderer: don't use glDepthFunc() yet.

SGNASCAR uses depth function 7, which at the moment equates to GL_NEVER, which
in attract mode prevents most geometry to be rendered. Ouch.
hikaru/gpu: adapt 021 and 221 for SGNASCAR.
hikaru/gpu: annotate unknown bits in 052 and 082.

Used by SGNASCAR.