Jump to content
IGNORED

The 576K XE compatible 800


warerat

Recommended Posts

After weeks of working on and off on this and ironing out bugs, I'm finally able to declare victory. What I have now is a 100% XL/XE compatible 800, with 576K, including switchable selftest and built in BASIC. What's really nice is that the power consumption of the GALs and SRAMs are much lower than the two 16K RAM cards it replaces, so the whole machine runs a lot cooler. I'll probably end up replacing the remaining 16K card with a SRAM to drop consumption even more. Nothing like a 512K ramdisk on a nice keyboard.

 

The top board is a highly modified OS board, it contains a slightly modified XL OS, the BASIC ROM, and RAM (effectively the missing 16K on a 48K machine). It receives PB0 from port 3 for the OS RAM/ROM select (blue wire on right), and has two additional inputs (two wires entering on left) for the BASIC and selftest ROM enables that come from the RAM board. The RAM board is on the bottom. It goes in the middle memory slot and replaces the last two 16K modules. It provides the regular 32K and an additional 512K in the normal $4000-$7FFF zone. The wires going out on the right go to ports 3 and 4 for the memory enable, bank selects, basic, and selftest. The two wires on the left connect to the OS board to provide the additional enables for switchable BASIC and selftest ROMs.

 

Now that slot 3 is free, I'm going to make a custom MyIDE based card to have an internal CF disk. In theory, as the 800 has +12V on the slots and I've dropped most of the power hungry DRAMs out, I might even be able to run a low-power harddrive off it.

 

Don't mess with the beige. :)

post-1647-1142194610_thumb.jpg

post-1647-1142194718_thumb.jpg

  • Like 2
Link to comment
Share on other sites

That is absolutely INCREDIBLE! I am extremely impressed!

 

Bob

 

 

After weeks of working on and off on this and ironing out bugs, I'm finally able to declare victory. What I have now is a 100% XL/XE compatible 800, with 576K, including switchable selftest and built in BASIC.

(snip!)

Don't mess with the beige. :)

Link to comment
Share on other sites

What I have now is a 100% XL/XE compatible 800

 

But does it retain 100% compatibility with the 800?

 

If I wanted to rig up a switch I could retain the 800 OS and the XL OS. But using ports 3 and 4 in XL mode is mutually exclusive. That *is* what makes the XL/XE what they are. Had Atari decided to use four joystick ports on the XL/XE and do the switching with a latch or another PIA, we wouldn't be having this discussion.

 

The 800 is a different design than the XL/XE. I'd rather have SpartaDOS, large ramdisks, and the ability to run newer software than two joystick ports. If I want to run an 800 game I can switch cards, or run the translator disk. I can have the best of both worlds, it is just a card swap away now. All I've done is added the necessary logic using the existing 800 signals to make it look like an XL/XE memory map.

 

But I still retain both cartridge slots. And it is always ANTIC enhanced (cannot be switched-- ANTIC will always see the memory the CPU does). It's just a hybrid now.

 

So, if I want to use this "upgrade" to "downgrade" I could:

 

1) Unplug the connectors from ports 3 and 4 and plug in the original personality module. If you're a purist, you can plug the original 16K boards back in too. :)

2) Unplug the connectors and hack a 32-in-1 OS in there. I believe it connects to PHI2, RESET, and something else. Then you're two joystick ports away from an XL.

3) Run a translator disk

4) Patch the misbehaving 800 software to run

Edited by warerat
Link to comment
Share on other sites

Sweet! Now it's time to start "mass" producing these cards for the rest of us and get some money as well as satisfaction. If I can do this to my 800, then my 320XE's days would be numbered, but I'd still keep my 1200XL. Now, besides just the MyIDE board, you might as well go the whole nine yards and do a dual-POKEY upgrade too.

Edited by Gunstar
Link to comment
Share on other sites

Sweet! Now it's time to start "mass" producing these cards for the rest of us and get some money as well as satisfaction. If I can do this to my 800, then my 320XE's days would be numbered, but I'd still keep my 1200XL. Now, besides just the MyIDE board, you might as well go the whole nine yards and do a dual-POKEY upgrade too.

 

The way everything is wired, the 800 looks exactly like a Peterson 576K XE (without selectable BASIC, and the switch :) ). But all you have to do is swap wires for PB1 with the basic select (instead of an address), and you get a 320K XE machine with BASIC on the same hardware. ANTIC enhanced is always implied, and not selectable with PB5, as there is no EMMU in the 800, and it doesn't have separate CAS banks like the XE (this is a SRAM based design anyway to minimize ICs, so I don't use CAS/RAS) so ANTIC always sees the same memory as the CPU. I could implement this, but it will require some major changes because HALT isn't present on the memory board to signal an ANTIC cycle. I'd have to move to a bigger CPLD to do this because I'd need more I/O pins. But this design works as is, considering it is EMMUless and FREDDIEless. Just think of each GAL as fancy quasi-EMMUs/MMUs for the 800.

 

There are a few things missing from this design, mainly some PBI signals:

 

- No MPD to disable $D800-$DFFF for a PBI ROM

- No CASINH to disable main memory access

- EXTSEL is different on the 800

- CAS is generated locally on RAM cards and not present on any connector

 

First two can be implemented rather easily if I had a bigger GAL (I'm using all the pins on it right now). There is an unused pin on the OS connector, one could theoretically run the $D1XX enable out from the OS board. Is PBI possible with this? Absolutely. Most of the signals are there. I know a 1064 memory board wouldn't work, but I don't think it's that practical to run PBI on the 800-- yet. As Mr. Atari's MyIDE stuff is made to run only on $D1XX or $D5XX, and slot 3 has $D6XX, I'm going to modify the OS board to send the $D1XX select in it's place to slot 3 so I can use all the internal MyIDE stuff. Would be nice to have a $D6XX version.

 

I've got part of the PCB laid out for the memory board-- time is limited this week to work on it. Will probably save some cost to use SMDs instead of DIPs. If I do away with the last 16K board and replace it with SRAM, I can do away with the analog RAS delay circuitry on the OS board and have a simpler design, but no DRAM will be able to be used in the machine at all, at least while in XL/XE mode. Considering the 512K SRAM was $5.90, and given the small memory addressing capability of the Atari, I'm all for SRAM based designs. If you wanted 1088K you could just piggy back another 512K SRAM on top of this one with a 74LS00. It would cost you the selftest, but I like Mathy's idea of keeping compatibility with his 1MB DRAM design, so I might implement that later.

 

I'll be in the San Antonio/New Braunfels area late next week if you want to see a demo of this on your hardware. All plug in, no soldering required. Seeing is believing.

Edited by warerat
Link to comment
Share on other sites

Hmm, Do you need to borrow my MyIDE cart?

 

No, but I'll borrow your CF card with the IDE converter. I'll trade you two 1050's and a XEGS for it. :D

 

:)

 

Well this is looking great! Can't wait to take this for a spin. :) When I get it working, my next trick will be to get the MyIde + flash (recently modified to work fit in the 800) with the 576K upgrade. Getting the setup working with my 800 XL now, so will try that setup on the 576K 800 (which I still like the name "CX802". :)

Link to comment
Share on other sites

 

Can't wait to take this for a spin. :) When I get it working, my next trick will be to get the MyIde + flash (recently modified to work fit in the 800) with the 576K upgrade. Getting the setup working with my 800 XL now, so will try that setup on the 576K 800 (which I still like the name "CX802". :)

 

Well, I said this. Sent my CX802 back to get it updated, but it is four days overdue in arriving. Starting to get a bit worried.

 

I will track this, and if need be, I will collect my $100 of insurance money if it is not found, but just like when the post office lost the one copy of Tetris for the Nuon that I was able to find, and paid for (never have had another copy of that, which is just discouraging) $100 is just not the same as actually getting what you were trying to transport to begin with.

 

Well, at worst, the CX802 experience was fun while it lasted...

Link to comment
Share on other sites

$100 is just not the same as actually getting what you were trying to transport to begin with.

 

What kind of update did warerat do? I need to see what he has been up to.

 

Adding rom test and basic. Should add a little more compatibility. At least it would be nice.

 

Good news is we believe my package with teh CX802 arrived in Houston ok. Yahhh...

Link to comment
Share on other sites

Sorry for being boring but.... If mem. serves me correctly, doesnt the 400/800 using a different method of bank switching, namely d800 instead of the xl/xe's d301, or are you using both (to retain total 800/xl/xe compatibility)

 

Not boring.

 

The 800 and 400 do use a different method of bank switching. What these boards do is make the 800 actually XL/XE compatible and uses the memory as the XL/XE would. This is so complete that you actually have to use the Translator disk on the 800 so that 800 programs will work on it (as if it were a XL). So it works that well. :D

Edited by doctorclu
Link to comment
Share on other sites

Sweet! Now it's time to start "mass" producing these cards for the rest of us and get some money as well as satisfaction. If I can do this to my 800, then my 320XE's days would be numbered, but I'd still keep my 1200XL. Now, besides just the MyIDE board, you might as well go the whole nine yards and do a dual-POKEY upgrade too.

 

The way everything is wired, the 800 looks exactly like a Peterson 576K XE (without selectable BASIC, and the switch :) ). But all you have to do is swap wires for PB1 with the basic select (instead of an address), and you get a 320K XE machine with BASIC on the same hardware. ANTIC enhanced is always implied, and not selectable with PB5, as there is no EMMU in the 800, and it doesn't have separate CAS banks like the XE (this is a SRAM based design anyway to minimize ICs, so I don't use CAS/RAS) so ANTIC always sees the same memory as the CPU. I could implement this, but it will require some major changes because HALT isn't present on the memory board to signal an ANTIC cycle. I'd have to move to a bigger CPLD to do this because I'd need more I/O pins. But this design works as is, considering it is EMMUless and FREDDIEless. Just think of each GAL as fancy quasi-EMMUs/MMUs for the 800.

 

There are a few things missing from this design, mainly some PBI signals:

 

- No MPD to disable $D800-$DFFF for a PBI ROM

- No CASINH to disable main memory access

- EXTSEL is different on the 800

- CAS is generated locally on RAM cards and not present on any connector

 

First two can be implemented rather easily if I had a bigger GAL (I'm using all the pins on it right now). There is an unused pin on the OS connector, one could theoretically run the $D1XX enable out from the OS board. Is PBI possible with this? Absolutely. Most of the signals are there. I know a 1064 memory board wouldn't work, but I don't think it's that practical to run PBI on the 800-- yet. As Mr. Atari's MyIDE stuff is made to run only on $D1XX or $D5XX, and slot 3 has $D6XX, I'm going to modify the OS board to send the $D1XX select in it's place to slot 3 so I can use all the internal MyIDE stuff. Would be nice to have a $D6XX version.

 

I've got part of the PCB laid out for the memory board-- time is limited this week to work on it. Will probably save some cost to use SMDs instead of DIPs. If I do away with the last 16K board and replace it with SRAM, I can do away with the analog RAS delay circuitry on the OS board and have a simpler design, but no DRAM will be able to be used in the machine at all, at least while in XL/XE mode. Considering the 512K SRAM was $5.90, and given the small memory addressing capability of the Atari, I'm all for SRAM based designs. If you wanted 1088K you could just piggy back another 512K SRAM on top of this one with a 74LS00. It would cost you the selftest, but I like Mathy's idea of keeping compatibility with his 1MB DRAM design, so I might implement that later.

 

I'll be in the San Antonio/New Braunfels area late next week if you want to see a demo of this on your hardware. All plug in, no soldering required. Seeing is believing.

I might be too late, as I didn't see this response sooner, but if it's not too late to see that demonstration, PM me.

Link to comment
Share on other sites

They normally do, if you use Axlon/Byrd boards. These are just replacement plug in boards-- no motherboard modifications required.

 

This mod turns the 800 into an XL/XE (XL OS, complete memory map, and PORTB switching so you lose ports 3 and 4). With the modified boards plugged in, it is functionally identical to a Peterson 576K 130XE (64K main + 512K banked). Only thing that is wierd is the System Reset key gets clobbered by some software because it is a NMI interrupt on the 800, rather than a true hardware reset. Which is why I have to use a 800 NMI handler in the XL OS. Permanent solution is to wire the reset key to the reset circuit in the 4050 buffer, but then if you went back to 800 mode you'd get a cold start everytime you pressed reset.

 

Other than that, it runs all XL/XE software and I even have to hold down option if I switch to 320K mode to disable BASIC.

 

Sorry for being boring but.... If mem. serves me correctly, doesnt the 400/800 using a different method of bank switching, namely d800 instead of the xl/xe's d301, or are you using both (to retain total 800/xl/xe compatibility)

Link to comment
Share on other sites

  • 4 weeks later...
Adding rom test and basic. Should add a little more compatibility. At least it would be nice.

 

Good news is we believe my package with teh CX802 arrived in Houston ok. Yahhh...

 

I know. I saw it when I was over there last weekend. I have modified my XL OS board to use the unused pin to just plug in the board. It is still fully reversible by using a 800 OS board. Now, I need a Label to tell the 800 OS board from the XL OS board. :D

 

I also did the mod to allow the identification of the MyIDE cart. I connected the Trigger of Joystick 4 to Pin 15 of the cart. That allowed me to choose 0 NONE(48K) under the MyIDE menu. If not done, I just get a blank screen. warerat told me what I needed to do for both mods.

 

I love being able to load the disk images via the MyIDE cart. I will be waiting on the Slot 3 version. The video is the best I have seen on an Atari except for the SuperVideo Modded 130XE that warerat has. I am using a 1702 via Chroma/Luma. warerat's 130xe looked great even with a crappy Magnovox and composite connection. I could not say the same for his 800+.

Edited by Almost Rice
Link to comment
Share on other sites

Wow, a 576k 800. Kudos bro, KUDOS. But why 576k, not just going all out and give it 640k?

 

 

576k comes from 64k + 512k. The 512k is separate from the 64k. 64k is main memory. If you wanted more, the next logical step up would have been 1088k. If you have seen any XE upgrades they tend to be 64k + a multiple of 2^n(256,512,1024k) so the total would be 320k, 576k, or 1088k. warerat's design follows that trend.

 

BTW,

Why do you want 640k? warerat is not trying to build a PC clone. I have only seen 640k significant there.

Edited by Almost Rice
Link to comment
Share on other sites

Wow! Awesome mods!

 

OT:

 

Where did you get 512KByte SRAMs for only $5.90? Cheapest price I can find is $19.

 

I'm not doing anything near as ambitious as your project. Just a couple of SRAM multicarts, one external, one internal (800XL).

 

I would really like to know how to implement SRAM as main memory (800XL). Do you plan to post schematics of your 800 projects.

 

Steve Sheppard

Link to comment
Share on other sites

Wow! Awesome mods!

 

OT:

 

Where did you get 512KByte SRAMs for only $5.90? Cheapest price I can find is $19.

 

I'm not doing anything near as ambitious as your project. Just a couple of SRAM multicarts, one external, one internal (800XL).

 

I would really like to know how to implement SRAM as main memory (800XL). Do you plan to post schematics of your 800 projects.

 

Steve Sheppard

 

I bought them at: http://www.futurlec.com/ICRAM.shtml

 

The Samsung 684000 is $6.90 now. That's what I ordered but I got the Hitachi 628512 instead. Pin compatible anyway.

 

Just think-- you could implement the entire 130XE memory with one 128Kx8 SRAM for $2.90...

Edited by warerat
Link to comment
Share on other sites

Wow! Awesome mods!

 

OT:

 

Where did you get 512KByte SRAMs for only $5.90? Cheapest price I can find is $19.

 

I'm not doing anything near as ambitious as your project. Just a couple of SRAM multicarts, one external, one internal (800XL).

 

I would really like to know how to implement SRAM as main memory (800XL). Do you plan to post schematics of your 800 projects.

 

Steve Sheppard

 

I bought them at: http://www.futurlec.com/ICRAM.shtml

 

The Samsung 684000 is $6.90 now. That's what I ordered but I got the Hitachi 628512 instead. Pin compatible anyway.

 

Just think-- you could implement the entire 130XE memory with one 128Kx8 SRAM for $2.90...

 

Wow! Awesome prices!

 

DS1210 NV memory controller for only $2.75!

 

Thanks!

 

- Steve Sheppard

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...