Jump to content
IGNORED

new XE computers use different CPU?


ijor

Recommended Posts

- an option to emulate the variant of 6502 used in new XE machines

(which lacks most of the undocumented opcodes of the classic 6502)

 

I read the above quote in the Atari800 TODO list. I admit it is the first time I heard something like this.

 

Is this confirmed to be true? Does that CPU chip has a different part name?

What exactly is the meaning of "new" in the quote? Latest XE units?

 

Sounds quite strange. Lots of protections depends on undocumented/illegal opcodes. This would mean that those protections break on those "new" XE machines.

Link to comment
Share on other sites

--nope--

 

Would you mind being a bit more verbose? Nope What?

 

Nope means that the whole thing is completely false (just a joke)?.

Nope that it might be true, but it is not confirmed? If so, what is the basis for the possibility, just a rumor or something more concrete?

 

Or the "nope" was just an answer for the question if that "new" cpu variant has a different part number?

Link to comment
Share on other sites

First I've heard.

 

Apparently the 65C02 was a popular upgrade for some with the 400/800.

 

But, wasn't Sally used from the XL onwards, which means that you can't just replace it with an off-the-shelf upgrade like the older machines?

 

The only reasoning behind Atari having the enhanced instruction set CPU would have been cost/availability since it wouldn't have made much commercial sense to write only for the later CPU.

But of course, software could always detect and load custom modules dependant on CPU, much like today's software can adjust for SSE extensions etc.

Link to comment
Share on other sites

As one of the main Atari800 programmers is Polish, I am fairly sure that the source of this TODO entry is an error in the book "Poradnik programisty Atari" (Atari Programmer's Handbook) by Wojciech Zientara.

 

In this book's section about assembler, the author mentions that most of the XE computers have the 65C02 "Sally" processor build in instead of the standard 6502, and he then proceeds to describe its additional opcodes, and also provides a program which detects the processor type.

 

The author's fault is that he confuses the 6502C "Sally" processor, which is installed in all XLs and XEs but is instructions-wise unchanged, with the 65C02 processor, which is a CMOS version of the 6502 and indeed has additional opcodes. The latter processor, alas, was never installed in stock Atari computers (but was used by the Lynx console, for example).

 

Factual errors in Zientara's books happen from time to time, as he has written his books mainly by translating foreign sources, without direct contact with these sources' authors. Such error was naming the processor in the Ataris "MOSTEK 6502" (Zientara confused the processor producer, MOS Technology, with Mostek, a completely unrelated manufacturer of DRAM chips). Another error is a mysterious California Access CA2002 disk drive, which was mentioned in several Zientara's texts, but not anywhere else (and I mean, ANYWHERE - all references to CA2002 on the Net seem to be sourced in Zientara).

 

However, Wojciech Zientara was the most important Atari enthusiast in Poland at the time (he was the editor of the Atari-related section in the most popular Polish computer magazine) and his books were actually of very good quality and are still considered a must-read for any Polish Atarian, so no it's no surprise that errors from these books are still perpetuated on the Net.

 

References in Polish:

Atariki - 6502C

Atariki - 65C02

Tajemnice.atari8.info - Poradnik programisty Atari

Atariki - CA-2002

Edited by Kr0tki
Link to comment
Share on other sites

I am very well aware about the difference with CMOS parts. And I assumed (possibly wrong) that whoever wrote that TODO entry was aware about it as well. For that reason I didn't interpret the sentence it as new XE computers having a CMOS processor, because otherwise it would have explicitely mentioned so. Plus the description provided, "lacks most undocumented opcodes", doesn't match a CMOS processor (which lacks all of them, not just most, in addition to supporting new official ones) description, not even implicitely.

 

Again, I was assuming that the TODO file was written, or at least verified, by the Atari800 team who I'm pretty sure they know exactly the difference between the NMOS, Sally, and CMOS parts.

 

But I now remember that some time ago there was a poll here about what you would like to be added to the emulator. A pretty huge list was compiled. So I guess it was added to the distribution without being fully checked by the team.

 

Anyway, thanks Kr0tki for that background.

Link to comment
Share on other sites

I am very well aware about the difference with CMOS parts. And I assumed (possibly wrong) that whoever wrote that TODO entry was aware about it as well.

According to what I've seen on the web, there were no Atari XE computers produced with the 65C02 processor-- they were all produced with the 6502C processor. But as Rybags already mentioned, there was a hardware upgrade project that involved replacing the existing CPU with a 65C02 processor, which is described on the web. I don't know if it was restricted to the 400/800-- I don't see why it couldn't have been done on an XL/XE as well. Perhaps that's what this TODO entry is referring to-- adding an option to emulate the 65C02 processor for anyone who wants to emulate an Atari that had the 65C02 upgrade installed in it? :?

 

Michael

Link to comment
Share on other sites

I am very well aware about the difference with CMOS parts.

I don't doubt it; the reason for such a detailed answer was to describe my current of thoughts.

 

And I assumed (possibly wrong) that whoever wrote that TODO entry was aware about it as well. For that reason I didn't interpret the sentence it as new XE computers having a CMOS processor, because otherwise it would have explicitely mentioned so. Plus the description provided, "lacks most undocumented opcodes", doesn't match a CMOS processor (which lacks all of them, not just most, in addition to supporting new official ones) description, not even implicitely.

You might be right. However I've found the Zientara's statement "Some Atari computers (mainly XE) contain a modified processor" and the "An option to emulate the variant of 6502 used in new XE machines" sentence rather similar.

 

But I now remember that some time ago there was a poll here about what you would like to be added to the emulator. A pretty huge list was compiled. So I guess it was added to the distribution without being fully checked by the team.

The thread you've mentioned shows that this TODO entry was not suggested by anyone, but anyway it was added to the TODO personally by Fox.

 

Either that, or I've skipped somethying during searching through that thread.

Link to comment
Share on other sites

The Atari 6502C is not pin compatible with the older 6502 chips found in the 400/800. Thus the difficulty in upgrading the CPU to a 65C02 or a 65816 - the pinout is wrong.

 

To upgrade an xe/xl, you need a daughterboard that re-routes the signals to the proper places - to my knowledge, there are only a couple that need to be changed, but it's been quite some time since I read the specs.

Link to comment
Share on other sites

I am very well aware about the difference with CMOS parts.

I don't doubt it; the reason for such a detailed answer was to describe my current of thoughts.

 

Sorry, I didn't mean to sound pedantic. I just was trying to make the point that I thought the whole point wasn't about a CMOS cpu.

 

The thread you've mentioned shows that this TODO entry was not suggested by anyone, but anyway it was added to the TODO personally by Fox.

 

I see you made more homework than me :)

 

Well, I don't know who wrote it. But it still doesn't make much sense to me that Fox, being an expert, wrote that sentence thinking that XE machines have a CMOS part. Or that he meant a CMOS part at all for that matter.

 

Either he didn't wrote that (unless he was drunk when he did :) ) Or either he meant something else. Not a CMOS part, but a different Sally variant in latest XE machines. The latter it's the way I interpreted it, even when I think it wouldn't make much sense that Atari engineered or comissioned a new Sally at that point.

 

Anyway, who wrote it and what he meant is anecdotic. I guess the important point is that nobody here ever heard about any XL/XE machine using anything else than the "standard" Sally we all know.

Edited by ijor
Link to comment
Share on other sites

But I must warn you - if we stopped speculating, we'd lost another opportunity to amaze ourselves with our knowledge :)

 

You just found out what was my purpose when starting this thread in the first place :)

 

doesn't the mac65 support the 65c02 as well

Now that you mention it - yes it does. The 65C02 must have been available as a upgrade then?

 

Yes, although only the cartridge version supports the new CMOS instructions. The original disk version doesn't.

Link to comment
Share on other sites

Yep. My first post had an error.

 

6502C = Extended opcode version, 65C02 = CMOS version.

 

The "upgrade" was available, but it wasn't an Atari part. It's much harder to perform on an XL/XE since Sally is a custom CPU which contains the bus decouple logic which is otherwise performed by external ICs on the older machines.

Link to comment
Share on other sites

I think the CMOS support in MAC/65 may have its source in the same perpetual confusion of 65C02 for 6502C.

 

I don't think so. The MAC/65 manual clearly specifies that you need un "upgraded" cpu, and warns you that it won't work on "standard" computers.

 

Conceivably, the original reason for adding CMOS support was not for Atari. OSS planned (or even made, I don't recall) products for other platforms, and it is known that they internally used MAC/65. So possibly they wanted an upgraded assembler for their own usage.

 

What I don't remember (and I am lazy to check right now), is if DDT can disassemble the CMOS instructions. Anybody knows/remember?

 

Yep. My first post had an error....

 

I always tend to forget and mix-up numbers, acronyms, and part codes. That's precisely why I'm using CMOS/NMOS/Sally instead of any number or code :)

Link to comment
Share on other sites

Yep. My first post had an error.

 

6502C = Extended opcode version, 65C02 = CMOS version.

Actually I think your previous post was better at it. 6502C "Sally" is the NMOS with additional pin but no additional opcodes, and 65C02 is the CMOS with additonal opcodes.

Edited by Kr0tki
Link to comment
Share on other sites

@ijor: you may well be right, they might have targeted this to computers upgraded to (then fairly new) 65C02. In fact, I simply don't know. But observing the rather widely spread confusion of the 65C02 vs 6502C, I imagined that, perhaps, the MAC/65 author has mistaken the C version for CMOS version, and added the support before he actually saw any of the new XL machines. The statement in the manual might have well be written later. But this is of course pure speculation, not facts.

Link to comment
Share on other sites

I am not sure why MAC/65 supported these instructions because none of the production 8-bit computers used them, and never seen any plans for them to use something else for the 8-bit machines. When Tramiel took over Atari, they just took an 800XL and turned them into the XEs. The 65C02 could have been something planned, but cut by the Tramiels or someone was planning on releasing an upgrade. It was not wide spread whatever the reason was.

 

I know several products and proposed products were going to use a 65816 CPU, but that never got far either.

Link to comment
Share on other sites

I know the WDC 65C02S has the extra opcodes, not sure if MOS or Rockwell had a 65C02. The 6502C just has the original opcodes. From what I understand, the WDC 65C02S has no halt line, so it will stay active when the Antic chip needs to access the BUS. You probably need to put the chip on a small board with some extra components to get the halt line back. Otherwise, many people would have just plugged these into their Atari already.

Link to comment
Share on other sites

AFAIK, all CMOS parts have an extended instruction set. But they aren't all exactly 100% compatible one with the other.

 

Most of the new instruction set is available in all parts. But a few of the opcodes are missing in some. I'm not sure exactly the reason.

 

There are also minor differences in the hardware, such as some parts having an internal oscillator, others do not.

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