Difference between revisions of "Store Coordinate,Mount,Animation Data"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with "<font face='Courier New'> 0006bbfc: 27bdffe0 addiu r29,r29,0xffe0 0006bc00: afb00018 sw r16,0x0018(r29) 0006bc04: 00808021 addu r16,r4,r0 0006bc08: afbf001c sw r31,0x001...")
 
Line 1: Line 1:
 
<font face='Courier New'>
 
<font face='Courier New'>
 +
Store Coordinate,Mount,Animation Data 6bbfc: [[0006bbfc - 0006bce0]]
 
   
 
   
  0006bbfc: 27bdffe0 addiu r29,r29,0xffe0
+
0017fddc: [[Set Rider/Mount's X/Y Data]]
  0006bc00: afb00018 sw r16,0x0018(r29)
+
0007a6e4: [[Find Current Misc Unit Data Pointer (external ID)?]]
 +
0017fddc: [[Set Rider/Mount's X/Y Data]]
 +
00081b0c: [[Store some coordinate data]]
 +
0007d3f4: [[0007d3f4 - 0007d474]]
 +
000683e4: [[Transfer Unit's X/Y/Map Level]]
 +
00082eec: [[Set Animation based on status]]
 +
 +
  0006bbfc: 27bdffe0 addiu r29,r29,0xffe0
 +
  0006bc00: afb00018 sw r16,0x0018(r29) Store 0x0 onto Stack
 
  0006bc04: 00808021 addu r16,r4,r0
 
  0006bc04: 00808021 addu r16,r4,r0
  0006bc08: afbf001c sw r31,0x001c(r29)
+
  0006bc08: afbf001c sw r31,0x001c(r29) Store 0x0 onto Stack
  0006bc0c: 8e040134 lw r4,0x0134(r16)
+
  0006bc0c: 8e040134 lw r4,0x0134(r16) Load Pointer to Unit's Data
 
  0006bc10: 00000000 nop
 
  0006bc10: 00000000 nop
  0006bc14: 10800025 beq r4,r0,0x0006bcac
+
  0006bc14: 10800025 beq r4,r0,0x0006bcac Branch if Pointer to Unit's Data,  == 0x0
 
  0006bc18: 00000000 nop
 
  0006bc18: 00000000 nop
  0006bc1c: 86020070 lh r2,0x0070(r16)
+
  0006bc1c: 86020070 lh r2,0x0070(r16) Load Current Facing? (/ 0x400 = facing)
  0006bc20: 9084018a lbu r4,0x018a(r4)
+
  0006bc20: 9084018a lbu r4,0x018a(r4) Load Pointer to Unit's Data
  0006bc24: 9205007c lbu r5,0x007c(r16)
+
  0006bc24: 9205007c lbu r5,0x007c(r16) Load Unit's X Coordinate initialized to ENTD (current location?)
  0006bc28: 9206007d lbu r6,0x007d(r16)
+
  0006bc28: 9206007d lbu r6,0x007d(r16) Load Unit's Y Coordinate
  0006bc2c: 9207007e lbu r7,0x007e(r16)
+
  0006bc2c: 9207007e lbu r7,0x007e(r16) Load Unit's Map Level (0 = Floor 1, 1 = Floor 2)
 
  0006bc30: 04410002 bgez r2,0x0006bc3c
 
  0006bc30: 04410002 bgez r2,0x0006bc3c
 
  0006bc34: 00000000 nop
 
  0006bc34: 00000000 nop
 
  0006bc38: 244203ff addiu r2,r2,0x03ff
 
  0006bc38: 244203ff addiu r2,r2,0x03ff
  0006bc3c: 00021282 srl r2,r2,0x0a
+
  0006bc3c: 00021282 srl r2,r2,0x0a Shift right 10 bits (/0x400) (/1024)r2 = 0x3FF >> A * 0xA (10)
  0006bc40: 304200ff andi r2,r2,0x00ff
+
  0006bc40: 304200ff andi r2,r2,0x00ff Mask second byte
  0006bc44: 0c05ff77 jal 0x0017fddc
+
  0006bc44: 0c05ff77 jal 0x0017fddc [[Set Rider/Mount's X/Y Data]]
  0006bc48: afa20010 sw r2,0x0010(r29)
+
  0006bc48: afa20010 sw r2,0x0010(r29) Store 0x3FF >> A onto Stack
  0006bc4c: 92020130 lbu r2,0x0130(r16)
+
  0006bc4c: 92020130 lbu r2,0x0130(r16) Load Mount/Rider Value
 
  0006bc50: 00000000 nop
 
  0006bc50: 00000000 nop
  0006bc54: 10400015 beq r2,r0,0x0006bcac
+
  0006bc54: 10400015 beq r2,r0,0x0006bcac Branch if Mount/Rider Value == 0x0
 
  0006bc58: 00000000 nop
 
  0006bc58: 00000000 nop
  0006bc5c: 92040004 lbu r4,0x0004(r16)
+
  0006bc5c: 92040004 lbu r4,0x0004(r16) Load Unit Misc ID?
  0006bc60: 0c01e9b9 jal 0x0007a6e4
+
  0006bc60: 0c01e9b9 jal 0x0007a6e4 [[Find Current Misc Unit Data Pointer (external ID)?]]
 
  0006bc64: 00000000 nop
 
  0006bc64: 00000000 nop
  0006bc68: 8e030134 lw r3,0x0134(r16)
+
  0006bc68: 8e030134 lw r3,0x0134(r16) Load Pointer to Unit's Data
 
  0006bc6c: 00000000 nop
 
  0006bc6c: 00000000 nop
  0006bc70: 1060000e beq r3,r0,0x0006bcac
+
  0006bc70: 1060000e beq r3,r0,0x0006bcac Branch if Pointer to Unit's Data,  == 0x0
 
  0006bc74: 00000000 nop
 
  0006bc74: 00000000 nop
  0006bc78: 8c420134 lw r2,0x0134(r2)
+
  0006bc78: 8c420134 lw r2,0x0134(r2) Load Pointer to Unit's Data
  0006bc7c: 86030070 lh r3,0x0070(r16)
+
  0006bc7c: 86030070 lh r3,0x0070(r16) Load Current Facing? (/ 0x400 = facing)
  0006bc80: 9205007c lbu r5,0x007c(r16)
+
  0006bc80: 9205007c lbu r5,0x007c(r16) Load Unit's X Coordinate initialized to ENTD (current location?)
  0006bc84: 9206007d lbu r6,0x007d(r16)
+
  0006bc84: 9206007d lbu r6,0x007d(r16) Load Unit's Y Coordinate
  0006bc88: 9207007e lbu r7,0x007e(r16)
+
  0006bc88: 9207007e lbu r7,0x007e(r16) Load Unit's Map Level (0 = Floor 1, 1 = Floor 2)
  0006bc8c: 9044018a lbu r4,0x018a(r2)
+
  0006bc8c: 9044018a lbu r4,0x018a(r2) Load Unit Misc ID?
 
  0006bc90: 04610003 bgez r3,0x0006bca0
 
  0006bc90: 04610003 bgez r3,0x0006bca0
  0006bc94: 00031282 srl r2,r3,0x0a
+
  0006bc94: 00031282 srl r2,r3,0x0a Shift right 10 bits (/0x400) (/1024)r2 = Current Facing? (/ 0x400 = facing),  * 0xA (10)
 
  0006bc98: 246303ff addiu r3,r3,0x03ff
 
  0006bc98: 246303ff addiu r3,r3,0x03ff
  0006bc9c: 00031282 srl r2,r3,0x0a
+
  0006bc9c: 00031282 srl r2,r3,0x0a Shift right 10 bits (/0x400) (/1024)r2 = 0x3FF * 0xA (10)
  0006bca0: 304200ff andi r2,r2,0x00ff
+
  0006bca0: 304200ff andi r2,r2,0x00ff Mask second byte
  0006bca4: 0c05ff77 jal 0x0017fddc
+
  0006bca4: 0c05ff77 jal 0x0017fddc [[Set Rider/Mount's X/Y Data]]
  0006bca8: afa20010 sw r2,0x0010(r29)
+
  0006bca8: afa20010 sw r2,0x0010(r29) Store 0x3FF >> A onto Stack
  0006bcac: 0c0206c3 jal 0x00081b0c
+
  0006bcac: 0c0206c3 jal 0x00081b0c [[Store some coordinate data]]
 
  0006bcb0: 02002021 addu r4,r16,r0
 
  0006bcb0: 02002021 addu r4,r16,r0
  0006bcb4: 0c01f4fd jal 0x0007d3f4
+
  0006bcb4: 0c01f4fd jal 0x0007d3f4 [[0007d3f4 - 0007d474]]
 
  0006bcb8: 02002021 addu r4,r16,r0
 
  0006bcb8: 02002021 addu r4,r16,r0
  0006bcbc: 0c01a0f9 jal 0x000683e4
+
  0006bcbc: 0c01a0f9 jal 0x000683e4 [[Transfer Unit's X/Y/Map Level]]
 
  0006bcc0: 02002021 addu r4,r16,r0
 
  0006bcc0: 02002021 addu r4,r16,r0
  0006bcc4: a200009c sb r0,0x009c(r16)
+
  0006bcc4: a200009c sb r0,0x009c(r16) Store Use 0x9d - 0x9f coordinates for initialization?
  0006bcc8: 0c020bbb jal 0x00082eec
+
  0006bcc8: 0c020bbb jal 0x00082eec [[Set Animation based on status]]
 
  0006bccc: 02002021 addu r4,r16,r0
 
  0006bccc: 02002021 addu r4,r16,r0
  0006bcd0: 8fbf001c lw r31,0x001c(r29)
+
  0006bcd0: 8fbf001c lw r31,0x001c(r29) Load Stack + 0x1C
  0006bcd4: 8fb00018 lw r16,0x0018(r29)
+
  0006bcd4: 8fb00018 lw r16,0x0018(r29) Load Stack + 0x18
  0006bcd8: 27bd0020 addiu r29,r29,0x0020
+
  0006bcd8: 27bd0020 addiu r29,r29,0x0020
  0006bcdc: 03e00008 jr r31
+
  0006bcdc: 03e00008 jr r31 Jump to Address
 
  0006bce0: 00000000 nop
 
  0006bce0: 00000000 nop
</font>
+
 +
 +
</font>

Revision as of 20:46, 12 February 2015

Store Coordinate,Mount,Animation Data 6bbfc: 0006bbfc - 0006bce0

	0017fddc: Set Rider/Mount's X/Y Data
	0007a6e4: Find Current Misc Unit Data Pointer (external ID)?
	0017fddc: Set Rider/Mount's X/Y Data
	00081b0c: Store some coordinate data
	0007d3f4: 0007d3f4 - 0007d474
	000683e4: Transfer Unit's X/Y/Map Level
	00082eec: Set Animation based on status

0006bbfc: 27bdffe0 addiu r29,r29,0xffe0			
0006bc00: afb00018 sw r16,0x0018(r29)			Store 0x0 onto Stack
0006bc04: 00808021 addu r16,r4,r0
0006bc08: afbf001c sw r31,0x001c(r29)			Store 0x0 onto Stack
0006bc0c: 8e040134 lw r4,0x0134(r16)			Load Pointer to Unit's Data
0006bc10: 00000000 nop
0006bc14: 10800025 beq r4,r0,0x0006bcac			Branch if Pointer to Unit's Data,  == 0x0
0006bc18: 00000000 nop
0006bc1c: 86020070 lh r2,0x0070(r16)			Load Current Facing? (/ 0x400 = facing)
0006bc20: 9084018a lbu r4,0x018a(r4)			Load Pointer to Unit's Data
0006bc24: 9205007c lbu r5,0x007c(r16)			Load Unit's X Coordinate initialized to ENTD (current location?)
0006bc28: 9206007d lbu r6,0x007d(r16)			Load Unit's Y Coordinate
0006bc2c: 9207007e lbu r7,0x007e(r16)			Load Unit's Map Level (0 = Floor 1, 1 = Floor 2)
0006bc30: 04410002 bgez r2,0x0006bc3c
0006bc34: 00000000 nop
0006bc38: 244203ff addiu r2,r2,0x03ff
0006bc3c: 00021282 srl r2,r2,0x0a			Shift right 10 bits (/0x400) (/1024)r2 = 0x3FF >> A * 0xA (10)
0006bc40: 304200ff andi r2,r2,0x00ff			Mask second byte
0006bc44: 0c05ff77 jal 0x0017fddc			Set Rider/Mount's X/Y Data
0006bc48: afa20010 sw r2,0x0010(r29)			Store 0x3FF >> A onto Stack
0006bc4c: 92020130 lbu r2,0x0130(r16)			Load Mount/Rider Value
0006bc50: 00000000 nop
0006bc54: 10400015 beq r2,r0,0x0006bcac			Branch if Mount/Rider Value == 0x0
0006bc58: 00000000 nop
0006bc5c: 92040004 lbu r4,0x0004(r16)			Load Unit Misc ID?
0006bc60: 0c01e9b9 jal 0x0007a6e4			Find Current Misc Unit Data Pointer (external ID)?
0006bc64: 00000000 nop
0006bc68: 8e030134 lw r3,0x0134(r16)			Load Pointer to Unit's Data
0006bc6c: 00000000 nop
0006bc70: 1060000e beq r3,r0,0x0006bcac			Branch if Pointer to Unit's Data,  == 0x0
0006bc74: 00000000 nop
0006bc78: 8c420134 lw r2,0x0134(r2)			Load Pointer to Unit's Data
0006bc7c: 86030070 lh r3,0x0070(r16)			Load Current Facing? (/ 0x400 = facing)
0006bc80: 9205007c lbu r5,0x007c(r16)			Load Unit's X Coordinate initialized to ENTD (current location?)
0006bc84: 9206007d lbu r6,0x007d(r16)			Load Unit's Y Coordinate
0006bc88: 9207007e lbu r7,0x007e(r16)			Load Unit's Map Level (0 = Floor 1, 1 = Floor 2)
0006bc8c: 9044018a lbu r4,0x018a(r2)			Load Unit Misc ID?
0006bc90: 04610003 bgez r3,0x0006bca0
0006bc94: 00031282 srl r2,r3,0x0a			Shift right 10 bits (/0x400) (/1024)r2 = Current Facing? (/ 0x400 = facing),  * 0xA (10)
0006bc98: 246303ff addiu r3,r3,0x03ff
0006bc9c: 00031282 srl r2,r3,0x0a			Shift right 10 bits (/0x400) (/1024)r2 = 0x3FF * 0xA (10)
0006bca0: 304200ff andi r2,r2,0x00ff			Mask second byte
0006bca4: 0c05ff77 jal 0x0017fddc			Set Rider/Mount's X/Y Data
0006bca8: afa20010 sw r2,0x0010(r29)			Store 0x3FF >> A onto Stack
0006bcac: 0c0206c3 jal 0x00081b0c			Store some coordinate data
0006bcb0: 02002021 addu r4,r16,r0
0006bcb4: 0c01f4fd jal 0x0007d3f4			0007d3f4 - 0007d474
0006bcb8: 02002021 addu r4,r16,r0
0006bcbc: 0c01a0f9 jal 0x000683e4			Transfer Unit's X/Y/Map Level
0006bcc0: 02002021 addu r4,r16,r0
0006bcc4: a200009c sb r0,0x009c(r16)			Store Use 0x9d - 0x9f coordinates for initialization?
0006bcc8: 0c020bbb jal 0x00082eec			Set Animation based on status
0006bccc: 02002021 addu r4,r16,r0
0006bcd0: 8fbf001c lw r31,0x001c(r29)			Load Stack + 0x1C
0006bcd4: 8fb00018 lw r16,0x0018(r29)			Load Stack + 0x18
0006bcd8: 27bd0020 addiu r29,r29,0x0020			
0006bcdc: 03e00008 jr r31			Jump to Address
0006bce0: 00000000 nop