Difference between revisions of "Effect Code Script 0x05"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with " 801a2374: 84830006 lh r3,0x0006(r4) # effectBlock.offset 801a2378: 8c820008 lw r2,0x0008(r4) # effectBlock.basePointer 801a237c: 0000000...")
 
m
 
Line 1: Line 1:
  801a2374: 84830006 lh r3,0x0006(r4)                #  effectBlock.offset
+
  801a2374: 84830006 lh r3,0x0006(r4)                #  offset for effect script pointer
  801a2378: 8c820008 lw r2,0x0008(r4)                #  effectBlock.basePointer
+
  801a2378: 8c820008 lw r2,0x0008(r4)                #  script pointer
 
  801a237c: 00000000 nop
 
  801a237c: 00000000 nop
  801a2380: 00621821 addu r3,r3,r2                    #  effectBlock.offset + effectBlock.basePointer
+
  801a2380: 00621821 addu r3,r3,r2                    #  pointer to current effect script
  801a2384: 94820006 lhu r2,0x0006(r4)                #   effectBlock.offset           
+
  801a2384: 94820006 lhu r2,0x0006(r4)                #          
  801a2388: 90630001 lbu r3,0x0001(r3)                #  effectCommandValuePart = *(effectBlock.offset + effectBlock.basePointer + 1)
+
  801a2388: 90630001 lbu r3,0x0001(r3)                #  load second argument of code script
  801a238c: 24420002 addiu r2,r2,0x0002              #  effectBlock.offset + 2
+
  801a238c: 24420002 addiu r2,r2,0x0002              #  increment offset
  801a2390: 00031902 srl r3,r3,0x04                  #  effectCommandValuePart >> 4
+
  801a2390: 00031902 srl r3,r3,0x04                  #  obtain nibble of script data
  801a2394: a4820006 sh r2,0x0006(r4)                #  effectBlock.offset = effectBlock.offset + 2
+
  801a2394: a4820006 sh r2,0x0006(r4)                #  store incremented offset
 
  801a2398: 3c01801c lui r1,0x801c
 
  801a2398: 3c01801c lui r1,0x801c
  801a239c: a423f000 sh r3,-0x1000(r1)                #  *0x801bf000 = effectCommandValuePart >> 4
+
  801a239c: a423f000 sh r3,-0x1000(r1)                #  store data (does not seem to be read. useless initialization step?)
 
  801a23a0: 03e00008 jr r31                          #  return 1;
 
  801a23a0: 03e00008 jr r31                          #  return 1;
 
  801a23a4: 34020001 ori r2,r0,0x0001
 
  801a23a4: 34020001 ori r2,r0,0x0001

Latest revision as of 09:55, 30 November 2022

801a2374: 84830006 lh r3,0x0006(r4)                 #   offset for effect script pointer
801a2378: 8c820008 lw r2,0x0008(r4)                 #   script pointer
801a237c: 00000000 nop
801a2380: 00621821 addu r3,r3,r2                    #   pointer to current effect script
801a2384: 94820006 lhu r2,0x0006(r4)                #            
801a2388: 90630001 lbu r3,0x0001(r3)                #   load second argument of code script
801a238c: 24420002 addiu r2,r2,0x0002               #   increment offset
801a2390: 00031902 srl r3,r3,0x04                   #   obtain nibble of script data
801a2394: a4820006 sh r2,0x0006(r4)                 #   store incremented offset
801a2398: 3c01801c lui r1,0x801c
801a239c: a423f000 sh r3,-0x1000(r1)                #   store data (does not seem to be read. useless initialization step?)
801a23a0: 03e00008 jr r31                           #   return 1;
801a23a4: 34020001 ori r2,r0,0x0001