Skip to content

toki: dma / sprite info #14635

@jwestfall69

Description

@jwestfall69

Hi

I've been working on seibu/toki hardware an wanted to report a few findings.

The board has 2 x 32k bit ram chips that house work ram + palette + tile + sprite data. There are 2 addresses when written to, will trigger dma copies of that data. Not sure where it goes because of all the custom chips on the board,

0x0a0040 - tiles and palette gets copied
0x0a0048 - sprite data gets copied

The game's interrupt handler does the first one every time, while the 2nd only happens if a flag is set

 00053E  movem.l D0-D7/A0-A7, -(A7)                          48E7 FFFF
 000542  addq.w  #1, $6086a.l                                5279 0006 086A
 000548  move.w  D0, $a0040.l                                33C0 000A 0040 <---
 00054E  nop                                                 4E71
 000550  nop                                                 4E71
 000552  nop                                                 4E71
 000554  nop                                                 4E71
 000556  btst    #$6, $60025.l                               0839 0006 0006 0025
 00055E  beq     $56e                                        670E
 000560  move.w  D0, $a0048.l                                33C0 000A 0048 <---
 000566  nop                                                 4E71
 000568  nop                                                 4E71
 00056A  nop                                                 4E71
 00056C  nop                                                 4E71
 00056E  jsr     $64c0.l                                     4EB9 0000 64C0
 000574  move.w  $60028.l, $a0050.l                          33F9 0006 0028 000A 0050
 00057E  move.w  $6002e.l, $a0018.l                          33F9 0006 002E 000A 0018
 000588  move.w  $60030.l, $a0038.l                          33F9 0006 0030 000A 0038
...

Additionally I found the hardware supports flip y on sprites. Its bit 1 of the first byte (next to flip x) in the sprite.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions