Difference between revisions of "Spread Move to North Preset"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with "<font face='Courier New'> 001754f4: 3c038019 lui r3,0x8019 001754f8: 8c63f4e4 lw r3,-0x0b1c(r3) 001754fc: 34020001 ori r2,r0,0x0001 00175500: a462003c sh r2,0x003c(r3) ...")
 
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
<font face='Courier New'>
+
BATTLE.BIN : Spread Move to North Preset
 +
-------------------------------------------------------------------------------------------------------
 +
Parameters : Nothing
 
   
 
   
  001754f4: 3c038019 lui r3,0x8019
+
Returns : Nothing
  001754f8: 8c63f4e4 lw r3,-0x0b1c(r3)
+
  001754fc: 34020001 ori r2,r0,0x0001
+
Set some data in Scratch Pad at [[1f800180|<span style="color:blue">'''0x1f800180'''</span>]]) (refered as 0x180)
  00175500: a462003c sh r2,0x003c(r3)
+
Used to Spread pathfinding around a tile (4 different routines)
  00175504: 34020006 ori r2,r0,0x0006
+
    - Set Spreading Tile X and Y
  00175508: a0620044 sb r2,0x0044(r3)
+
    - Set Entry and Exit sides slope mod
  0017550c: 34020004 ori r2,r0,0x0004
+
Note : The slope mod will be used to shift slope type so the wanted side (entry or exit) flags will be 0x1 and 0x2
  00175510: a460003a sh r0,0x003a(r3)
+
        This value will be used to multiply the halves to get the Side Effective height (see [[Slope_Type|<span style="color:blue">'''Slope Type'''</span>)]]
  00175514: 03e00008 jr r31
+
          0x00 (low side) --> No halves
  00175518: a0620045 sb r2,0x0045(r3)
+
          0x01 (egde) --> Halves * 1
</font>
+
          0x11 (High side) --> Halves * 2
 +
---------------------------------------------------------------------------------------------------------
 +
  001754f4: 3c038019 lui r3,0x8019           |
 +
  001754f8: 8c63f4e4 lw r3,-0x0b1c(r3)       |{{f/adr|Pointer to Scratch Pad (0x1f800180)}} {{f/adr|North}}
 +
  001754fc: 34020001 ori r2,r0,0x0001         |
 +
  00175500: a462003c sh r2,0x003c(r3)         |{{f/store|<nowiki>Spreading Tile Y mod = 0x01</nowiki>}}
 +
  00175504: 34020006 ori r2,r0,0x0006         |
 +
  00175508: a0620044 sb r2,0x0044(r3)         |{{f/store|<nowiki>Origin Exit Side Slope Mod  (6 = North)</nowiki>}}
 +
  0017550c: 34020004 ori r2,r0,0x0004         |
 +
  00175510: a460003a sh r0,0x003a(r3)         |{{f/store|<nowiki>Spreading Tile X mod = 0x0</nowiki>}}
 +
  00175514: 03e00008 jr r31                   |
 +
  00175518: a0620045 sb r2,0x0045(r3)         |{{f/store|<nowiki>Destination Entry Side Slope Mod  (4 = South)</nowiki>}}
 +
 
 +
=== Return Locations ===
 +
'''BATTLE.BIN'''
 +
00175f18 : [[00175ea0_-_00175fa0]] (Via Jalr) - Address is at 8018f500 - 0x04
 +
00176558 : [[001764d8_-_001766b0]] (Via Jalr) - idem

Latest revision as of 19:24, 29 May 2023

BATTLE.BIN : Spread Move to North Preset
-------------------------------------------------------------------------------------------------------
Parameters : Nothing

Returns : Nothing

Set some data in Scratch Pad at 0x1f800180) (refered as 0x180)
Used to Spread pathfinding around a tile (4 different routines)
    - Set Spreading Tile X and Y
    - Set Entry and Exit sides slope mod
Note : The slope mod will be used to shift slope type so the wanted side (entry or exit) flags will be 0x1 and 0x2
       This value will be used to multiply the halves to get the Side Effective height (see Slope Type)
         0x00 (low side) --> No halves
         0x01 (egde) --> Halves * 1
         0x11 (High side) --> Halves * 2
---------------------------------------------------------------------------------------------------------
001754f4: 3c038019 lui r3,0x8019            |
001754f8: 8c63f4e4 lw r3,-0x0b1c(r3)        |Pointer to Scratch Pad (0x1f800180) North
001754fc: 34020001 ori r2,r0,0x0001         |
00175500: a462003c sh r2,0x003c(r3)         |Spreading Tile Y mod = 0x01
00175504: 34020006 ori r2,r0,0x0006         |
00175508: a0620044 sb r2,0x0044(r3)         |Origin Exit Side Slope Mod  (6 = North)
0017550c: 34020004 ori r2,r0,0x0004         |
00175510: a460003a sh r0,0x003a(r3)         |Spreading Tile X mod = 0x0
00175514: 03e00008 jr r31                   |
00175518: a0620045 sb r2,0x0045(r3)         |Destination Entry Side Slope Mod  (4 = South)

Return Locations

BATTLE.BIN
00175f18 : 00175ea0_-_00175fa0 (Via Jalr) - Address is at 8018f500 - 0x04
00176558 : 001764d8_-_001766b0 (Via Jalr) - idem