RE: PET kernal routines

From: Paul Schmidt <ocleide_at_earthlink.net>
Date: Thu, 13 Apr 2017 18:27:46 -0500
Message-ID: <001b01d2b4ad$8f40b490$adc21db0$@earthlink.net>
OK, a couple small improvements: I finally found my old copy of "PET/CBM
Personal Computer Guide (2nd Ed)" by Osborne. It has a kernel listing, which
confirmed that $FFD2 is in fact correct for the "WRT" subroutine, but it
listed nothing for a "CRLF" type kernel routine; so I agree with the comment
that the other routine at $04F2 most have been part of the TIM which could
have been loaded in in that range of addresses (the same book lists this as
'user memory'). 

The suggestion to re-create the CRLF by using the kernal's $FFD2 subroutine
to send a $0D (Return) to the screen was a good one, and my tests proved
that it works just fine. 

So I rewrote the little program to replace the JSR to $04F2 with the
just-tested 'manual' method and it now works as expected.

Thanks to all who responded.


-----Original Message-----
From: owner-cbm-hackers@musoftware.de
[mailto:owner-cbm-hackers@musoftware.de] On Behalf Of smf
Sent: Thursday, April 13, 2017 1:49 PM
To: cbm-hackers@musoftware.de
Subject: Re: PET kernal routines

It looks like 04F2 is part of the cassette loaded TIM, while FFD2 is in the
kernal rom.

If you don't have the routine in the version of TIM you have then something
like this might do it:

04F2:
LDA #$0d
JSR $FFD2
RTS

You could of course put it wherever you want. You might need to call
FFD2 with $0a as well, but I have a feeling that $0d was enough.

On 13/04/2017 14:04, Paul Schmidt wrote:
> ogram. The Upgrade ROM
> version of the PET memory map shows that area of memory being unused 
> and available for RAM expansion. And it seems odd that for a 'tiny' 
> monitor program, two of its internal routines would be so widely 
> spaced in memory at
> $04F2 and $FFD2.


       Message was sent through the cbm-hackers mailing list


       Message was sent through the cbm-hackers mailing list
Received on 2017-04-14 00:00:02

Archive generated by hypermail 2.2.0.