Difference between revisions of "Data Nullifying"
Jump to navigation
Jump to search
(Created page with " Data Nullifying (requires r5 = Limit, and r4 = Starting location) 0005e644: 27bdfff8 addiu r29,r29,0xfff8 0005e648: 18a00006 blez r5,0x0005e664 Branch if r5 <= 0 0005e64c...") |
|||
(4 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | Data Nullifying | + | Data Nullifying |
− | 0005e644: 27bdfff8 addiu r29,r29,0xfff8 | + | Needs : r4 = starting address |
− | 0005e648: 18a00006 blez r5,0x0005e664 | + | r5 = number of bytes to nullify |
− | 0005e64c: 00001821 addu r3,r0,r0 | + | ------------------------------------------------- |
− | 0005e650: a0800000 sb r0,0x0000(r4) | + | 0005e644: 27bdfff8 addiu r29,r29,0xfff8 |
− | 0005e654: 24630001 addiu r3,r3,0x0001 | + | 0005e648: 18a00006 blez r5,0x0005e664 {{f/Cond|<nowiki>If number of bytes to nullify is > 0</nowiki>}} /Else branch to end |
− | 0005e658: 0065102a slt r2,r3,r5 | + | 0005e64c: 00001821 addu r3,r0,r0 |{{f/std|<nowiki>r3 = 0 (Loop counter)</nowiki>}} |
− | 0005e65c: 1440fffc bne r2,r0,0x0005e650 | + | 0005e650: a0800000 sb r0,0x0000(r4) {{f/bloop|<nowiki>LOOP</nowiki>}} {{f/store|<nowiki>Store 0x00 at starting address + counter offset</nowiki>}} |
− | 0005e660: 24840001 addiu r4,r4,0x0001 | + | 0005e654: 24630001 addiu r3,r3,0x0001 |{{f/std|<nowiki>Loop counter +1</nowiki>}} |
− | 0005e664: 27bd0008 addiu r29,r29,0x0008 | + | 0005e658: 0065102a slt r2,r3,r5 |{{f/std|<nowiki>r2 = 0x01 while counter < number of bytes to nullify</nowiki>}} |
− | 0005e668: 03e00008 jr r31 | + | 0005e65c: 1440fffc bne r2,r0,0x0005e650 {{f/eloop|<nowiki> Loop while counter < number of byte to delete</nowiki>}} |
− | 0005e66c: 00000000 nop | + | 0005e660: 24840001 addiu r4,r4,0x0001 |{{f/std|<nowiki>r4 = Adress nullified + 0x01</nowiki>}} |
+ | 0005e664: 27bd0008 addiu r29,r29,0x0008 |End | ||
+ | 0005e668: 03e00008 jr r31 | ||
+ | 0005e66c: 00000000 nop | ||
+ | |||
+ | === Return Locations === | ||
+ | '''SCUS_942.21''' | ||
+ | 00059864: [[Initialize Status Check Data]] | ||
+ | 00059874: | ||
+ | 0005a170: [[Out of Battle Unit Generation]] | ||
+ | 0005a194: | ||
+ | 0005b294: [[Initialize Unit's Battle Data]] | ||
+ | 0005b2d0: | ||
+ | 0005b7bc: [[Enable Unit's R/S/M Flags]] | ||
+ | 0005babc: [[Calculate Unit's Abilities]] | ||
+ | 0005bb24: | ||
+ | 0005c3ac: [[Equippable Item Setting (Support/Female-only)]] | ||
+ | 0005c5ec: [[Equipment Attribute Setting]] | ||
+ | 0005cb98: [[Store/Generate Character Names]] | ||
+ | 0005d484: [[Nullify CT/Initialize Death Counter]] | ||
+ | |||
+ | '''Battle.bin''' | ||
+ | 00180674: [[Generate Crystal or Treasure]] | ||
+ | 00180fb0: [[Check Sprite Set]] (Base Class) | ||
+ | 00180fbc: | ||
+ | 00185310: [[Concentrate Calculation]] | ||
+ | 00185468: [[Evasion Changes due to Statuses]] | ||
+ | 001854e4: [[Transparent Calculation]] | ||
+ | 0018b7c0: [[Pre Formula Setup (FDC)]] | ||
+ | 0018bd84: [[Current Action Data Nulling]] | ||
+ | 0018bd90: [[Current Action Data Nulling]] | ||
+ | 0018bd9c: [[Current Action Data Nulling]] |
Latest revision as of 19:26, 21 March 2022
Data Nullifying Needs : r4 = starting address r5 = number of bytes to nullify ------------------------------------------------- 0005e644: 27bdfff8 addiu r29,r29,0xfff8 0005e648: 18a00006 blez r5,0x0005e664 #If number of bytes to nullify is > 0 /Else branch to end 0005e64c: 00001821 addu r3,r0,r0 |r3 = 0 (Loop counter) 0005e650: a0800000 sb r0,0x0000(r4) @LOOP Store 0x00 at starting address + counter offset 0005e654: 24630001 addiu r3,r3,0x0001 |Loop counter +1 0005e658: 0065102a slt r2,r3,r5 |r2 = 0x01 while counter < number of bytes to nullify 0005e65c: 1440fffc bne r2,r0,0x0005e650 Λ Loop while counter < number of byte to delete 0005e660: 24840001 addiu r4,r4,0x0001 |r4 = Adress nullified + 0x01 0005e664: 27bd0008 addiu r29,r29,0x0008 |End 0005e668: 03e00008 jr r31 0005e66c: 00000000 nop
Return Locations
SCUS_942.21 00059864: Initialize Status Check Data 00059874: 0005a170: Out of Battle Unit Generation 0005a194: 0005b294: Initialize Unit's Battle Data 0005b2d0: 0005b7bc: Enable Unit's R/S/M Flags 0005babc: Calculate Unit's Abilities 0005bb24: 0005c3ac: Equippable Item Setting (Support/Female-only) 0005c5ec: Equipment Attribute Setting 0005cb98: Store/Generate Character Names 0005d484: Nullify CT/Initialize Death Counter Battle.bin 00180674: Generate Crystal or Treasure 00180fb0: Check Sprite Set (Base Class) 00180fbc: 00185310: Concentrate Calculation 00185468: Evasion Changes due to Statuses 001854e4: Transparent Calculation 0018b7c0: Pre Formula Setup (FDC) 0018bd84: Current Action Data Nulling 0018bd90: Current Action Data Nulling 0018bd9c: Current Action Data Nulling