Difference between revisions of "Patch card specific delay"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with "<font face='Courier New'> 000289d4: 3c018003 lui r1,0x8003 000289d8: ac3f29d0 sw r31,0x29d0(r1) 000289dc: 0c00880d jal 0x00022034 000289e0: 00000000 nop 000289e4: 240a0...")
 
 
(One intermediate revision by the same user not shown)
Line 3: Line 3:
 
  000289d4: 3c018003 lui r1,0x8003
 
  000289d4: 3c018003 lui r1,0x8003
 
  000289d8: ac3f29d0 sw r31,0x29d0(r1)
 
  000289d8: ac3f29d0 sw r31,0x29d0(r1)
  000289dc: 0c00880d jal 0x00022034
+
  000289dc: 0c00880d jal 0x00022034               [[Enter Critical Section]]
 
  000289e0: 00000000 nop
 
  000289e0: 00000000 nop
 
  000289e4: 240a00b0 addiu r10,r0,0x00b0
 
  000289e4: 240a00b0 addiu r10,r0,0x00b0
  000289e8: 0140f809 jalr r10,r31
+
  000289e8: 0140f809 jalr r10,r31                 get B0 address table
 
  000289ec: 24090057 addiu r9,r0,0x0057
 
  000289ec: 24090057 addiu r9,r0,0x0057
  000289f0: 8c42016c lw r2,0x016c(r2)
+
  000289f0: 8c42016c lw r2,0x016c(r2)              get 5B return address (change clear pad)
 
  000289f4: 3c0a8003 lui r10,0x8003
 
  000289f4: 3c0a8003 lui r10,0x8003
 
  000289f8: 3c098003 lui r9,0x8003
 
  000289f8: 3c098003 lui r9,0x8003
 
  000289fc: 8c4309c8 lw r3,0x09c8(r2)
 
  000289fc: 8c4309c8 lw r3,0x09c8(r2)
  00028a00: 254a89a4 addiu r10,r10,0x89a4
+
  00028a00: 254a89a4 addiu r10,r10,0x89a4         new instructions = 0x800389a4
  00028a04: 252989b8 addiu r9,r9,0x89b8
+
  00028a04: 252989b8 addiu r9,r9,0x89b8           new instructions end = 0x800389b8
  00028a08: 8c4309c8 lw r3,0x09c8(r2)
+
  00028a08: 8c4309c8 lw r3,0x09c8(r2)            
  00028a0c: 8d480000 lw r8,0x0000(r10)
+
  00028a0c: 8d480000 lw r8,0x0000(r10)             get new instruction
 
  00028a10: 254a0004 addiu r10,r10,0x0004
 
  00028a10: 254a0004 addiu r10,r10,0x0004
  00028a14: ad43fffc sw r3,-0x0004(r10)
+
  00028a14: ad43fffc sw r3,-0x0004(r10)           swaps data in r10 and change clear pad
 
  00028a18: 24420004 addiu r2,r2,0x0004
 
  00028a18: 24420004 addiu r2,r2,0x0004
  00028a1c: 1549fffa bne r10,r9,0x00028a08
+
  00028a1c: 1549fffa bne r10,r9,0x00028a08         loop until end of data
  00028a20: ac4809c4 sw r8,0x09c4(r2)
+
  00028a20: ac4809c4 sw r8,0x09c4(r2)             store in change clear pad
  00028a24: 0c0087c9 jal 0x00021f24
+
  00028a24: 0c0087c9 jal 0x00021f24               [[FlushCache]]
 
  00028a28: 00000000 nop
 
  00028a28: 00000000 nop
 
  00028a2c: 3c1f8003 lui r31,0x8003
 
  00028a2c: 3c1f8003 lui r31,0x8003

Latest revision as of 03:43, 17 July 2024

000289d4: 3c018003 lui r1,0x8003
000289d8: ac3f29d0 sw r31,0x29d0(r1)
000289dc: 0c00880d jal 0x00022034                Enter Critical Section
000289e0: 00000000 nop
000289e4: 240a00b0 addiu r10,r0,0x00b0
000289e8: 0140f809 jalr r10,r31                  get B0 address table
000289ec: 24090057 addiu r9,r0,0x0057
000289f0: 8c42016c lw r2,0x016c(r2)              get 5B return address (change clear pad)
000289f4: 3c0a8003 lui r10,0x8003
000289f8: 3c098003 lui r9,0x8003
000289fc: 8c4309c8 lw r3,0x09c8(r2)
00028a00: 254a89a4 addiu r10,r10,0x89a4          new instructions = 0x800389a4
00028a04: 252989b8 addiu r9,r9,0x89b8            new instructions end = 0x800389b8
00028a08: 8c4309c8 lw r3,0x09c8(r2)             
00028a0c: 8d480000 lw r8,0x0000(r10)             get new instruction
00028a10: 254a0004 addiu r10,r10,0x0004
00028a14: ad43fffc sw r3,-0x0004(r10)            swaps data in r10 and change clear pad
00028a18: 24420004 addiu r2,r2,0x0004
00028a1c: 1549fffa bne r10,r9,0x00028a08         loop until end of data
00028a20: ac4809c4 sw r8,0x09c4(r2)              store in change clear pad
00028a24: 0c0087c9 jal 0x00021f24                FlushCache
00028a28: 00000000 nop
00028a2c: 3c1f8003 lui r31,0x8003
00028a30: 8fff29d0 lw r31,0x29d0(r31)
00028a34: 00000000 nop
00028a38: 03e00008 jr r31
00028a3c: 00000000 nop