4cade/src/prelaunch/mapple.a

75 lines
1.4 KiB
Plaintext

;license:MIT
;(c) 2022 by qkumba
!cpu 6502
!to "build/PRELAUNCH.INDEXED/MAPPLE",plain
*=$106
!source "src/prelaunch/common.a"
+ENABLE_ACCEL
jmp skip
!pseudopc $200+*-$100 {
callback
pla
pha
cmp #$5f
beq +
dec $512B
+ jmp $50C0
}
skip
ldy #0
- lda $100,y
sta $200,y
iny
bne -
+RESET_VECTOR_HALF $200
lda #$60
sta $950B
jsr $6C17 ; decompress
+READ_RAM2_NO_WRITE
lda MachineStatus
and #CHEATS_ENABLED
beq +
lda #$ad
sta $4276 ; patch - don't increase lives
sta $4B75 ; patch - don't decrease lives
lda #$4C
sta $50BD
lda #<callback
sta $50BE
lda #>callback
sta $50BF
+
lda MockingboardStuff
beq no_mb
and #7
ora #$C0
ldx #0
mb_page1
ldy $6D00, x
cpy #$C4
bne +
mb_page2
sta $6D00, x
+ inx
bne mb_page1
inc mb_page1+2
inc mb_page2+2
dec pages
bne mb_page1
no_mb
jsr DisableAccelerator
+READ_ROM_NO_WRITE
jmp $4000
pages !byte 3
!if * > $1C0 {
!error "code is too large, ends at ", *
}