P34 SetDrawMove

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search

00023f70: 84a30004 lh r3,0x0004(r5)
00023f74: 84a20006 lh r2,0x0006(r5)            # RECT format - XX and YY of vertex 1
00023f78: 00000000 nop
00023f7c: 00620018 mult r3,r2
00023f80: 00001012 mflo r2                     
00023f84: 24420001 addiu r2,r2,0x0001          # rounding
00023f88: 00021fc2 srl r3,r2,0x1f
00023f8c: 00431021 addu r2,r2,r3
00023f90: 00021043 sra r2,r2,0x01
00023f94: 24430004 addiu r3,r2,0x0004
00023f98: 2442ffff addiu r2,r2,0xffff
00023f9c: 2c42000b sltiu r2,r2,0x000b
00023fa0: 14400002 bne r2,r0,0x00023fac        # branch if rectangle exists
00023fa4: 3c020100 lui r2,0x0100
00023fa8: 00001821 addu r3,r0,r0               # if no rectangle, store 0
00023fac: ac820004 sw r2,0x0004(r4)            # gpu(01) clear cache
00023fb0: 3c02a000 lui r2,0xa000
00023fb4: a0830003 sb r3,0x0003(r4)
00023fb8: ac820008 sw r2,0x0008(r4)
00023fbc: 8ca20000 lw r2,0x0000(r5)
00023fc0: 00000000 nop
00023fc4: ac82000c sw r2,0x000c(r4)
00023fc8: 8ca20004 lw r2,0x0004(r5)            # ! contains gpu command for rectangle being moved
00023fcc: 03e00008 jr r31
00023fd0: ac820010 sw r2,0x0010(r4)            # move rectangle data from r5 -> r4 (new rectangle pos)