Battle Camera Initialize
Jump to navigation
Jump to search
It sets the elevation angle and zoom after the events finished.
- Elevation: (0x012e=26º, 0x0177,0x01c0)
- Zoom: (0x1000=100%, 0x0c00)
0012dde8: 3c028016 lui r2,0x8016 0012ddec: 8c425f9c lw r2,0x5f9c(r2) 0012ddf0: 27bdffd8 addiu r29,r29,0xffd8 0012ddf4: afbf0020 sw r31,0x0020(r29) 0012ddf8: afb3001c sw r19,0x001c(r29) 0012ddfc: afb20018 sw r18,0x0018(r29) 0012de00: afb10014 sw r17,0x0014(r29) 0012de04: afb00010 sw r16,0x0010(r29) 0012de08: 8c500074 lw r16,0x0074(r2) #Current elevation angle 0012de0c: 00000000 nop 0012de10: 2a02012e slti r2,r16,0x012e #Starts to compare the angle to some ref. 0012de14: 10400004 beq r2,r0,0x0012de28 0012de18: 00009821 addu r19,r0,r0 #r19 will mark if angle ref hi or low 0012de1c: 34120010 ori r18,r0,0x0010 #r18 will be step to increase or decrease 0012de20: 0804b796 j 0x0012de58 0012de24: 3411012e ori r17,r0,0x012e 0012de28: 2a020177 slti r2,r16,0x0177 0012de2c: 10400003 beq r2,r0,0x0012de3c 0012de30: 2412fff0 addiu r18,r0,0xfff0 0012de34: 0804b796 j 0x0012de58 0012de38: 3411012e ori r17,r0,0x012e 0012de3c: 2a0201c0 slti r2,r16,0x01c0 0012de40: 10400003 beq r2,r0,0x0012de50 0012de44: 34130001 ori r19,r0,0x0001 #r19 will mark if angle ref hi or low 0012de48: 0804b795 j 0x0012de54 0012de4c: 34120010 ori r18,r0,0x0010 0012de50: 2412fff0 addiu r18,r0,0xfff0 0012de54: 341101c0 ori r17,r0,0x01c0 0012de58: 06410014 bgez r18,0x0012deac 0012de5c: 0211102a slt r2,r16,r17 0012de60: 0230102a slt r2,r17,r16 0012de64: 10400013 beq r2,r0,0x0012deb4 0012de68: 00000000 nop 0012de6c: 3c028016 lui r2,0x8016 #Loop to decrease elevation angle 0012de70: 8c425f9c lw r2,0x5f9c(r2) #by r18 step till gets to r17. 0012de74: 0c0532a0 jal 0x0014ca80 #Some event data setting routine 0012de78: ac500074 sw r16,0x0074(r2) 0012de7c: 02128021 addu r16,r16,r18 0012de80: 0230102a slt r2,r17,r16 0012de84: 1040000b beq r2,r0,0x0012deb4 0012de88: 00000000 nop 0012de8c: 0804b79b j 0x0012de6c 0012de90: 00000000 nop 0012de94: 3c028016 lui r2,0x8016 #Loop to increase elevation angle 0012de98: 8c425f9c lw r2,0x5f9c(r2) #by r18 step till gets to r17. 0012de9c: 0c0532a0 jal 0x0014ca80 #Some event data setting routine 0012dea0: ac500074 sw r16,0x0074(r2) 0012dea4: 02128021 addu r16,r16,r18 0012dea8: 0211102a slt r2,r16,r17 0012deac: 1440fff9 bne r2,r0,0x0012de94 0012deb0: 00000000 nop 0012deb4: 3c028016 lui r2,0x8016 0012deb8: 8c425f9c lw r2,0x5f9c(r2) 0012debc: 00000000 nop 0012dec0: ac510074 sw r17,0x0074(r2) #Final value for elevation 0012dec4: 3c038016 lui r3,0x8016 0012dec8: 8c635f9c lw r3,0x5f9c(r3) 0012decc: 26620001 addiu r2,r19,0x0001 0012ded0: 3c018009 lui r1,0x8009 0012ded4: ac2260d8 sw r2,0x60d8(r1) #Flag elevation 1=low, 2=hi 0012ded8: 34020001 ori r2,r0,0x0001 0012dedc: 3c018009 lui r1,0x8009 0012dee0: ac2260d0 sw r2,0x60d0(r1) #Flag zoom 1=in, 4=out 0012dee4: 34021000 ori r2,r0,0x1000 0012dee8: ac620080 sw r2,0x0080(r3) #Final value for zoom 0012deec: 8fbf0020 lw r31,0x0020(r29) 0012def0: 8fb3001c lw r19,0x001c(r29) 0012def4: 8fb20018 lw r18,0x0018(r29) 0012def8: 8fb10014 lw r17,0x0014(r29) 0012defc: 8fb00010 lw r16,0x0010(r29) 0012df00: 27bd0028 addiu r29,r29,0x0028 0012df04: 03e00008 jr r31 0012df08: 00000000 nop