mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-03-03 12:31:32 +00:00
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
|
||||
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
|
||||
ca65 -o qload.o qload.s -l qload.lst
|
||||
|
@ -7,6 +7,7 @@
|
||||
.include "hardware.inc"
|
||||
.include "zp.inc"
|
||||
|
||||
.include "qload.inc"
|
||||
|
||||
|
||||
|
||||
@ -24,10 +25,6 @@ peasant_quest:
|
||||
|
||||
; 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
|
||||
sta PT3_LOC+$C9+$4
|
||||
|
||||
|
@ -116,7 +116,7 @@ done_knight:
|
||||
; after OK stuff goes on here
|
||||
|
||||
sei ; turn off music
|
||||
jsr pt3_clear_ay_both
|
||||
jsr clear_ay_both
|
||||
|
||||
jsr draw_peasant
|
||||
|
||||
|
@ -3,11 +3,11 @@
|
||||
|
||||
; Paramaters for loading QLOAD
|
||||
|
||||
sectors = 18 ; user-defined
|
||||
sectors = 21 ; user-defined
|
||||
firsttrk = 1 ; user-defined, first track to read
|
||||
firstsec = 0 ; user-defined, first sector to read
|
||||
address = $0E ; user-defined
|
||||
entry = $E00 ; user-defined
|
||||
address = $0B ; user-defined
|
||||
entry = $B00 ; user-defined
|
||||
version = 1
|
||||
|
||||
;memory usage:
|
||||
|
13
games/peasant/qload.inc
Normal file
13
games/peasant/qload.inc
Normal file
@ -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"
|
||||
|
||||
@ -20,8 +20,8 @@ tmpsec = $3C
|
||||
qload_start:
|
||||
|
||||
; init the write code
|
||||
; lda WHICH_SLOT
|
||||
; jsr popwr_init
|
||||
lda WHICH_SLOT
|
||||
jsr popwr_init
|
||||
|
||||
; first time entry
|
||||
; start by loading text title
|
||||
@ -233,7 +233,7 @@ length_array:
|
||||
.byte 1,1,1,1,1 ;
|
||||
.byte 1 ;
|
||||
|
||||
;.include "qkumba_popwr.s"
|
||||
.include "qkumba_popwr.s"
|
||||
|
||||
; pt3 player
|
||||
.include "pt3_lib_detect_model.s"
|
||||
@ -256,4 +256,4 @@ peasant_pt3:
|
||||
qload_end:
|
||||
|
||||
;.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 "zp.inc"
|
||||
|
||||
.include "qload.inc"
|
||||
|
||||
title:
|
||||
jsr HGR2 ; Hi-res graphics, no text at bottom
|
||||
@ -14,13 +15,6 @@ title:
|
||||
; 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
|
||||
|
@ -109,3 +109,4 @@ VGI_RXRUN = P3
|
||||
VGI_RYRUN = P4
|
||||
VGI_RCOLOR2 = P5 ; only for dither
|
||||
COUNT = TEMP5
|
||||
|
||||
|
12
linker_scripts/apple2_b00.inc
Normal file
12
linker_scripts/apple2_b00.inc
Normal file
@ -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…
x
Reference in New Issue
Block a user