;license:MIT ;(c) 2021 by Frank M. !cpu 6502 !to "res/DEMO/WARP.DESTROYER",plain *=$320 !source "src/constants.a" ; no code in these !source "src/macros.a" +READ_RAM2_WRITE_RAM2 jsr EnableAccelerator ;+LOAD_FILE_KEEP_DIR ldx #0 ; read to main memory stx ldrhi stx ldrlo +LDADDR title jsr iLoadFileDirect ldx #17-1 ; we also need to copy the length byte - lda newpath,x sta $BFD0,x dex bpl - +READ_ROM_NO_WRITE lda #$4C sta $893 jsr $800 ; decompress, show title ldx #1 stx $6692 dex stx $669C ; reset vector patch lda #$B0 sta $76D1 lda #$13 ; disable unknown hardware support sta $76D2 ; otherwise hangs on IIgs lda #$A9 sta $7AA6 lda #$CB sta $7AA6+1 lda #$EA sta $7AA6+2 ; auto-select keyboard control lda #$D0 sta $65D6 ; disable sound +DISABLE_ACCEL lda #$60 sta $8BB lda #0 jsr $896 ; memory move, show second title lda #$4C sta $8051 sta $8107 sta $8157 sta $839D lda #0 sta $8051+1 sta $8107+1 sta $8157+1 sta $839D+1 lda #1 sta $8051+2 sta $8107+2 sta $8157+2 sta $839D+2 ; set exits jmp $667D newpath !byte 16 !text "X/WARP.DESTROYER" title !byte x_e-x_b x_b !text "X/WARP.DESTROYER/WARP.DESTROYER" x_e !if * > $3F0 { !error "code is too large, ends at ", * }