15 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
16 ;; print string; last string byte must have bit 7 set
20 ;; HL: next string address
34 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
35 ;; print string; last string byte must be 0
39 ;; HL: next string address
51 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
52 ;; print string; last string byte must be $ff
56 ;; HL: next string address
68 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
95 ld hl,(curArgs) ; h:y; l:x
113 jr nc,.spcodeNotInkPaper
141 jr nz,.spcodeNotBright
152 jr nz,.spcodeNotFlash
163 jr nz,.spcodeNotInverse
169 ld (PrintCharAtHLInvMode),a
184 ld (PrintCharAtHLOverMode),a
207 ;; 10: curdown (same as 13 for now)
210 ;; 13: enter (x=0;++y)
220 ;; 23: tab ctl (n/a); for now: move to the given x
233 ld hl,printOneMoreArg
236 IF printOneMoreArg/256 = printLastArg/256
237 ld l,printLastArg%256
315 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
316 ;; print char to screen
318 ;; HL: screen address
322 ld l,a ; first part of ROM char address calculation
364 @PrintCharAtHLInvMode:
367 @PrintCharAtHLOverMode:
368 or a ; or a($AF) / xor (hl)($AE) / or (hl)($B6)