• 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.

68LC040 in Centris 660av

jonpurdy

Well-known member
TLDR: Centris 660av came with 68LC040, not full '040 chip and it's acting weird. Looking for advice.

Full story:

I've recently acquired a Centris 660av for a friend of mine and noticed something interesting while getting the machine set up. This 660av came with a 68LC040 chip (the 25MHz one), rather than the stock 68040. This 660av was bought off of someone who got it as part of a bundle (needed to buy the bundle to get the wanted machine), so the seller didn't notice either.

Brief notes:

- No internal hard disk, no RAM (except built-in)

- Using external Syquest EZ135 with known good cartridge to boot, known good keyboard, mouse, power cable

- Had trouble getting it to boot with 7.6.1 and 7.5.5; it would boot until the Finder opened and then would just freeze (you could hear the Syquest disk stop being accessed)

- I figured the built-in RAM wasn't enough

- Found the original Centris 660av installation CD with 7.1 and the Enabler; made 660av-specific minimal install, and finally got it to boot

- Machine shows up at Centris 660av in About this Macintosh

- Boots into Finder, but noticed some very odd behaviour

- If I single-click an icon, it looks like it's trying to be renamed (goes from name input to normal and back multiple times per second)

- I can click around and open a couple of programs, but sometimes they start to open, the mouse cursor turns into a stopwatch cursor, then the disk stops being accessed. I can still move the cursor around, so it's not totally frozen, but basically nothing happens at all

Suspicion:

- System is being confused by the lack of the FPU

- I haven't yet tried to change the Gestalt ID, but maybe if I set it to that of an LC with the same CPU, the system will not try and use the FPU? Or is Gestalt ID only a cosmetic thing that allows for programs to detect the machine they run on, but doesn't do anything to enable/disable features? (Most of my memory of this is from two decades ago when I was a kid learning this stuff for the first time)

Can anyone provide any advice, or confirm/deny my suspicion? 

I'd rather not have to eBay an actual 68040 chip since those are about the same price as what this system cost, and I'd rather not eBay a whole other machine (since shipping to Canada basically kills those deals). I do have a dead Centris 610 that I picked up recently as well that I can pull the RAM from (haven't done this yet since it's not at my condo).

 

LaPorta

Well-known member
Not that I’m an expert by any means here...but why should the FPU lack cause this? I am not aware of any necessity that any Finder calls might need of the FPU since it runs fine on non-FPU Macs. You aren’t trying to runsoftware that requires an FPU I assume.

 

AlpineRaven

Well-known member
The 660av is a slow mac, its the way it was built - you could change it to full 68040 and it would increase slightly in performance - Ive done that in LC475 from 680LC40 to 68040 25mhz too. Ive done that before.
Cheers

AP

 

jonpurdy

Well-known member
I wouldn't necessarily think it would case the issue, but who knows. Maybe the AT&T DSP chip is expecting to talk to it in the background. It's just suspicious because the machine came with a full '040 in stock configuration.

Perhaps the machine is just flaky or has bad on-board RAM.

 

beachycove

Well-known member
From the old AV Mac FAQ:

”[SIZE=14pt][AV] FPU (floating point unit) bombs[/SIZE]

[SIZE=10pt]Of crashes attributed to the lack of a FPU, Noah Price (noah@apple.com) has one theory:[/SIZE]

[SIZE=12pt]It can be caused by applications that are not fully 68040 cache compatible.  To test this theory, use the Cache control panel from your Tidbits disk to turn of the 040 cache and see if things improve.[/SIZE]

[SIZE=10pt]If the 040-cache is not the culprit, open the case cover and make sure the CPU is [/SIZE][SIZE=10pt]not[/SIZE][SIZE=10pt] labeled as a 68LC040.  Apparently the wrong CPU was used in a very small number of machines, for which a replacement will be provided.  However, the problem can also be caused by bad or poorly seated DRAM, remove or re-seat the SIMM's to check.”[/SIZE]

Source file  https://imagej.nih.gov/nih-image/download/documents/av-faq-156.rtf

Evidently the 660av is meant to have an FPU.

 

jonpurdy

Well-known member
After my last post, I finally encountered a proper verbose error message in the Finder (see the attachment): "Floating point coprocessor not installed"

I also tested out the Wish I Were control panel (that changes the Gestalt ID) and set it to that of a Centris 610 (which has the LC040 CPU). I found that there were less random crashes and weird behaviours, but the AV functionality didn't work (which is expected since the AV software would not run on a 610).

And thanks beachycove for that information! The stock CPU is definitely supposed to be the full '040 chip but this one is LC040 as mentioned before. So it's entirely possible that it came with this chip by mistake from the factory!

I did try out the Cache Switch control panel and have disabled the cache (and disable Wish I Were to revert to the 660av Gestalt ID), and I'm now able to use both the AV-specific programs AND not experience random weirdness and crashes! Of course, they could crop up at any point in the future but so far, so good.

As far as next steps go, I think my friend wants to order a full 68040 chip off of eBay to get the full performance out of the machine. But for now, I'll install the extra RAM and hopefully we can get the system set up nicely so that when the '040 arrives it'll already be set up.

I'll post back if there are any further issues, but also if it's a total success. Thanks all!

Photo 2018-12-01, 20 22 28.jpg

 

AlpineRaven

Well-known member
Couple of more questions;

Has the logic board been recapped? (if it hasn't, it does need it - my 660av was playing up and I recapped it and works really well)

It is possible the CPU is faulty? (I've never seen 660av with 680LC40 CPU as they were low end workhorses with full 68040 cpu)
You could try installing software FPU in extensions to see if that messages goes away.

Have you got another 68040 cpu to test it out?
Cheers

AP

 

Macdrone

Well-known member
they actually came out with fpu software to stop errors like shown in the photo. software fpu pretty sure it was called. also cache040 may have been its replacement or counterpart.

 

LaPorta

Well-known member
You, sir, may be one of the only persons that actually sees that message and has a real problem! The cache thing makes sense: if there is something looking for it, and it isn't there, that would happen. However, for most of us, seeing that message means that the machine had no clue what happened. That message was the absolute last in the list of errors that Apple had to display for issues. Therefore, if the machine could not find an appropriate reason for why there was a crash, that error was displayed, as it was the last in the list!

 

ArmorAlley

Well-known member
SoftFPU

There is a control panel that fools the system into believing that an FPU exists. We used it for games on our P475 back when they were almost new.

 I couldn't find it on the Macintosh garden but I know it is on some of the MacFormat cover CDs from around 1994-1995. These disk images are up there. If I can find it at home, I'll upload it for you.

 

johnklos

Well-known member
SoftFPU doesn't help with systems which were never supposed to come with LC040 CPUs. Installing an LC040 in a Quadra 700, for instance, will get you a bomb. Newer machines like this one used updated 650 / 800 ROMs, and those supported LC040s.

I think the issue is that something in the 660AV's ROM expects / requires an FPU, but this happens much later in the process than, say, a Quadra 700. You could try to remove all extensions which are related at all to AV stuff. Or have you even tried to boot without loading extensions? If that works, then you've got options. If not, a full '040 really isn't all that expensive...

 

LaPorta

Well-known member
My question is if this thing really did come with the machine, how come no one rectified the issue when it was new? It seems like it would have been a huge issue if your new computer had bombs on startup for no reason.

Perhaps someone did some weird transplant in the past, more likely.

 

Paralel

Well-known member
You, sir, may be one of the only persons that actually sees that message and has a real problem! The cache thing makes sense: if there is something looking for it, and it isn't there, that would happen. However, for most of us, seeing that message means that the machine had no clue what happened. That message was the absolute last in the list of errors that Apple had to display for issues. Therefore, if the machine could not find an appropriate reason for why there was a crash, that error was displayed, as it was the last in the list!
Very true. My blackbird throws this one out, even thought it is a 540c with a full 68040 installed (it has a 550c CPU daughterboard installed), when it has a PC Card cage error, it throws an FPU missing error instead, despite this being one of the very few 540c's in the universe with an FPU (and yes, the system knows the FPU is present, it shows up in diagnostic software and actually functions when tested).

SoftFPU doesn't help with systems which were never supposed to come with LC040 CPUs. Installing an LC040 in a Quadra 700, for instance, will get you a bomb. Newer machines like this one used updated 650 / 800 ROMs, and those supported LC040s.

I think the issue is that something in the 660AV's ROM expects / requires an FPU, but this happens much later in the process than, say, a Quadra 700. You could try to remove all extensions which are related at all to AV stuff. Or have you even tried to boot without loading extensions? If that works, then you've got options. If not, a full '040 really isn't all that expensive...
Yep, machines that don't have an FPU by default, but can have one installed, have a test routine in ROM to examine if an FPU is present, and if it is, to use it. Systems that are expected to have one don't have this test routine in ROM and just expect a hardware FPU to exist, and when it is discovered it doesn't exist, the system bombs. 

My question is if this thing really did come with the machine, how come no one rectified the issue when it was new? It seems like it would have been a huge issue if your new computer had bombs on startup for no reason.

Perhaps someone did some weird transplant in the past, more likely.
My bet is someone wanted that '040 for something else, and just stuck an 'LC040 in its place, not caring if the system worked our not, possibly never even testing it out.

 
Last edited by a moderator:

Gorgonops

Moderator
Staff member
According to an ancient (1994) Usenet thread discussing the "FPU bomb" the reason the error message can crop up on machines that *do* have an FPU is because what that message *really* denotes is the CPU encountered an illegal instruction that has a certain prefix for the first byte. (Otherwise unimplemented bit combinations that fit this description are generically known as "F-line" instructions, I believe.) The 68020 and later use this semi-generic mechanism to (theoretically) allow expansion of the CPU's instruction set with coprocessors, up to 8 of them at a time; "instructions" that have this prefix bit pattern are assumed to belong to a coprocessor (which wouldn't necessarily have to be a 68881/2, although I don't know if Motorola ever actually made anything else that used it), and that triggers the CPU to either redirect that instruction back across the bus to said device or, if a device that wants that instruction doesn't exist, trigger a software trap handler that will either emulate the missing coprocessor or tell the OS what happened.

Anyway, the key here is supposedly the way Apple implemented the OS error handler it can be triggered to say that the "coprocessor is missing" when encountering any sort of garbled data that looks like an F-line trap; since Motorola's mechanism theoretically supports up to 8 coprocessors but Apple never built a machine with more than one you can have that error pop up if it gets an F-line trap that looks like it belongs to, say, non-existent coprocessor #4 instead. As to the root cause of the garbled data that's firing bogus F-traps, could be any number of things, either hardware of software. (Could actually be bad RAM, caching issues with self-modifying code, any number of things.)

Or that explanation could be totally bogus, but it sounded good.

 
Last edited by a moderator:

jonpurdy

Well-known member
Regarding the logic board being recapped: no, and it looks like some of the caps may be slightly leaky, though I was told that it could also just be flux. These caps look easy enough to replace if necessary though.

I haven't yet tried the soft FPU extension yet (as I try and do this fun stuff on the weekends only). But incredibly interesting information regarding that FPU message being a generic last-ditch error message for unknown problems!

LaPorta, good question about why someone wouldn't rectify the issue when the machine was new. I certainly would have noticed it (even though I would've been 10 years old at the time). It's more likely that it was swapped out, but who knows.

My friend has ordered a full 68040 on eBay which should arrive sometime in the next month or so. He's keen on getting the full 68040 for both performance and reliability reasons. So we'll know for sure if the issue is the LC040 chip if the machine suddenly becomes 100% reliable.

 

AlpineRaven

Well-known member
Yep it will *need* recap, that’ll fix the stability issues you’re having. The Mac will work but not 100% and the longer you leave it (caps leaked) the electrical will shorten the components over use such as sound, Rom, cpu and scsi chips etc

Thats the first thing I would do before muck around with anything else.

Cheers

AP

 

jonpurdy

Well-known member
Attached is a photo of the caps that look like they leaked. I was able to take a q-tip and alcohol and significantly whiten the sticker quite easily. 

139C9569-F2E3-41C3-AC41-2154D183BCC0.jpeg

 

AlpineRaven

Well-known member
It’s really messy!

i wouldn’t use it at all, it needs to be washed through fully - have you washed a logicboard before?

Cheers 

AP

 
Top