• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Motorola 68060 upgrade

johnklos

Well-known member
Depends on how you define shove. You can shove an '060 in an LC, but it won't do anything except take up space.

There are lots of threads on 68kmla where we lead the horse to water, try to make it drink, kill it, beat it after it's dead, try to ride it again, try to make it drink again, flog it some more, put on some techno and dance around it, et cetera. Just do a search for 68060.

 

LC_575

Well-known member
Well, couldn't I just remove the LC040 and pop in the 060 in it's place (i'm assuming that they're socket compatible).

 

johnklos

Well-known member
They're not socket compatible. For one, the m68060 is a 3.3 volt chip and the m68040 used in all Macs is a 5 volt chip. You can make or buy an adapter board, but then you have to reprogram the ROMs so that the '060 gets initialized correctly and the trap handlers know about the '060.

Simple, right?

 

LC_575

Well-known member
I apologize for not searching this earlier. I'll shut up before this turns into another convention.

 

Dennis Nedry

Well-known member
It seems straightforward at first glance but the necessary tweaks begin to multiply as you examine the details.

 

~Coxy

Leader, Tactical Ops Unit
That is a great, succint summary of the issues involved. :lisa2:

The number one thing as mentioned is the voltage difference.

Number two is that only the "User Mode" of the 68060 is instruction-compatible with the same in the 68040. Mac OS runs in the "Supervisor Mode" of the CPU, which expressly is not 100% the same.

 

CJ_Miller

Well-known member
Ah, this old chestnut...

What Coxy said. The electrical issues aren't much of a problem, IMO. But differing instruction sets kind of make it pointless for me. Probably more fruitful to explore 040 overclocking. Unless you have the source and skills to port some classic MacOS to 060, in which case I would say go for it!

 

Dennis Nedry

Well-known member
Depending on the complexity, it could be possible to translate the incompatible instructions in hardware with an FPGA. This would allow the original Mac ROM and OS to continue working. If the substituted instruction is shorter than the original 040 code, NOPs can simply be inserted to direct the program counter back to the proper spot. But if the substituted instruction is longer than the original 040 code, things become more complicated pretty fast. You would have to line the program counter back up with a backwards jump and make absolutely sure that the condition codes were preserved. This would cause hiccups in cycle-exact-timed code, I'm not sure if that's a problem or not.

If the only issue is in ROM, it may be easier to fix it in software by opening the ROM, translating it, and burning it to new chips.

 

trag

Well-known member
To reiterate earlier threads on this issue: by which time you may as well have done the same for a 200MHz+ ColdFire processor.

The 68060 processor costs something like $200+ new. Sure, they're available on the used market for about $50 but not reliably. Brand new Coldfire processors are less than $30 and easy to buy and probably almost as compatible in slightly different ways as a 68060 is almost compatible.

 

Gorgonops

Moderator
Staff member
If the only issue is in ROM, it may be easier to fix it in software by opening the ROM, translating it, and burning it to new chips.
To quote from the "NATIVE CPU" section of the Basilisk II TECH documentation:

Code:
    d) 68060 systems are a small problem because there is no Mac that ever
       used the 68060 and MacOS doesn't know about this processor. Basilisk II
       reports the 68060 as being a 68040 to the MacOS and patches some places
       where MacOS makes use of certain 68040-specific features such as the
       FPU state frame layout or the PTEST instruction. Also, Basilisk II
       requires that all of the Motorola support software for the 68060 to
       emulate missing FPU and integer instructions and addressing modes is
       provided by the host operating system (this also applies to the 68040).
If you're enough of a coding wizard to do it it might be perfectly feasible to extract the 68040 support software from an existing Quadra-class Mac ROM and replace it with the 68060's code bundle. The BasiliskII authors know where to prod it.

The salient point in all of this, which gets reiterated every time someone makes a new thread about this, is that unlike x86 CPUs, in which newer CPUs with the exception of a few model-specific hardware control instructions are essentially always superset implementations of earlier models, Motorola's CPUs essentially peaked in complexity with the three-part MC68020+68851PMMU+MC68881/2 FPU chipset and that all subsequent models have actually *trimmed down* bits of the basic instruction set (particularly supervisor-mode and FPU instructions) and replaced the missing pieces with exceptions which jump to a software support bundle which then emulates the lacking function. Thus for all practical purposes you can't go beyond the 68040 without addressing this *software issue*. The idea of trying to trap the incompatibilities with some sort of hardware FPGA in front of the CPU is pretty laughable... it would require an instruction decoder sophisticated enough that at that point you might as well just create a whole CPU which is fully 68040 compatible. (But faster obviously, which would be a hugely challenging "garage project".)

The progress the ST people have had with their Atari Coldfire project indicates it *just might* be feasible to use a software library and some patching to run Mac II/Quadra ROM code and binaries on a newer CPU, but ironically it'd probably be much easier to do this in the form of a completely new-build "Coldfire Mac" board leveraging Basilisk II-style ROM patches for *all* the peripherals than it would be to do it in the form of an accelerator card for a real Mac. Such a machine equipped with the fastest Coldfire CPUs available might run 68k code about as fast as a mid-level G3 machine. (Of course, the G3 will completely crush the Coldfire running programs that have PowerPC binaries available.) If someone is really dying to embark on a multi-year project, well... it's an idea.

 

igor_av

Active member
You could also check on the Natami website. It is a project aiming at building a modern 68k Amiga computer. The CPU is emulated within a FPGA and is 68040 compatible. I think I read somewhere that the performances where similar to a 100 (or was it 166?) mhz 68040, which is already quite impressive.

Obviously, the product is not finished and I don't know how much work would be required to run Mac OS on top of it. :)

 
Last edited by a moderator:

Dennis Nedry

Well-known member
I think I've proven that I know very little about the differences from 040 to 060. It's an interesting idea though.

 

Unknown_K

Well-known member
I would rather see an overclocked 68040 chip on a PDS card with some cache and modern high speed RAM. There is a new accelerator for the Amiga 600/1200 series that has a much faster modern RAM on the card and the speed improvement is pretty good (using a real 68030 CPU).

http://www.amiganews.de/en/news/AN-2010-09-00024-EN.html

The issue is few 68K mac users would bother paying for it. I have a 68040/50 with 128K cache in one of my 950's and it does rock, if you could mount that on a PDS card and stick in some super fast RAM it would be much faster and still be 100% compatible with all software that works on a 68040. Still there is a limit on how much I would pay for that setup.

If you are going to hack a CPU like a 68060 you might as well go PPC and then you might as well just get a newer mac for little on the used market. Amiga users spend the cash because there are no PPC Amigas to buy (well outside of a few super expensive rare upgrades and the A1 which will run old apps under emulation anyway).

 

ClassicHasClass

Well-known member
Off topic, but there's the SAM Flex units if you want to buy a PowerPC Amiga. The CPU is a PowerPC 440, which is a bit dire spec-wise compared to the G4, for example, but the architecture is impressively solid (I used one at a Commodore festival in Las Vegas and AmigaOS 4 -- now that it has a useful selection of web browsers between Timberwolf [Firefox 3.5] and Origyn Web Browser [WebKit] -- is really quite practical as a day-to-day OS now).

 

Unknown_K

Well-known member
I use my Amigas mostly for old games , so a 68000 to 68030 are perfect for what I need. Spending decent money for a slow glorified web browser is not my idea of a good deal.

 

Bunsen

Admin-Witchfinder-General
Natami / I don't know how much work would be required to run Mac OS on top of it. :)
Dump all the Amiga chipset stuff, and then port all the Mac motherboard ASICs etc and peripherals. Not simple, especially as the documentation on some is less than definitive.

 
Top