mirror of
https://github.com/a2-4am/4cade.git
synced 2025-01-11 22:30:59 +00:00
support Flapple Bird on Mac IIe card
This commit is contained in:
parent
5c9145abaa
commit
d1a8455dac
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15432726
|
||||
!be24 15433238
|
||||
!le16 5112
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15378117
|
||||
!be24 15378629
|
||||
!le16 5695
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15311290
|
||||
!be24 15311802
|
||||
!le16 4033
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15325472
|
||||
!be24 15325984
|
||||
!le16 4473
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15343575
|
||||
!be24 15344087
|
||||
!le16 5830
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15364359
|
||||
!be24 15364871
|
||||
!le16 6429
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15437838
|
||||
!be24 15438350
|
||||
!le16 410
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15438592
|
||||
!be24 15439104
|
||||
!le16 450
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15439042
|
||||
!be24 15439554
|
||||
!le16 303
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 12287811
|
||||
!be24 12288323
|
||||
!le16 1652
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15386452
|
||||
!be24 15386964
|
||||
!le16 1640
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15438324
|
||||
!be24 15438836
|
||||
!le16 67
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15432667
|
||||
!be24 15433179
|
||||
!le16 59
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15431123
|
||||
!be24 15431635
|
||||
!le16 1426
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15415357
|
||||
!be24 15415869
|
||||
!le16 540
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15383812
|
||||
!be24 15384324
|
||||
!le16 2640
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15388450
|
||||
!be24 15388962
|
||||
!le16 7329
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15438248
|
||||
!be24 15438760
|
||||
!le16 76
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15432549
|
||||
!be24 15433061
|
||||
!le16 118
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15438391
|
||||
!be24 15438903
|
||||
!le16 201
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15415897
|
||||
!be24 15416409
|
||||
!le16 4897
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15420794
|
||||
!be24 15421306
|
||||
!le16 1775
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15422569
|
||||
!be24 15423081
|
||||
!le16 1181
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15423750
|
||||
!be24 15424262
|
||||
!le16 3421
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15427171
|
||||
!be24 15427683
|
||||
!le16 3359
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15430530
|
||||
!be24 15431042
|
||||
!le16 479
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15431009
|
||||
!be24 15431521
|
||||
!le16 114
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15439345
|
||||
!be24 15439857
|
||||
!le16 2370
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15401153
|
||||
!be24 15401665
|
||||
!le16 4933
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15406086
|
||||
!be24 15406598
|
||||
!le16 2400
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15370788
|
||||
!be24 15371300
|
||||
!le16 7329
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 4141056
|
||||
!be24 4141568
|
||||
!le16 8192
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 4157440
|
||||
!be24 4157952
|
||||
!le16 8192
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 4149248
|
||||
!be24 4149760
|
||||
!le16 8192
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15302045
|
||||
!be24 15302557
|
||||
!le16 9245
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15315323
|
||||
!be24 15315835
|
||||
!le16 10149
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15329945
|
||||
!be24 15330457
|
||||
!le16 13630
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15349405
|
||||
!be24 15349917
|
||||
!le16 14954
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15388092
|
||||
!be24 15388604
|
||||
!le16 358
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15395779
|
||||
!be24 15396291
|
||||
!le16 5374
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15408486
|
||||
!be24 15408998
|
||||
!le16 6871
|
||||
|
@ -4,5 +4,5 @@
|
||||
; This file is automatically generated
|
||||
;
|
||||
!byte 0
|
||||
!be24 15297841
|
||||
!be24 15298353
|
||||
!le16 4204
|
||||
|
@ -1,5 +1,5 @@
|
||||
;license:MIT
|
||||
;(c) 2020, 2022 by Frank M., qkumba
|
||||
;(c) 2020, 2022, 2023 by Frank M., qkumba
|
||||
|
||||
!cpu 6502
|
||||
!to "build/PRELAUNCH.INDEXED/FLAPPLE.BIRD",plain
|
||||
@ -7,8 +7,7 @@
|
||||
|
||||
!source "src/prelaunch/common.a"
|
||||
|
||||
+READ_RAM2_NO_WRITE
|
||||
jsr EnableAccelerator
|
||||
+ENABLE_ACCEL
|
||||
lda #$60
|
||||
sta $813
|
||||
jsr $800
|
||||
@ -20,8 +19,27 @@
|
||||
|
||||
@good_vbl
|
||||
+DISABLE_ACCEL
|
||||
lda $fbb3
|
||||
cmp #$6
|
||||
bne @not_mac
|
||||
lda $fbc0
|
||||
cmp #$e0
|
||||
bne @not_mac
|
||||
lda $fbdd
|
||||
cmp #$02
|
||||
bne @not_mac
|
||||
+READ_RAM2_WRITE_RAM2
|
||||
+LOAD_FILE_AT flapple_mac, $b000
|
||||
jsr $b000
|
||||
+READ_ROM_NO_WRITE
|
||||
|
||||
@not_mac
|
||||
jmp $2000
|
||||
|
||||
flapple_mac
|
||||
!byte 21
|
||||
!text "PRELAUNCH/FLAPPLE.MAC"
|
||||
|
||||
!if * > $1C0 {
|
||||
!error "code is too large, ends at ", *
|
||||
}
|
||||
|
290
src/prelaunch/flapple.mac.a
Normal file
290
src/prelaunch/flapple.mac.a
Normal file
@ -0,0 +1,290 @@
|
||||
;license:MIT
|
||||
;(c) 2023 by qkumba
|
||||
|
||||
!cpu 6502
|
||||
!to "build/PRELAUNCH/FLAPPLE.MAC",plain
|
||||
*=$b000
|
||||
|
||||
!source "src/constants.a" ; no code in these
|
||||
!source "src/macros.a"
|
||||
|
||||
lda #$CD ; disable palette switch
|
||||
sta $26C9
|
||||
sta $270F
|
||||
sta $2755
|
||||
sta $279B
|
||||
sta $2AAB
|
||||
sta $2B19
|
||||
|
||||
lda #$6c ; fix title screen
|
||||
sta $00
|
||||
lda #$30
|
||||
sta $01
|
||||
ldx #$16
|
||||
ldy #$21
|
||||
lda #$11
|
||||
jsr @swap_palette
|
||||
|
||||
lda #$18
|
||||
sta $00
|
||||
lda #$36
|
||||
sta $01
|
||||
ldx #6
|
||||
ldy #$18
|
||||
lda #$11
|
||||
jsr @swap_palette
|
||||
|
||||
lda #$38
|
||||
sta $00
|
||||
lda #$37
|
||||
sta $01
|
||||
ldx #6
|
||||
ldy #6
|
||||
lda #$22
|
||||
jsr @swap_palette
|
||||
|
||||
lda #$80
|
||||
sta $00
|
||||
lda #$37
|
||||
sta $01
|
||||
ldx #6
|
||||
ldy #$13
|
||||
lda #$22
|
||||
jsr @swap_palette
|
||||
|
||||
lda #$64
|
||||
sta $00
|
||||
lda #$38
|
||||
sta $01
|
||||
ldx #6
|
||||
ldy #3
|
||||
lda #$11
|
||||
jsr @swap_palette
|
||||
|
||||
lda #$88
|
||||
sta $00
|
||||
lda #$38
|
||||
sta $01
|
||||
ldx #3
|
||||
ldy #3
|
||||
lda #$11
|
||||
jsr @swap_palette
|
||||
|
||||
lda #$ae ; fix high score
|
||||
sta $00
|
||||
lda #$38
|
||||
sta $01
|
||||
ldx #2
|
||||
ldy #$3
|
||||
lda #$11
|
||||
jsr @swap_palette
|
||||
|
||||
lda #$d2 ; fix high score
|
||||
sta $00
|
||||
lda #$38
|
||||
sta $01
|
||||
ldx #2
|
||||
ldy #3
|
||||
lda #$11
|
||||
jsr @swap_palette
|
||||
|
||||
ldx #$BD ; fix pipe
|
||||
ldy #$3A
|
||||
jsr @swap_palette2
|
||||
|
||||
ldx #$67 ; fix bird sprite
|
||||
ldy #$47
|
||||
jsr @swap_palette1
|
||||
|
||||
ldx #$C1 ; fix bird sprite
|
||||
ldy #$47
|
||||
jsr @swap_palette1
|
||||
|
||||
ldx #$1B ; fix bird sprite
|
||||
ldy #$48
|
||||
jsr @swap_palette1
|
||||
|
||||
ldx #$93 ; fix bird sprite
|
||||
ldy #$48
|
||||
jsr @swap_palette1
|
||||
|
||||
lda #$55
|
||||
sta $3BFC
|
||||
sta $3D22
|
||||
sta $3DE7
|
||||
sta $3E4D
|
||||
sta $3E7F
|
||||
sta $40C4
|
||||
sta $41B6
|
||||
sta $4328
|
||||
lda #$E5
|
||||
sta $3C07
|
||||
sta $3C18
|
||||
sta $3D9F
|
||||
sta $3E8E
|
||||
sta $3EA3
|
||||
sta $4064
|
||||
sta $4196
|
||||
sta $41AB
|
||||
sta $4386
|
||||
lda #$5E
|
||||
sta $3C0D
|
||||
sta $3DA5
|
||||
sta $3E94
|
||||
sta $406A
|
||||
sta $419C
|
||||
sta $438C
|
||||
lda #$C5
|
||||
sta $3C1F
|
||||
sta $3C30
|
||||
sta $3DAC
|
||||
sta $3DBD
|
||||
sta $3EAE
|
||||
sta $3EC3
|
||||
sta $4075
|
||||
sta $408A
|
||||
sta $4167
|
||||
sta $417C
|
||||
sta $4357
|
||||
sta $436C
|
||||
lda #$5C
|
||||
sta $3C25
|
||||
sta $3C3B
|
||||
sta $3DB2
|
||||
sta $3DC8
|
||||
sta $3EB4
|
||||
sta $3ED2
|
||||
sta $407B
|
||||
sta $4099
|
||||
sta $416D
|
||||
sta $418B
|
||||
sta $435D
|
||||
sta $437B
|
||||
lda #$45
|
||||
sta $3C42
|
||||
sta $3DCF
|
||||
sta $3DE0
|
||||
sta $3EDD
|
||||
sta $40A4
|
||||
sta $40B9
|
||||
sta $4156
|
||||
sta $4337
|
||||
sta $434C
|
||||
lda #$54
|
||||
sta $3C48
|
||||
sta $3DD5
|
||||
sta $3EE3
|
||||
sta $40AA
|
||||
sta $415C
|
||||
sta $433D
|
||||
lda #$77
|
||||
sta $3C4F
|
||||
sta $3D27
|
||||
sta $3E67
|
||||
sta $3EEE
|
||||
sta $4147
|
||||
sta $49BF
|
||||
sta $4AEA
|
||||
lda #$EE
|
||||
sta $3D0D
|
||||
sta $3E52
|
||||
lda #$CC
|
||||
sta $3D12
|
||||
sta $3E5A
|
||||
lda #$44
|
||||
sta $3D1A
|
||||
sta $3E62
|
||||
|
||||
lda #$27
|
||||
sta $2971
|
||||
lda #$4C
|
||||
sta $29B8
|
||||
lda #<@callback
|
||||
sta $29B9
|
||||
lda #>@callback
|
||||
sta $29BA
|
||||
|
||||
rts
|
||||
|
||||
@callback
|
||||
lda #$3f
|
||||
jmp $fca8
|
||||
|
||||
@swap_palette2
|
||||
stx $00
|
||||
sty $01
|
||||
ldx #1
|
||||
ldy #$0f
|
||||
bne +
|
||||
|
||||
@swap_palette1
|
||||
stx $00
|
||||
sty $01
|
||||
ldx #4
|
||||
ldy #5
|
||||
+ lda #0
|
||||
|
||||
@swap_palette
|
||||
sta @patch5 + 1
|
||||
pha
|
||||
and #$f0
|
||||
sta @patch3 + 1
|
||||
pla
|
||||
and #$0f
|
||||
sta @patch4 + 1
|
||||
tya
|
||||
sta @patch1 + 1
|
||||
asl
|
||||
tay
|
||||
dey
|
||||
sty @patch2 + 1
|
||||
-- ldy #0
|
||||
- lda ($00), y
|
||||
@patch5
|
||||
cmp #$d1 ; SMC
|
||||
beq ++
|
||||
and #$f0
|
||||
@patch3
|
||||
cmp #$d1 ; SMC
|
||||
beq +
|
||||
lda ($00), y
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
eor ($00), y
|
||||
and #$0f
|
||||
eor ($00), y
|
||||
asl
|
||||
+ and #$f0
|
||||
sta $02
|
||||
lda ($00), y
|
||||
and #$0f
|
||||
@patch4
|
||||
cmp #$d1 ; SMC
|
||||
beq +
|
||||
lda ($00), y
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
lda ($00), y
|
||||
rol
|
||||
and #$0f
|
||||
+ ora $02
|
||||
sta $02
|
||||
lda $02
|
||||
sta ($00), y
|
||||
++ iny
|
||||
@patch1
|
||||
cpy #$d1 ; SMC
|
||||
bcc -
|
||||
lda $00
|
||||
@patch2
|
||||
adc #$d1 ; SMC
|
||||
sta $00
|
||||
bcc +
|
||||
inc $01
|
||||
+ dex
|
||||
bne --
|
||||
rts
|
Loading…
x
Reference in New Issue
Block a user