SHOW:
|
|
- or go back to the newest paste.
| 1 | // ASM68k /p mania.asm,mania_new.bin | |
| 2 | org $0 | |
| 3 | incbin mania.bin | |
| 4 | ||
| 5 | org ($400000-$332) | |
| 6 | ||
| 7 | - | tst.b ($FFFFF4E0).w |
| 7 | + | |
| 8 | - | beq.s loc_1198C |
| 8 | + | |
| 9 | bpl.s loc_1193C | |
| 10 | do_tournament_again: | |
| 11 | move.l #$FFABEA,($FFFFABFA).w | |
| 12 | jmp $11920 | |
| 13 | - | loc_1198C: |
| 13 | + | |
| 14 | - | ; sub.b #1,d1 |
| 14 | + | loc_1193C: |
| 15 | - | ; move.b d1,(a6,d0.l) |
| 15 | + | cmp.b #3,($FFFFA8AF) |
| 16 | - | ; cmp.b #$F0,d1 |
| 16 | + | bne.s tournament_check_solo |
| 17 | - | cmp.w #4,($FFFFAB2A) |
| 17 | + | cmp.w #2,($FFFFAB2A) |
| 18 | - | bcc do_tournament_again |
| 18 | + | bcs.s tournament_end |
| 19 | - | ; if FD .. |
| 19 | + | jmp $1193C |
| 20 | - | jmp $1198C |
| 20 | + | |
| 21 | tournament_check_solo: | |
| 22 | cmp.w #3,($FFFFAB2A) | |
| 23 | bcs.s tournament_end | |
| 24 | jmp $1193C | |
| 25 | ||
| 26 | tournament_end: | |
| 27 | jmp $1198C | |
| 28 | ||
| 29 | tournament_dec: | |
| 30 | move.w d0,-(sp) | |
| 31 | subq.w #1,d7 | |
| 32 | move.w d7,d0 | |
| 33 | andi.w #$F,d0 | |
| 34 | cmp.w #$F,d0 | |
| 35 | bne.s tournament_dec_skip | |
| 36 | sub.w #($F-$9),d7 | |
| 37 | tournament_dec_skip: | |
| 38 | move.w (sp)+,d0 | |
| 39 | ||
| 40 | move.w d7,($FFFFAB2A).w | |
| 41 | rts | |
| 42 | ||
| 43 | skip_credits: | |
| 44 | moveq #0,d7 | |
| 45 | addq.w #1,$24(a5) | |
| 46 | move.w $24(a5),d7 | |
| 47 | btst.b #7,($FFF4A9) | |
| 48 | bne.s do_skip_credits | |
| 49 | btst.b #7,($FFF4AB) | |
| 50 | bne.s do_skip_credits | |
| 51 | jmp $28298 | |
| 52 | ||
| 53 | - | move.l #$40D20003,($C00006) |
| 53 | + | |
| 54 | jmp $28338 | |
| 55 | ||
| 56 | - | or.w ($FFFFF4BC).w,d7 |
| 56 | + | |
| 57 | jsr $1053E | |
| 58 | cmpi.w #0,$20(a5) ; player? | |
| 59 | bne.s draw_tournament_setting_pl2 | |
| 60 | move.l #$61900003,($C00006) | |
| 61 | bra.s draw_tournament_setting_dig | |
| 62 | ||
| 63 | draw_tournament_setting_pl2: | |
| 64 | move.l #$61B80003,($C00006) | |
| 65 | - | cmp.b #0,($FF5FF0) |
| 65 | + | |
| 66 | draw_tournament_setting_dig: | |
| 67 | ; high | |
| 68 | clr.w d7 | |
| 69 | move.b ($FF5FF0),d7 | |
| 70 | lsr.w #4,d7 | |
| 71 | - | cmp.b #2,($FF5FF0) |
| 71 | + | add.w #$8780,d7 |
| 72 | move.w d7,($C00000) | |
| 73 | - | add.b #1,($FF5FF0) |
| 73 | + | ; low |
| 74 | clr.w d7 | |
| 75 | move.b ($FF5FF0),d7 | |
| 76 | - | tournament_setup: |
| 76 | + | and.w #$F,d7 |
| 77 | - | move.l ($FFFFABE2).w,($FFFFABEA).w ; init 8 players tournament |
| 77 | + | add.w #$8780,d7 |
| 78 | - | move.l ($FFFFABE6).w,($FFFFABEE).w |
| 78 | + | |
| 79 | - | move.l a0,-(sp); |
| 79 | + | |
| 80 | - | move.l d0,-(sp); |
| 80 | + | cmpi.w #0,$20(a5) ; player? |
| 81 | bne.s draw_tournament_setting_joy2 | |
| 82 | move.w ($FFFFF4BA).w,d7 | |
| 83 | - | lsl.w #1,d0 |
| 83 | + | bra.s draw_tournament_setting_joy |
| 84 | - | lea qwe,a0 |
| 84 | + | |
| 85 | - | move.w (a0,d0.w),d0 |
| 85 | + | draw_tournament_setting_joy2: |
| 86 | - | move.w d0,($FFFFABF2).w |
| 86 | + | move.w ($FFFFF4BC).w,d7 |
| 87 | ||
| 88 | - | move.l (sp)+,a0 |
| 88 | + | draw_tournament_setting_joy: |
| 89 | btst #10,d7 | |
| 90 | bne change_left | |
| 91 | - | qwe: |
| 91 | + | |
| 92 | - | dc.w $F1FF |
| 92 | + | |
| 93 | - | dc.w $F2FF |
| 93 | + | |
| 94 | - | dc.w $F3FF |
| 94 | + | |
| 95 | ||
| 96 | - | qwe1: |
| 96 | + | |
| 97 | - | dc.w $8 |
| 97 | + | cmp.b #3,($FF5FF0) |
| 98 | beq draw_tournament_setting_ret | |
| 99 | - | dc.w $24 |
| 99 | + | |
| 100 | move.b ($FF5FF0),d7 | |
| 101 | and.b #$F,d7 | |
| 102 | - | move.l a0,-(sp); |
| 102 | + | cmp.b #$F,d7 |
| 103 | - | move.l d0,-(sp); |
| 103 | + | bne draw_tournament_setting_ret |
| 104 | sub.b #$6,($FF5FF0) | |
| 105 | bra.s draw_tournament_setting_ret | |
| 106 | - | lsl.w #1,d0 |
| 106 | + | |
| 107 | - | lea qwe1,a0 |
| 107 | + | |
| 108 | - | move.w (a0,d0.w),d0 |
| 108 | + | cmp.b #$99,($FF5FF0) |
| 109 | beq draw_tournament_setting_ret | |
| 110 | add.b #1,($FF5FF0) | |
| 111 | - | move.l (sp)+,a0 |
| 111 | + | |
| 112 | and.b #$F,d7 | |
| 113 | cmp.b #$A,d7 | |
| 114 | bne draw_tournament_setting_ret | |
| 115 | add.b #$6,($FF5FF0) | |
| 116 | bra draw_tournament_setting_ret | |
| 117 | - | org $1192C |
| 117 | + | |
| 118 | ; tournament_setup: | |
| 119 | ; move.l ($FFFFABE2).w,($FFFFABEA).w ; init 8 players tournament | |
| 120 | ; move.l ($FFFFABE6).w,($FFFFABEE).w | |
| 121 | ; move.w #$FFFF,($FFFFABF2).w | |
| 122 | ; rts | |
| 123 | ||
| 124 | tournament_setup_counter: | |
| 125 | move.l d0,-(sp) | |
| 126 | clr.l d0 | |
| 127 | move.b ($FF5FF0),d0 | |
| 128 | bne.s tournament_setup_default_counter_skip | |
| 129 | moveq #8,d0 | |
| 130 | move.b d0,($FF5FF0) | |
| 131 | ||
| 132 | tournament_setup_default_counter_skip: | |
| 133 | move.l d0,a1 | |
| 134 | move.l (sp)+,d0 | |
| 135 | move.w a1,($FFFFAB2A).w | |
| 136 | jmp $15B20 | |
| 137 | ||
| 138 | digits: | |
| 139 | incbin 'wwf digits.bin' | |
| 140 | ||
| 141 | load_digits: | |
| 142 | adda.w #4,sp | |
| 143 | ||
| 144 | cmp.b #0,($FF5FF0) | |
| 145 | bne.s load_digits_skip_default | |
| 146 | move.b #8,($FF5FF0) | |
| 147 | ||
| 148 | load_digits_skip_default: | |
| 149 | ||
| 150 | move.l #$70000003,($C00006) | |
| 151 | lea digits,a0 | |
| 152 | - | org $23A8E |
| 152 | + | move.w #(320/4-1),d0 |
| 153 | - | jmp tournament_setup |
| 153 | + | load_digits_loop: |
| 154 | move.l (a0)+,($C00000) | |
| 155 | dbf.w d0,load_digits_loop | |
| 156 | - | jmp tournament_setup_counter |
| 156 | + | |
| 157 | movem.l (sp)+,d0/a0 | |
| 158 | ||
| 159 | jmp $25EBC | |
| 160 | ||
| 161 | reset_fix: | |
| 162 | move.b ($FF5FF0),8(a1) | |
| 163 | movem.l (a1)+,d2-d4 | |
| 164 | move.w #$3FFF,d0 | |
| 165 | moveq #0,d1 | |
| 166 | lea ($FF0000).l,a0 | |
| 167 | ||
| 168 | loc_7D0: | |
| 169 | move.l d1,(a0)+ | |
| 170 | dbf d0,loc_7D0 | |
| 171 | movem.l d2-d4,-(a1) | |
| 172 | move.b 8(a1),($FF5FF0) | |
| 173 | clr.b 8(a1) | |
| 174 | jmp $7DA | |
| 175 | ||
| 176 | ; fixes | |
| 177 | org $1192A | |
| 178 | jmp tournament_check | |
| 179 | ||
| 180 | ; counter | |
| 181 | org $15B1A | |
| 182 | dc.w $16 | |
| 183 | ||
| 184 | ; counter dec | |
| 185 | org $3F700 | |
| 186 | jsr tournament_dec | |
| 187 | ||
| 188 | ; skip credits | |
| 189 | org $2828E | |
| 190 | jmp skip_credits | |
| 191 | ||
| 192 | ; draw tour setting | |
| 193 | org $26C78 | |
| 194 | jmp draw_tournament_setting | |
| 195 | ||
| 196 | ; select mask | |
| 197 | ; org $25AAA | |
| 198 | ; andi.w #$F0,d0 ; remove x,y,z | |
| 199 | ||
| 200 | ; org $25B0A | |
| 201 | ; andi.w #$F0,d0 ; remove x,y,z | |
| 202 | ||
| 203 | ; org $261BE | |
| 204 | ; andi.w #$070,d0 ; turn off x,y,z selection character | |
| 205 | ||
| 206 | ; turn off x,y,z in options pl1 | |
| 207 | org $26A02 | |
| 208 | andi.w #$F0,d7 | |
| 209 | ||
| 210 | ; turn off x,y,z in options pl2 | |
| 211 | org $26A9A | |
| 212 | andi.w #$F0,d7 | |
| 213 | ||
| 214 | ; org $23A8E | |
| 215 | ; jmp tournament_setup | |
| 216 | ||
| 217 | org $15B18 | |
| 218 | jmp tournament_setup_counter | |
| 219 | ||
| 220 | org $25EB4 | |
| 221 | jmp load_digits | |
| 222 | ||
| 223 | org $7C0 | |
| 224 | jmp reset_fix | |
| 225 | ||
| 226 | ; max difficulty pl1 | |
| 227 | org $26CFC | |
| 228 | dc.w $10 | |
| 229 | ||
| 230 | ; max difficulty pl2 | |
| 231 | org $26D9E | |
| 232 | dc.w $10 |