Jump to content
IGNORED

Atari 800 XL Remake


reifsnyderb

Recommended Posts

3 hours ago, kenames99 said:

hi,

  I know I promised right after the weekend but had a bit of trouble finding the 1450xl but here are the schematics for 1400XL and 1450XL machines. interesting stuff in these.

 

Ken

 

1400XL-schems.zip 116.44 MB · 5 downloads 1450XL Schematics.zip 24.05 MB · 5 downloads

What was the main difference between the two?

Link to comment
Share on other sites

5 minutes ago, Dropcheck said:

What was the main difference between the two?

 

I believe they were essentially the same computer. Technically, I don't think there was a 1450XL. The 1400XL and the 1450XLD were essentially the same computer, with the 1450XLD having a built-in floppy controller and one or two built-in drives. They were both things of beauty. It's a shame more of them didn't make it out into the wild.

 

 

crash-atari-XL1400-1983.thumb.jpg.67cf135cf6de44d277ae1b5d699bb48c.jpg

  • Like 1
Link to comment
Share on other sites

5 hours ago, kenames99 said:

hi,

  I know I promised right after the weekend but had a bit of trouble finding the 1450xl but here are the schematics for 1400XL and 1450XL machines. interesting stuff in these.

 

Ken

 

1400XL-schems.zip 116.44 MB · 8 downloads 1450XL Schematics.zip 24.05 MB · 7 downloads

Not a problem.  I appreciate you posting these!   Thank you!

Edited by reifsnyderb
Link to comment
Share on other sites

9 hours ago, bfollowell said:

 

crash-atari-XL1400-1983.thumb.jpg.67cf135cf6de44d277ae1b5d699bb48c.jpg 

The blank spot where the left drive would go made me think of an empty DIN slot for a car stereo.  This made me think of the single-DIN head units that have a retractable LCD display, which made me think how cool it would be if this had such a display.

 

Perhaps make a custom top shell for a 1200XL with the 1450XLD look and have a retractable display in it?  Call it a 1200XLD (D for Display, not Drive, in this case).  @bob1200xl, get on it! ?

 

 

  • Like 2
Link to comment
Share on other sites

15 hours ago, bfollowell said:

 

I believe they were essentially the same computer. Technically, I don't think there was a 1450XL. The 1400XL and the 1450XLD were essentially the same computer, with the 1450XLD having a built-in floppy controller and one or two built-in drives. They were both things of beauty. It's a shame more of them didn't make it out into the wild.

 

 

crash-atari-XL1400-1983.thumb.jpg.67cf135cf6de44d277ae1b5d699bb48c.jpg

From a marketing perspective, that is true.  From an engineering point, it is a little different.  

 

In the beginning (or near the beginning) there was a "short board" in two versions: 1400 and 1450. Those are the markings ON the board. Eventually the 1400 was scrapped in favor of just using the 1450 board (it was the same thing except with headers for power and bus connections to the floppy board(s)).  And there were at least 2 versions of that floppy board.

 

Then the 14xxXLxline was scrapped.

 

In early 1984, the 1450XLD was resurrected as a single long "TONG" board with floppy controller built in (instead of a separate board) and there were a lot of logic changes between TONG and the short board.

 

And no one knows what the 6402A board was all about.

 

TONG Schematics:TONG_Schematics.zip

Link to comment
Share on other sites

More soldering has been done on the 600XLM board and as soon as I get in the final components it will be finished quickly.

 

A few thoughts on improvements and changes.  Please feel free to comment....

 

1.  I've noticed that on the 1088XEL and 576 NUC that the inductors and beads have been eliminated.  I plan to remove them from future boards as they are very difficult to install the surface mount variety because positioning them is almost like chasing a piece of dust around the board with a dental pick.  No fun.  If they aren't needed, they are gone.  I can't find bigger surface mount inductors, either.

2.  I've noticed the 576 NUC and 1088 XEL have simpler audio circuits.  So I'll switch to that circuit and reduce the component count by about 10 or so.

3.  The 576 NUC has a much simpler oscillator circuit for the primary oscillator.  So I am planning to use that as well so as to drop the component count by another 10 or so.

4.  I've replaced some of the resistors with resistor arrays and am looking for more to replace.  The problem really isn't soldering the surface mount resistors as when there are 8 in a row of the same variety you just put the paste on, drop the resistors in place, give it some hot air, and it's done.  The problem is figuring out which resistors go where.  It's like a 1,000 piece puzzle with all of those resistors and that's even with the values silk-screened on.  So it takes a while to locate where each one goes.

5.  Also, on a negative note I've spent quite a while with a Teensy board, scope, monitor, etc., and determined that doing 80 columns with the Teensy won't work with this design and some more circuitry is needed.  Either way I plan to find a solution as having 80 columns would be great....it will take longer.

6.  The PAL oscillator has a lot of additional components that, for many, won't be used.  I am thinking about making PAL support an add-on board.  Thoughts?

 

Edit to add:  7.  Soldering the 44 pin components on the board is pretty easy.  So I am thinking about eliminating the socket for the 6502 chip as well and just soldering it to the board.  (It's a "standard" 65c02 from WDS but in a 44 pin square package.)

 

While I don't have an accurate count of components I have eliminated for the next revision, I think it's around 35 or so.

 

Thanks!

 

Edited by reifsnyderb
Link to comment
Share on other sites

1 hour ago, reifsnyderb said:

I've noticed that on the 1088XEL and 576 NUC that the inductors and beads have been eliminated.

 

I've noticed the 576 NUC and 1088 XEL have simpler audio circuits.

 

The 576 NUC has a much simpler oscillator circuit for the primary oscillator.

 

I've replaced some of the resistors with resistor arrays and am looking for more to replace.  The problem really isn't soldering the surface mount resistors as when there are 8 in a row of the same variety you just put the paste on, drop the resistors in place, give it some hot air, and it's done.  The problem is figuring out which resistors go where.  It's like a 1,000 piece puzzle with all of those resistors and that's even with the values silk-screened on.  So it takes a while to locate where each one goes. This also was done in the NUC wherever it made sense.

Yes the 576NUC+ is a minimalist design. It needed to be to in order to achieve the size reduction.

 

1 hour ago, reifsnyderb said:

The PAL oscillator has a lot of additional components that, for many, won't be used.  I am thinking about making PAL support an add-on board.  Thoughts?

How about something else from the 576NUC+ project.

 

Leave out all the components associated with the Color Burst Oscillator and for those that wish to have PAL, just plug in one of these piggyback boards (sits directly under GTIA, and is no bigger than the GTIA chip's footprint). You can make an SMD version if you like, or just point people to HERE if they want to use the NUC version (gerbers are available for download).

 

PALburst.jpg.e86418973963b91d6775786a1fa5ffc2.jpg

 

Link to comment
Share on other sites

17 minutes ago, mytek said:

Yes the 576NUC+ is a minimalist design. It needed to be to in order to achieve the size reduction.

 

How about something else from the 576NUC+ project.

 

Leave out all the components associated with the Color Burst Oscillator and for those that wish to have PAL, just plug in one of these piggyback boards (sits directly under GTIA, and is no bigger than the GTIA chip's footprint). You can make an SMD version if you like, or just point people to HERE if they want to use the NUC version (gerbers are available for download).

 

PALburst.jpg.e86418973963b91d6775786a1fa5ffc2.jpg

 

Excellent!  Thank you!  Here I was looking at the NUC schematics and didn't scroll down far enough.  That circuit will do nicely.  I'll investigate making it using SMD components as that should be able to be cheaply made via pick and place machines so as to be a very cheap add-on.

 

Putting it as an add-on socket with the GTIA would save room, too.  I like that idea.  As-is it may be too high in a 600xl.  But, there may be enough space to put everything but the crystal under the GTIA chip and have the chip sticking out to the left.

 

Link to comment
Share on other sites

3 hours ago, reifsnyderb said:

Edit to add:  7.  Soldering the 44 pin components on the board is pretty easy.  So I am thinking about eliminating the socket for the 6502 chip as well and just soldering it to the board.  (It's a "standard" 65c02 from WDS but in a 44 pin square package.)

 

 

 While that is certainly doable for some people (I'm assuming that you have the soldering skills to do that), what happens if the chip goes bad for whatever reason?  Sometimes in the zeal to reduce part count, you shoot yourself in the foot.  Anytime you get over 16-20 pins, trying to desolder SMT chips becomes a nightmare for most people of modest soldering skill.  My personal opinion for what it's worth is that any PLCC type chip should be socketed. 

 

  You of course are free to do whatever you feel comfortable doing in the testing phase. ?

  • Like 3
  • Thanks 1
Link to comment
Share on other sites

3 minutes ago, ivop said:

Oh, no Sally? For me, that would be a real bummer. No NMOS undocumented (not illegal) opcodes.

I know this gets brought up as a no-go by many, but how serious of a problem is it in reality?

 

Is there a list somewhere of what software/games require the illegal op-codes?

 

Link to comment
Share on other sites

7 minutes ago, mytek said:

I know this gets brought up as a no-go by many, but how serious of a problem is it in reality?

 

Is there a list somewhere of what software/games require the illegal undocumented op-codes?

FTFY ;)

 

I'm not sure if there's a list, and I agree that 99.5% of the time it's not a problem, but there are quite some demos that use LAX, SBX, etc...

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

if the software is written assemble for one other... as stated before their are equivalent codes or the speed of the newer processor makes up for it a bit... two slightly different versions of the same software or even a detection or choice at boot should sort it.

Link to comment
Share on other sites

There is another problem though. On a 65C02 ASL LSR ROL ROR abs,X have a different cycle count! 6 when it doesn't cross a page boundary, 7 when it does. On a 6502C it is always 7.

 

 

Edit: oh, it's even worse: http://www.6502.org/tutorials/65c02opcodes.html#8

 

This could mess up timing loops.

 

Edit2: the 65C816 does a useless read instead of a write during R-M-W instructions, so inc IRQEN (used in AtariSID 6.1) doesn't work. Not sure yet if the 65C02 has the same problem.

 

Edited by ivop
Link to comment
Share on other sites

5 minutes ago, ivop said:

I'm not sure if there's a list, and I agree that 99.5% of the time it's not a problem, but there are quite some demos that use LAX, SBX, etc...

Thanks for the clarification :)

 

But based on what you mentioned as possible uses, it does seem that it's limited to a relatively small subset of software. Yeah I used to love running demos when demonstrating what the old A8's could really do, but for us folks over here in the states it also often required converting our system to PAL and finding a suitable monitor to work with that. So being in NTSC land probably cuts out a good 2/3 of whatever demos relied on illegal op-codes. The pie is getting ever smaller ;)

 

  • Like 1
Link to comment
Share on other sites

16 hours ago, Dropcheck said:

 While that is certainly doable for some people (I'm assuming that you have the soldering skills to do that), what happens if the chip goes bad for whatever reason?  Sometimes in the zeal to reduce part count, you shoot yourself in the foot.  Anytime you get over 16-20 pins, trying to desolder SMT chips becomes a nightmare for most people of modest soldering skill.  My personal opinion for what it's worth is that any PLCC type chip should be socketed. 

 

  You of course are free to do whatever you feel comfortable doing in the testing phase. ?

I understand the thought.  Removing a 44 pin chip, with a soldering iron, would be miserable if not impossible.  But most of the chips on the board are SMD and some are too small to use a soldering iron on.  (Even though I mostly limited the small chips to 1206's.)  With a hot-air soldering station (~$65 or so) I've found removing a 44 pin chip to be simple.

 

Edit to add:  I've left the Atari LSI chips socketed as they are special.

Edited by reifsnyderb
Link to comment
Share on other sites

40 minutes ago, ivop said:

Oh, no Sally? For me, that would be a real bummer. No NMOS undocumented (not illegal) opcodes.

I didn't think that was a problem and mentioned it in my first post 11 pages ago.  Nobody said anything.   ?

 

Also, the early 400 and 800's didn't use a SALLY.  They had a normal 6502.

 

One of my goals was to eventually enable having an Atari computer without any Atari chips.  I think Antic is the only chip for which a solution hasn't yet been found.

 

GTIA to Sophia

PIA is still available

Pokeymax for Pokey

W65C02 for SALLY

Just need Antic.

 

  • Like 1
Link to comment
Share on other sites

1 minute ago, reifsnyderb said:

I didn't think that was a problem and mentioned it in my first post 11 pages ago.  Nobody said anything.   ?

Sorry, I missed that.

 

1 minute ago, reifsnyderb said:

Also, the early 400 and 800's didn't use a SALLY.  They had a normal 6502.

Yes, but both are NMOS 6502 processors, with identical instruction behaviour. The W65C02 differs in many aspects. Timing is different, and some instructions are even functionally different.

 

1 minute ago, reifsnyderb said:

One of my goals was to eventually enable having an Atari computer without any Atari chips.

Perhaps you can make the W65C02 / Sally 6502c / MOS 6502b selectable?

Link to comment
Share on other sites

35 minutes ago, ivop said:

Edit2: the 65C816 does a useless read instead of a write during R-M-W instructions, so inc IRQEN (used in AtariSID 6.1) doesn't work. Not sure yet if the 65C02 has the same problem.

Wikipedia page says:

Quote

When executing a read-modify-write (R-M-W) instruction, such as INC addr, all NMOS variants will do a double write on addr, first rewriting the current value found at addr and then writing the modified value. This behavior can result in difficult-to-resolve bugs if addr is a hardware register. The 65C02 instead performs a double read of addr, followed by a single write.

So inc IRQEN (not only used by me) does not work on the CMOS version. We rely on the extra write to a hardware register, but it does a read instead.

 

Link to comment
Share on other sites

10 minutes ago, kenames99 said:

hi ivop,

  could you provide a real world use case where that is a requirement? maybe explain why inc irqen does not work with the cmos version. or maybe point to some docs that explain this.thanks.

 

Ken

 

None of these will run on a 65C02: https://github.com/ivop/atarisid/tree/master/xex

 

The quote from Wikipedia explains it. NMOS inc instruction first writes the unmodified byte, and then writes the modified byte to addr. The CMOS version does not write the unmodified byte, but does a read instead, and then it writes the modified byte.

 

NMOS: two writes, one acks the IRQ, second enables it again

CMOS: one read, one write, no ack, reenable is useless, so it doesn't work

 

Edit: inc IRQEN is in this file (three times): https://github.com/ivop/atarisid/blob/master/irq.inc

Edited by ivop
Link to comment
Share on other sites

33 minutes ago, ivop said:

Sorry, I missed that.

 

Yes, but both are NMOS 6502 processors, with identical instruction behaviour. The W65C02 differs in many aspects. Timing is different, and some instructions are even functionally different.

 

Perhaps you can make the W65C02 / Sally 6502c / MOS 6502b selectable?

Not easily and not without taking up a huge amount of space on the board.  This brings us back to either going back to a SALLY 40 pin DIP and using either SALLY or an upgrade board plugged into the socket.

Link to comment
Share on other sites

7 minutes ago, ivop said:

None of these will run on a 65C02: https://github.com/ivop/atarisid/tree/master/xex

 

The quote from Wikipedia explains it. NMOS inc instruction first writes the unmodified byte, and then writes the modified byte to addr. The CMOS version does not write the unmodified byte, but does a read instead, and then it writes the modified byte.

 

NMOS: two writes, one acks the IRQ, second enables it again

CMOS: one read, one write, @#%$@#!#!@$

 

I used the schematic from this video to use the new 65c02 chip.  I would think he wouldn't get it working with a list like that.  Once I get this board working I'll run some tests.  I just can't imagine that with the problems you are describing that the W65C02 would work at all.    

 

 

Link to comment
Share on other sites

7 minutes ago, reifsnyderb said:

I used the schematic from this video to use the new 65c02 chip.  I would think he wouldn't get it working with a list like that.  Once I get this board working I'll run some tests.  I just can't imagine that with the problems you are describing that the W65C02 would work at all.   

The problems I'm describing are edge cases. 99% of the old-skool software will work just fine. The BCD thingy might influence BASIC floating-point timing loops, but not much else. Who uses BCD anyway? :) The shift/rotate ABS,x timing difference will be hit but rarely relevant. The R-M-W difference, well, I don't think you'll encounter the inc IRQEN trick before the year 2000, or maybe in a demo.

Edited by ivop
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...