H/W decoder
From wiki.gp2x.org
Address | Size | R/W | Reset Value | Init Value | Run Value | Values written by 940 | Comments | |
C000 | 4000 | 16-bit | r/w | 0 | 0 | 0 | $1420 | status seems to be in bit 0 |
C000 | 4002 | 16-bit | w | 0 | 1 | 1 | $0 | |
C000 | 4004 | 16-bit | w | 1 | 0 | 0 | $0 | |
C000 | 4006 | 16-bit | r | 0 | e13 | e13 | ||
C000 | 4020 | 16-bit | w | 0 | 0 | 2F0 | $110 | Macroblock params? |
C000 | 4022 | 16-bit | w | 0 | 0 | 0 | $0 | |
C000 | 4024 | 16-bit | w | 5828 | 0 | 0 | $0 | Something really weird happens with these two registers |
C000 | 4026 | 16-bit | w | 0 | 0 | 0 | $5,$A,$10,$61,$E0,$160,$264 … | Something really weird happens with these two registers, possibly a FIFO |
C000 | 404E | 16-bit | rw | 0 | 0 | 0 | ? | 404e and 4050 are written together |
C000 | 4050 | 16-bit | w | 0 | 0 | 0 | ? | 404e and 4050 are written together |
C000 | 4082 | 16-bit | w | 0 | 0 | 0 | $400 | |
C000 | 4084 | 16-bit | w | 1008 | 1008 | 1008 | $d | |
C000 | 4086 | 16-bit | w | 0 | 0 | 0 | $4000 | |
C000 | 4088 | 16-bit | w | 88 | 88 | 88 | $10 | |
C000 | 408C | 16-bit | w | 0 | 220 | 220 | ? | High 16-bit bits for quantizer matrix data save? |
C000 | 408E | 16-bit | w | 0 | 0 | 0 | ? | Low 16-bits |
C000 | 4096 | 16-bit | w | 0 | 0 | 228 | ? | High 16-bit bits of RL buffer |
C000 | 4098 | 16-bit | w | 0 | 0 | 0 | ? | Low 16-bits of RL buffer |
C000 | 409A | 16-bit | w | 0 | 230 | 230 | ? | High 16-bits for mpeg4 h/w blocks line buffer |
C000 | 409C | 16-bit | w | 0 | 0 | 0 | $F | Low 16-bits |
C000 | 4120 | 16-bit | w | c2 | c2 | cc2 | ||
C000 | 4124 | 16-bit | w | 0 | 0 | 240 | $180 | Luma offset |
C000 | 4126 | 16-bit | w | 0 | 0 | 244 | $188 | CB Offset |
C000 | 4128 | 16-bit | w | 0 | 0 | 246 | $18C | CR Offset |
C000 | 4144 | 16-bit | rw | 40 | 40 | 40 | $1B0 | 4144, 4146 and 4148 are swapped with 4124, 4126 and 4128 |
C000 | 4146 | 16-bit | rw | 50 | 50 | 50 | $1B8 | maybe some kind of double buffering? |
C000 | 4148 | 16-bit | rw | 60 | 60 | 60 | $1BC | |
C000 | 414A | 16-bit | w | 70 | 70 | 70 | these three are written together | |
C000 | 414C | 16-bit | w | 80 | 80 | 80 | these three are written together | |
C000 | 414E | 16-bit | w | 90 | 90 | 90 | these three are written together | |
C000 | 4154 | 16-bit | w | 32 | 32 | 32 | ||
C000 | 4156 | 16-bit | w | 0 | 0 | 0 | $0 | |
C000 | 4158 | 16-bit | w | 0 | 0 | 0 | Something really weird happens with these two registers | |
C000 | 415A | 16-bit | w | 0 | 0 | 0 | Something really weird happens with these two registers |