Difference between revisions of "Elemental ability loading"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with " 001821cc: 27bdff40 addiu r29,r29,0xff40 001821d0: afb100b4 sw r17,0x00b4(r29) 001821d4: 00808821 addu r17,r4,r0 001821d8: afb000b0 sw r16,0x00b0(r29) 001821dc: 00a08021 a...")
 
Line 5: Line 5:
 
  001821dc: 00a08021 addu r16,r5,r0
 
  001821dc: 00a08021 addu r16,r5,r0
 
  001821e0: afbf00bc sw r31,0x00bc(r29)
 
  001821e0: afbf00bc sw r31,0x00bc(r29)
  001821e4: 0c060435 jal 0x001810d4
+
  001821e4: 0c060435 jal 0x001810d4                     Get unit data
 
  001821e8: afb200b8 sw r18,0x00b8(r29)
 
  001821e8: afb200b8 sw r18,0x00b8(r29)
 
  001821ec: 00409021 addu r18,r2,r0
 
  001821ec: 00409021 addu r18,r2,r0
 
  001821f0: 1240002e beq r18,r0,0x 001822ac
 
  001821f0: 1240002e beq r18,r0,0x 001822ac
 
  001821f4: 34020011 ori r2,r0,0x0011
 
  001821f4: 34020011 ori r2,r0,0x0011
 +
 
  001821f8: 320300ff andi r3,r16,0x00ff
 
  001821f8: 320300ff andi r3,r16,0x00ff
 
  001821fc: 1462002c bne r3,r2,0x 001822b0
 
  001821fc: 1462002c bne r3,r2,0x 001822b0
 
  00182200: 00001021 addu r2,r0,r0
 
  00182200: 00001021 addu r2,r0,r0
 +
 
  00182204: 02202021 addu r4,r17,r0
 
  00182204: 02202021 addu r4,r17,r0
 
  00182208: 27a20060 addiu r2,r29,0x0060
 
  00182208: 27a20060 addiu r2,r29,0x0060
Line 24: Line 26:
 
  00182228: 27a60020 addiu r6,r29,0x0020
 
  00182228: 27a60020 addiu r6,r29,0x0020
 
  0018222c: 27a70048 addiu r7,r29,0x0048
 
  0018222c: 27a70048 addiu r7,r29,0x0048
  00182230: 0c0605f0 jal 0x001817c0 skillset loading?
+
  00182230: 0c0605f0 jal 0x001817c0 skillset loading
 
  00182234: afa2001c sw r2,0x001c(r29)
 
  00182234: afa2001c sw r2,0x001c(r29)
 
  00182238: 00408021 addu r16,r2,r0
 
  00182238: 00408021 addu r16,r2,r0
 
  0018223c: 16000005 bne r16,r0,0x 00182254
 
  0018223c: 16000005 bne r16,r0,0x 00182254
 
  00182240: 00001021 addu r2,r0,r0
 
  00182240: 00001021 addu r2,r0,r0
  00182244: 080608ac j 0x 001822b0
+
 +
  00182244: 080608ac j 0x 001822b0               End
 
  00182248: 00000000 nop
 
  00182248: 00000000 nop
  0018224c: 080608ac j 0x 001822b0
+
 +
  0018224c: 080608ac j 0x 001822b0               End
 
  00182250: 30c2ffff andi r2,r6,0xffff
 
  00182250: 30c2ffff andi r2,r6,0xffff
  00182254: 0c060428 jal 0x001810a0
+
 +
  00182254: 0c060428 jal 0x001810a0             Get tile data
 
  00182258: 02402021 addu r4,r18,r0
 
  00182258: 02402021 addu r4,r18,r0
 
  0018225c: 000210c0 sll r2,r2,0x03
 
  0018225c: 000210c0 sll r2,r2,0x03
 
  00182260: 3c018019 lui r1,0x8019
 
  00182260: 3c018019 lui r1,0x8019
 
  00182264: 00220821 addu r1,r1,r2
 
  00182264: 00220821 addu r1,r1,r2
  00182268: 9022f8cc lbu r2,-0x0734(r1) load tile data
+
  00182268: 9022f8cc lbu r2,-0x0734(r1) load tile type
 
  0018226c: 00000000 nop
 
  0018226c: 00000000 nop
 
  00182270: 3042003f andi r2,r2,0x003f
 
  00182270: 3042003f andi r2,r2,0x003f
Line 44: Line 49:
 
  00182278: 00220821 addu r1,r1,r2
 
  00182278: 00220821 addu r1,r1,r2
 
  0018227c: 9026e9d0 lbu r6,-0x1630(r1) load ability ID for geomancy
 
  0018227c: 9026e9d0 lbu r6,-0x1630(r1) load ability ID for geomancy
  00182280: 1a00000a blez r16,0x 001822ac
+
  00182280: 1a00000a blez r16,0x 001822ac       branch if none
 
  00182284: 00 001821 addu r3,r0,r0
 
  00182284: 00 001821 addu r3,r0,r0
 
  00182288: 00c02821 addu r5,r6,r0
 
  00182288: 00c02821 addu r5,r6,r0
Line 50: Line 55:
 
  00182290: 84820000 lh r2,0x0000(r4)
 
  00182290: 84820000 lh r2,0x0000(r4)
 
  00182294: 00000000 nop
 
  00182294: 00000000 nop
  00182298: 1045ffec beq r2,r5,0x 0018224c branch if ?? = ability ID for geomancy
+
  00182298: 1045ffec beq r2,r5,0x 0018224c branch if tile ability = ability ID for geomancy
 
  0018229c: 24630001 addiu r3,r3,0x0001
 
  0018229c: 24630001 addiu r3,r3,0x0001
 
  001822a0: 0070102a slt r2,r3,r16
 
  001822a0: 0070102a slt r2,r3,r16
 
  001822a4: 1440fffa bne r2,r0,0x 00182290
 
  001822a4: 1440fffa bne r2,r0,0x 00182290
 
  001822a8: 24840002 addiu r4,r4,0x0002
 
  001822a8: 24840002 addiu r4,r4,0x0002
  001822ac: 00001021 addu r2,r0,r0
+
 +
  001822ac: 00001021 addu r2,r0,r0               Return R2 = 0
 
  001822b0: 8fbf00bc lw r31,0x00bc(r29)
 
  001822b0: 8fbf00bc lw r31,0x00bc(r29)
 
  001822b4: 8fb200b8 lw r18,0x00b8(r29)
 
  001822b4: 8fb200b8 lw r18,0x00b8(r29)

Revision as of 12:30, 29 August 2014

001821cc: 27bdff40 addiu r29,r29,0xff40
001821d0: afb100b4 sw r17,0x00b4(r29)
001821d4: 00808821 addu r17,r4,r0
001821d8: afb000b0 sw r16,0x00b0(r29)
001821dc: 00a08021 addu r16,r5,r0
001821e0: afbf00bc sw r31,0x00bc(r29)
001821e4: 0c060435 jal 0x001810d4                     Get unit data
001821e8: afb200b8 sw r18,0x00b8(r29)
001821ec: 00409021 addu r18,r2,r0
001821f0: 1240002e beq r18,r0,0x 001822ac
001821f4: 34020011 ori r2,r0,0x0011

001821f8: 320300ff andi r3,r16,0x00ff
001821fc: 1462002c bne r3,r2,0x 001822b0
00182200: 00001021 addu r2,r0,r0

00182204: 02202021 addu r4,r17,r0
00182208: 27a20060 addiu r2,r29,0x0060
0018220c: afa20010 sw r2,0x0010(r29)
00182210: 34020001 ori r2,r0,0x0001
00182214: afa20014 sw r2,0x0014(r29)
00182218: 27a20078 addiu r2,r29,0x0078
0018221c: afa20018 sw r2,0x0018(r29)
00182220: 27a20090 addiu r2,r29,0x0090
00182224: 34050011 ori r5,r0,0x0011
00182228: 27a60020 addiu r6,r29,0x0020
0018222c: 27a70048 addiu r7,r29,0x0048
00182230: 0c0605f0 jal 0x001817c0			skillset loading
00182234: afa2001c sw r2,0x001c(r29)
00182238: 00408021 addu r16,r2,r0
0018223c: 16000005 bne r16,r0,0x 00182254
00182240: 00001021 addu r2,r0,r0

00182244: 080608ac j 0x 001822b0               End
00182248: 00000000 nop

0018224c: 080608ac j 0x 001822b0               End
00182250: 30c2ffff andi r2,r6,0xffff

00182254: 0c060428 jal 0x001810a0              Get tile data
00182258: 02402021 addu r4,r18,r0
0018225c: 000210c0 sll r2,r2,0x03
00182260: 3c018019 lui r1,0x8019
00182264: 00220821 addu r1,r1,r2
00182268: 9022f8cc lbu r2,-0x0734(r1)		load tile type
0018226c: 00000000 nop
00182270: 3042003f andi r2,r2,0x003f
00182274: 3c018006 lui r1,0x8006
00182278: 00220821 addu r1,r1,r2
0018227c: 9026e9d0 lbu r6,-0x1630(r1)		load ability ID for geomancy
00182280: 1a00000a blez r16,0x 001822ac        branch if none
00182284: 00 001821 addu r3,r0,r0
00182288: 00c02821 addu r5,r6,r0
0018228c: 27a40020 addiu r4,r29,0x0020
00182290: 84820000 lh r2,0x0000(r4)
00182294: 00000000 nop
00182298: 1045ffec beq r2,r5,0x 0018224c		branch if tile ability = ability ID for geomancy
0018229c: 24630001 addiu r3,r3,0x0001
001822a0: 0070102a slt r2,r3,r16
001822a4: 1440fffa bne r2,r0,0x 00182290
001822a8: 24840002 addiu r4,r4,0x0002

001822ac: 00001021 addu r2,r0,r0               Return R2 = 0
001822b0: 8fbf00bc lw r31,0x00bc(r29)
001822b4: 8fb200b8 lw r18,0x00b8(r29)
001822b8: 8fb100b4 lw r17,0x00b4(r29)
001822bc: 8fb000b0 lw r16,0x00b0(r29)
001822c0: 27bd00c0 addiu r29,r29,0x00c0
001822c4: 03e00008 jr r31
001822c8: 00000000 nop