riven: hook up some more locations

This commit is contained in:
Vince Weaver 2024-07-28 01:19:47 -04:00
parent 3a657399aa
commit 21fdb06068
16 changed files with 217 additions and 21 deletions

View File

@ -86,6 +86,7 @@ riven_disk02.dsk: QBOOT QLOAD TITLE_02 \
riven_disk03.dsk: QBOOT QLOAD TITLE_03 \
disk03_files/DISK03 \
disk03_files/LEVEL_DOWNSTEPS \
disk03_files/LEVEL_DOWNSTEPS3 \
disk03_files/LEVEL_OUTSIDE
cp $(EMPTY_DISK)/empty.dsk riven_disk03.dsk
$(DOS33_RAW) riven_disk03.dsk 0 0 QBOOT 0 1
@ -95,7 +96,8 @@ riven_disk03.dsk: QBOOT QLOAD TITLE_03 \
$(DOS33_RAW) riven_disk03.dsk 0 8 TITLE_03 0 0
$(DOS33_RAW) riven_disk03.dsk 1 0 QLOAD 0 0
$(DOS33_RAW) riven_disk03.dsk 2 0 disk03_files/LEVEL_DOWNSTEPS 0 0
$(DOS33_RAW) riven_disk03.dsk 16 0 disk03_files/LEVEL_OUTSIDE 0 0
$(DOS33_RAW) riven_disk03.dsk 8 0 disk03_files/LEVEL_DOWNSTEPS3 0 0
$(DOS33_RAW) riven_disk03.dsk 14 0 disk03_files/LEVEL_OUTSIDE 0 0
###
@ -515,6 +517,9 @@ disk02_files/LEVEL_TOP:
disk03_files/LEVEL_DOWNSTEPS:
cd disk03_files && make
disk03_files/LEVEL_DOWNSTEPS3:
cd disk03_files && make
disk03_files/LEVEL_OUTSIDE:
cd disk03_files && make
@ -704,6 +709,7 @@ riven_hgr.2mg: dts_block PROBOOTHD QLOAD_HD \
disk02_files/LEVEL_TOP \
disk03_files/DISK03 \
disk03_files/LEVEL_DOWNSTEPS \
disk03_files/LEVEL_DOWNSTEPS3 \
disk03_files/LEVEL_OUTSIDE \
disk04_files/DISK04 \
disk04_files/LEVEL_TUNNEL3 \
@ -763,7 +769,8 @@ riven_hgr.2mg: dts_block PROBOOTHD QLOAD_HD \
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 2 14 0` disk02_files/LEVEL_TOP 0 0
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 3 0 2` disk03_files/DISK03 0 0
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 3 2 0` disk03_files/LEVEL_DOWNSTEPS 0 0
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 3 16 0` disk03_files/LEVEL_OUTSIDE 0 0
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 3 8 0` disk03_files/LEVEL_DOWNSTEPS3 0 0
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 3 14 0` disk03_files/LEVEL_OUTSIDE 0 0
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 4 0 2` disk04_files/DISK04 0 0
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 4 27 0` disk04_files/LEVEL_TUNNEL3 0 0
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 5 0 2` disk05_files/DISK05 0 0

View File

@ -85,8 +85,8 @@ Disk02 Map (disk has 35 tracks, each 4k in size)
T 0 = Qboot
T 0.5 = TITLE 1805 bytes 8S = 0T8S (2048) 400B free
T 1 = QLOAD 2314 bytes 16S= 1T0S (4096) 2k free
T 2 = STEPS1 17611 bytes = 6T0S (24576) 7k free
T 8 = STEPS3 ???? bytes = 6T0S (24576) ?? free
T 2 = STEPS1 21647 bytes = 6T0S (24576) 3k free
T 8 = STEPS3 15872 bytes = 6T0S (24576) 9k free
T 14 = TOP 15658 bytes = 6T0S (24576) 9k free
Disk03 Map (disk has 35 tracks, each 4k in size)
@ -95,8 +95,8 @@ T 0 = Qboot
T 0.5 = TITLE 1805 bytes 8S = 0T8S (2048) 400B free
T 1 = QLOAD 2314 bytes 16S= 1T0S (4096) 2k free
T 2 = DOWNSTEPS 18318 bytes = 6T0S (24576) 6k free
T 9 = STEPS3 ???? bytes = 6T0S (24576) ?? free
T 16 = OUTSIDE 9582 bytes = 6T0S (24576) ?? free
T 8 = DOWNSTEPS3 9993 bytes = 6T0S (24576) 15k free
T 14 = OUTSIDE 9582 bytes = 6T0S (24576) 15k free
Disk04 Map (disk has 35 tracks, each 4k in size)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View File

@ -7,9 +7,11 @@ all: steps1_graphics.inc
steps1_graphics.inc: \
steps1_n.hgr.zx02 steps1_s.hgr.zx02 \
steps1_e.hgr.zx02 \
steps2_n.hgr.zx02 steps2_s.hgr.zx02
echo "steps1_n_zx02: .incbin \"steps1_n.hgr.zx02\"" > steps1_graphics.inc
echo "steps1_s_zx02: .incbin \"steps1_s.hgr.zx02\"" >> steps1_graphics.inc
echo "steps1_e_zx02: .incbin \"steps1_e.hgr.zx02\"" >> steps1_graphics.inc
echo "steps2_n_zx02: .incbin \"steps2_n.hgr.zx02\"" >> steps1_graphics.inc
echo "steps2_s_zx02: .incbin \"steps2_s.hgr.zx02\"" >> steps1_graphics.inc

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@ -17,9 +17,9 @@ location0:
.byte $ff ; west exit_dir
.word steps1_n_zx02 ; north bg
.word steps1_s_zx02 ; south bg
.word $0000 ; east bg
.word steps1_e_zx02 ; east bg
.word $0000 ; west bg
.byte BG_NORTH|BG_SOUTH ; all bgs
.byte BG_NORTH|BG_SOUTH|BG_EAST
.byte $ff ; special exit
; RIVEN_STEPS2 -- second level of steps

View File

@ -3,7 +3,7 @@ include ../../../Makefile.inc
LINKER_SCRIPTS = ../../../linker_scripts/
all: DISK03 LEVEL_DOWNSTEPS LEVEL_OUTSIDE
all: DISK03 LEVEL_DOWNSTEPS LEVEL_DOWNSTEPS3 LEVEL_OUTSIDE
####
@ -39,25 +39,42 @@ level_downsteps.o: level_downsteps.s \
####
LEVEL_DOWNSTEPS3: level_downsteps3.o
ld65 -o LEVEL_DOWNSTEPS3 level_downsteps3.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
level_downsteps3.o: level_downsteps3.s \
../zp.inc ../hardware.inc ../qload.inc \
../common_defines.inc disk03_defines.inc \
leveldata_downsteps3.inc \
graphics_downsteps3/downsteps3_graphics.inc
ca65 -o level_downsteps3.o level_downsteps3.s -l level_downsteps3.lst
####
graphics_outside/outside_graphics.inc:
cd graphics_outside && make
graphics_downsteps/downsteps_graphics.inc:
cd graphics_downsteps && make
graphics_downsteps4/downsteps4_graphics.inc:
cd graphics_downsteps4 && make
####
clean:
rm -f *~ *.o *.lst DISK03 \
LEVEL_OUTSIDE LEVEL_DOWNSTEPS
LEVEL_OUTSIDE LEVEL_DOWNSTEPS LEVEL_DOWNSTEPS3
####
distclean:
rm -f *~ *.o *.lst DISK03 \
LEVEL_OUTSIDE LEVEL_DOWNSTEPS
LEVEL_OUTSIDE LEVEL_DOWNSTEPS LEVEL_DOWNSTEPS3
cd graphics_outside && make clean
cd graphics_downsteps && make clean
cd graphics_downsteps3 && make clean

View File

@ -10,19 +10,19 @@ which_disk_bin:
load_address_array:
.byte $40,$40,$40,$40 ; TITLE, DSTEPS1,DSTEPS3,OUTSIDE
.byte $40,$00,$00,$00 ;
.byte $40,$00,$00,$00 ; CAVE
track_array:
.byte 0, 2, 9,16 ; TITLE, DSTEPS1,DSTEPS3,OUTSIDE
.byte 22,0,0,0 ;
.byte 0, 2, 8,14 ; TITLE, DSTEPS1,DSTEPS3,OUTSIDE
.byte 20,0,0,0 ; CAVE
sector_array:
.byte 8, 0, 0, 0 ; TITLE, DSTEPS1,DSTEPS3,OUTSIDE
.byte 0,0,0,0 ;
.byte 0,0,0,0 ; CAVE
length_array:
.byte 8, 96,96, 96 ; TITLE, DSTEPS1,DSTEPS3,OUTSIDE
.byte 80,0,0,0
.byte 96,0,0,0 ; CAVE
disk_exit_disk: ; note: not BCD anymore

View File

@ -1,6 +1,6 @@
LOAD_TITLE_03 = 0
LOAD_DSTEPS1 = 1
LOAD_DSTPES3 = 2
LOAD_DSTEPS3 = 2
LOAD_OUTSIDE = 3
;================================
@ -11,6 +11,10 @@ LOAD_OUTSIDE = 3
RIVEN_DOWN1 = 0
RIVEN_DOWN2 = 1
; DSTEPS3
RIVEN_DOWN3 = 0
; OUTSIDE
RIVEN_OUTSIDE = 0

View File

@ -0,0 +1,29 @@
include ../../../../Makefile.inc
ZX02 = ~/research/6502_compression/zx02.git/build/zx02 -f
PNG_TO_HGR = ../../../../utils/hgr-utils/png2hgr
all: downsteps_graphics.inc
downsteps_graphics.inc: \
downsteps3_n.hgr.zx02 downsteps3_s.hgr.zx02
echo "downsteps3_n_zx02: .incbin \"downsteps3_n.hgr.zx02\"" > downsteps3_graphics.inc
echo "downsteps3_s_zx02: .incbin \"downsteps3_s.hgr.zx02\"" >> downsteps3_graphics.inc
####
%.hgr: %.png
$(PNG_TO_HGR) $< > $@
%.hgr.zx02: %.hgr
$(ZX02) -f $< $@
####
clean:
rm -f *~ *.o *.lst *.zx02 *.hgr downsteps_graphics.inc

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

@ -0,0 +1,113 @@
; Riven -- heading down the steps some more
; by deater (Vince Weaver) <vince@deater.net>
; Zero Page
.include "../zp.inc"
.include "../hardware.inc"
.include "../common_defines.inc"
.include "../qload.inc"
.include "disk03_defines.inc"
downsteps3_start:
;===================
; init screen
;===================
; jsr TEXT
; jsr HOME
bit KEYRESET
bit SET_GR
bit PAGE1
bit HIRES
bit FULLGR
;========================
; set up location
;========================
lda #<locations
sta LOCATIONS_L
lda #>locations
sta LOCATIONS_H
lda #0
sta DRAW_PAGE
sta LEVEL_OVER
lda #0
sta JOYSTICK_ENABLED
sta UPDATE_POINTER
lda #1
sta CURSOR_VISIBLE
lda #20
sta CURSOR_X
sta CURSOR_Y
;===================================
; init
;===================================
; done in title
; lda #$20
; sta HGR_PAGE
; jsr hgr_make_tables
jsr change_location
jsr save_bg_14x14 ; save old bg
game_loop:
;===================================
; draw pointer
;===================================
jsr draw_pointer
;===================================
; handle keypress/joystick
;===================================
jsr handle_keypress
;===================================
; increment frame count
;===================================
inc FRAMEL
bne frame_no_oflo
inc FRAMEH
frame_no_oflo:
;====================================
; check level over
;====================================
lda LEVEL_OVER
bne really_exit
jmp game_loop
really_exit:
rts
;==========================
; includes
;==========================
.include "graphics_downsteps3/downsteps3_graphics.inc"
.include "leveldata_downsteps3.inc"

View File

@ -24,11 +24,11 @@ location0:
; RIVEN_DOWN2 -- continuing down
location1:
.byte LOAD_OUTSIDE<<4|RIVEN_OUTSIDE ; north exit
.byte LOAD_DSTEPS3<<4|RIVEN_DOWN3 ; north exit
.byte RIVEN_DOWN1 ; south exit
.byte $ff ; east exit
.byte $ff ; west exit
.byte DIRECTION_E ; north exit_dir
.byte DIRECTION_N ; north exit_dir
.byte DIRECTION_S ; south exit_dir
.byte $ff ; east exit_dir
.byte $ff ; west exit_dir

View File

@ -0,0 +1,24 @@
;===============================================
; level data for going down steps again
;===============================================
locations:
.word location0
; RIVEN_DOWN3 -- starting down
location0:
.byte LOAD_OUTSIDE<<4|RIVEN_OUTSIDE ; north exit
.byte LOAD_DSTEPS1<<4|RIVEN_DOWN2 ; south exit
.byte $ff ; east exit
.byte $ff ; west exit
.byte DIRECTION_E ; north exit_dir
.byte DIRECTION_S ; south exit_dir
.byte $ff ; east exit_dir
.byte $ff ; west exit_dir
.word downsteps3_n_zx02 ; north bg
.word downsteps3_s_zx02 ; south bg
.word $0000 ; east bg
.word $0000 ; west bg
.byte BG_NORTH|BG_SOUTH
.byte $ff ; special exit

View File

@ -8,7 +8,7 @@ locations:
; RIVEN_OUTSIDE -- outside the door
location0:
.byte $FF ; north exit
.byte LOAD_DSTEPS1<<4|RIVEN_DOWN2 ; south exit
.byte LOAD_DSTEPS3<<4|RIVEN_DOWN3 ; south exit
.byte $ff ; east exit
.byte $ff ; west exit
.byte $FF ; north exit_dir

View File

@ -567,7 +567,7 @@ riven_title_image:
;01234567890123456789012345678901234567890
title_text:
.byte 0, 0,"LOADING RIVEN SUBSET DISK 00 V0.08",0
.byte 0, 0,"LOADING RIVEN SUBSET DISK 00 V0.09",0
;
;