mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-03-03 12:31:32 +00:00
riven: disk40 now working
This commit is contained in:
parent
bded85bc8f
commit
6678816206
@ -7,9 +7,9 @@ EMPTY_DISK = ../../empty_disk/
|
||||
LINKER_SCRIPTS = ../../linker_scripts/
|
||||
|
||||
|
||||
all: riven_disk39.dsk
|
||||
all: riven_disk39.dsk riven_disk40.dsk
|
||||
|
||||
riven_disk39.dsk: QBOOT QLOAD TITLE \
|
||||
riven_disk39.dsk: QBOOT QLOAD_39 TITLE_39 \
|
||||
disk39_files/LEVEL_MAGSTEPS \
|
||||
disk39_files/LEVEL_MAGLEV \
|
||||
disk39_files/LEVEL_OUTSIDE \
|
||||
@ -20,8 +20,8 @@ riven_disk39.dsk: QBOOT QLOAD TITLE \
|
||||
$(DOS33_RAW) riven_disk39.dsk 0 0 QBOOT 0 1
|
||||
$(DOS33_RAW) riven_disk39.dsk 0 2 QBOOT 1 1
|
||||
$(DOS33_RAW) riven_disk39.dsk 0 4 QBOOT 2 1
|
||||
$(DOS33_RAW) riven_disk39.dsk 1 0 QLOAD 0 0
|
||||
$(DOS33_RAW) riven_disk39.dsk 1 8 TITLE 0 0
|
||||
$(DOS33_RAW) riven_disk39.dsk 1 0 QLOAD_39 0 0
|
||||
$(DOS33_RAW) riven_disk39.dsk 1 8 TITLE_39 0 0
|
||||
$(DOS33_RAW) riven_disk39.dsk 2 0 disk39_files/LEVEL_PROJECTOR 0 0
|
||||
$(DOS33_RAW) riven_disk39.dsk 9 0 disk39_files/LEVEL_OUTSIDE 0 0
|
||||
$(DOS33_RAW) riven_disk39.dsk 17 0 disk39_files/LEVEL_MAGSTEPS 0 0
|
||||
@ -29,6 +29,15 @@ riven_disk39.dsk: QBOOT QLOAD TITLE \
|
||||
$(DOS33_RAW) riven_disk39.dsk 25 0 disk39_files/MOVIE_MAGLEV_FLIP 0 0
|
||||
$(DOS33_RAW) riven_disk39.dsk 27 0 disk39_files/MOVIE_MAGLEV_RIDE 0 0
|
||||
|
||||
riven_disk40.dsk: QBOOT QLOAD_40 TITLE_40 \
|
||||
disk40_files/LEVEL_CART
|
||||
cp $(EMPTY_DISK)/empty.dsk riven_disk40.dsk
|
||||
$(DOS33_RAW) riven_disk40.dsk 0 0 QBOOT 0 1
|
||||
$(DOS33_RAW) riven_disk40.dsk 0 2 QBOOT 1 1
|
||||
$(DOS33_RAW) riven_disk40.dsk 0 4 QBOOT 2 1
|
||||
$(DOS33_RAW) riven_disk40.dsk 1 0 QLOAD_40 0 0
|
||||
$(DOS33_RAW) riven_disk40.dsk 1 8 TITLE_40 0 0
|
||||
$(DOS33_RAW) riven_disk40.dsk 2 0 disk40_files/LEVEL_CART 0 0
|
||||
|
||||
###
|
||||
|
||||
@ -40,29 +49,56 @@ qboot_sector.o: qboot_sector.s qboot_stage2.s
|
||||
|
||||
###
|
||||
|
||||
###
|
||||
QLOAD_39: qload_39.o
|
||||
ld65 -o QLOAD_39 qload_39.o -C $(LINKER_SCRIPTS)/apple2_1800.inc
|
||||
|
||||
QLOAD: qload.o
|
||||
ld65 -o QLOAD qload.o -C $(LINKER_SCRIPTS)/apple2_1800.inc
|
||||
|
||||
qload.o: qload.s qboot.inc \
|
||||
qload_39.o: qload.s qboot.inc \
|
||||
zx02_optim.s wait.s \
|
||||
draw_pointer.s log_table.s \
|
||||
disk39_files/disk39_qload.inc \
|
||||
disk39_files/disk39_defines.inc \
|
||||
graphics_sprites/pointer_sprites.inc \
|
||||
hgr_14x14_sprite.s \
|
||||
keyboard.s
|
||||
ca65 -o qload.o qload.s -l qload.lst
|
||||
ca65 -o qload_39.o qload.s -DDISK=39 -l qload_39.lst
|
||||
|
||||
####
|
||||
|
||||
TITLE: title.o
|
||||
ld65 -o TITLE title.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||
QLOAD_40: qload_40.o
|
||||
ld65 -o QLOAD_40 qload_40.o -C $(LINKER_SCRIPTS)/apple2_1800.inc
|
||||
|
||||
title.o: title.s zp.inc hardware.inc \
|
||||
qload_40.o: qload.s qboot.inc \
|
||||
zx02_optim.s wait.s \
|
||||
draw_pointer.s log_table.s \
|
||||
disk40_files/disk40_qload.inc \
|
||||
disk40_files/disk40_defines.inc \
|
||||
graphics_sprites/pointer_sprites.inc \
|
||||
hgr_14x14_sprite.s \
|
||||
keyboard.s
|
||||
ca65 -o qload_40.o qload.s -DDISK=40 -l qload_40.lst
|
||||
|
||||
####
|
||||
|
||||
TITLE_39: title_39.o
|
||||
ld65 -o TITLE_39 title_39.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||
|
||||
title_39.o: title.s zp.inc hardware.inc \
|
||||
qload.inc wait_a_bit.s \
|
||||
hgr_tables.s \
|
||||
graphics_title/riven_title.hgr.zx02
|
||||
ca65 -o title.o title.s -l title.lst
|
||||
ca65 -o title_39.o title.s -DDISK=39 -l title_39.lst
|
||||
|
||||
####
|
||||
|
||||
TITLE_40: title_40.o
|
||||
ld65 -o TITLE_40 title_40.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||
|
||||
title_40.o: title.s zp.inc hardware.inc \
|
||||
qload.inc wait_a_bit.s \
|
||||
hgr_tables.s \
|
||||
graphics_title/riven_title.hgr.zx02
|
||||
ca65 -o title_40.o title.s -DDISK=40 -l title_40.lst
|
||||
|
||||
|
||||
####
|
||||
|
||||
@ -84,71 +120,10 @@ disk39_files/MOVIE_MAGLEV_FLIP:
|
||||
disk39_files/MOVIE_MAGLEV_RIDE:
|
||||
cd disk39_files && make
|
||||
|
||||
#LEVEL_OUTSIDE: level_outside.o
|
||||
# ld65 -o LEVEL_OUTSIDE level_outside.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||
|
||||
#level_outside.o: level_outside.s zp.inc hardware.inc \
|
||||
# qload.inc \
|
||||
# disk39_files/leveldata_outside.inc \
|
||||
# graphics_outside/outside_graphics.inc
|
||||
# ca65 -o level_outside.o level_outside.s -l level_outside.lst
|
||||
|
||||
####
|
||||
|
||||
#LEVEL_PROJECTOR: level_projector.o
|
||||
# ld65 -o LEVEL_PROJECTOR level_projector.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||
|
||||
#level_projector.o: level_projector.s zp.inc hardware.inc \
|
||||
# qload.inc \
|
||||
# disk39_files/leveldata_projector.inc \
|
||||
# graphics_projector/projector_graphics.inc
|
||||
# ca65 -o level_projector.o level_projector.s -l level_projector.lst
|
||||
|
||||
####
|
||||
|
||||
#LEVEL_MAGSTEPS: level_magsteps.o
|
||||
# ld65 -o LEVEL_MAGSTEPS level_magsteps.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||
|
||||
#level_magsteps.o: level_magsteps.s zp.inc hardware.inc \
|
||||
# qload.inc \
|
||||
# disk39_files/leveldata_magsteps.inc \
|
||||
# graphics_magsteps/magsteps_graphics.inc
|
||||
# ca65 -o level_magsteps.o level_magsteps.s -l level_magsteps.lst
|
||||
|
||||
####
|
||||
|
||||
#LEVEL_MAGLEV: level_maglev.o
|
||||
# ld65 -o LEVEL_MAGLEV level_maglev.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||
|
||||
#level_maglev.o: level_maglev.s zp.inc hardware.inc \
|
||||
# qload.inc \
|
||||
# disk39_files/leveldata_maglev.inc \
|
||||
# graphics_maglev/maglev_graphics.inc
|
||||
# ca65 -o level_maglev.o level_maglev.s -l level_maglev.lst
|
||||
|
||||
####
|
||||
|
||||
#MOVIE_MAGLEV_FLIP: movie_maglev_flip.o
|
||||
# ld65 -o MOVIE_MAGLEV_FLIP movie_maglev_flip.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||
|
||||
#movie_maglev_flip.o: movie_maglev_flip.s \
|
||||
# zp.inc hardware.inc \
|
||||
# qload.inc \
|
||||
# movie_maglev_flip/movie_maglev_flip.inc
|
||||
# ca65 -o movie_maglev_flip.o movie_maglev_flip.s -l movie_maglev_flip.lst
|
||||
|
||||
####
|
||||
|
||||
#MOVIE_MAGLEV_RIDE: movie_maglev_ride.o
|
||||
# ld65 -o MOVIE_MAGLEV_RIDE movie_maglev_ride.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||
|
||||
#movie_maglev_ride.o: movie_maglev_ride.s \
|
||||
# zp.inc hardware.inc \
|
||||
# qload.inc \
|
||||
# end_message/end_message.gr.zx02 \
|
||||
# movie_maglev_ride/movie_maglev_ride.inc
|
||||
# ca65 -o movie_maglev_ride.o movie_maglev_ride.s -l movie_maglev_ride.lst
|
||||
|
||||
disk40_files/LEVEL_CART:
|
||||
cd disk40_files && make
|
||||
|
||||
|
||||
####
|
||||
@ -164,6 +139,7 @@ graphics_title/riven_title.hgr.zx02:
|
||||
clean:
|
||||
rm -f *~ *.o *.lst QLOAD QBOOT TITLE
|
||||
cd disk39_files && make clean
|
||||
cd disk40_files && make clean
|
||||
|
||||
####
|
||||
|
||||
@ -172,4 +148,5 @@ distclean:
|
||||
cd graphics_title && make clean
|
||||
cd graphics_sprites && make clean
|
||||
cd disk39_files && make distclean
|
||||
cd disk40_files && make distclean
|
||||
|
||||
|
@ -1,3 +1,7 @@
|
||||
+ common
|
||||
move change-disk message to be in TITLE?
|
||||
how to handle if multiple exits to level?
|
||||
|
||||
|
||||
+ Keyboard handling
|
||||
- still buggy, especially when clicking on something???
|
||||
|
19
games/riven_hgr/disk39_files/disk39_qload.inc
Normal file
19
games/riven_hgr/disk39_files/disk39_qload.inc
Normal file
@ -0,0 +1,19 @@
|
||||
which_disk_array:
|
||||
.byte 1,1,1,1 ; TITLE, OUTSIDE, PROJECTOR, MAGSTEPS
|
||||
.byte 1,1,1,1 ; MAGLEV, MOVIE1, MOVIE2
|
||||
|
||||
load_address_array:
|
||||
.byte $40,$40,$40,$40 ; TITLE, OUTSIDE, PROJECTOR, MAGSTEPS
|
||||
.byte $40,$40,$40 ; MAGLEV, MOVIE1, MOVIE2
|
||||
|
||||
track_array:
|
||||
.byte 1, 9, 2,17 ; TITLE, OUTSIDE, PROJECTOR, MAGSTEPS
|
||||
.byte 21,25,27 ; MAGLEV, MOVIE1, MOVIE2
|
||||
|
||||
sector_array:
|
||||
.byte 8, 0, 0, 0 ; TITLE, OUTSIDE, PROJECTOR, MAGSTEPS
|
||||
.byte 0, 0, 0 ; MAGLEV, MOVIE1, MOVIE2
|
||||
|
||||
length_array:
|
||||
.byte 16, 123,123, 64 ; TITLE, OUTSIDE, PROJECTOR, MAGSTEPS
|
||||
.byte 64, 32, 128 ; MAGLEV, MOVIE1, MOVIE2
|
14
games/riven_hgr/disk40_files/disk40_qload.inc
Normal file
14
games/riven_hgr/disk40_files/disk40_qload.inc
Normal file
@ -0,0 +1,14 @@
|
||||
which_disk_array:
|
||||
.byte 1,1,1,1 ; TITLE, CART
|
||||
|
||||
load_address_array:
|
||||
.byte $40,$40,$40,$40 ; TITLE, CART
|
||||
|
||||
track_array:
|
||||
.byte 1, 2, 9,17 ; TITLE, CART
|
||||
|
||||
sector_array:
|
||||
.byte 8, 0, 0, 0 ; TITLE, CART
|
||||
|
||||
length_array:
|
||||
.byte 16, 80,123, 64 ; TITLE, CART
|
@ -2,6 +2,18 @@
|
||||
|
||||
.include "zp.inc"
|
||||
|
||||
.include "hardware.inc"
|
||||
|
||||
.include "common_defines.inc"
|
||||
|
||||
.include "qboot.inc"
|
||||
|
||||
.if DISK=39
|
||||
.include "disk39_files/disk39_defines.inc"
|
||||
.endif
|
||||
.if DISK=40
|
||||
.include "disk40_files/disk40_defines.inc"
|
||||
.endif
|
||||
|
||||
LOAD_FIRST_SECTOR = 22 ; ???
|
||||
|
||||
@ -12,11 +24,6 @@ tmpsec = $3C
|
||||
;OUTL = $FE
|
||||
;OUTH = $FF
|
||||
|
||||
.include "hardware.inc"
|
||||
|
||||
.include "common_defines.inc"
|
||||
|
||||
.include "qboot.inc"
|
||||
|
||||
qload_start:
|
||||
|
||||
@ -257,27 +264,14 @@ insert_disk_string:
|
||||
.include "hgr_14x14_sprite.s"
|
||||
.include "keyboard.s"
|
||||
|
||||
which_disk_array:
|
||||
.byte 1,1,1,1 ; TITLE, OUTSIDE, PROJECTOR, MAGSTEPS
|
||||
.byte 1,1,1,1 ; MAGLEV, MOVIE1, MOVIE2
|
||||
.if DISK=39
|
||||
.include "disk39_files/disk39_qload.inc"
|
||||
.endif
|
||||
|
||||
load_address_array:
|
||||
.byte $40,$40,$40,$40 ; TITLE, OUTSIDE, PROJECTOR, MAGSTEPS
|
||||
.byte $40,$40,$40 ; MAGLEV, MOVIE1, MOVIE2
|
||||
|
||||
track_array:
|
||||
.byte 1, 9, 2,17 ; TITLE, OUTSIDE, PROJECTOR, MAGSTEPS
|
||||
.byte 21,25,27 ; MAGLEV, MOVIE1, MOVIE2
|
||||
|
||||
sector_array:
|
||||
.byte 8, 0, 0, 0 ; TITLE, OUTSIDE, PROJECTOR, MAGSTEPS
|
||||
.byte 0, 0, 0 ; MAGLEV, MOVIE1, MOVIE2
|
||||
|
||||
length_array:
|
||||
.byte 16, 123,123, 64 ; TITLE, OUTSIDE, PROJECTOR, MAGSTEPS
|
||||
.byte 64, 32, 128 ; MAGLEV, MOVIE1, MOVIE2
|
||||
.if DISK=40
|
||||
.include "disk40_files/disk40_qload.inc"
|
||||
.endif
|
||||
|
||||
qload_end:
|
||||
|
||||
;.assert (>qload_end - >qload_start) < $e , error, "loader too big"
|
||||
.assert (>qload_end - >qload_start) < $15 , error, "loader too big"
|
||||
.assert (>qload_end - >qload_start) < $8 , error, "loader too big"
|
||||
|
@ -8,6 +8,15 @@
|
||||
.include "common_defines.inc"
|
||||
.include "qload.inc"
|
||||
|
||||
.if DISK=39
|
||||
.include "disk39_files/disk39_defines.inc"
|
||||
.endif
|
||||
|
||||
.if DISK=40
|
||||
.include "disk40_files/disk40_defines.inc"
|
||||
.endif
|
||||
|
||||
|
||||
riven_title:
|
||||
|
||||
;===========================
|
||||
@ -23,6 +32,15 @@ riven_title:
|
||||
jsr HOME
|
||||
bit KEYRESET
|
||||
|
||||
; set disk#
|
||||
|
||||
lda #48+(DISK/10)
|
||||
sta title_text+28
|
||||
lda #48+(DISK-((DISK/10)*10))
|
||||
sta title_text+29
|
||||
|
||||
|
||||
|
||||
; clear text screen
|
||||
|
||||
; jsr clear_all
|
||||
@ -275,19 +293,7 @@ clear_loop:
|
||||
lda #100
|
||||
jsr wait_a_bit
|
||||
|
||||
; debug: ready2go for animation test
|
||||
.if 0
|
||||
lda #LOAD_MAGLEV
|
||||
sta WHICH_LOAD ; inside maglev
|
||||
|
||||
lda #RIVEN_READY2GO ; ready to go
|
||||
sta LOCATION
|
||||
|
||||
lda #DIRECTION_E ; facing east
|
||||
sta DIRECTION
|
||||
.endif
|
||||
|
||||
.if 1
|
||||
.if DISK=39
|
||||
lda #LOAD_OUTSIDE
|
||||
sta WHICH_LOAD ; assume new game (dome island)
|
||||
|
||||
@ -298,11 +304,11 @@ clear_loop:
|
||||
sta DIRECTION
|
||||
.endif
|
||||
|
||||
.if 0
|
||||
lda #LOAD_PROJECTOR
|
||||
sta WHICH_LOAD ; assume new game (dome island)
|
||||
.if DISK=40
|
||||
lda #LOAD_CART
|
||||
sta WHICH_LOAD
|
||||
|
||||
lda #RIVEN_PROJECTOR
|
||||
lda #RIVEN_OUTSIDE_CART
|
||||
sta LOCATION
|
||||
|
||||
lda #DIRECTION_S
|
||||
@ -340,7 +346,7 @@ riven_title_image:
|
||||
.incbin "graphics_title/riven_title.hgr.zx02"
|
||||
|
||||
title_text:
|
||||
.byte 0, 0,"LOADING RIVEN SUBSET V0.03",0
|
||||
.byte 0, 0,"LOADING RIVEN SUBSET DISK 00 V0.04",0
|
||||
;
|
||||
;
|
||||
.byte 0, 3,"BASED ON RIVEN BY CYAN",0
|
||||
|
Loading…
x
Reference in New Issue
Block a user