2019-12-30 04:34:18 +00:00
|
|
|
;license:MIT
|
2020-07-16 12:54:20 +00:00
|
|
|
;(c) 2019 by qkumba/Tom Greene/Frank M.
|
2019-12-30 04:34:18 +00:00
|
|
|
|
|
|
|
!cpu 6502
|
|
|
|
!to "build/PRELAUNCH/BLACK.MAGIC",plain
|
|
|
|
*=$106
|
|
|
|
|
|
|
|
!source "src/prelaunch/common.a"
|
|
|
|
|
2020-07-16 12:54:20 +00:00
|
|
|
; acceleration has problems with Fastchip
|
|
|
|
; let's remove it
|
2020-07-18 20:58:06 +00:00
|
|
|
|
|
|
|
lda #<reset ; fix reset during title
|
|
|
|
sta $9AE
|
|
|
|
sta $80FC
|
|
|
|
|
2019-12-30 04:34:18 +00:00
|
|
|
lda #$60
|
|
|
|
sta $9C2
|
|
|
|
jsr $800 ; decompress
|
|
|
|
|
|
|
|
lda #$60
|
|
|
|
sta $1B2D
|
|
|
|
sta $D6E6
|
|
|
|
jsr $1B00
|
2020-07-18 20:58:06 +00:00
|
|
|
lda #<callback1
|
|
|
|
sta $D7E9
|
|
|
|
lda #>callback1
|
|
|
|
sta $D7EA
|
2019-12-30 04:34:18 +00:00
|
|
|
jsr $D000
|
2020-07-18 20:58:06 +00:00
|
|
|
lda #<callback2
|
2019-12-30 04:34:18 +00:00
|
|
|
sta $8D5
|
2020-07-18 20:58:06 +00:00
|
|
|
lda #>callback2
|
2019-12-30 04:34:18 +00:00
|
|
|
sta $8D6
|
|
|
|
jmp $800
|
|
|
|
|
2020-07-18 20:58:06 +00:00
|
|
|
callback1
|
|
|
|
lda #<reset
|
|
|
|
sta $5029 ; fix tamper check
|
|
|
|
sta $80FC ; re-cloned to $FFFC
|
|
|
|
jmp $5000
|
|
|
|
|
|
|
|
callback2
|
2020-07-15 11:55:15 +00:00
|
|
|
lda #$4C
|
|
|
|
sta $D6EB
|
2019-12-30 04:34:18 +00:00
|
|
|
jsr $D003
|
2019-12-30 23:18:14 +00:00
|
|
|
ldx #5
|
|
|
|
- lda reset, x
|
|
|
|
sta $4182, x
|
|
|
|
dex
|
|
|
|
bpl -
|
2020-03-26 16:59:57 +00:00
|
|
|
lda #$20
|
|
|
|
sta $D6EB
|
2020-07-18 20:58:06 +00:00
|
|
|
lda #$63 ; back to original vector
|
|
|
|
sta $3F2
|
|
|
|
sta $FFFC
|
2020-08-12 15:55:52 +00:00
|
|
|
+READ_RAM2_WRITE_RAM2 ; fix on //c+
|
2020-07-15 11:55:15 +00:00
|
|
|
jmp $D6EE
|
2019-12-30 04:34:18 +00:00
|
|
|
|
2019-12-30 23:18:14 +00:00
|
|
|
reset
|
|
|
|
+READ_ROM_NO_WRITE
|
|
|
|
jmp $FAA6
|
|
|
|
|
2019-12-30 04:34:18 +00:00
|
|
|
!if * > $1C0 {
|
|
|
|
!error "code is too large, ends at ", *
|
|
|
|
}
|