The CMD SuperCPU

Topics related to older 6502-based hardware and systems including (but not limited to) the MOS Technology KIM-1, Synertek SYM-1, and Rockwell AIM-65.
User avatar
KC9UDX
Posts: 246
Joined: 07 Dec 2013
Location: The Kettle Moraine

The CMD SuperCPU

Post by KC9UDX »

Does anyone know where can be found complete information on the design, operation, and usage of the SuperCPU?
User avatar
BigEd
Posts: 11464
Joined: 11 Dec 2008
Location: England
Contact:

Re: The CMD SuperCPU

Post by BigEd »

I don't, but I'll put up some general links anyway.
Quote:
The SuperCPU is an accelerator module that plugs into the C64/128 Cartridge port. At its heart is the W65C816S microprocessor running at 20 MHz, along with 128K Bytes of high-speed Static RAM
- from SuperCPU General Information

From the programmer perspective, it's a fast '816 with lots of memory. As such, it can also work like a fast 65C02. It runs at 20MHz as much as possible, but accesses to the host C64 have to be at 1MHz. But it's not as bad as it might be:
Quote:
In addition, buffered write-thru circuitry (similar to PC cache-controllers) helps the SuperCPU avoid slow downs when writing data back into the C-64's RAM.
I see we had a thread previously, with a photo:
viewtopic.php?f=4&t=2437

In fact, I see a number of links are already over there! (Perhaps we could kill this thread and continue over there?)
User avatar
cbmeeks
Posts: 1254
Joined: 17 Aug 2005
Location: Soddy-Daisy, TN USA
Contact:

Re: The CMD SuperCPU

Post by cbmeeks »

Anyone create one of these in FPGA format (that's easy to install) will be instantly famous and rich beyond belief. Well, famous. OK, famous in the C64 community.

:-)

The folks at Lemon64 know everything there is to know about this I bet.
Cat; the other white meat.
User avatar
BigEd
Posts: 11464
Joined: 11 Dec 2008
Location: England
Contact:

Re: The CMD SuperCPU

Post by BigEd »

There was a very long thread about it over there - see the thread I linked over here - mostly commentary from people who wanted something, or who didn't want something! Just a few commenters did seem to have technical knowledge. The best bet we have right now is probably the C65GS project, which is, in some ways, more ambitious. But it too will not make everyone happy - a lot of people who have fixated on a computer from the 80s are remarkably inflexible!

Our own Beeb816 project is a small step in the direction of a SuperCPU, but it has no write buffer, and doesn't run at 20MHz. Nor is it made for the C64's expansion port - it's made for a 6502 socket.
ArnoldLayne
Posts: 109
Joined: 28 Dec 2014
Location: Munich, Germany
Contact:

Re: The CMD SuperCPU

Post by ArnoldLayne »

cbmeeks wrote:
Anyone create one of these in FPGA format (that's easy to install) will be instantly famous and rich beyond belief. Well, famous. OK, famous in the C64 community.
Not exactly an FPGA-SuperCPU, but this thing here is FPGA based and sports a turbo that runs circles around a SuperCPU, while emulating a 6510 instead of using a 65816, thus being 100% compatible:
https://icomp.de/shop-icomp/en/produkt- ... on_64.html
User avatar
GARTHWILSON
Forum Moderator
Posts: 8775
Joined: 30 Aug 2002
Location: Southern California
Contact:

Re: The CMD SuperCPU

Post by GARTHWILSON »

ArnoldLayne wrote:
cbmeeks wrote:
Anyone create one of these in FPGA format (that's easy to install) will be instantly famous and rich beyond belief. Well, famous. OK, famous in the C64 community.
Not exactly an FPGA-SuperCPU, but this thing here is FPGA based and sports a turbo that runs circles around a SuperCPU, while emulating a 6510 instead of using a 65816, thus being 100% compatible:
https://icomp.de/shop-icomp/en/produkt- ... on_64.html
I don't see anything on the page telling how fast it is. Do you know?
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
User avatar
BigEd
Posts: 11464
Joined: 11 Dec 2008
Location: England
Contact:

Re: The CMD SuperCPU

Post by BigEd »

Seems to be 10x, 20x or 40x the original machine, depending on benchmark:
http://wiki.icomp.de/wiki/C64_Benchmarks
User avatar
GARTHWILSON
Forum Moderator
Posts: 8775
Joined: 30 Aug 2002
Location: Southern California
Contact:

Re: The CMD SuperCPU

Post by GARTHWILSON »

Hmmm... so not exactly "running circles around a SuperCPU," in fact not as fast as a SuperCPU if the latter running software written to take advantage of its 16-bit registers and added capabilities.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
User avatar
BigEd
Posts: 11464
Joined: 11 Dec 2008
Location: England
Contact:

Re: The CMD SuperCPU

Post by BigEd »

Well, the answer to "how fast is it" is bound to depend somewhat on whether you're running legacy code or newly minted code which won't run on older slower machines. There are a few different viewpoints on what a faster computer would be for - and that's one reason why no speedup offering is likely to sell very many units.
User avatar
KC9UDX
Posts: 246
Joined: 07 Dec 2013
Location: The Kettle Moraine

Re: The CMD SuperCPU

Post by KC9UDX »

The only way I would ever take advantage of the 65816 in a C64 or C128 would be if I had some portable code that I only ever planned to use for my purposes. The latter is almost always true in my case, but the former almost never at this point.

I have the same problem with the REU. I've got the only one which I've ever actually seen, and I've only got one. It sure is tempting to use it, but usually that means software that won't work well without it.

What bothers me about the FPGA solution is that now we're getting into the realm of emulators, in which case a Pi is 1000% faster at maybe 10% the cost.
User avatar
BigEd
Posts: 11464
Joined: 11 Dec 2008
Location: England
Contact:

Re: The CMD SuperCPU

Post by BigEd »

The wonderful thing about computers is abstraction layers. For most purposes, you don't care how something is done, if it is done correctly. Whether your 6502 code is running on 70s silicon, 2000s reconfigurable logic, or being emulated on some other architecture should be no concern, because as a programmer or a user you can't tell. What you might care about is physical things like what peripherals there are, what the case and keyboard look like, what the power consumption is.
It's true that a Pi is faster - we saw a little over 200MHz in our bare metal emulation.
ArnoldLayne
Posts: 109
Joined: 28 Dec 2014
Location: Munich, Germany
Contact:

Re: The CMD SuperCPU

Post by ArnoldLayne »

GARTHWILSON wrote:
Hmmm... so not exactly "running circles around a SuperCPU," in fact not as fast as a SuperCPU if the latter running software written to take advantage of its 16-bit registers and added capabilities.
Which is pretty rare on a C64. I only know of one game specifically written for C64 + SuperCPU.

Also, present C64-software which is using illegal opcodes will not run at all on a SuperCPU.
User avatar
KC9UDX
Posts: 246
Joined: 07 Dec 2013
Location: The Kettle Moraine

Re: The CMD SuperCPU

Post by KC9UDX »

Well technically, it will probably do something. But that's moot. I wonder how much software there is that uses illegal opcodes. Someday, I'd like to build a "65c10" and I'll find out the hard way.

I did put a 65c02 in my Apple ][+, but that's different, because at some point everyone stopped using undocumented 6502 instructions for that platform. I have not run into any problems, but I hardly use it. Even when I do, I'm using the same old disks I always use, so I'm not likely to find a problem.
ArnoldLayne
Posts: 109
Joined: 28 Dec 2014
Location: Munich, Germany
Contact:

Re: The CMD SuperCPU

Post by ArnoldLayne »

KC9UDX wrote:
I wonder how much software there is that uses illegal opcodes. Someday, I'd like to build a "65c10" and I'll find out the hard way.
Since every C64 and C128 uses an NMOS 6510 or derivative, it is guaranteed that software using illegal opcodes will run on every C64/C128. Some games use them, afaik Arkanoid. Of course, demos use them a lot. I also believe that GEOS uses them, but I am not 100% certain on this.
KC9UDX wrote:
I did put a 65c02 in my Apple ][+, but that's different, because at some point everyone stopped using undocumented 6502 instructions for that platform. I have not run into any problems, but I hardly use it. Even when I do, I'm using the same old disks I always use, so I'm not likely to find a problem.
Yep, that's different because Apple started to use the 65c02 with the Apple IIc in 1984.
User avatar
BigEd
Posts: 11464
Joined: 11 Dec 2008
Location: England
Contact:

Re: The CMD SuperCPU

Post by BigEd »

I think we're told though that WDC had to back out some of the improvements in their 65C02 to improve compatibility which was demanded by Apple. So, there was software which made use of unexpectedly fine detail in the behaviour of the NMOS part. That was probably normal for the 70s but becomes a drag on progress in the 80s.

The same sort of thing happens with ROMs - some software will read or jump into unpublished addresses, and when the ROM is revised, the manufacturer has the choice of sticking to the spec and breaking such software, or constraining the update to retain the content of those few undocumented addresses. Some manufacturers intentionally break everything undocumented to prove the point about what the spec is, and others make great efforts to retain compatibility even when they shouldn't have had to.
Post Reply