Jump to content

Photo

800XL Custom ROM Questions


11 replies to this topic

#1 justrob OFFLINE  

justrob

    Space Invader

  • 27 posts

Posted Sat Mar 28, 2015 10:14 PM

I pulled out my 800XL to try and get it running so my wife could play a few cart games today. First thing I did was open up the case to make sure it didn't need a cleaning and that none of the socketed chips had loosed since I had put it away in storage.

 

Well, my BASIC socket is empty, and the OS Socket has a custom chip in it. I pulled apart the keyboard, cleaned the contacts on the ribbon, booted it up and ran some tests.

 

Since I didn't have a BASIC ROM I plugged in one of the two BASIC carts I have. 

 

Here's what I got after doing a couple peeks:

 

https://www.dropbox.... 32 AM.jpg?dl=0

 

Both BASIC Carts come up as Rev A, which is good enough considering I haven't gotten my 1050 setup again yet, so that's no biggie.

 

I googled around and found that the two other peek addresses would identify the OS rom for me, since I couldn't be sure it hadn't been replaced. Not sure how to test how to get the size of the thing to see if it's been appended to or anything.

 

From what I can tell, a response of 2 from 65527 means it's the 800XL ROM, and 255 from 65528 means I have to use the alternative tape loading procedure if I decide to use cassettes.

 

Is that all correct? Is there anything else I can do with an accessory-less computer to check any other possibilities of the ROM?



#2 xzerix OFFLINE  

xzerix

    Star Raider

  • 52 posts

Posted Sun Mar 29, 2015 4:32 AM

I pulled out my 800XL to try and get it running so my wife could play a few cart games today. First thing I did was open up the case to make sure it didn't need a cleaning and that none of the socketed chips had loosed since I had put it away in storage.

 

Well, my BASIC socket is empty, and the OS Socket has a custom chip in it. I pulled apart the keyboard, cleaned the contacts on the ribbon, booted it up and ran some tests.

 

Since I didn't have a BASIC ROM I plugged in one of the two BASIC carts I have. 

 

Here's what I got after doing a couple peeks:

 

https://www.dropbox.... 32 AM.jpg?dl=0

 

Both BASIC Carts come up as Rev A, which is good enough considering I haven't gotten my 1050 setup again yet, so that's no biggie.

 

I googled around and found that the two other peek addresses would identify the OS rom for me, since I couldn't be sure it hadn't been replaced. Not sure how to test how to get the size of the thing to see if it's been appended to or anything.

 

From what I can tell, a response of 2 from 65527 means it's the 800XL ROM, and 255 from 65528 means I have to use the alternative tape loading procedure if I decide to use cassettes.

 

Is that all correct? Is there anything else I can do with an accessory-less computer to check any other possibilities of the ROM?

 

On an XL/XE PEEK(65527) returns the OS version, so your case is Rev.2 (Usual for an 800XL). PEEK(65528) - and (65529) are checksum bytes for the second 8k of the ROM. I guess these have been changed to accommodate the new character set (and/or any other changes from the bog standard Rev.2

 

What does the computer do when turned on without a cartridge? Weird that the Basic chip is missing - is the a chance it was scavenged to fix or upgrade another Atari?

 

A good link for info on the Atari is here: ftp://rtfm.mit.edu/pub/faqs/atari-8-bit/faq - Section 7.1 covers the OS.



#3 Rybags OFFLINE  

Rybags

    Quadrunner

  • 15,267 posts
  • Location:Australia

Posted Sun Mar 29, 2015 4:45 AM

That's a custom Rom all right.

 

Looks like it's got the character set as used by Adventure International games like Sea Dragon and Preppie.

 

Identifying a custom Rom isn't all that straightforward, there's so many of them and I can't recall any common one that went so far as to drastically change the character set like that.

Also somewhat strange to omit Basic unless there's been some rewiring going on and it's included in a bigger Rom like XEGS uses, but sort of doubt it.

 

Chances are it might be an OS that someone has built themselves.  Common OS modifications can generally include any or all of:

- faster FP routines, usually can test with a Basic program.

- faster SIO routines, usually used in conjunction with disk drive or SIO2xx hardware.

- ML monitor such as Omnimon, often selected with hotkey press or holding Select or other key with Reset.

- change behaviour of Basic, ie use Option to enable rather than disable it on powerup.



#4 russg OFFLINE  

russg

    Stargunner

  • 1,630 posts
  • Location:Cleveland, Ohio

Posted Sun Mar 29, 2015 6:56 AM

I pulled out my 800XL to try and get it running so my wife could play a few cart games today. First thing I did was open up the case to make sure it didn't need a cleaning and that none of the socketed chips had loosed since I had put it away in storage.

 

Well, my BASIC socket is empty, and the OS Socket has a custom chip in it. I pulled apart the keyboard, cleaned the contacts on the ribbon, booted it up and ran some tests.

 

Since I didn't have a BASIC ROM I plugged in one of the two BASIC carts I have. 

 

Here's what I got after doing a couple peeks:

 

https://www.dropbox.... 32 AM.jpg?dl=0

 

Both BASIC Carts come up as Rev A, which is good enough considering I haven't gotten my 1050 setup again yet, so that's no biggie.

 

I googled around and found that the two other peek addresses would identify the OS rom for me, since I couldn't be sure it hadn't been replaced. Not sure how to test how to get the size of the thing to see if it's been appended to or anything.

 

From what I can tell, a response of 2 from 65527 means it's the 800XL ROM, and 255 from 65528 means I have to use the alternative tape loading procedure if I decide to use cassettes.

 

Is that all correct? Is there anything else I can do with an accessory-less computer to check any other possibilities of the ROM?

Definitely a custom OS.  If PEEK(58383)=56 then 800/400 OS A, if 0 then 800 OS B.  Having a 2 at 65527 means XL/XE, so you have a custom OS.

You'll get 58383 a 0 with XL/XE OS also.  The 255 at 65528 means older OS.


Edited by russg, Sun Mar 29, 2015 7:05 AM.


#5 justrob OFFLINE  

justrob

    Space Invader

  • Topic Starter
  • 27 posts

Posted Sun Mar 29, 2015 9:09 AM

 

What does the computer do when turned on without a cartridge? Weird that the Basic chip is missing - is the a chance it was scavenged to fix or upgrade another Atari?

 

A good link for info on the Atari is here: ftp://rtfm.mit.edu/pub/faqs/atari-8-bit/faq - Section 7.1 covers the OS.

 

With no cart in the slot, it boots to the blue loading screen as normal, and then drops into the self-test. Memory test runs like normal with 2 blocks for ROM and the regular number of blocks for 64k RAM.

 

Definitely a custom OS.  If PEEK(58383)=56 then 800/400 OS A, if 0 then 800 OS B.  Having a 2 at 65527 means XL/XE, so you have a custom OS.

You'll get 58383 a 0 with XL/XE OS also.  The 255 at 65528 means older OS.

 

58383 returns a 0.

 

 

Also, I was doing some playing around to see what happens when I push buttons randomly ;)

 

I have a K-Razy Kritters cart, which should only run on OS A or B from what I can tell. With a normal boot, it does nothing but show me a solid color screen, different colors each time. If I hold down the Option key when booting with the cart, I get what looks like a garbled loading screen and some random sounds. The screen is just solid lines moving across the screen from right to left and the occasional semi-letter character here and there.

 

I also have a Pac-Man cart, brown label Atari standard. Does not boot in the machine. Gives the blue loading screen then drops into the self-test. I tried messing with hitting the option or select keys and such with it and hitting option on boot, it loaded the game. This was last night. Went to bed thinking I solved another mystery with it. Tried it again this morning, nothing. No matter what I press it goes to the self-test and bypasses the game.

 

Is there some kind of key combos I can try when booting with or without carts to try and figure out what else this thing has done to it? Is there any way to see if the ROM is only 16k from basic or if it's larger?



#6 justrob OFFLINE  

justrob

    Space Invader

  • Topic Starter
  • 27 posts

Posted Sun Mar 29, 2015 9:53 AM

Er, correction I think. It shows 3 rows of 16 blocks in the memory test. 48k only?

#7 russg OFFLINE  

russg

    Stargunner

  • 1,630 posts
  • Location:Cleveland, Ohio

Posted Sun Mar 29, 2015 10:34 AM

Er, correction I think. It shows 3 rows of 16 blocks in the memory test. 48k only?

That's the normal self test with BASIC gone or disabled with OPTION at boot.  It shows 48k.  The 16k below the OS isn't tested.

If BASIC is enabled, it would only show 40k, 2 and a half rows of green squares.

 

Can you boot a DOS?


Edited by russg, Sun Mar 29, 2015 10:36 AM.


#8 fujidude OFFLINE  

fujidude

    River Patroller

  • 4,787 posts
  • Location:United States of America

Posted Sun Mar 29, 2015 1:00 PM

Here is a BASIC program that will identify some of the more common BASICs.  Keep in mind it is quite crude.  It only checks the value at a single memory location to calculate.  It will reliably identify the the 3 revisions of official Atari BASIC.  It can also tell BASIC XL and BASIC XE but not reliably, since the value might be different between different revisions within those two sets.  Likewise for Altirra BASIC.
 
Anyway, here it is:

100 REM ATARI BASIC VERSION CHECKER
110 REM BY - fujidude - 2014-DEC-12
120 REM
125 PRINT
130 PRINT "BASIC version checker."
140 PRINT
150 RESTORE 1000
155 DIM NAME$(32):REM DIMENSION TO LENGTH OF LONGEST NAME
160 VERVAL=43234:REM MEMORY LOCATION TO CHECK FOR VERSION INFO
170 X=6:REM SET X TO NUMBER OF VERSIONS
180 FOR I=1 TO X
190 READ NUM,NAME$
200 IF PEEK(VERVAL)=NUM THEN GOTO 250
210 NEXT I
220 REM NO MATCH FOUND
230 NAME$="Unrecognized BASIC":GOTO 270
250 REM A MATCH WAS FOUND
260 POP :REM POP OFF THE UNFINISHED LOOP
270 PRINT NAME$;" detected."
280 END
1001 REM DATA FOR DETECTED VERSIONS.
1002 REM EACH VERSION TO CHECK FOR
1003 REM MUST BE A PAIR OF VALUES.
1004 REM THE 1ST VALUE IS THE VALUE
1005 REM OF MEM LOC. 43234 ($A8E2).
1006 REM THE 2ND VALUE IS THE NAME OF
1007 REM THE BASIC.
1010 DATA 162,Atari BASIC rev. A
1020 DATA 96,Atari BASIC rev. B
1030 DATA 234,Atari BASIC rev. C
1040 DATA 32,O.S.S. BASIC-XL
1050 DATA 104,Altirra 8K BASIC
1060 DATA 108,O.S.S. BASIC-XE

 



#9 justrob OFFLINE  

justrob

    Space Invader

  • Topic Starter
  • 27 posts

Posted Sun Mar 29, 2015 2:44 PM

Well, I don't have a BASIC ROM, so it would only tell me what version is in the carts I have, which is Rev A for both carts.

Booting without a carr goes straight to the self-test, even when I've tried different key combos at boot.

Thanks for the program anyway.

#10 fujidude OFFLINE  

fujidude

    River Patroller

  • 4,787 posts
  • Location:United States of America

Posted Sun Mar 29, 2015 3:07 PM

No problem.  As with most things posted in forums, it has the intent of possibly being useful to a wider audience as well.  I made the prog for me, so it was no big deal to throw it out for anyone else too.



#11 R.Cade OFFLINE  

R.Cade

    Stargunner

  • 1,074 posts
  • Location:Augusta, Georgia, USA

Posted Sun Mar 29, 2015 7:38 PM

I had a similar issue where my BASIC ROM went bad, and I tried to run with a cart instead.  It didn't work as well as I'd hoped... I think the XL gets confused mapping in the cart instead of the ROM and it was unstable.

 

I eventually modded my board to take EPROM and burned a new Rev.C BASIC and all is well.



#12 flashjazzcat ONLINE  

flashjazzcat

    Quadrunner

  • 12,802 posts
  • Location:United Kingdom

Posted Mon Mar 30, 2015 10:24 AM

The instability was likely down to the bad BASIC.




0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users