peasant: move qload earlier and re-enable savefile support
This commit is contained in:
parent
5077f7eddb
commit
60a5c525f8
|
@ -38,7 +38,7 @@ qboot_sector.o: qboot_sector.s qboot_stage2.s
|
||||||
###
|
###
|
||||||
|
|
||||||
QLOAD: qload.o
|
QLOAD: qload.o
|
||||||
ld65 -o QLOAD qload.o -C $(LINKER_SCRIPTS)/apple2_e00.inc
|
ld65 -o QLOAD qload.o -C $(LINKER_SCRIPTS)/apple2_b00.inc
|
||||||
|
|
||||||
qload.o: qload.s qboot.inc
|
qload.o: qload.s qboot.inc
|
||||||
ca65 -o qload.o qload.s -l qload.lst
|
ca65 -o qload.o qload.s -l qload.lst
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
.include "hardware.inc"
|
.include "hardware.inc"
|
||||||
.include "zp.inc"
|
.include "zp.inc"
|
||||||
|
|
||||||
|
.include "qload.inc"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -24,10 +25,6 @@ peasant_quest:
|
||||||
|
|
||||||
; hack! modify the PT3 file to ignore the latter half
|
; hack! modify the PT3 file to ignore the latter half
|
||||||
|
|
||||||
PT3_LOC=$E00+$E00
|
|
||||||
pt3_init_song=$e00+$A56
|
|
||||||
pt3_clear_ay_both=$e00+$CDF
|
|
||||||
|
|
||||||
lda #$ff ; end after 4 patterns
|
lda #$ff ; end after 4 patterns
|
||||||
sta PT3_LOC+$C9+$4
|
sta PT3_LOC+$C9+$4
|
||||||
|
|
||||||
|
|
|
@ -116,7 +116,7 @@ done_knight:
|
||||||
; after OK stuff goes on here
|
; after OK stuff goes on here
|
||||||
|
|
||||||
sei ; turn off music
|
sei ; turn off music
|
||||||
jsr pt3_clear_ay_both
|
jsr clear_ay_both
|
||||||
|
|
||||||
jsr draw_peasant
|
jsr draw_peasant
|
||||||
|
|
||||||
|
|
|
@ -3,11 +3,11 @@
|
||||||
|
|
||||||
; Paramaters for loading QLOAD
|
; Paramaters for loading QLOAD
|
||||||
|
|
||||||
sectors = 18 ; user-defined
|
sectors = 21 ; user-defined
|
||||||
firsttrk = 1 ; user-defined, first track to read
|
firsttrk = 1 ; user-defined, first track to read
|
||||||
firstsec = 0 ; user-defined, first sector to read
|
firstsec = 0 ; user-defined, first sector to read
|
||||||
address = $0E ; user-defined
|
address = $0B ; user-defined
|
||||||
entry = $E00 ; user-defined
|
entry = $B00 ; user-defined
|
||||||
version = 1
|
version = 1
|
||||||
|
|
||||||
;memory usage:
|
;memory usage:
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
; Danger: if you mess with QLOAD you'll have to update these
|
||||||
|
|
||||||
|
QLOAD_LOC=$B00
|
||||||
|
pt3_init_song=QLOAD_LOC+$BF9
|
||||||
|
clear_ay_both=QLOAD_LOC+$E82
|
||||||
|
reset_ay_both=QLOAD_LOC+$E40
|
||||||
|
mockingboard_setup_interrupt=QLOAD_LOC+$E8F
|
||||||
|
mockingboard_init=QLOAD_LOC+$E31
|
||||||
|
mockingboard_patch=QLOAD_LOC+$F67
|
||||||
|
mockingboard_detect=QLOAD_LOC+$F38
|
||||||
|
|
||||||
|
PT3_LOC=QLOAD_LOC+$1000
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
; Loader for MIST
|
; Loader for Peasant's Quest
|
||||||
|
|
||||||
.include "zp.inc"
|
.include "zp.inc"
|
||||||
|
|
||||||
|
@ -20,8 +20,8 @@ tmpsec = $3C
|
||||||
qload_start:
|
qload_start:
|
||||||
|
|
||||||
; init the write code
|
; init the write code
|
||||||
; lda WHICH_SLOT
|
lda WHICH_SLOT
|
||||||
; jsr popwr_init
|
jsr popwr_init
|
||||||
|
|
||||||
; first time entry
|
; first time entry
|
||||||
; start by loading text title
|
; start by loading text title
|
||||||
|
@ -233,7 +233,7 @@ length_array:
|
||||||
.byte 1,1,1,1,1 ;
|
.byte 1,1,1,1,1 ;
|
||||||
.byte 1 ;
|
.byte 1 ;
|
||||||
|
|
||||||
;.include "qkumba_popwr.s"
|
.include "qkumba_popwr.s"
|
||||||
|
|
||||||
; pt3 player
|
; pt3 player
|
||||||
.include "pt3_lib_detect_model.s"
|
.include "pt3_lib_detect_model.s"
|
||||||
|
@ -256,4 +256,4 @@ peasant_pt3:
|
||||||
qload_end:
|
qload_end:
|
||||||
|
|
||||||
;.assert (>qload_end - >qload_start) < $e , error, "loader too big"
|
;.assert (>qload_end - >qload_start) < $e , error, "loader too big"
|
||||||
.assert (>qload_end - >qload_start) < $12 , error, "loader too big"
|
.assert (>qload_end - >qload_start) < $15 , error, "loader too big"
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
.include "hardware.inc"
|
.include "hardware.inc"
|
||||||
.include "zp.inc"
|
.include "zp.inc"
|
||||||
|
|
||||||
|
.include "qload.inc"
|
||||||
|
|
||||||
title:
|
title:
|
||||||
jsr HGR2 ; Hi-res graphics, no text at bottom
|
jsr HGR2 ; Hi-res graphics, no text at bottom
|
||||||
|
@ -14,13 +15,6 @@ title:
|
||||||
; Music
|
; Music
|
||||||
;========================
|
;========================
|
||||||
|
|
||||||
pt3_init_song=$e00+$A56
|
|
||||||
clear_ay_both=$e00+$CDF
|
|
||||||
reset_ay_both=$e00+$C9D
|
|
||||||
mockingboard_setup_interrupt=$e00+$CEC
|
|
||||||
mockingboard_init=$e00+$C8E
|
|
||||||
mockingboard_patch=$e00+$DC4
|
|
||||||
mockingboard_detect=$e00+$D95
|
|
||||||
|
|
||||||
;===================================
|
;===================================
|
||||||
; Setup Mockingboard
|
; Setup Mockingboard
|
||||||
|
|
|
@ -109,3 +109,4 @@ VGI_RXRUN = P3
|
||||||
VGI_RYRUN = P4
|
VGI_RYRUN = P4
|
||||||
VGI_RCOLOR2 = P5 ; only for dither
|
VGI_RCOLOR2 = P5 ; only for dither
|
||||||
COUNT = TEMP5
|
COUNT = TEMP5
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
MEMORY {
|
||||||
|
ZP: start = $00, size = $1A, type = rw;
|
||||||
|
RAM: start = $B00, size = $8E00, file = %O;
|
||||||
|
}
|
||||||
|
|
||||||
|
SEGMENTS {
|
||||||
|
CODE: load = RAM, type = ro, align = $100;
|
||||||
|
RODATA: load = RAM, type = ro;
|
||||||
|
DATA: load = RAM, type = rw;
|
||||||
|
BSS: load = RAM, type = bss, define = yes;
|
||||||
|
ZEROPAGE: load = ZP, type = zp;
|
||||||
|
}
|
Loading…
Reference in New Issue