Difference between revisions of "Draw Squaresoft Logo"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with "<font face='Courier New'> 00041774: 27bdffd8 addiu r29,r29,0xffd8 00041778: afb20020 sw r18,0x0020(r29) 0004177c: 00809021 addu r18,r4,r0 00041780: afb1001c sw r17,0x001...")
 
m
Line 3: Line 3:
 
  00041774: 27bdffd8 addiu r29,r29,0xffd8
 
  00041774: 27bdffd8 addiu r29,r29,0xffd8
 
  00041778: afb20020 sw r18,0x0020(r29)
 
  00041778: afb20020 sw r18,0x0020(r29)
  0004177c: 00809021 addu r18,r4,r0
+
  0004177c: 00809021 addu r18,r4,r0                 OTAG list
 
  00041780: afb1001c sw r17,0x001c(r29)
 
  00041780: afb1001c sw r17,0x001c(r29)
  00041784: 00a08821 addu r17,r5,r0
+
  00041784: 00a08821 addu r17,r5,r0                 image source for LoadImage?
 
  00041788: 3c028004 lui r2,0x8004
 
  00041788: 3c028004 lui r2,0x8004
  0004178c: 8c42597c lw r2,0x597c(r2)
+
  0004178c: 8c42597c lw r2,0x597c(r2)               top or bottom screen
 
  00041790: afbf0024 sw r31,0x0024(r29)
 
  00041790: afbf0024 sw r31,0x0024(r29)
 
  00041794: afb00018 sw r16,0x0018(r29)
 
  00041794: afb00018 sw r16,0x0018(r29)
  00041798: 2c420001 sltiu r2,r2,0x0001
+
  00041798: 2c420001 sltiu r2,r2,0x0001             swap (while also forcing 0 or 1)
 
  0004179c: 3c018004 lui r1,0x8004
 
  0004179c: 3c018004 lui r1,0x8004
  000417a0: ac22597c sw r2,0x597c(r1)
+
  000417a0: ac22597c sw r2,0x597c(r1)               store
  000417a4: 0c0091b5 jal 0x000246d4
+
  000417a4: 0c0091b5 jal 0x000246d4                 [[SYS DrawSync]]
  000417a8: 00002021 addu r4,r0,r0
+
  000417a8: 00002021 addu r4,r0,r0                   wait for all drawing to stop
  000417ac: 0c0076ea jal 0x0001dba8
+
  000417ac: 0c0076ea jal 0x0001dba8                 [[VSync call]]
 
  000417b0: 00002021 addu r4,r0,r0
 
  000417b0: 00002021 addu r4,r0,r0
 
  000417b4: 3c038004 lui r3,0x8004
 
  000417b4: 3c038004 lui r3,0x8004
  000417b8: 8c63597c lw r3,0x597c(r3)
+
  000417b8: 8c63597c lw r3,0x597c(r3)               top or bottom screen
  000417bc: 00408021 addu r16,r2,r0
+
  000417bc: 00408021 addu r16,r2,r0                
 
  000417c0: 00032080 sll r4,r3,0x02
 
  000417c0: 00032080 sll r4,r3,0x02
 
  000417c4: 00832021 addu r4,r4,r3
 
  000417c4: 00832021 addu r4,r4,r3
 
  000417c8: 00042080 sll r4,r4,0x02
 
  000417c8: 00042080 sll r4,r4,0x02
 
  000417cc: 3c038005 lui r3,0x8005
 
  000417cc: 3c038005 lui r3,0x8005
  000417d0: 2463eacc addiu r3,r3,0xeacc
+
  000417d0: 2463eacc addiu r3,r3,0xeacc             display environment (1 if top screen, 2 if bottom screen)
  000417d4: 0c0093a1 jal 0x00024e84
+
  000417d4: 0c0093a1 jal 0x00024e84                 [[SYS PutDispEnv]]
 
  000417d8: 00832021 addu r4,r4,r3
 
  000417d8: 00832021 addu r4,r4,r3
 
  000417dc: 3c028004 lui r2,0x8004
 
  000417dc: 3c028004 lui r2,0x8004
  000417e0: 8c42597c lw r2,0x597c(r2)
+
  000417e0: 8c42597c lw r2,0x597c(r2)               top or bottom screen
 
  000417e4: 00000000 nop
 
  000417e4: 00000000 nop
 
  000417e8: 00022040 sll r4,r2,0x01
 
  000417e8: 00022040 sll r4,r2,0x01
Line 36: Line 36:
 
  000417f8: 00042080 sll r4,r4,0x02
 
  000417f8: 00042080 sll r4,r4,0x02
 
  000417fc: 3c028005 lui r2,0x8005
 
  000417fc: 3c028005 lui r2,0x8005
  00041800: 2442ea14 addiu r2,r2,0xea14
+
  00041800: 2442ea14 addiu r2,r2,0xea14             draw environment
  00041804: 0c00932b jal 0x00024cac
+
  00041804: 0c00932b jal 0x00024cac                 [[SYS PutDrawEnv]]
 
  00041808: 00822021 addu r4,r4,r2
 
  00041808: 00822021 addu r4,r4,r2
  0004180c: 27a40010 addiu r4,r29,0x0010
+
  0004180c: 27a40010 addiu r4,r29,0x0010             RECT destination
 
  00041810: 34020046 ori r2,r0,0x0046
 
  00041810: 34020046 ori r2,r0,0x0046
 
  00041814: 3c038004 lui r3,0x8004
 
  00041814: 3c038004 lui r3,0x8004
 
  00041818: 8c63597c lw r3,0x597c(r3)
 
  00041818: 8c63597c lw r3,0x597c(r3)
  0004181c: 02202821 addu r5,r17,r0
+
  0004181c: 02202821 addu r5,r17,r0                 ptr source
  00041820: a7a20010 sh r2,0x0010(r29)
+
  00041820: a7a20010 sh r2,0x0010(r29)               stack management here stores parameters for RECT
 
  00041824: 00031040 sll r2,r3,0x01
 
  00041824: 00031040 sll r2,r3,0x01
 
  00041828: 00431021 addu r2,r2,r3
 
  00041828: 00431021 addu r2,r2,r3
Line 52: Line 52:
 
  00041838: 3c018005 lui r1,0x8005
 
  00041838: 3c018005 lui r1,0x8005
 
  0004183c: 00220821 addu r1,r1,r2
 
  0004183c: 00220821 addu r1,r1,r2
  00041840: 9423ea16 lhu r3,-0x15ea(r1)
+
  00041840: 9423ea16 lhu r3,-0x15ea(r1)             drawing environment's Y value
 
  00041844: 340200b4 ori r2,r0,0x00b4
 
  00041844: 340200b4 ori r2,r0,0x00b4
 
  00041848: a7a20014 sh r2,0x0014(r29)
 
  00041848: a7a20014 sh r2,0x0014(r29)
Line 58: Line 58:
 
  00041850: a7a20016 sh r2,0x0016(r29)
 
  00041850: a7a20016 sh r2,0x0016(r29)
 
  00041854: 24630070 addiu r3,r3,0x0070
 
  00041854: 24630070 addiu r3,r3,0x0070
  00041858: 0c00923f jal 0x000248fc
+
  00041858: 0c00923f jal 0x000248fc                 [[SYS LoadImage]]
 
  0004185c: a7a30012 sh r3,0x0012(r29)
 
  0004185c: a7a30012 sh r3,0x0012(r29)
  00041860: 0c00930e jal 0x00024c38
+
  00041860: 0c00930e jal 0x00024c38                 [[SYS DrawOtag]]
 
  00041864: 02402021 addu r4,r18,r0
 
  00041864: 02402021 addu r4,r18,r0
  00041868: 0c008ca2 jal 0x00023288
+
  00041868: 0c008ca2 jal 0x00023288                 [[FONT FntFlush]]
 
  0004186c: 2404ffff addiu r4,r0,0xffff
 
  0004186c: 2404ffff addiu r4,r0,0xffff
  00041870: 02001021 addu r2,r16,r0
+
  00041870: 02001021 addu r2,r16,r0                 return total runtime
 
  00041874: 8fbf0024 lw r31,0x0024(r29)
 
  00041874: 8fbf0024 lw r31,0x0024(r29)
 
  00041878: 8fb20020 lw r18,0x0020(r29)
 
  00041878: 8fb20020 lw r18,0x0020(r29)

Revision as of 01:33, 11 June 2024

00041774: 27bdffd8 addiu r29,r29,0xffd8
00041778: afb20020 sw r18,0x0020(r29)
0004177c: 00809021 addu r18,r4,r0                  OTAG list
00041780: afb1001c sw r17,0x001c(r29)
00041784: 00a08821 addu r17,r5,r0                  image source for LoadImage?
00041788: 3c028004 lui r2,0x8004
0004178c: 8c42597c lw r2,0x597c(r2)                top or bottom screen
00041790: afbf0024 sw r31,0x0024(r29)
00041794: afb00018 sw r16,0x0018(r29)
00041798: 2c420001 sltiu r2,r2,0x0001              swap (while also forcing 0 or 1)
0004179c: 3c018004 lui r1,0x8004
000417a0: ac22597c sw r2,0x597c(r1)                store
000417a4: 0c0091b5 jal 0x000246d4                  SYS DrawSync
000417a8: 00002021 addu r4,r0,r0                   wait for all drawing to stop
000417ac: 0c0076ea jal 0x0001dba8                  VSync call
000417b0: 00002021 addu r4,r0,r0
000417b4: 3c038004 lui r3,0x8004
000417b8: 8c63597c lw r3,0x597c(r3)                top or bottom screen
000417bc: 00408021 addu r16,r2,r0                  
000417c0: 00032080 sll r4,r3,0x02
000417c4: 00832021 addu r4,r4,r3
000417c8: 00042080 sll r4,r4,0x02
000417cc: 3c038005 lui r3,0x8005
000417d0: 2463eacc addiu r3,r3,0xeacc              display environment (1 if top screen, 2 if bottom screen)
000417d4: 0c0093a1 jal 0x00024e84                  SYS PutDispEnv
000417d8: 00832021 addu r4,r4,r3
000417dc: 3c028004 lui r2,0x8004
000417e0: 8c42597c lw r2,0x597c(r2)                top or bottom screen
000417e4: 00000000 nop
000417e8: 00022040 sll r4,r2,0x01
000417ec: 00822021 addu r4,r4,r2
000417f0: 000420c0 sll r4,r4,0x03
000417f4: 00822023 subu r4,r4,r2
000417f8: 00042080 sll r4,r4,0x02
000417fc: 3c028005 lui r2,0x8005
00041800: 2442ea14 addiu r2,r2,0xea14              draw environment
00041804: 0c00932b jal 0x00024cac                  SYS PutDrawEnv
00041808: 00822021 addu r4,r4,r2
0004180c: 27a40010 addiu r4,r29,0x0010             RECT destination
00041810: 34020046 ori r2,r0,0x0046
00041814: 3c038004 lui r3,0x8004
00041818: 8c63597c lw r3,0x597c(r3)
0004181c: 02202821 addu r5,r17,r0                  ptr source
00041820: a7a20010 sh r2,0x0010(r29)               stack management here stores parameters for RECT
00041824: 00031040 sll r2,r3,0x01
00041828: 00431021 addu r2,r2,r3
0004182c: 000210c0 sll r2,r2,0x03
00041830: 00431023 subu r2,r2,r3
00041834: 00021080 sll r2,r2,0x02
00041838: 3c018005 lui r1,0x8005
0004183c: 00220821 addu r1,r1,r2
00041840: 9423ea16 lhu r3,-0x15ea(r1)              drawing environment's Y value
00041844: 340200b4 ori r2,r0,0x00b4
00041848: a7a20014 sh r2,0x0014(r29)
0004184c: 34020010 ori r2,r0,0x0010
00041850: a7a20016 sh r2,0x0016(r29)
00041854: 24630070 addiu r3,r3,0x0070
00041858: 0c00923f jal 0x000248fc                  SYS LoadImage
0004185c: a7a30012 sh r3,0x0012(r29)
00041860: 0c00930e jal 0x00024c38                  SYS DrawOtag
00041864: 02402021 addu r4,r18,r0
00041868: 0c008ca2 jal 0x00023288                  FONT FntFlush
0004186c: 2404ffff addiu r4,r0,0xffff
00041870: 02001021 addu r2,r16,r0                  return total runtime
00041874: 8fbf0024 lw r31,0x0024(r29)
00041878: 8fb20020 lw r18,0x0020(r29)
0004187c: 8fb1001c lw r17,0x001c(r29)
00041880: 8fb00018 lw r16,0x0018(r29)
00041884: 27bd0028 addiu r29,r29,0x0028
00041888: 03e00008 jr r31
0004188c: 00000000 nop