• Please review our updated Terms and Rules here

PET 2001 with Rabbit ROM

I have entered and disassembled a bit more...

I have imported the PET BASIC 2 symbol table into the disassembler so it can label things automagically for me without me staring at HEX numbers all night. It is even making sense :). I suspect that address $A000 is NOT the entry point. It seems as though this is the 'wedge' entry point - meaning that it will all go **** up if we invoke that address with a SYS command!

I'll do a couple more pages tomorrow and another disassembly.

I see where some of the commands are manipulating cassette ports #1 and #2...

Dave
Hi Dave, what a lot and difficult work
I could never do this myself, I don't have enough knowledge for that
Thank you for all your energy and time
Greetings Ad
 
Incredible work.

In other news, I have found a manual, but its for the cassette version but maybe useful when you get it working.

Does mention that it relocates HIMEM in the initialising code so that part should have STA #$34 & STA#$35 in it maybe ?
Thank you Gary
Very nice to have documentation of it
Greetings Ad
 
Incredible work.

In other news, I have found a manual, but its for the cassette version but maybe useful when you get it working.

Does mention that it relocates HIMEM in the initialising code so that part should have STA #$34 & STA#$35 in it maybe ?

Yep, we found that back in post #3 :)...

I suspect the modification to HIMEM is purely for the cassette version. It will load into a memory location that exists on all PETs and will relocate itself to the top of memory and then modify the BASIC pointers to hide itself. The ROM version shouldn't need to do that.

>>> I could never do this myself, I don't have enough knowledge for that.

I am just transcribing the HEX bytes from your photographs at the moment. No real skill involved in that! It is quite therapeutic actually to "be one with the hex"...

>>> Thank you for all your energy and time

I think this will be of general use to the PET community - so well worth the effort...

It will take me a few days to enter - do a bit at a time. If you do too much in one go, I will start to make daft mistakes...

Dave
 
Please find today's efforts in the linked file...

It's nice when text messages start to appear!

The file contains a HEXDUMP of the complete EPROM image (including the bits I haven't done yet) followed by the disassembly.

Of course, now I am finding embedded tables and text, the disassembler doesn't know any different - so it is trying to make sense of the text messages and data (and failing dismally)! I can tell the disassembler where the data areas are, and what they are (data bytes, words, text etc.) and it will decode them accordingly. But that's for later.

I see there is the message "RABBIT AVAILABLE"contained within the ROM, so the challenge should be to see if we can get the PET to produce this message!

I also see that the message "SYNTAX ERROR!" is here as well (but it is different to the message you appear to be getting when you enter the command "SYS 40960").

Dave
 

Attachments

  • Rabbit.txt
    43.5 KB · Views: 7
OK - so I have been doing a little playing with XPET and loading the partially complete Rabbit ROM into the emulation.

The command "SYS 40960" produces the error "?syntax error".

However, the command "SYS 40963" just returns you back to the BASIC "ready" prompt again with no error. I think this conclusively demonstrates that 40960 is NOT the starting entry point of the ROM, and that the "?syntax error" message is produced as a result of incorrectly executing the ROM code at the wrong entry point.

We now just have to find the correct entry point...

More disassembling...

Dave
 
I am halfway there now.

I am somewhat tired now, so I am calling it a day/night!

Dave
 

Attachments

  • Rabbit.txt
    57.6 KB · Views: 6
Too easy. Give me a more difficult one...

try "sys 42014" :)...

I have found an 'extra' command by just typing a '*' on its own. This gets you into the machine code monitor (TIM). To exit from TIM back to BASIC type an 'x'. I did actually read this somewhere though (in one of the reviews I found). All the other commands seem to map onto those detailed in the cassette version.

I will continue to enter the hex dumps though so that others can have a binary copy of it to burn into a ROM if they wish. I see there is reference to a version for BASIC 4 as well.

Enjoy.

Dave
 
Hi Dave, you did it 😲
rab1.jpg
With sys 42014 the rom of Rabbit starts
And can I use the commands *L etc to load the cassette files faster
Now everything really works on my PET as it should 🥳
Many thanks for your enormous patience and knowledge to solve this
So I think the code on the ROM can also be used by others if they write this code to a ROM
I'm glad that this useful extension for PET is working
Thank you very much 😁

Greets Ad
 
Last edited:
Replaces the BASIC soft IRQ vector with $A7C8... definitely something going on there.
Hi Nivag, it worked
Dave has found that with sys 42014 I can start and use the Rabbit rom

I also want to thank you for all your help and energy
Greets Ad
 

Attachments

  • rab1.jpg
    rab1.jpg
    194.4 KB · Views: 5
Last edited:
>>> Thank you very much.

Absolutely no problem at all. Glad to be of help - and we hope you will continue to enjoy VCFED. You never know when you may need our PET services again!

I will continue to enter the hex code from your photographs (but probably as a lower priority task) and post it somewhere for others to download and use should they wish.

However (to ensure that I have transcribed things correctly) I will post a little BASIC program in a few days time for you to run so that I can check my work is accurate.

EDIT: Can you correct the SYS call in the body of the text of post #70 to 42014 (just to avoid confusion in the future)...

Enjoy...

Dave
 
Perhaps I’ll change my avatar to Ace :)!

Although the Google searches for “rabbit” turned up some ‘interesting’ websites!

Dave
 
Don't try that at work !

Hah! I've got a particularly weird story about what I stumbled across when I was dumb enough to google the name of a Pokemon my kid was obsessed with that day. Suffice it to say there's some strange... and apparently very lonely, people out there. And they buy things from Alibaba.com. Things that very game-faced factory workers (who I assume are being held at gunpoint) are forced to pose with.
 
Last edited:
We now live in a world which both shuns and allows weird behavior.. dont you love hipocracy?

Congrats on figuring out the ROM startup location.

Has it been backed up to the internet for other folks?
 
>>> Congrats on figuring out the ROM startup location.

Cheers.

>>> Has it been backed up to the internet for other folks?

Not yet - but it will be. I am currently entering the hex dump photographs into a file... It was the simplest way at the time!

Dave
 
Hey if that method works for you, you wont hear me criticize it. My wife still gives me hell about buying printer paper when we receive enough junk mail to fuel home heating bills.
 
Last edited:
Back
Top