Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Manatee is a SEGA Dreamcast sound program (for the ARM7) that seems to be present in many Dreamcast games.
- These notes are based on the version of manatee included in Hanagumi Taisen Columns 2.
- The SH4 communicates with manatee by transferring commands over DMA to the driver.
- Each command packet is 16 bytes long, and there can be up to 32 of them.
- The first packet is located at 0x12200.
- The SH4 does not have to use all 32 packets. A packet is only considered valid if the first byte is nonzero.
- When the ARM7 has processed a packet, the first byte will be cleared so that it is not processed again.
- This code loops through all 32 DMA packets and conditionally processes each packet if the first byte is non-zero.
- 0x00007234: ldr sl, [pc, #0x2b4]
- 0x00007238: mov fp, #0x20
- 0x0000723c: ldrb r0, [sl]
- 0x00007240: cmp r0, #0
- 0x00007244: push {sl, fp, lr}
- 0x00007248: blne #0x72bc
- 0x0000724c: pop {sl, fp, lr}
- 0x00007250: ldr r1, [pc, #0x60]
- 0x00007254: strb r0, [r1, #1]
- 0x00007258: mov r0, #0
- 0x0000725c: strb r0, [sl]
- 0x00007260: add sl, sl, #0x10
- 0x00007264: subs fp, fp, #1
- 0x00007268: bne #0x723c
Add Comment
Please, Sign In to add comment