rendered paste body1:
rts
Sonic_CheckSuper:
cmpi.b #2,0x1C(%a0)
bne.s 1b
cmpi.b #1,Current_Character
beq.s 6f
cmpi.b #2,Current_Character
bne.s 3f
6:
cmpi.w #0x32,(0xFFFFFE20).w | Do we have 50 rings?
# cmpi.w #0x5,(0xFFFFFE20).w
bge.s 2f
bra.w 3f
2:
cmpi.b #0x40,(0xFFFFF605).w | has A been pressed?
bne.s 3f | if not,stop
1:
cmpi.b #6,(0xFFFFFE57).w
bge.s 1f
jmp locret_134d2
1:
bset #2,0x22(%a0)
addq.l #4,%sp
jmp Go_Super
3:
rts
SuperSonic_Checks:
cmpi.b #1,Super_Tails
beq.s 1f
cmpi.b #3,Current_Character
beq.s 1f
rts
1:
cmpi.b #1,Super_Tails
beq.s 4f
jsr Super_Rotating_Palette
bra.w 5f
4:
jsr Super_Tails_Palette
5:
tst.w (0xFFFFFE20).w | do you have any rings?
beq.s 3f
cmpi.b #0x3C,(0xFFFFAAAA).w | Have we reached 60 frames yet?
bne.s 2f
subi.w #0x1,(0xFFFFFE20).w | subtract 1 ring
move.b #0x81,(0xFFFFFE1D).w | update the ring counter
move.b #0x0,(0xFFFFAAAA).w
rts
3:
jmp De_Super
2:
addi.b #1,(0xFFFFAAAA).w
6:
rts