mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-12-29 00:31:52 +00:00
mist: initial fireplace book implementation
going to have to redo how this is done
This commit is contained in:
parent
a50b151121
commit
7edd09d623
12
mist/TODO
12
mist/TODO
@ -1,15 +1,15 @@
|
||||
For release 1.0
|
||||
+ LOADER
|
||||
-- better loader
|
||||
-- save/load games
|
||||
-- sound loader
|
||||
-- save game
|
||||
-- sound loader (into language card?)
|
||||
+ MIST (split off ship-up/ship-down?)
|
||||
-- fix catherine letter (bg, grab from other side)
|
||||
also make it a location/graphic like half messages
|
||||
-- constellation puzzle/ship raising
|
||||
-- marker switches
|
||||
+ DENTIST
|
||||
-- all of it
|
||||
+ CABIN (split off?)
|
||||
+ CABIN
|
||||
-- safe puzzle
|
||||
-- boiler
|
||||
-- up/down in tree
|
||||
@ -28,10 +28,10 @@ For release 1.0
|
||||
|
||||
+ CHANNEL
|
||||
-- hook up water valves at least
|
||||
-- hook up stairway and elevator1
|
||||
-- hook up stairway
|
||||
|
||||
+ ARBOR
|
||||
-- all of it
|
||||
-- finish level
|
||||
|
||||
Done:
|
||||
+ MECHE
|
||||
|
@ -11,11 +11,14 @@ all: octagon_books.inc
|
||||
####
|
||||
|
||||
octagon_books.inc: \
|
||||
channelwood.lzsa stoneship.lzsa mechanical.lzsa selenitic.lzsa
|
||||
channelwood.lzsa stoneship.lzsa mechanical.lzsa selenitic.lzsa \
|
||||
fireplace.lzsa
|
||||
echo "channelwood_book_lzsa: .incbin \"channelwood.lzsa\"" > octagon_books.inc
|
||||
echo "stoneship_book_lzsa: .incbin \"stoneship.lzsa\"" >> octagon_books.inc
|
||||
echo "mechanical_book_lzsa: .incbin \"mechanical.lzsa\"" >> octagon_books.inc
|
||||
echo "selenitic_book_lzsa: .incbin \"selenitic.lzsa\"" >> octagon_books.inc
|
||||
echo "fireplace_book_lzsa: .incbin \"fireplace.lzsa\"" >> octagon_books.inc
|
||||
|
||||
|
||||
|
||||
%.gr: %.book
|
||||
|
26
mist/books/fireplace.book
Normal file
26
mist/books/fireplace.book
Normal file
@ -0,0 +1,26 @@
|
||||
# 300 pages
|
||||
#0 1 2 3
|
||||
#123456789012345678901234567890123456789
|
||||
:
|
||||
:
|
||||
:
|
||||
------------- : -------------
|
||||
: : : : : : : : : : : : : : :
|
||||
------------- : -------------
|
||||
: : : : : : : : : : : : : : :
|
||||
------------- : -------------
|
||||
: : : : : : : : : : : : : : :
|
||||
------------- : -------------
|
||||
: : : : : : : : : : : : : : :
|
||||
------------- : -------------
|
||||
: : : : : : : : : : : : : : :
|
||||
------------- : -------------
|
||||
: : : : : : : : : : : : : : :
|
||||
------------- : -------------
|
||||
299 : 300
|
||||
:
|
||||
:
|
||||
:
|
||||
:
|
||||
:
|
||||
:
|
@ -1,5 +1,5 @@
|
||||
#0 1 2 3
|
||||
#12345678901234567890123457890123456789
|
||||
#0 1 2 3
|
||||
#123456789012345678901234567890123456789
|
||||
:
|
||||
-- THE SKY IS DARK : /=/
|
||||
GRAY WITH INCESSANT : ::
|
||||
|
@ -1,5 +1,5 @@
|
||||
#0 1 2 3
|
||||
#12345678901234567890123457890123456789
|
||||
#0 1 2 3
|
||||
#123456789012345678901234567890123456789
|
||||
:
|
||||
-- I DO NOT FEEL : _______/===\
|
||||
ALTOGETHER WELCOME : < : [] >
|
||||
|
@ -1,5 +1,5 @@
|
||||
#0 1 2 3
|
||||
#12345678901234567890123457890123456789
|
||||
#0 1 2 3
|
||||
#123456789012345678901234567890123456789
|
||||
:
|
||||
-- EMMIT, BRANCH, : CONSTELLATIONS
|
||||
AND WILL LIVE ON : O
|
||||
|
@ -27,11 +27,11 @@ top_shelf:
|
||||
|
||||
middle_shelf:
|
||||
cpx #13
|
||||
bcc read_burnt_book
|
||||
bcc read_burnt_book ; blt
|
||||
cpx #18
|
||||
bcc read_selenitic
|
||||
cpx #30
|
||||
bcc read_burnt_book
|
||||
bcc read_selenitic ; blt
|
||||
cpx #28
|
||||
bcc read_burnt_book ; blt
|
||||
bcs read_fireplace
|
||||
|
||||
bottom_shelf:
|
||||
@ -44,10 +44,6 @@ bottom_shelf:
|
||||
read_burnt_book:
|
||||
jmp all_done_book
|
||||
|
||||
read_fireplace:
|
||||
; FIXME
|
||||
jmp all_done_book
|
||||
|
||||
read_selenitic:
|
||||
lda #<selenitic_book_lzsa
|
||||
sta getsrc_smc+1 ; LZSA_SRC_LO
|
||||
@ -102,6 +98,73 @@ all_done_book:
|
||||
|
||||
|
||||
|
||||
; draw random patterns
|
||||
; base them on memory starting at $2000?
|
||||
; 15 30 45 60 75 90 105 120 135 150 165 180 195 210 225 240 255
|
||||
; 14
|
||||
|
||||
read_fireplace:
|
||||
lda #<fireplace_book_lzsa
|
||||
sta getsrc_smc+1 ; LZSA_SRC_LO
|
||||
iny
|
||||
lda #>fireplace_book_lzsa
|
||||
sta getsrc_smc+2 ; LZSA_SRC_HI
|
||||
|
||||
lda #$c ; load to page $c00
|
||||
jsr decompress_lzsa2_fast
|
||||
|
||||
jsr gr_copy_to_current
|
||||
|
||||
|
||||
ldy #8
|
||||
fp_book_outer_loop:
|
||||
|
||||
lda gr_offsets,Y
|
||||
sta fp_book_smc+1
|
||||
lda gr_offsets+1,Y
|
||||
clc
|
||||
adc DRAW_PAGE
|
||||
sta fp_book_smc+2
|
||||
|
||||
lda $2000,Y
|
||||
sta TEMPY
|
||||
|
||||
ldx #5
|
||||
fp_book_inner_loop:
|
||||
|
||||
ror TEMPY
|
||||
bcc fp_space
|
||||
lda #' '|$80
|
||||
jmp fp_book_smc
|
||||
fp_space:
|
||||
lda #' '&$3f
|
||||
|
||||
fp_book_smc:
|
||||
sta $400,X
|
||||
|
||||
inx
|
||||
inx
|
||||
cpx #17
|
||||
bne fp_book_inner_loop
|
||||
|
||||
iny
|
||||
iny
|
||||
iny
|
||||
iny
|
||||
cpy #32
|
||||
bne fp_book_outer_loop
|
||||
|
||||
jsr page_flip
|
||||
|
||||
wait_fireplace_book:
|
||||
lda KEYPRESS
|
||||
bpl wait_fireplace_book
|
||||
bit KEYRESET
|
||||
|
||||
|
||||
jmp all_done_book
|
||||
|
||||
|
||||
;=========================
|
||||
; change rotation
|
||||
;=========================
|
||||
|
Loading…
Reference in New Issue
Block a user