ijor Posted August 17, 2008 Share Posted August 17, 2008 - 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. Quote Link to comment Share on other sites More sharing options...
Fres Posted August 18, 2008 Share Posted August 18, 2008 (edited) --nope-- Edited August 18, 2008 by ponderosa Quote Link to comment Share on other sites More sharing options...
ijor Posted August 18, 2008 Author Share Posted August 18, 2008 --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? Quote Link to comment Share on other sites More sharing options...
Rybags Posted August 18, 2008 Share Posted August 18, 2008 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. Quote Link to comment Share on other sites More sharing options...
Kr0tki Posted August 18, 2008 Share Posted August 18, 2008 (edited) 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 August 18, 2008 by Kr0tki Quote Link to comment Share on other sites More sharing options...
ijor Posted August 18, 2008 Author Share Posted August 18, 2008 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. Quote Link to comment Share on other sites More sharing options...
SeaGtGruff Posted August 18, 2008 Share Posted August 18, 2008 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 Quote Link to comment Share on other sites More sharing options...
carmel_andrews Posted August 18, 2008 Share Posted August 18, 2008 doesn't the mac65 support the 65c02 as well Quote Link to comment Share on other sites More sharing options...
Kr0tki Posted August 18, 2008 Share Posted August 18, 2008 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. Quote Link to comment Share on other sites More sharing options...
+David_P Posted August 18, 2008 Share Posted August 18, 2008 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. Quote Link to comment Share on other sites More sharing options...
ijor Posted August 18, 2008 Author Share Posted August 18, 2008 (edited) 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 August 18, 2008 by ijor Quote Link to comment Share on other sites More sharing options...
JayoK Posted August 18, 2008 Share Posted August 18, 2008 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? Quote Link to comment Share on other sites More sharing options...
Kr0tki Posted August 18, 2008 Share Posted August 18, 2008 We might ask him directly - at least he is responsible for the addition to the Atari800 CVS repository. But I must warn you - if we stopped speculating, we'd lost another opportunity to amaze ourselves with our knowledge Quote Link to comment Share on other sites More sharing options...
ijor Posted August 18, 2008 Author Share Posted August 18, 2008 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. Quote Link to comment Share on other sites More sharing options...
drac030 Posted August 18, 2008 Share Posted August 18, 2008 I think the CMOS support in MAC/65 may have its source in the same perpetual confusion of 65C02 for 6502C. Quote Link to comment Share on other sites More sharing options...
Rybags Posted August 18, 2008 Share Posted August 18, 2008 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. Quote Link to comment Share on other sites More sharing options...
ijor Posted August 18, 2008 Author Share Posted August 18, 2008 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 Quote Link to comment Share on other sites More sharing options...
Kr0tki Posted August 18, 2008 Share Posted August 18, 2008 (edited) 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 August 18, 2008 by Kr0tki Quote Link to comment Share on other sites More sharing options...
drac030 Posted August 18, 2008 Share Posted August 18, 2008 @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. Quote Link to comment Share on other sites More sharing options...
peteym5 Posted August 19, 2008 Share Posted August 19, 2008 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. Quote Link to comment Share on other sites More sharing options...
Urchlay Posted August 19, 2008 Share Posted August 19, 2008 Didn't Apple IIe and/or Commodore 64 version of Mac/65 exist? The 65C02 might have been used on one of the later Apple models... and/or people might have upgraded (I've seen old ads for Apple II CPU upgrades, but those might have been 65816's, can't recall). Quote Link to comment Share on other sites More sharing options...
Rybags Posted August 19, 2008 Share Posted August 19, 2008 Actually, I think there might be 2 "6502C" variants. The extended opcode one, and Sally. So, do all the CMOS 6502s have the extended opcodes, or only certain ones from specific companies? Quote Link to comment Share on other sites More sharing options...
peteym5 Posted August 19, 2008 Share Posted August 19, 2008 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. Quote Link to comment Share on other sites More sharing options...
DamageX Posted August 19, 2008 Share Posted August 19, 2008 The different manufacturers of 65C02 (CMOS) CPUs licensed the design from WDC so they should all have the same updated instruction set, and the bug fixes for indirect jumps and flags in decimal mode. Quote Link to comment Share on other sites More sharing options...
ijor Posted August 20, 2008 Author Share Posted August 20, 2008 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. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.