• Hello MLAers! We've re-enabled auto-approval for accounts. If you are still waiting on account approval, please check this thread for more information.

new 99 dollar 500mhz 68020?

 maybe make it a 40 or 50MHz '040, build 128 or 256 megs of RAM directly onto the board, one or two SD or CF slots for mass storage, and either build on a newer GPU or figure out how to add a whole raftload of V-RAM to the existing one, so we can just use it with regular LCD monitors.

It would cost a lot and it'll never happen, but I can dream, right?
DDR2 memory is cheap and faster than a speedy 68040 can really take advantage of.    When I looked at this, I thought one could probably get the whole thing, along with an integrated DDR2 memory controller onto a Xilinx Spartan 3 or 3A chip.  The necessary chip would be BGA and require special soldering.    The cost, depending on the size of FPGA really needed ranges from $50 to about $100.  At the time I was sizing for a 68030 replacement, but the 68040 shouldn't require more IO, just more logic slices.   I'm a little uncertain of my estimates, because I'm not certain how to translate the transistors in a 68030 or 68040 into number of gates or logic slices needed in an FPGA.  I suspect that the FPGA ends up needing a lot more than the equivalent number of transistors...

Anyway, the point is, with the DDR2 interface, you would just use that for VRAM too.   A 1GB laptop form factor DIMM is about $12.  Allocate 256MB or even 512MB of it for system RAM, and there's still plenty left over for video memory.

 
Even running full out I have trouble imagining any 68k emulator maxing out an i7.

Could someone still get NuBus slots? Or would you end up scavenging dead boards?
If you mean  the connectors, yes they are still avaiable.   It's been a year or more since I checked Digikey, but they still had them for $5 - $10 and they pop up on Ebay regularly.   When shopping for them be careful of 96 pin vs. 120 pin, female vs male and right angle vs straight.   It's fabulously easy to get the wrong combination for your application.

http://www.ebay.com/sch/i.html?_nkw=eurocard&_sacat=100016&_odkw=din&_osacat=100016&_trksid=m194&ssPageName=STRK:MEFSRCHX:SRCH

 
Said no one who bought DDR2 recently.
I checked Newegg before I posted.  1GB Laptop DDR2 DIMMs are about $12.  And Xilinx has a DDR2 controller cell in their free library.   It's good to get the -5 speed in stead of -4 speed rated Spartan 3A for use with it though.

For this application, there's no reason to look at anything larger than a 1GB DIMM.   Oh, you could maybe force a 2GB DIMM if you insisted on 512MB of system RAM and then decided to dumb-out on the FPGA interface and only address 32 bits of the 64 bit DIMM.  That would take up 1GB and you'd need some more for video RAM, so that pushes one to 2 GB.   But why in the world would anyone make those design decisions?

Really, a 512MB DIMM would probably be plenty and those are available on Ebay for about $1.50 each if you buy some of the lots of ten or twelve that upgraders are offering.

 
Last edited by a moderator:
Would it be possible to include QuickDraw acceleration and take real advantage of the VRAM?  Could you run System 7 on a 4k display? :lol:

 
Of course it's **possible** to include QuickDraw acceleration.   As always, the tricky bit is in actually doing the work...   I'm not 100% certain that we can reproduce the information that one must  have in order to intercept the QuickDraw calls and divert them, but I think that information is available.

 
I am thinking more of the lines of a Raspberry pi or beaglebone processor running a web browsing/video playing engine that gets "framed" into the mac environment, sorta like parallels does with Mac OS and Windows. 

Then I could use the machine as a daily driver. Get best of both worlds. browsing the web and watching youtube videos, while using the mac too ;)

 
Last edited by a moderator:
Even running full out I have trouble imagining any 68k emulator maxing out an i7.
I've mentioned this elsewhere, but I'll put it here, too.

Computers and game consoles are a little different, but basically when looking at game consoles, you can either get quick and dirty, or accurate. Accurate emulators take hecka horsepower.

The more accurate, the better, I personally believe, if only because in the olden days (again, time constraints) I often ran into situations that weren't supported or were supported only extremely poorly by "quick" emulators like SheepShaver and Basilisk II.

The other thing, if this hypothetical accurate 68k emulator can run at over 100% of the speed of some native target (because you know, computers are so much simpler than game consoles), I bet literally nobody will complain. One of the recent situations I've been hearing about is using MPW on a Mac to compile things for the Apple IIgs. This task is actually somewhat complicated and is a near perfect case for a 68k (or PowerPC) replica machine that can run System 7 at over the original speed of one of these systems. (In one case, a friend doing this is buying a PB2400c and installing a G3 upgrade in it, but if a physically replicated 68k Mac could do it, or if they could run it on an emulator, but one of the concerns I heard from some people doing that task was that not all of the emulators are really stable enough. (I don't think accuracy was a concern, I forgot if the one emulating already was using SheepShaver or Basilisk.)

I don't know how often those people compile their applications, but when they do, they want it to complete as fast as it can, for debugging purposes.

 
I'm an FPGA guy, and I really like this idea. As others on this thread have stated, increasing the CPU clock won't buy you anything with slow ROMs, RAM, etc because you'd spend most of your time stalling.  But putting the system on FPGA is a way to get everything up to speed. Implementing the whole system on an FPGA or two might be possible for a simpler mac. The real challenge is reproducing proprietary logic like SCSI and glue chips. Modern FPGAs like Artix/Virtex 7 have enough fabric and BRAMs, and have high-speed lines that can be run to SDRAM or DDR chips which are common on even inexpensive FPGA boards. Pseudo-SRAM chips aren't terribly expensive and you don't need a lot.

If we are able to get the HDL for a 68k, then one of the hardest parts of the work is done. A superscalar core might not be a good idea for a first attempt because having substantial clock delays between decode and result could introduce synchronization problems that a classic mac system can't deal with. I'm not very familiar with m68k arch, so I don't know for sure if this would actually be a problem, but I suspect that changing the order of accesses on address and data busses might not work.

The mac emulators out there already understand how this proprietary logic works, right? So going from software code to HDL is conceivable, especially with the help of one of the emulator authors...

 
IIRC, BMOW actually had built something similar, at least at some level, called the Plus Too.

I'm not really sure about what could be "recycled" (if anything), but if the purpose is to build a Mac on FPGA I think it could be a starting point.

 
They already have the Amiga and Atari ST on FPGA and even a few arcades that use the 68K CPU (Williams Electronics' Joust and Star Gate to name two), and I seen other projects claiming they have Macs running on FPGAs. I am interested in this but don't have the money to invest in learning it.

This is very much doable if they can do a Mac on a Chip. Just using the CPU only in a Mac Mother board is not enough as they would be waiting for the Mac's system to send them the information needed. But there is nothing out there saying that you can't make an accelerator that fits the NuBus or PDS slots like a DayStar or Radius Rocket on a FPGA Chip. But you wont get them at 500MHz for the same reason.

 
IIRC, BMOW actually had built something similar, at least at some level, called the Plus Too. I'm not really sure about what could be "recycled" (if anything), but if the purpose is to build a Mac on FPGA I think it could be a starting point.
Wow, thanks for making me aware of this. This is fascinating and impressive!

Yeah, this would be a great starting point. He's done a hell of a lot of work. Looking through his code, which is an intimidating amount of verilog, I read some of his comments discussing mysterious behavior and problems. Figuring these little bits out would be very time consuming. Continuation of this project is daunting, and BMOW is a smart dude.

As he states in his blog posts, he has only implemented the bare minimum of hardware without SCSI or writing to floppy to get to boot, and that's a pretty good indicator of how hard this would be.

Most of my nostalgia and enjoyment comes from having the box, and I'd bet most others here feel the same. Even if we did have a 500 MHz Quadra SoC, it still wouldn't find its way back to our desks for the day-to-day stuff, sadly.

 
No, but having a CPU-FPGA only based accelerator, with at least some cache, or possibly a small amount of RAM would be nice ;)

 
Last edited by a moderator:
As he states in his blog posts, he has only implemented the bare minimum of hardware without SCSI or writing to floppy to get to boot, and that's a pretty good indicator of how hard this would be.
Happily, there are at least two freely available 68K soft cores that can be synthesized for an FPGA. As for the other stuff, I borrowed some from a previous Mac-in-an-FPGA project by Benjamin Herrenschmidt, which used the Minimig board (an FPGA Amiga board). His version included SCSI support, but not floppy. I copied his SCC implementation more or less verbatim (with his permission). So I think all the pieces are there, at least for a simpler Mac like the Plus, if not for a Mac II machine. But I personally kind of lost interest, once I realized how much effort it was going to take to debug it all to get a fully working system. :(

 
Woah, he lives here! BTW, I randomly found your 68 Katy project and used it as a reference for a system I made, great stuff.

In your comments you mentioned some possible clock-edge synchronization issues regarding the stability. Some of the schematics show a slightly different clock frequency than those used on your Altera chip. For instance, you're using 32.5 MHz and the oscillator is something like 32.428 (not sure at the moment). Would the use of external osciallators through some differential clock inputs be a good way to get exactly the frequencies needed? I only have experience with Xilinx stuff, but I've noticed it can be hard to get precise frequencies from the internal generators.

 
Last edited by a moderator:
Back
Top