[Coco] Re: Gadgets
L. Curtis Boyle
curtisboyle at sasktel.net
Wed Apr 6 02:36:11 EDT 2005
On Wed, 06 Apr 2005 01:08:42 +0200, Torsten Dittel <Torsten at Dittel.info>
wrote:
> bill gordon wrote:
>
>> Well, I found a poke (POKE 282,0-sets keyboard to lowercase, POKE
>> 282,255-resets to uppercase). So, I tried it. I must have a
>> non-standard
>> machine. (CoCo3, part #26-3334, Serial # 1119186 ), because all I get
>> is
>> inverse screen.
>
> This POKE is just "emulating" the result of the SHIFT+0 key stroke.
>
> POKE &HFF22,(PEEK(&HFF22) OR 16)
>
> will turn the lowercase on, but the OK-prompt will reset it again. It
> only works in a programm, try:
>
> 10 CLS
> 20 FOR I = 32 TO 255: PRINT CHR$ (I); : NEXT
> 30 POKE &HFF22,(PEEK(&HFF22) OR 16)
> 40 GOTO 40
>
> (you can obmit the spaces)
>
> Pressing "BREAK" will return to "normal" mode.
>
> On the CoCo2 there was a POKE 359,57 to keep the mode "idle" even while
> at the OK-prompt, but this is quite dangerous with Disk Basic (forgot
> why). Or if you e.g. use SOUND 1,1 it will play forever because you're
> disabling a RAM hook which is timing the sound's duration. POKE 359,126
> will return to normal behaviour.
POKE 359,57 changes the BASIC PRINT hook to just do an RTS; in other
words, it disables the print hook. This is dangerous because any PRINT I/O
(PRINT #x, which could be disk files, cassette files, and the printer) is
NOT going to be done normally, since the routine to handle that is being
entirely skipped. You can re-enable it again (if you want to just
temporarily change the screen), by doing a POKE 359,&H7E, which re-enables
the JSR to the PRINT hook routine.
A proper patch would fix BASIC itself to leave the $FF22 memory
location alone, to whatever the user set it to.
L. Curtis Boyle
More information about the Coco
mailing list