Difference between revisions of "Store Palette data for each unit"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with " 68494: 0008f710: Palette Modification 0008f710: Palette Modification 68494: r0 = 0 r29 = Stack Pointer r31 = Return Address r32 = Lo 00068494: 27...")
 
(Format; added return locations and navigation)
Line 1: Line 1:
 
  68494: 0008f710: Palette Modification  0008f710: Palette Modification   
 
  68494: 0008f710: Palette Modification  0008f710: Palette Modification   
 
 
  68494:
 
  68494:
 
 
  r0 = 0
 
  r0 = 0
 
 
  r29 = Stack Pointer
 
  r29 = Stack Pointer
 
 
  r31 = Return Address
 
  r31 = Return Address
 
 
  r32 = Lo
 
  r32 = Lo
+
 
 
  00068494: 27bdffd0 addiu r29,r29,0xffd0 Make space on stack
 
  00068494: 27bdffd0 addiu r29,r29,0xffd0 Make space on stack
 
 
  00068498: afb00020 sw r16,0x0020(r29) Store r16 Input into Stack
 
  00068498: afb00020 sw r16,0x0020(r29) Store r16 Input into Stack
 
 
  0006849c: 00008021 addu r16,r0,r0 r16 = 0
 
  0006849c: 00008021 addu r16,r0,r0 r16 = 0
 
 
  000684a0: afb10024 sw r17,0x0024(r29) Store r17 Input into Stack
 
  000684a0: afb10024 sw r17,0x0024(r29) Store r17 Input into Stack
 
 
  000684a4: 00008821 addu r17,r0,r0 r17 = 0
 
  000684a4: 00008821 addu r17,r0,r0 r17 = 0
 
 
  000684a8: afbf0028 sw r31,0x0028(r29) Store Return Address into Stack
 
  000684a8: afbf0028 sw r31,0x0028(r29) Store Return Address into Stack
 
 
  000684ac: 3c01800a lui r1,0x800a
 
  000684ac: 3c01800a lui r1,0x800a
 
 
  000684b0: 00310821 addu r1,r1,r17 r1 =  + 0x800A
 
  000684b0: 00310821 addu r1,r1,r17 r1 =  + 0x800A
 
 
  000684b4: 9022b27c lbu r2,-0x4d84(r1) Load byte B27C from 8009B27C
 
  000684b4: 9022b27c lbu r2,-0x4d84(r1) Load byte B27C from 8009B27C
 
 
  000684b8: 00000000 nop
 
  000684b8: 00000000 nop
 
 
  000684bc: 10400013 beq r2,r0,0x0006850c Branch if ?? == 0
 
  000684bc: 10400013 beq r2,r0,0x0006850c Branch if ?? == 0
 
 
  000684c0: 26310008 addiu r17,r17,0x0008 0x8
 
  000684c0: 26310008 addiu r17,r17,0x0008 0x8
 
 
  000684c4: 3404000a ori r4,r0,0x000a r4 = 10
 
  000684c4: 3404000a ori r4,r0,0x000a r4 = 10
 
 
  000684c8: 34050004 ori r5,r0,0x0004 r5 = 4
 
  000684c8: 34050004 ori r5,r0,0x0004 r5 = 4
 
 
  000684cc: 34060003 ori r6,r0,0x0003 r6 = 3
 
  000684cc: 34060003 ori r6,r0,0x0003 r6 = 3
 
 
  000684d0: 02003821 addu r7,r16,r0 r7 =  
 
  000684d0: 02003821 addu r7,r16,r0 r7 =  
 
 
  000684d4: afa00010 sw r0,0x0010(r29) Store 0 into Stack
 
  000684d4: afa00010 sw r0,0x0010(r29) Store 0 into Stack
 
 
  000684d8: afa00014 sw r0,0x0014(r29) Store 0 into Stack
 
  000684d8: afa00014 sw r0,0x0014(r29) Store 0 into Stack
 
 
  000684dc: afa00018 sw r0,0x0018(r29) Store 0 into Stack
 
  000684dc: afa00018 sw r0,0x0018(r29) Store 0 into Stack
 
 
  000684e0: 0c023dc4 jal 0x0008f710 Palette Modification  
 
  000684e0: 0c023dc4 jal 0x0008f710 Palette Modification  
 
 
  000684e4: afa0001c sw r0,0x001c(r29) Store 0 into Stack
 
  000684e4: afa0001c sw r0,0x001c(r29) Store 0 into Stack
 
 
  000684e8: 34040008 ori r4,r0,0x0008 r4 = 8
 
  000684e8: 34040008 ori r4,r0,0x0008 r4 = 8
 
 
  000684ec: 34050004 ori r5,r0,0x0004 r5 = 4
 
  000684ec: 34050004 ori r5,r0,0x0004 r5 = 4
 
 
  000684f0: 34060003 ori r6,r0,0x0003 r6 = 3
 
  000684f0: 34060003 ori r6,r0,0x0003 r6 = 3
 
 
  000684f4: 02003821 addu r7,r16,r0 r7 =  
 
  000684f4: 02003821 addu r7,r16,r0 r7 =  
 
 
  000684f8: afa00010 sw r0,0x0010(r29) Store 0 into Stack
 
  000684f8: afa00010 sw r0,0x0010(r29) Store 0 into Stack
 
 
  000684fc: afa00014 sw r0,0x0014(r29) Store 0 into Stack
 
  000684fc: afa00014 sw r0,0x0014(r29) Store 0 into Stack
 
 
  00068500: afa00018 sw r0,0x0018(r29) Store 0 into Stack
 
  00068500: afa00018 sw r0,0x0018(r29) Store 0 into Stack
 
 
  00068504: 0c023dc4 jal 0x0008f710 Palette Modification  
 
  00068504: 0c023dc4 jal 0x0008f710 Palette Modification  
 
 
  00068508: afa0001c sw r0,0x001c(r29) Store 0 into Stack
 
  00068508: afa0001c sw r0,0x001c(r29) Store 0 into Stack
 
 
  0006850c: 26100001 addiu r16,r16,0x0001 0x1
 
  0006850c: 26100001 addiu r16,r16,0x0001 0x1
 
 
  00068510: 2a020010 slti r2,r16,0x0010 Set if 0x1 < 16
 
  00068510: 2a020010 slti r2,r16,0x0010 Set if 0x1 < 16
 
 
  00068514: 1440ffe5 bne r2,r0,0x000684ac Branch if so
 
  00068514: 1440ffe5 bne r2,r0,0x000684ac Branch if so
 
 
  00068518: 00000000 nop
 
  00068518: 00000000 nop
 
 
  0006851c: 8fbf0028 lw r31,0x0028(r29) Load Stack Pointer28
 
  0006851c: 8fbf0028 lw r31,0x0028(r29) Load Stack Pointer28
 
 
  00068520: 8fb10024 lw r17,0x0024(r29) Load Stack Pointer24
 
  00068520: 8fb10024 lw r17,0x0024(r29) Load Stack Pointer24
 
 
  00068524: 8fb00020 lw r16,0x0020(r29) Load Stack Pointer20
 
  00068524: 8fb00020 lw r16,0x0020(r29) Load Stack Pointer20
 
 
  00068528: 27bd0030 addiu r29,r29,0x0030 Restore stack pointer
 
  00068528: 27bd0030 addiu r29,r29,0x0030 Restore stack pointer
 
 
  0006852c: 03e00008 jr r31 Jump to Address
 
  0006852c: 03e00008 jr r31 Jump to Address
 +
00068530: 00000000 nop
 +
 +
==Return locations==
 +
'''Battle.bin'''
 +
00074e5c: [[00074e2c - 00074e90]]
 +
000761a4: [[0007601c - 000761c8]]
 +
00076274: [[000761cc - 00076298]]
 +
00076ce0: [[00076c50 - 00076d80]]
 +
00076d00: Same routine as above
 +
00077db0: [[00077ca4 - 00077e18]]
 +
00077dd8: Same routine as above
 +
 +
==Navigation==
 +
[[BATTLE.BIN Routines]]
 +
 +
< [[X/Y Data Gathering for Attacks?]] | [[Palette modification based on team]] >

Revision as of 02:45, 4 April 2023

68494:		 	0008f710: Palette Modification  	0008f710: Palette Modification  
68494: 			
r0 = 0
r29 = Stack Pointer
r31 = Return Address
r32 = Lo
00068494: 27bdffd0 addiu r29,r29,0xffd0			Make space on stack
00068498: afb00020 sw r16,0x0020(r29)			Store r16 Input into Stack
0006849c: 00008021 addu r16,r0,r0			r16 = 0
000684a0: afb10024 sw r17,0x0024(r29)			Store r17 Input into Stack
000684a4: 00008821 addu r17,r0,r0			r17 = 0
000684a8: afbf0028 sw r31,0x0028(r29)			Store Return Address into Stack
000684ac: 3c01800a lui r1,0x800a			
000684b0: 00310821 addu r1,r1,r17			r1 =  + 0x800A
000684b4: 9022b27c lbu r2,-0x4d84(r1)			Load byte B27C from 8009B27C
000684b8: 00000000 nop			
000684bc: 10400013 beq r2,r0,0x0006850c			Branch if ?? == 0
000684c0: 26310008 addiu r17,r17,0x0008			0x8
000684c4: 3404000a ori r4,r0,0x000a			r4 = 10
000684c8: 34050004 ori r5,r0,0x0004			r5 = 4
000684cc: 34060003 ori r6,r0,0x0003			r6 = 3
000684d0: 02003821 addu r7,r16,r0			r7 = 
000684d4: afa00010 sw r0,0x0010(r29)			Store 0 into Stack
000684d8: afa00014 sw r0,0x0014(r29)			Store 0 into Stack
000684dc: afa00018 sw r0,0x0018(r29)			Store 0 into Stack
000684e0: 0c023dc4 jal 0x0008f710			Palette Modification 
000684e4: afa0001c sw r0,0x001c(r29)			Store 0 into Stack
000684e8: 34040008 ori r4,r0,0x0008			r4 = 8
000684ec: 34050004 ori r5,r0,0x0004			r5 = 4
000684f0: 34060003 ori r6,r0,0x0003			r6 = 3
000684f4: 02003821 addu r7,r16,r0			r7 = 
000684f8: afa00010 sw r0,0x0010(r29)			Store 0 into Stack
000684fc: afa00014 sw r0,0x0014(r29)			Store 0 into Stack
00068500: afa00018 sw r0,0x0018(r29)			Store 0 into Stack
00068504: 0c023dc4 jal 0x0008f710			Palette Modification 
00068508: afa0001c sw r0,0x001c(r29)			Store 0 into Stack
0006850c: 26100001 addiu r16,r16,0x0001			0x1
00068510: 2a020010 slti r2,r16,0x0010			Set if 0x1 < 16
00068514: 1440ffe5 bne r2,r0,0x000684ac			Branch if so
00068518: 00000000 nop			
0006851c: 8fbf0028 lw r31,0x0028(r29)			Load Stack Pointer28
00068520: 8fb10024 lw r17,0x0024(r29)			Load Stack Pointer24
00068524: 8fb00020 lw r16,0x0020(r29)			Load Stack Pointer20
00068528: 27bd0030 addiu r29,r29,0x0030			Restore stack pointer
0006852c: 03e00008 jr r31			Jump to Address
00068530: 00000000 nop

Return locations

Battle.bin
00074e5c: 00074e2c - 00074e90
000761a4: 0007601c - 000761c8
00076274: 000761cc - 00076298
00076ce0: 00076c50 - 00076d80
00076d00: Same routine as above
00077db0: 00077ca4 - 00077e18
00077dd8: Same routine as above

Navigation

BATTLE.BIN Routines

< X/Y Data Gathering for Attacks? | Palette modification based on team >