ootw: intro: more work to allow text on bottom

This commit is contained in:
Vince Weaver 2019-02-17 11:34:47 -05:00
parent 7e2de09dde
commit 8af006c938
4 changed files with 74 additions and 18 deletions

View File

@ -1,5 +1,8 @@
TODO:
general:
+ move gr_make_quake out of gr_copy
movement -- note these are hard due to limitations of the Apple II keyboard
+ ability to run
+ ability to jump

View File

@ -116,6 +116,47 @@ gr_copy_line_40:
;=========================================================
; gr_copy_to_current_40x40
;=========================================================
; Take image in 0xc00
; Copy to DRAW_PAGE
; Actually copy lines 0..39
; Don't over-write bottom 4 lines of text
gr_copy_to_current_40x40:
ldx #0
gc_40x40_loop:
lda gr_offsets,x
sta OUTL
sta INL
lda gr_offsets+1,x
clc
adc DRAW_PAGE
sta OUTH
lda gr_offsets+1,x
clc
adc #$8
sta INH
ldy #39
gc_40x40_inner:
lda (INL),Y
sta (OUTL),Y
dey
bpl gc_40x40_inner
inx
inx
cpx #40
bne gc_40x40_loop
rts ; 6
;=========================================================
; gr_make_quake
;=========================================================

View File

@ -1,3 +1,21 @@
;=========================================================
; gr_overlay, 40x40 version
;=========================================================
; copy 0xc00 to DRAW_PAGE
; then overlay with 0x1000, treating 0xa as transparent
gr_overlay_40x40:
jsr gr_copy_to_current_40x40
gr_overlay_40x40_noload:
lda #40
sta CH ; xsize is in CH ; 3
lda #38
sta CV ; ysize is in CV ; 3
jmp gr_overlay_custom
;=========================================================
; gr_overlay, 40x48 version
;=========================================================
@ -9,12 +27,16 @@ gr_overlay:
gr_overlay_noload:
ldy #0
lda #40
sta CH ; xsize is in CH ; 3
lda #46
sta CV ; ysize is in CV ; 3
gr_overlay_custom:
ldy #0
gr_overlay_loop:
ldy CV ; 3
@ -101,15 +123,3 @@ gr_overlay_done_draw:
rts ; return ; 6

View File

@ -674,9 +674,11 @@ scanner:
jsr clear_bottom
bit TEXTGR ; split graphics/text
jsr gr_copy_to_current
jsr gr_copy_to_current_40x40
jsr page_flip
jsr clear_bottom
; Identification (nothing)
@ -1202,7 +1204,7 @@ run_sequence_done:
;=================================
; Display a sequence of images
; with static overlay
; with /-|/ static overlay
run_sequence_static:
ldy #0 ; init
@ -1231,7 +1233,7 @@ static_loop:
lda #$10 ; load to $1000
jsr load_rle_gr
jsr gr_overlay
jsr gr_overlay_40x40
ldy STATIC_LOOPER
lda static_pattern,Y
@ -1242,10 +1244,10 @@ static_loop:
lda #$10 ; load to $1000
jsr load_rle_gr
jsr gr_overlay_noload
; force 40x40 overlay
jsr gr_overlay_40x40_noload
jsr page_flip