Re: This is what I spend New Year's Eve doing

William Astle via Coco <[email protected]> Wed, 31 Dec 2025 15:39:55 -0700
Newsgroups gmane.comp.hardware.tandy.coco
Message-ID <[email protected]>
On 2025-12-31 15:24, Juan Castro via Coco wrote:
> 
> Em qua., 31 de dez. de 2025 às 19:20, William Astle via Coco 
> <[email protected] <mailto:[email protected]>> escreveu:
> 
> 
>     However, the read line routine used for immediate mode, INPUT, and
>     ASCII
>     program loads does strips off bit 7. That will corrupt the program when
>     it is loaded back.
> 
>     Obviously, the stock behaviour of the ROM also corrupts the program so
>     the situation isn't really any worse.
> 
>     There is another ram hook that can be intercepted to fix that.
> 
> 
> Whoa, which one?

RVEC12 called from A390 is the most direct. Unfortunately, it looks like 
you'll have to fully duplicate the routine because you need to replace 
the "JSR $A171" at A39A with "JSR $A176".

Alternatively, you could do a hack with RVEC4 where you detect if the 
return address $A173 and if so, change that to $A175 which can be done 
without burning any registers that need to be preserved). That skips 
over the "anda #$7f".

You might be intercepting RVEC12 for something like fancy keyboard 
controls for immediate mode anyway which may make that option better. 
Otherwise, the second option requires less code duplication.
-- 
Coco mailing list
[email protected]
http://listserv.adelphi.edu/cgi-bin/mailman/listinfo/coco