Jump to content
Sign in to follow this  
Daniël Oosterhuis

Classic II + FPU = A/UX?

Recommended Posts

Something that I've been thinking about recently, given I'm trying to piece together my Classic II again, just waiting for a new logic board to swap in, is making an FPU card for the Classic II once I have it all up and running again. It would truly make the Classic II a "Mac SE/30 Lite", as @bunnspecial likes to call the CII. 

 

However, as you might know, A/UX, Apple's first true foray into a UNIX based operating system before they broke down and just gobbled up NeXT for the better, only runs on the SE/30 when it comes to the Compact Mac range... However, with an FPU, wouldn't the Classic II technically meet A/UX's needs? With the 68030 and its MMU, the FPU add-on, and sufficient RAM, could it possibly be doable? I know A/UX would be difficult to get to work on wildly incompatible hardware due to the kernel drivers, but the Classic II from my understanding seems architecturally close enough, unless its 16-bit bus throws a wrench into it. I've looked around on Google, but other than a few pages just saying the Classic II won't work without a mention of the FPU upgrade scenario, I've come up with a blank.

 

So, am I just crazy or is the Classic II once fitted with an FPU potentially capable of being the second A/UX capable Mac in the Compact Mac lineage?

Share this post


Link to post
Share on other sites

Interesting, doubtful would be my first reaction. If you don't get a hard NO, I might first look into the ASICs used in the Classic II to compare with those used in the list of A/UX compatible machines. But I don' know nuthin' about A/UX.

 

Misc. stuff I found poking around a little, lost interest:

 

Question came up before but no answer other than the SE/30 is a far superior candidate: mac-help.com - color-classic-ii-or-se-30-for-nix.

 

Technical Note PT08
A/UX 2.0 Compatibility Guidelines

https://www.fenestrated.net/mac/mirrors/Apple Technotes (As of 2002)/pt/pt_08.html

 

https://en.wikipedia.org/wiki/A/UX

Share this post


Link to post
Share on other sites

The thread linked compares the SE/30 and Color Classic II, not the "regular" Classic II. As for the ASICs, one is the Combo chip, also used in the IIsi which as far as I know is A/UX compatbile, another being the EAGLE chip that's customary to the Classic II. That is so far the only real roadblock I can see, depending if the Eagle has backwards compatibility or not.

Share this post


Link to post
Share on other sites

Unfortunately the Eagle basically kills your idea. The memory map defined by the Eagle essentially renders the Classic II a monochrome Macintosh LC in every respect but video generation, where it's semi-unique. (I guess you could say it's close to the IIci and IIsi, in that it's a 68030-based machine that uses shared memory for video, but the details are of course different. The SE/30, by contrast with both the Classic II and the 68000-based compacts, has dedicated VRAM that's addressed as if it were a really brain-dead Nubus video card.) It's not any more backwards-compatible with the SE/30 (or other A/UX capable machine) than the color LC series is.

All said I mean, sure, if you install an expansion board that lets you have an FPU then there's no reason you couldn't write kernel drivers to make the machine work (assuming you could find the necessary sources and tools), but the same can be said for the LC(II and later. Original LC of course only has a 68020 and no way to add a PMMU.)

Share this post


Link to post
Share on other sites

Yeah, as I started reading more about the EAGLE chip, the more I started to fear it'd be the killer. I guess if someone wants to crack their coding muscles at making A/UX run on the LCII and LCIII, it could also be used as the basis for getting to a CII+FPU version. That is far above my skillset. Heck, the only reason I'm considering the FPU Card upgrade is the fact that it's dead simple to make, given all that goes into an FPU card for the Classic II is the FPU itself (add a socket for ease), a few filter caps and the 50 pin connector. One could easily fabricate a FPU card on a piece of prototyping board, with a 50 pin header and 50 pin SCSI cable to connect it to the Classic II. It's just that the FPU isn't a huge upgrade under the Mac operating system as far as I know. I do wonder if there are any other UNIX or even Linux based operating systems requiring a FPU that would work on a CII once the card is installed.

Edited by Daniël Oosterhuis

Share this post


Link to post
Share on other sites

The 10mb RAM ceiling is really a killer on both the Classic II and LCII for any UNIX. NetBSD *did* at one point support those boxes but I can't imagine you'd have enough RAM to do anything meaningful with modern software.

Share this post


Link to post
Share on other sites

Well, you really want a crystal along with the FPU for async operation regarding the CII. The one Alaska and I came up with, running in async mode, with a 40 Mhz 68882 + crystal, handily beats the SE/30 in FPU power.

Edited by Paralel

Share this post


Link to post
Share on other sites
11 hours ago, Gorgonops said:

The 10mb RAM ceiling is really a killer on both the Classic II and LCII for any UNIX. NetBSD *did* at one point support those boxes but I can't imagine you'd have enough RAM to do anything meaningful with modern software.

Heh, usefulness is really not the aim for it. More of a bragging rights thing, just to have something to show off the FPU upgrade with:-p

I wouldn't want to imagine running said UNIX/Linux operating systems for more than 10 minutes poking around with some commands anyway!:lol:

8 hours ago, Paralel said:

Well, you really want a crystal along with the FPU for async operation regarding the CII. The one Alaska and I came up with, running in async mode, with a 40 Mhz 68882 + crystal, handily beats the SE/30 in FPU power.

I'll definitely look into that when building it, shouldn't be too terribly difficult to add I suppose. And, again, more bragging rights to have a Classic II that actually outshines the SE/30 in something, even if it's minor in the large scheme of things ;)

Share this post


Link to post
Share on other sites

A/UX is very hardware-specific and can't even run bog-standard accelerated Nubus video cards of the period, including Apple's own. You'd have to be a genius to get it to run on a Classic II, in my view. Much easier to run it on an SE/30; on an SE/30, mind, it (v.3 at any rate), makes only plodding progress. An SE/30 might do better with v.1 or v.2 of A/UX, which were issued in the 68030-era.

Share this post


Link to post
Share on other sites

If all you want to do is boot Unix for shock value I think you can run NetBSD without an FPU. (Floating point emulation is notoriously broken on 68LC040 machines but I think it works on 030's.) It really is just a matter of whether it's possible with current versions to do anything beyond loading the kernel in that much RAM. (NetBSD ran on machines as weak as the 68010 Sun-2 series with 4mb once upon a time, but there wasn't a lot you could do with it then.)

Share this post


Link to post
Share on other sites

As to patching A/UX to run on *any* unsupported machine, is this something an end user has ever even seriously attempted? Are the necessary kernel sources out there in the wild? I know A/UX has a procedure for "building a kernel" but I think (can't swear to it, mind you) that it just stitches together already compiled modules.

Share this post


Link to post
Share on other sites

The closest I can think of "patching" A/UX was the Shoebill emulator written by one fellow who was promptly hired by Apple soon after.

 

A/UX used early System 7 and the Macintosh ROM as a boot loader for A/UX's UNIX kernel. That combination makes it hard to fool, you really need something to have that Classic II supported at the UNIX kernel level.

Share this post


Link to post
Share on other sites
10 hours ago, Daniël Oosterhuis said:

...And, again, more bragging rights to have a Classic II that actually outshines the SE/30 in something, even if it's minor in the large scheme of things ;)

It's funny you say that, that hat was actually my impetus for wanting to implement the async mode of the card. 

Share this post


Link to post
Share on other sites

Hey Buddy,

 

Welcome back! You know what, I was thinking we could make a significantly cheaper FPU card if we did away with the eeprom stuff. That way the board could be smaller and also be a two layer board.

Share this post


Link to post
Share on other sites
19 hours ago, 360alaska said:

Hey Buddy,

 

Welcome back! You know what, I was thinking we could make a significantly cheaper FPU card if we did away with the eeprom stuff. That way the board could be smaller and also be a two layer board.

 

Thank you. Good to see you are still active here.

 

I completely agree. I was also thinking of a PGA instead of a PLCC, it would allow for the use of a 50 Mhz part, which isn't available in the PLCC format. The 50Mhz part is also apparently highly overclockable, from what I have researched, so we could most likely easily push it to 55, 60 or possibly 66 Mhz (if one slaps a heatsink on it).

 

Let me know what I can do, and it's yours.

Edited by Paralel

Share this post


Link to post
Share on other sites

Would there be any benefit to having an FPU that fast in a Classic II?

 

Running the main CPU at 66 MHz would be hugely beneficial, if one were to ever make it work (indeed, the fastest '030 is 50 MHz, and the 40 MHz '040 (the fastest) tops out at 50 MHz; has anybody ever managed to reliably overclock either one beyond 50 MHz?). But the FPU? I guess it could speed up that 2% or so of software that actually needs it, couldn't it? This, of course, includes A/UX, which brings up another question: would a 66 MHz FPU improve A/UX's performance?

 

For the purposes of this topic, that is a moot point, of course (stock A/UX, in any version, won't run on a Classic II), but if we consider other machines that *can* run A/UX, such as a Mac II, has anyone ever considered hacking the FPU so that it can be clocked separately from the CPU (or bypassing it altogether by installing one in the PDS slot, if possible), overclocking said FPU to 50 MHz or above, and recording any performance differences in A/UX (or any other FPU dependent SW)?

 

It would be an interesting experiment to try!

 

c

Share this post


Link to post
Share on other sites

From what I've gathered looking at the Amiga scene, once one gets past 60 Mhz with regard to the FPU, there is negligible speed-up as a result of the CPU becoming the bottleneck due to how the FPU data is handled by the '030.

 

As far as the FPU/ROM and the Classic II, and for nearly every hardware project I've been involved in, I've always operated on a "Can it be done?" rather than a "Why do it?" basis.  From the FPU perspective, actually getting the Classic II beyond the SE/30 as far as the FPU performance was concerned simply using what was provided by the Classic II design (no hacks) was the high point. Seeing how far a theory can be pushed is also interesting in its own right.

Edited by Paralel

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×