title: hook up to the loader

This commit is contained in:
Vince Weaver 2020-01-26 12:55:29 -05:00
parent eb1360f0e0
commit 24bdaf795d
5 changed files with 52 additions and 26 deletions

View File

@ -0,0 +1,12 @@
MEMORY {
ZP: start = $00, size = $1A, type = rw;
RAM: start = $D00, 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;
}

View File

@ -7,10 +7,10 @@ PNG2LZ4 = ../gr-utils/png2lz4
all: ootw.dsk ootw_side2.dsk
ootw.dsk: HELLO LOADER INTRO OOTW_C1 OOTW_C2 OOTW_C3 OOTW_C4 OOTW_C5
ootw.dsk: HELLO TITLE INTRO OOTW_C1 OOTW_C2 OOTW_C3 OOTW_C4 OOTW_C5
cp empty.dsk ootw.dsk
$(DOS33) -y ootw.dsk SAVE A HELLO
$(DOS33) -y ootw.dsk BSAVE -a 0x1400 LOADER
$(DOS33) -y ootw.dsk BSAVE -a 0xd00 TITLE
$(DOS33) -y ootw.dsk BSAVE -a 0x1700 INTRO
$(DOS33) -y ootw.dsk BSAVE -a 0x1700 OOTW_C1
$(DOS33) -y ootw.dsk BSAVE -a 0x1700 OOTW_C2
@ -20,11 +20,10 @@ ootw.dsk: HELLO LOADER INTRO OOTW_C1 OOTW_C2 OOTW_C3 OOTW_C4 OOTW_C5
# $(DOS33) -y ootw.dsk BSAVE -a 0x1700 AUDIO_TEST
# $(DOS33) -y ootw.dsk BSAVE -a 0x2000 COMPRESS-TEST
ootw_side2.dsk: HELLO TITLE LOADER2 ENDING OOTW_C15
ootw_side2.dsk: HELLO TITLE ENDING OOTW_C15
cp empty.dsk ootw_side2.dsk
$(DOS33) -y ootw_side2.dsk SAVE A HELLO HELLO
$(DOS33) -y ootw_side2.dsk BSAVE -a 0x1000 TITLE
$(DOS33) -y ootw_side2.dsk BSAVE -a 0x1400 LOADER2 LOADER
$(DOS33) -y ootw_side2.dsk BSAVE -a 0xd00 TITLE
$(DOS33) -y ootw_side2.dsk BSAVE -a 0x1700 OOTW_C15
$(DOS33) -y ootw_side2.dsk BSAVE -a 0x1700 ENDING
@ -275,7 +274,7 @@ loader2.o: loader2.s
####
TITLE: title.o
ld65 -o TITLE title.o -C ../linker_scripts/apple2_1000.inc
ld65 -o TITLE title.o -C ../linker_scripts/apple2_d00.inc
title.o: title.s
ca65 -o title.o title.s -l title.lst
@ -323,7 +322,7 @@ compress_test.o: compress_test.s lz4_decode.s compress_test.inc
#####
clean:
rm -f *~ *.o *.lst *.lz4 HELLO \
rm -f *~ *.o *.lst *.lz4 HELLO TITLE \
OOTW_C1 OOTW_C2 OOTW_C3 OOTW_C4 INTRO LOADER \
COMPRESS-TEST AUDIO_TEST \
intro_data_01 intro_data_04 intro_data_06 \

View File

@ -162,6 +162,9 @@ ootw2 memory squeeze:
LOADER=1400 TITLE=1.75k = 7 pages = load at $D00
L2 Memory map:
00 zero page

View File

@ -14,7 +14,7 @@ filbuf = $3D6 ; filbuf: .res 4 ; = bit2tbl+86
; added code to patch it to run from current disk slot -- vmw
WHICH_LOAD = $05 ; thing to load
; WHICH_LOAD = $05 ; thing to load
adrlo = $26 ; constant from boot prom
adrhi = $27 ; constant from boot prom
tmpsec = $3c ; constant from boot prom
@ -22,14 +22,14 @@ filbuf = $3D6 ; filbuf: .res 4 ; = bit2tbl+86
sizelo = $44
sizehi = $45
secsize = $46
TEMPY = $fa
namlo = $fb
namhi = $fc
namlo = $f8
namhi = $f9
; TEMPY = $fa
step = $fd ; state for stepper motor
tmptrk = $fe ; temporary copy of current track
phase = $ff ; current phase for /seek
OUTL = $fe ; for picking filename
OUTH = $ff
; OUTL = $fe ; for picking filename
; OUTH = $ff
dirbuf = $c00
; note, don't put this immediately below

View File

@ -10,6 +10,7 @@ title:
bit TEXT
bit PAGE0
jsr HOME
lda #<title_text
sta OUTL
@ -76,8 +77,18 @@ up_offset:
jmp title_loop
all_done:
jmp all_done
print_help_and_go:
jsr HOME
lda #<directions_text
sta OUTL
lda #>directions_text
sta OUTH
jsr move_and_print_list
ready_to_load:
jmp $1400 ; LOADER starts here
.include "text_print.s"
.include "gr_offsets.s"
@ -280,17 +291,18 @@ menu_items: ; 23 wide
.byte 8,0,"ENDING ",0
; 160 POKE 5,A
directions_text:
.byte 8, 0,"LOADING (BE PATIENT...)",0
.byte 0, 5,"CONTROLS:",0
.byte 3, 6, "A OR <- : MOVE LEFT",0
.byte 3, 7, "D OR -> : MOVE RIGHT",0
.byte 3, 8, "W OR UP : JUMP",0
.byte 3, 9, "S OR DOWN : CROUCH / PICKUP",0
.byte 3,10, "SPACEBAR : KICK / SHOOT",0
.byte 3,11, "L : CHARGE GUN",0
.byte 3,12, "ESC : QUITS",0
.byte 255
.align $100
; 305 HTAB 8:PRINT "LOADING (BE PATIENT...)"
; 310 PRINT:PRINT:PRINT:PRINT
; 315 PRINT "CONTROLS:"
; 320 PRINT " A OR <- : MOVE LEFT"
; 325 PRINT " D OR -> : MOVE RIGHT"
; 340 PRINT " W OR UP : JUMP"
; 345 PRINT " S OR DOWN : CROUCH / PICKUP"
; 350 PRINT " SPACEBAR : KICK / SHOOT"
; 355 PRINT " L : CHARGE GUN"
; 360 PRINT " ESC : QUITS"
.include "loader.s"