Difference between revisions of "P34 SetDrawMove"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with "<font face='Courier New'> 00023f70: 84a30004 lh r3,0x0004(r5) 00023f74: 84a20006 lh r2,0x0006(r5) 00023f78: 00000000 nop 00023f7c: 00620018 mult r3,r2 00023f80: 0000101...")
 
Line 2: Line 2:
 
   
 
   
 
  00023f70: 84a30004 lh r3,0x0004(r5)
 
  00023f70: 84a30004 lh r3,0x0004(r5)
  00023f74: 84a20006 lh r2,0x0006(r5)
+
  00023f74: 84a20006 lh r2,0x0006(r5)           # RECT format - XX and YY of vertex 1
 
  00023f78: 00000000 nop
 
  00023f78: 00000000 nop
 
  00023f7c: 00620018 mult r3,r2
 
  00023f7c: 00620018 mult r3,r2
  00023f80: 00001012 mflo r2
+
  00023f80: 00001012 mflo r2                    
  00023f84: 24420001 addiu r2,r2,0x0001
+
  00023f84: 24420001 addiu r2,r2,0x0001         # rounding
 
  00023f88: 00021fc2 srl r3,r2,0x1f
 
  00023f88: 00021fc2 srl r3,r2,0x1f
 
  00023f8c: 00431021 addu r2,r2,r3
 
  00023f8c: 00431021 addu r2,r2,r3
Line 13: Line 13:
 
  00023f98: 2442ffff addiu r2,r2,0xffff
 
  00023f98: 2442ffff addiu r2,r2,0xffff
 
  00023f9c: 2c42000b sltiu r2,r2,0x000b
 
  00023f9c: 2c42000b sltiu r2,r2,0x000b
  00023fa0: 14400002 bne r2,r0,0x00023fac
+
  00023fa0: 14400002 bne r2,r0,0x00023fac       # branch if rectangle exists
 
  00023fa4: 3c020100 lui r2,0x0100
 
  00023fa4: 3c020100 lui r2,0x0100
  00023fa8: 00001821 addu r3,r0,r0
+
  00023fa8: 00001821 addu r3,r0,r0               # if no rectangle, store 0
  00023fac: ac820004 sw r2,0x0004(r4)
+
  00023fac: ac820004 sw r2,0x0004(r4)           # gpu(01) clear cache
 
  00023fb0: 3c02a000 lui r2,0xa000
 
  00023fb0: 3c02a000 lui r2,0xa000
 
  00023fb4: a0830003 sb r3,0x0003(r4)
 
  00023fb4: a0830003 sb r3,0x0003(r4)
Line 23: Line 23:
 
  00023fc0: 00000000 nop
 
  00023fc0: 00000000 nop
 
  00023fc4: ac82000c sw r2,0x000c(r4)
 
  00023fc4: ac82000c sw r2,0x000c(r4)
  00023fc8: 8ca20004 lw r2,0x0004(r5)
+
  00023fc8: 8ca20004 lw r2,0x0004(r5)           # ! contains gpu command for rectangle being moved
 
  00023fcc: 03e00008 jr r31
 
  00023fcc: 03e00008 jr r31
  00023fd0: ac820010 sw r2,0x0010(r4)
+
  00023fd0: ac820010 sw r2,0x0010(r4)            # move rectangle data from r5 -> r4 (new rectangle pos)
 
</font>
 
</font>

Revision as of 08:53, 26 June 2023

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)