123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- spt_con_print: pop hl
- con_print:
- .loop:
- ld a,(HL) ; get message char
- or a ; test for null
- jr z, .done ; return if done
- ld (ix+0),A ; store char
- inc ix ; advance screen pointer
- inc hl ; advance message pointer
- jr .loop ; continue
- .done:
- ret
- con_home: ld ix,VBASE
- ret
- spt_con_goto: pop ix
- ret
- con_NL:
- ld a,ixl ; go to beginning of line
- and $c0 ; then go to the next line
- add a,$40
- ld ixl,a ; store the low byte back
- jr nc,.skip
- inc ixh ; fix up high byte if there was a carry
- .skip:
- ret
- con_clear:
- ld hl,VBASE
- ld bc,VSIZE
- .loop:
- ld (hl),20h
- cpi
- jp pe,.loop
- ld ix,VBASE
- ret
- spt_con_index: pop bc
- con_index:
- add ix,bc
- ret
|