#INCLUDE "offti-82.h" ITEM =$8BDF COUNT =$8BE0 .ORG 0 #IFDEF OSHELL82 .DB "TI-82 ASCII Set",0 #ENDIF ROM_CALL(CLEARLCD) SET 3,(IY+05) ; Reversed text LD HL,3 LD ($800C),HL LD HL,STARTSCREEN LD DE,(PROGRAM_ADDR) ADD HL,DE ROM_CALL(D_ZT_STR) RES 3,(IY+05) ; Back to normal display mode ROM_GETKEY SHOWSCREEN: ROM_CALL(CLEARLCD) LD HL,0 LD ($800C),HL LD A,(ITEM) LD (COUNT),A SCREENLOOP: LD A,(COUNT) CP $D6 ; "Enter" char screws up my display JR Z,BADCHAR ROM_CALL(TX_CHARPUT) CHARCONTINUE: INC A LD (COUNT),A LD B,A LD A,(ITEM) ADD A,111 CP B JR NC,SCREENLOOP KEYLOOP: ROM_GETKEY CP $40 ; [2ND] [QUIT] RET Z CP 3 JR Z,DECREASE CP 4 JR NZ,KEYLOOP LD A,(ITEM) CP 128 JR NC,KEYLOOP ADD A,$10 LD (ITEM),A JR SHOWSCREEN DECREASE: LD A,(ITEM) LD B,$10 CP 0 JR Z,KEYLOOP SUB B LD (ITEM),A JR SHOWSCREEN BADCHAR: LD A,$20 ; actually show a space ROM_CALL(TX_CHARPUT) LD A,$D6 JR CHARCONTINUE STARTSCREEN: .DB "TI-82 ASCII SET " .DB " program by JLT ",0 .END