mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-01-17 03:30:28 +00:00
riven: hook up more of rotating room
This commit is contained in:
parent
2bed77b2f8
commit
f19fff59d2
@ -159,6 +159,7 @@ riven_disk10.dsk: QBOOT QLOAD TITLE_10 \
|
|||||||
disk10_files/LEVEL_CENTER \
|
disk10_files/LEVEL_CENTER \
|
||||||
disk10_files/LEVEL_PILLARS \
|
disk10_files/LEVEL_PILLARS \
|
||||||
disk10_files/LEVEL_15 \
|
disk10_files/LEVEL_15 \
|
||||||
|
disk10_files/LEVEL_21 \
|
||||||
disk10_files/LEVEL_32
|
disk10_files/LEVEL_32
|
||||||
cp $(EMPTY_DISK)/empty.dsk riven_disk10.dsk
|
cp $(EMPTY_DISK)/empty.dsk riven_disk10.dsk
|
||||||
$(DOS33_RAW) riven_disk10.dsk 0 0 QBOOT 0 1
|
$(DOS33_RAW) riven_disk10.dsk 0 0 QBOOT 0 1
|
||||||
@ -169,6 +170,7 @@ riven_disk10.dsk: QBOOT QLOAD TITLE_10 \
|
|||||||
$(DOS33_RAW) riven_disk10.dsk 1 0 QLOAD 0 0
|
$(DOS33_RAW) riven_disk10.dsk 1 0 QLOAD 0 0
|
||||||
$(DOS33_RAW) riven_disk10.dsk 2 0 disk10_files/LEVEL_CENTER 0 0
|
$(DOS33_RAW) riven_disk10.dsk 2 0 disk10_files/LEVEL_CENTER 0 0
|
||||||
$(DOS33_RAW) riven_disk10.dsk 8 0 disk10_files/LEVEL_15 0 0
|
$(DOS33_RAW) riven_disk10.dsk 8 0 disk10_files/LEVEL_15 0 0
|
||||||
|
$(DOS33_RAW) riven_disk10.dsk 11 0 disk10_files/LEVEL_21 0 0
|
||||||
$(DOS33_RAW) riven_disk10.dsk 14 0 disk10_files/LEVEL_32 0 0
|
$(DOS33_RAW) riven_disk10.dsk 14 0 disk10_files/LEVEL_32 0 0
|
||||||
$(DOS33_RAW) riven_disk10.dsk 23 0 disk10_files/LEVEL_PILLARS 0 0
|
$(DOS33_RAW) riven_disk10.dsk 23 0 disk10_files/LEVEL_PILLARS 0 0
|
||||||
|
|
||||||
@ -647,6 +649,9 @@ disk10_files/LEVEL_PILLARS:
|
|||||||
disk10_files/LEVEL_15:
|
disk10_files/LEVEL_15:
|
||||||
cd disk10_files && make
|
cd disk10_files && make
|
||||||
|
|
||||||
|
disk10_files/LEVEL_21:
|
||||||
|
cd disk10_files && make
|
||||||
|
|
||||||
disk10_files/LEVEL_32:
|
disk10_files/LEVEL_32:
|
||||||
cd disk10_files && make
|
cd disk10_files && make
|
||||||
|
|
||||||
@ -877,6 +882,7 @@ riven_hgr.2mg: dts_block PROBOOTHD QLOAD_HD \
|
|||||||
disk10_files/LEVEL_CENTER \
|
disk10_files/LEVEL_CENTER \
|
||||||
disk10_files/LEVEL_PILLARS \
|
disk10_files/LEVEL_PILLARS \
|
||||||
disk10_files/LEVEL_15 \
|
disk10_files/LEVEL_15 \
|
||||||
|
disk10_files/LEVEL_21 \
|
||||||
disk10_files/LEVEL_32 \
|
disk10_files/LEVEL_32 \
|
||||||
disk38_files/DISK38 \
|
disk38_files/DISK38 \
|
||||||
disk38_files/LEVEL_PROJECTOR \
|
disk38_files/LEVEL_PROJECTOR \
|
||||||
@ -958,6 +964,7 @@ riven_hgr.2mg: dts_block PROBOOTHD QLOAD_HD \
|
|||||||
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 10 0 2` disk10_files/DISK10 0 0
|
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 10 0 2` disk10_files/DISK10 0 0
|
||||||
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 10 2 0` disk10_files/LEVEL_CENTER 0 0
|
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 10 2 0` disk10_files/LEVEL_CENTER 0 0
|
||||||
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 10 8 0` disk10_files/LEVEL_15 0 0
|
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 10 8 0` disk10_files/LEVEL_15 0 0
|
||||||
|
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 10 11 0` disk10_files/LEVEL_21 0 0
|
||||||
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 10 14 0` disk10_files/LEVEL_32 0 0
|
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 10 14 0` disk10_files/LEVEL_32 0 0
|
||||||
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 10 23 0` disk10_files/LEVEL_PILLARS 0 0
|
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 10 23 0` disk10_files/LEVEL_PILLARS 0 0
|
||||||
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 38 0 2` disk38_files/DISK38 0 0
|
$(PRODOS_RAW) riven_hgr.2mg `./dts_block 38 0 2` disk38_files/DISK38 0 0
|
||||||
|
@ -4,7 +4,7 @@ LINKER_SCRIPTS = ../../../linker_scripts/
|
|||||||
|
|
||||||
|
|
||||||
all: DISK10 LEVEL_CENTER LEVEL_PILLARS \
|
all: DISK10 LEVEL_CENTER LEVEL_PILLARS \
|
||||||
LEVEL_15 LEVEL_32
|
LEVEL_15 LEVEL_21 LEVEL_32
|
||||||
|
|
||||||
####
|
####
|
||||||
|
|
||||||
@ -41,6 +41,19 @@ level_15.o: level_15.s \
|
|||||||
|
|
||||||
####
|
####
|
||||||
|
|
||||||
|
LEVEL_21: level_21.o
|
||||||
|
ld65 -o LEVEL_21 level_21.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||||
|
|
||||||
|
level_21.o: level_21.s \
|
||||||
|
../zp.inc ../hardware.inc ../qload.inc \
|
||||||
|
../common_defines.inc disk10_defines.inc \
|
||||||
|
leveldata_21.inc \
|
||||||
|
graphics_21/21_graphics.inc
|
||||||
|
ca65 -o level_21.o level_21.s -l level_21.lst
|
||||||
|
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
LEVEL_32: level_32.o
|
LEVEL_32: level_32.o
|
||||||
ld65 -o LEVEL_32 level_32.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
ld65 -o LEVEL_32 level_32.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||||
|
|
||||||
@ -76,6 +89,9 @@ graphics_pillars/pillars_graphics.inc:
|
|||||||
graphics_15/15_graphics.inc:
|
graphics_15/15_graphics.inc:
|
||||||
cd graphics_15 && make
|
cd graphics_15 && make
|
||||||
|
|
||||||
|
graphics_21/21_graphics.inc:
|
||||||
|
cd graphics_21 && make
|
||||||
|
|
||||||
graphics_32/32_graphics.inc:
|
graphics_32/32_graphics.inc:
|
||||||
cd graphics_32 && make
|
cd graphics_32 && make
|
||||||
|
|
||||||
@ -84,7 +100,7 @@ graphics_32/32_graphics.inc:
|
|||||||
clean:
|
clean:
|
||||||
rm -f *~ *.o *.lst DISK10 \
|
rm -f *~ *.o *.lst DISK10 \
|
||||||
LEVEL_CENTER LEVEL_PILLARS \
|
LEVEL_CENTER LEVEL_PILLARS \
|
||||||
LEVEL_15 LEVEL_32
|
LEVEL_15 LEVEL_21 LEVEL_32
|
||||||
|
|
||||||
|
|
||||||
####
|
####
|
||||||
@ -92,10 +108,11 @@ clean:
|
|||||||
distclean:
|
distclean:
|
||||||
rm -f *~ *.o *.lst DISK10 \
|
rm -f *~ *.o *.lst DISK10 \
|
||||||
LEVEL_CENTER LEVEL_PILLARS \
|
LEVEL_CENTER LEVEL_PILLARS \
|
||||||
LEVEL_15 LEVEL_32
|
LEVEL_15 LEVEL_21 LEVEL_32
|
||||||
cd graphics_center && make clean
|
cd graphics_center && make clean
|
||||||
cd graphics_pillars && make clean
|
cd graphics_pillars && make clean
|
||||||
cd graphics_15 && make clean
|
cd graphics_15 && make clean
|
||||||
|
cd graphics_21 && make clean
|
||||||
cd graphics_32 && make clean
|
cd graphics_32 && make clean
|
||||||
|
|
||||||
|
|
||||||
|
25
games/riven_hgr/disk10_files/graphics_21/Makefile
Normal file
25
games/riven_hgr/disk10_files/graphics_21/Makefile
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
include ../../../../Makefile.inc
|
||||||
|
|
||||||
|
ZX02 = ~/research/6502_compression/zx02.git/build/zx02 -f
|
||||||
|
PNG_TO_HGR = ../../../../utils/hgr-utils/png2hgr
|
||||||
|
|
||||||
|
all: 21_graphics.inc
|
||||||
|
|
||||||
|
21_graphics.inc: \
|
||||||
|
pillars_21_in.hgr.zx02 pillars_21_out.hgr.zx02
|
||||||
|
echo "pillars_21_in_zx02: .incbin \"pillars_21_in.hgr.zx02\"" > 21_graphics.inc
|
||||||
|
echo "pillars_21_out_zx02: .incbin \"pillars_21_out.hgr.zx02\"" >> 21_graphics.inc
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
|
%.hgr: %.png
|
||||||
|
$(PNG_TO_HGR) $< > $@
|
||||||
|
|
||||||
|
%.hgr.zx02: %.hgr
|
||||||
|
$(ZX02) -f $< $@
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *~ *.o *.lst *.zx02 *.hgr 21_graphics.inc
|
||||||
|
|
BIN
games/riven_hgr/disk10_files/graphics_21/pillars_21_in.png
Normal file
BIN
games/riven_hgr/disk10_files/graphics_21/pillars_21_in.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.8 KiB |
BIN
games/riven_hgr/disk10_files/graphics_21/pillars_21_out.png
Normal file
BIN
games/riven_hgr/disk10_files/graphics_21/pillars_21_out.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 7.9 KiB |
156
games/riven_hgr/disk10_files/level_21.s
Normal file
156
games/riven_hgr/disk10_files/level_21.s
Normal file
@ -0,0 +1,156 @@
|
|||||||
|
; Riven -- Inside Rotate room, area 21
|
||||||
|
|
||||||
|
; by deater (Vince Weaver) <vince@deater.net>
|
||||||
|
|
||||||
|
; Zero Page
|
||||||
|
.include "../zp.inc"
|
||||||
|
.include "../hardware.inc"
|
||||||
|
.include "../common_defines.inc"
|
||||||
|
.include "../qload.inc"
|
||||||
|
.include "disk10_defines.inc"
|
||||||
|
|
||||||
|
room_21_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
|
||||||
|
|
||||||
|
;==========================
|
||||||
|
; move to center
|
||||||
|
;==========================
|
||||||
|
move_to_center:
|
||||||
|
|
||||||
|
; if 17 or less, go to center_34
|
||||||
|
; if 23 or more, go to center_45
|
||||||
|
; otherwise, go directly to pillar 4(?)
|
||||||
|
|
||||||
|
lda CURSOR_X
|
||||||
|
cmp #18
|
||||||
|
bcc go_center_34 ; blt
|
||||||
|
|
||||||
|
cmp #23
|
||||||
|
bcs go_center_45 ; bge
|
||||||
|
|
||||||
|
; do nothing
|
||||||
|
|
||||||
|
rts
|
||||||
|
|
||||||
|
go_center_34:
|
||||||
|
lda #LOAD_CENTER
|
||||||
|
sta WHICH_LOAD
|
||||||
|
|
||||||
|
lda #RIVEN_CENTER_34
|
||||||
|
sta LOCATION
|
||||||
|
|
||||||
|
jmp done_dir
|
||||||
|
|
||||||
|
go_center_45:
|
||||||
|
lda #LOAD_CENTER
|
||||||
|
sta WHICH_LOAD
|
||||||
|
|
||||||
|
lda #RIVEN_CENTER_45
|
||||||
|
sta LOCATION
|
||||||
|
|
||||||
|
done_dir:
|
||||||
|
lda #DIRECTION_N
|
||||||
|
sta DIRECTION
|
||||||
|
|
||||||
|
lda #1
|
||||||
|
sta LEVEL_OVER
|
||||||
|
rts
|
||||||
|
|
||||||
|
;==========================
|
||||||
|
; includes
|
||||||
|
;==========================
|
||||||
|
|
||||||
|
|
||||||
|
.include "graphics_21/21_graphics.inc"
|
||||||
|
|
||||||
|
.include "leveldata_21.inc"
|
@ -160,9 +160,7 @@ move_51:
|
|||||||
|
|
||||||
; go to level_15
|
; go to level_15
|
||||||
|
|
||||||
lda #LOAD_15
|
ldx #LOAD_15
|
||||||
sta WHICH_LOAD
|
|
||||||
|
|
||||||
lda #RIVEN_15
|
lda #RIVEN_15
|
||||||
jmp go_edge
|
jmp go_edge
|
||||||
|
|
||||||
@ -225,7 +223,7 @@ move_23:
|
|||||||
; if 12 or less, go to pillar 2
|
; if 12 or less, go to pillar 2
|
||||||
; if 28 or more, go to pillar 3
|
; if 28 or more, go to pillar 3
|
||||||
; if 34 or more, go to center 34
|
; if 34 or more, go to center 34
|
||||||
; otherwise, go directly to level 23
|
; otherwise, go directly to level 32
|
||||||
|
|
||||||
lda CURSOR_X
|
lda CURSOR_X
|
||||||
cmp #6
|
cmp #6
|
||||||
@ -240,9 +238,7 @@ move_23:
|
|||||||
|
|
||||||
; go to level_32
|
; go to level_32
|
||||||
|
|
||||||
lda #LOAD_32
|
ldx #LOAD_32
|
||||||
sta WHICH_LOAD
|
|
||||||
|
|
||||||
lda #RIVEN_32
|
lda #RIVEN_32
|
||||||
jmp go_edge
|
jmp go_edge
|
||||||
|
|
||||||
@ -254,7 +250,7 @@ move_12:
|
|||||||
; if 12 or less, go to pillar 1
|
; if 12 or less, go to pillar 1
|
||||||
; if 28 or more, go to pillar 2
|
; if 28 or more, go to pillar 2
|
||||||
; if 34 or more, go to center 23
|
; if 34 or more, go to center 23
|
||||||
; otherwise, go directly to level 12
|
; otherwise, go directly to level 21
|
||||||
|
|
||||||
lda CURSOR_X
|
lda CURSOR_X
|
||||||
cmp #6
|
cmp #6
|
||||||
@ -267,9 +263,11 @@ move_12:
|
|||||||
cmp #28
|
cmp #28
|
||||||
bcs go_pillar_2 ; bge
|
bcs go_pillar_2 ; bge
|
||||||
|
|
||||||
; go to level_12
|
; go to level_21
|
||||||
|
|
||||||
rts
|
ldx #LOAD_21
|
||||||
|
lda #RIVEN_21
|
||||||
|
jmp go_edge
|
||||||
|
|
||||||
;============================
|
;============================
|
||||||
; go to next center location
|
; go to next center location
|
||||||
@ -304,6 +302,7 @@ done_center:
|
|||||||
;======================
|
;======================
|
||||||
|
|
||||||
go_edge:
|
go_edge:
|
||||||
|
stx WHICH_LOAD
|
||||||
sta LOCATION
|
sta LOCATION
|
||||||
|
|
||||||
lda #DIRECTION_S
|
lda #DIRECTION_S
|
||||||
|
27
games/riven_hgr/disk10_files/leveldata_21.inc
Normal file
27
games/riven_hgr/disk10_files/leveldata_21.inc
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
;===============================================
|
||||||
|
; level data -- rotate room, between pillars 2+1
|
||||||
|
;===============================================
|
||||||
|
|
||||||
|
locations:
|
||||||
|
.word location0
|
||||||
|
|
||||||
|
; RIVEN_21 --
|
||||||
|
|
||||||
|
location0:
|
||||||
|
.byte $ff ; north exit
|
||||||
|
.byte $ff ; south exit
|
||||||
|
.byte $FF ; east exit
|
||||||
|
.byte $FF ; west exit
|
||||||
|
.byte $FF ; north exit_dir
|
||||||
|
.byte DIRECTION_E ; south exit_dir
|
||||||
|
.byte $FF ; east exit_dir
|
||||||
|
.byte $FF ; west exit_dir
|
||||||
|
.word pillars_21_in_zx02 ; north bg
|
||||||
|
.word pillars_21_out_zx02 ; south bg
|
||||||
|
.word $0000 ; east bg
|
||||||
|
.word $0000 ; west bg
|
||||||
|
.byte BG_NORTH|BG_SOUTH
|
||||||
|
.byte DIRECTION_N|DIRECTION_ONLY_POINT ; special exit
|
||||||
|
.byte 7,33
|
||||||
|
.byte 0,180
|
||||||
|
.word move_to_center-1
|
Loading…
x
Reference in New Issue
Block a user