2024-10-29 01:38:32 -04:00
|
|
|
.include "../zp.inc"
|
|
|
|
.include "../hardware.inc"
|
|
|
|
.include "../qload.inc"
|
2024-10-29 17:38:30 -04:00
|
|
|
.include "../music.inc"
|
2024-11-10 23:39:27 -05:00
|
|
|
.include "../common_defines.inc"
|
2024-10-29 01:38:32 -04:00
|
|
|
|
|
|
|
; OK: was going to have hi-res top, scroll lo-res bottom
|
|
|
|
; vapor lock (but using IIe)
|
|
|
|
; problem is that won't work with 50Hz music / 60Hz screen
|
|
|
|
|
|
|
|
; I guess can try for smooth scroll bottom hires but do we have code for that?
|
|
|
|
|
|
|
|
; page flip $2000/$4000
|
|
|
|
; scroll text $6000, 160..192 = 32?
|
|
|
|
;
|
|
|
|
;
|
|
|
|
;
|
|
|
|
;
|
|
|
|
|
|
|
|
;=============================
|
|
|
|
; draw the atrus scene
|
|
|
|
;=============================
|
|
|
|
|
|
|
|
atrus_opener:
|
|
|
|
lda #0
|
|
|
|
|
|
|
|
bit SET_GR
|
|
|
|
bit HIRES
|
2024-10-29 17:38:30 -04:00
|
|
|
bit TEXTGR
|
2024-10-29 01:38:32 -04:00
|
|
|
bit PAGE1
|
|
|
|
|
2024-10-29 17:38:30 -04:00
|
|
|
;=================================
|
|
|
|
; intro
|
|
|
|
;=================================
|
|
|
|
|
2024-10-29 01:38:32 -04:00
|
|
|
lda #<atrus03_graphics
|
|
|
|
sta zx_src_l+1
|
|
|
|
lda #>atrus03_graphics
|
|
|
|
sta zx_src_h+1
|
|
|
|
lda #$20
|
|
|
|
jsr zx02_full_decomp
|
|
|
|
|
2024-10-29 17:38:30 -04:00
|
|
|
lda #<atrus_text
|
|
|
|
sta OUTL
|
|
|
|
lda #>atrus_text
|
|
|
|
sta OUTH
|
|
|
|
jsr move_and_print
|
|
|
|
jsr move_and_print
|
|
|
|
jsr move_and_print
|
|
|
|
|
|
|
|
jsr wait_until_keypress
|
|
|
|
|
|
|
|
;=================================
|
|
|
|
; scroller
|
|
|
|
;=================================
|
2024-11-05 14:55:04 -05:00
|
|
|
bit FULLGR
|
2024-10-29 17:38:30 -04:00
|
|
|
|
|
|
|
lda #<atrus10_graphics
|
|
|
|
sta zx_src_l+1
|
|
|
|
lda #>atrus10_graphics
|
|
|
|
sta zx_src_h+1
|
2024-11-05 14:55:04 -05:00
|
|
|
lda #$40 ; on both pages
|
2024-10-29 17:38:30 -04:00
|
|
|
jsr zx02_full_decomp
|
|
|
|
|
2024-11-05 14:55:04 -05:00
|
|
|
jsr do_scroll
|
|
|
|
|
|
|
|
jsr wait_until_keypress
|
|
|
|
|
|
|
|
|
|
|
|
;=================================
|
|
|
|
; book start
|
|
|
|
;=================================
|
|
|
|
|
|
|
|
lda #<atrus10_graphics
|
|
|
|
sta zx_src_l+1
|
|
|
|
lda #>atrus10_graphics
|
|
|
|
sta zx_src_h+1
|
|
|
|
lda #$20
|
|
|
|
jsr zx02_full_decomp
|
2024-10-29 17:38:30 -04:00
|
|
|
|
|
|
|
jsr wait_until_keypress
|
|
|
|
|
|
|
|
;=================================
|
|
|
|
; plasma
|
|
|
|
;=================================
|
|
|
|
|
|
|
|
lda #<atrus11_graphics
|
|
|
|
sta zx_src_l+1
|
|
|
|
lda #>atrus11_graphics
|
|
|
|
sta zx_src_h+1
|
|
|
|
lda #$20
|
|
|
|
jsr zx02_full_decomp
|
|
|
|
|
2024-10-30 01:24:32 -04:00
|
|
|
; load both pages as we page flip
|
|
|
|
|
|
|
|
lda #<atrus11_graphics
|
|
|
|
sta zx_src_l+1
|
|
|
|
lda #>atrus11_graphics
|
|
|
|
sta zx_src_h+1
|
|
|
|
lda #$40
|
|
|
|
jsr zx02_full_decomp
|
|
|
|
|
2024-10-29 17:38:30 -04:00
|
|
|
|
|
|
|
jsr plasma_debut
|
2024-10-29 01:38:32 -04:00
|
|
|
|
|
|
|
jsr wait_until_keypress
|
|
|
|
|
2024-10-29 17:38:30 -04:00
|
|
|
|
2024-10-29 01:38:32 -04:00
|
|
|
rts
|
|
|
|
|
|
|
|
atrus03_graphics:
|
|
|
|
.incbin "graphics/atrus03_iipix.hgr.zx02"
|
|
|
|
atrus10_graphics:
|
|
|
|
.incbin "graphics/atrus10_iipix.hgr.zx02"
|
|
|
|
atrus11_graphics:
|
|
|
|
.incbin "graphics/atrus11_iipix.hgr.zx02"
|
|
|
|
|
2024-10-29 17:38:30 -04:00
|
|
|
atrus_text:
|
|
|
|
.byte 7,20,"Thank God you've returned.",0
|
|
|
|
.byte 4,22,"I need... Wait, is this a demo?",0
|
|
|
|
.byte 9,23,"Sorry let me try again",0
|
|
|
|
|
2024-11-10 01:46:46 -05:00
|
|
|
;.include "../wait_keypress.s"
|
2024-10-29 17:38:30 -04:00
|
|
|
|
|
|
|
.include "plasma.s"
|
2024-11-05 14:19:32 -05:00
|
|
|
|
|
|
|
.include "font/large_font.inc"
|
2024-11-05 14:55:04 -05:00
|
|
|
|
2024-11-07 00:27:08 -05:00
|
|
|
.include "big_horiz_scroll.s"
|