Jump to content
IGNORED

XL/XE compatible Atari 800?


Tempest

Recommended Posts

An aside: Your logic traces show AN0-2, the ANTIC to CTIA mini bus. Have you decoded their meanings? I tried once, without a scope, by lifting one pin at a time and seeing how the display bit batterns changed, but it got too messy.

 

Have a look at these pages:

http://jindroush.atari8.info/atanttim.htm

http://www.xmission.com/~trevin/atari/gtia_pinout.html

 

Also there's copies of the ANTIC and GTIA data sheets floating around out there.

Link to comment
Share on other sites

An aside: Your logic traces show AN0-2, the ANTIC to CTIA mini bus. Have you decoded their meanings? I tried once, without a scope, by lifting one pin at a time and seeing how the display bit batterns changed, but it got too messy.

 

Have a look at these pages:

http://jindroush.atari8.info/atanttim.htm

http://www.xmission.com/~trevin/atari/gtia_pinout.html

 

Also there's copies of the ANTIC and GTIA data sheets floating around out there.

Cool, thanks.

 

Guess I've gone off topic. Sorry.

Link to comment
Share on other sites

  • 4 months later...
  • 2 weeks later...
Any more updates on this?

 

Tempest

 

Somewhat. I've been mired in reducing the external connections required outside of the personality slot as I can't expect everyone to be adept with an soldering iron. And I like the idea of having less wires inside the card cage. OK, so at the expense of additional logic, I implemented an internal register at $D301 that can be read/written and doesn't require a physical connection to port B. But so you get an appreciation for how something that is seemingly simple turns into something insanely more complex, consider this: it didn't turn out to be a simple 8-bit register and tri-state buffer as one would assume (well part of it is).

 

Rather than bore everyone with an explanation of the PIA initialization sequence and how to write-protect the internal $D301 register with a state machine until it's ready, I'll say it works now without any physical connections to the real PIA. I'm assuming all the custom OS ROMs for the XL/XE initialize PORTB a similar fashion. The state machine is not tied to a specific number of reads from ROM after reset, it actually waits until PBCTL is initialized. So all this work as well as a few other optimizations reduces the amount of external wiring from 20, to 10.

 

Whew.

Link to comment
Share on other sites

Any more updates on this?

 

Tempest

 

Somewhat. I've been mired in reducing the external connections required outside of the personality slot as I can't expect everyone to be adept with an soldering iron. And I like the idea of having less wires inside the card cage. OK, so at the expense of additional logic, I implemented an internal register at $D301 that can be read/written and doesn't require a physical connection to port B. But so you get an appreciation for how something that is seemingly simple turns into something insanely more complex, consider this: it didn't turn out to be a simple 8-bit register and tri-state buffer as one would assume (well part of it is).

 

Rather than bore everyone with an explanation of the PIA initialization sequence and how to write-protect the internal $D301 register with a state machine until it's ready, I'll say it works now without any physical connections to the real PIA. I'm assuming all the custom OS ROMs for the XL/XE initialize PORTB a similar fashion. The state machine is not tied to a specific number of reads from ROM after reset, it actually waits until PBCTL is initialized. So all this work as well as a few other optimizations reduces the amount of external wiring from 20, to 10.

 

Whew.

 

 

 

Wow things have changed a lot since the earlier prototypes. :-o

Link to comment
Share on other sites

  • 2 weeks later...

Late night update....

 

Hard thing about these projects is finding the time to work on them while keeping your other obligations. So I've trimmed down the external connections as much as I could, and made sure no cutting or jumpers would be required except for soldering a few points on the CPU board and the top side of the motherboard. Some of you were concerned about soldering, so I've taken pictures of what you can expect to get into if you do this. The bulk of the connections go to the backside of the CPU board. I'm trying to see if there's enough clearance to stick small piggyback PCBs on the CPU board so it could be a completely solderless install. It may be possible, but it will be a tight fit between the CPU board and the metal shield. While I could take most of the signals from another part of the board, there's a couple that I absolutely need off of ANTIC.

 

I switched my glue logic from the larger 5V CPLD to a tiny 64-pin 3.3V in the same family as this was the original silicon I had planned to use when I started all this madness. I've used every single pin on it, so I can't add anything else to it unless I remove a feature. There's some wiggle room left inside in the event I need to make some small design changes, but other than that, it's completely utilized. There's provisions for the 32-in-1 OS, and the rest of the missing PBI signals. The three unused memory slots can essentially be used for plug-in PBI devices as 90% of the signals you need are already there. I made a PBI pass-through card that has a 50-pin edge connector similar to the XL and have run my MIO on it successfully. Here's an interesting artifact with this design-- while the directional parts of joystick ports 3 and 4 are dead (you can never read/write the real PORTB as that goes to the CPLD), the trigger and paddle inputs on port 3 are still active and usable. Same goes for port 4-- except you can't use the trigger because that's what the cartridge port interlock is connected to on the XL/XE.

 

Between the logic coding and simulating, soldering was the worst part. There's at least 150 wires on that protoboard. The fun part was loading up all different kinds of software to see what worked and what didn't and playing games that you'd only expect to run on newer machines. Lots of life still left in the old 800.

post-1647-1219039924_thumb.jpg

post-1647-1219039954_thumb.jpg

post-1647-1219039990_thumb.jpg

post-1647-1219040015_thumb.jpg

post-1647-1219040045_thumb.jpg

Link to comment
Share on other sites

What is up with the processor looking board plugged into the top of that one board? Wild.

 

That's the guts where the glue logic for the static rams and the signals for rest of the machine are generated. Lots of stuff inside there to make this a single board upgrade and generate the missing features from the XE.

Link to comment
Share on other sites

  • 1 month later...
  • 4 months later...

OK, I won't deny it. I'm guilty of being lazy on this.

 

The design is finished and I have yet to find any XL/XE software that doesn't run on it (ANTIC mode, extended RAM, etc). Best way to go on this I think is to finish laying out the board and get an estimate for the parts. Ideally I'd like to make a run of 30-50 so the price point isn't high for everyone. And maybe offer some kind of installation service for those who don't want to open up their machine and solder wires. You could of course go back to stock by unplugging the connector and using the original 800 cards again.

 

I'd just need a show of hands as to how many I need to make. PCBs would be provided fully assembled and tested-- you'd just have to solder in the wiring harness for those of you DIYers.

Link to comment
Share on other sites

OK, I won't deny it. I'm guilty of being lazy on this.

 

The design is finished and I have yet to find any XL/XE software that doesn't run on it (ANTIC mode, extended RAM, etc). Best way to go on this I think is to finish laying out the board and get an estimate for the parts. Ideally I'd like to make a run of 30-50 so the price point isn't high for everyone. And maybe offer some kind of installation service for those who don't want to open up their machine and solder wires. You could of course go back to stock by unplugging the connector and using the original 800 cards again.

 

I'd just need a show of hands as to how many I need to make. PCBs would be provided fully assembled and tested-- you'd just have to solder in the wiring harness for those of you DIYers.

 

I'll take one! :thumbsup:

Link to comment
Share on other sites

OK, I won't deny it. I'm guilty of being lazy on this.

 

The design is finished and I have yet to find any XL/XE software that doesn't run on it (ANTIC mode, extended RAM, etc). Best way to go on this I think is to finish laying out the board and get an estimate for the parts. Ideally I'd like to make a run of 30-50 so the price point isn't high for everyone. And maybe offer some kind of installation service for those who don't want to open up their machine and solder wires. You could of course go back to stock by unplugging the connector and using the original 800 cards again.

 

I'd just need a show of hands as to how many I need to make. PCBs would be provided fully assembled and tested-- you'd just have to solder in the wiring harness for those of you DIYers.

 

I want one!

Link to comment
Share on other sites

I've asked this before, but I figured I'd ask again just incase some has thought of something new in the past year or two. Is it possible to hack an Atari 800 so it is compatible with Atari XL/XE software that requires 64K+?

 

Tempest

 

Yeah, I'd consider more than one if the price is in the right range.

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...