754 754 2F2 CH1 Prior keyboard character code (most recently read and accepted). This is the previous value passed from 764 ($2FC). If the value of the new key code equals the value in CH1, then the code is accepted only if a suitable key debounce delay has taken place since the prior value was accepted. 755 2F3 CHACT Character Mode Register. Zero means normal inverse characters, one is blank inverse characters (inverse characters will be printed as blanks, i.e., invisible), two is normal characters, three is solid inverse characters. Four to seven is the same as zero to three, but prints the display upside down. This register also controls the transparency of the cursor. It is transparent with values two and six, opaque with values three and seven. The cursor is absent with values zero, one, four and five. Toggling BIT 0 on and off can be a handy way to produce a blinking effect for printed inverse characters (characters with ATASCII values greater than 128 -- those that have BIT 7 set). Shadow for 54273 ($D401). There is no visible cursor for the graphics mode output. CHACT is initialized to two. Here's an example of blinking text using this register: 10 CHACT=755:REM USE INVERSE FOR WORD S BELOW 15 PRINT "[THIS IS A TEST OF BLINKING ] [TEXT]" 20 POKE CHACT,INT(RND(0)*4) 30 FOR N=1 TO 100:NEXT N:GOTO 15 See COMPUTE!, December 1981. Using a machine language routine and page six space, try: 10 PAGE=1536:EXIT=1568 20 FOR N=PAGE TO EXIT:READ BYTE:POKE N,BYTE:NEXT N 30 PGM=USR(PAGE) 40 PRINT "[THIS] IS A [TEST] OF [BLINKING] TEXT":REM MAKE SOME WORDS INVERSE 50 GOTO 50 60 DATA 104,169,17,141,40,2,169,6,141 ,41 70 DATA 2,169,30,141,26,2,98,173,243, 2 80 DATA 41,1,73,1,141,243,2,169,30,14 1,26,2,96