mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-09-10 08:54:51 +00:00
chiptune_player: some text_print changes broke things
make sure we have a hard coded copy of old version
This commit is contained in:
parent
16a34b24c7
commit
f732e4d6e8
@ -53,7 +53,7 @@ NUM_FILES EQU 15
|
|||||||
inc CV
|
inc CV
|
||||||
jsr move_and_print
|
jsr move_and_print
|
||||||
|
|
||||||
jmp forever_loop ; and wait forever
|
; jmp forever_loop ; and wait forever
|
||||||
|
|
||||||
mockingboard_found:
|
mockingboard_found:
|
||||||
; lda #<found_message ; print found message
|
; lda #<found_message ; print found message
|
||||||
@ -578,7 +578,7 @@ krw_file:
|
|||||||
;routines
|
;routines
|
||||||
;=========
|
;=========
|
||||||
.include "../asm_routines/gr_offsets.s"
|
.include "../asm_routines/gr_offsets.s"
|
||||||
.include "../asm_routines/text_print.s"
|
.include "text_print.s"
|
||||||
.include "../asm_routines/mockingboard_a.s"
|
.include "../asm_routines/mockingboard_a.s"
|
||||||
.include "../asm_routines/gr_fast_clear.s"
|
.include "../asm_routines/gr_fast_clear.s"
|
||||||
.include "../asm_routines/pageflip.s"
|
.include "../asm_routines/pageflip.s"
|
||||||
|
80
chiptune_player/text_print.s
Normal file
80
chiptune_player/text_print.s
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
;================================
|
||||||
|
; htab_vtab
|
||||||
|
;================================
|
||||||
|
; move to CH/CV
|
||||||
|
htab_vtab:
|
||||||
|
lda CV
|
||||||
|
asl
|
||||||
|
tay
|
||||||
|
lda gr_offsets,Y ; lookup low-res memory address
|
||||||
|
clc
|
||||||
|
adc CH ; add in xpos
|
||||||
|
sta BASL ; store out low byte of addy
|
||||||
|
|
||||||
|
lda gr_offsets+1,Y ; look up high byte
|
||||||
|
adc DRAW_PAGE ;
|
||||||
|
sta BASH ; and store it out
|
||||||
|
; BASH:BASL now points at right place
|
||||||
|
|
||||||
|
rts
|
||||||
|
|
||||||
|
;================================
|
||||||
|
; move_and_print
|
||||||
|
;================================
|
||||||
|
; move to CH/CV
|
||||||
|
move_and_print:
|
||||||
|
jsr htab_vtab
|
||||||
|
|
||||||
|
;================================
|
||||||
|
; print_string
|
||||||
|
;================================
|
||||||
|
|
||||||
|
print_string:
|
||||||
|
ldy #0
|
||||||
|
print_string_loop:
|
||||||
|
lda (OUTL),Y
|
||||||
|
beq done_print_string
|
||||||
|
ora #$80
|
||||||
|
sta (BASL),Y
|
||||||
|
iny
|
||||||
|
bne print_string_loop
|
||||||
|
done_print_string:
|
||||||
|
rts
|
||||||
|
|
||||||
|
;====================
|
||||||
|
; point_to_end_string
|
||||||
|
;====================
|
||||||
|
point_to_end_string:
|
||||||
|
iny
|
||||||
|
tya
|
||||||
|
clc
|
||||||
|
adc OUTL
|
||||||
|
sta OUTL
|
||||||
|
lda #0
|
||||||
|
adc OUTH
|
||||||
|
sta OUTH
|
||||||
|
|
||||||
|
rts
|
||||||
|
|
||||||
|
|
||||||
|
;================================
|
||||||
|
; print_both_pages
|
||||||
|
;================================
|
||||||
|
print_both_pages:
|
||||||
|
lda DRAW_PAGE
|
||||||
|
pha
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta DRAW_PAGE
|
||||||
|
jsr move_and_print
|
||||||
|
|
||||||
|
lda #4
|
||||||
|
sta DRAW_PAGE
|
||||||
|
jsr move_and_print
|
||||||
|
|
||||||
|
pla
|
||||||
|
sta DRAW_PAGE
|
||||||
|
|
||||||
|
rts ; oops forgot this initially
|
||||||
|
; explains the weird vertical stripes on the screen
|
||||||
|
|
Loading…
Reference in New Issue
Block a user