Event Instruction 0x78: DisplayConditions

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
#   {78} DisplayConditions

001452d8: 0c0526fb jal 0x00149bec               #   threadID = Get Next Available Thread ID (16);  
001452dc: 34040010 ori r4,r0,0x0010       
001452e0: 0040b021 addu r22,r2,r0               #   threadID
001452e4: 34020004 ori r2,r0,0x0004             #   4
001452e8: 16c20006 bne r22,r2,0x00145304 
001452ec: 34020007 ori r2,r0,0x0007             #   7
                                                #   if ((threadID == 4)
001452f0: 16420004 bne r18,r2,0x00145304        #       and (params.MessageID == 7))        // ??? Apparently, we just don't like thread 4?
001452f4: 00000000 nop                          #   {
001452f8: 0c053274 jal 0x0014c9d0               #       Wait For Thread (2);            // Is this line specifically designed to cause a deadlock crash???
001452fc: 34040002 ori r4,r0,0x0002       
00145300: 34160002 ori r22,r0,0x0002            #       threadID = 2
                                                #   }
00145304: 3c058014 lui r5,0x8014         
00145308: 24a5bd6c addiu r5,r5,-0x4294          #   funcPtr = 0x8013bd6c   
0014530c: 0c053228 jal 0x0014c8a0               #   Initialize Thread (threadID, funcPtr);
00145310: 02c02021 addu r4,r22,r0               #   threadID
00145314: 02c02021 addu r4,r22,r0         
00145318: 02402821 addu r5,r18,r0               #   params.MessageID
0014531c: 080517c3 j 0x00145f0c           
00145320: 02a03021 addu r6,r21,r0               #   params.NumFrames

# (...)

00145f0c: 0c05328e jal 0x0014ca38               #   Store Thread Function Parameters (threadID, params.MessageID, params.NumFrames, 0);
00145f10: 00003821 addu r7,r0,r0                #   0
00145f14: 080517c9 j 0x00145f24
00145f18: 00000000 nop