SuperMac Spectrum/24 Series III Display Artifact Issue

jmacz

Well-known member
[This thread is a breakout from my other thread covering two of my video cards here: Supermac Spectrum/24 Series III and Series IV Issues]

I'm continuing to have some issues with a SuperMac Spectrum/24 Series III card I purchased recently. This thread is to document the debugging process and to solicit thoughts from the community on other things I can try.

Problem Statement

The card is a SuperMac Spectrum/24 Series III. Upon receiving the card, it had artifact issues when acceleration is enabled and the color depth is at 24-bit. So the observations:
  • Card works without issues at 8bit (and lower) bit depths and whether accelerated or not accelerated.
  • Card works without issues at 24bit if NOT accelerated.
  • Card shows artifacts at 24bit if accelerated.
    • This is not ALL the time. Sometimes it works, sometimes it doesn't.
    • I had gone a week+ without a single artifact issue until a few days ago when it started again.
Pictures Showing the Artifact Issue

At 8bit accelerated, with no issues:

A7_00690.jpg

At 24bit accelerated, with artifacts:

A7_00692.jpg

Pictures of the Card and Daughterboard

A7_00684.jpg

A7_00683.jpg

A7_00685.jpg

A7_00686.jpg

What I Have Tried
  • Tried on Different Computers - tested the card on a Mac IIci, a second Mac IIci, a Quadra 700, all with the same issue.
  • Tried Different Nubus Card Slots - did not help.
  • Tried Different CDEV Versions - tested using CDEV versions 2.07, 2.49, 2.74, 2.75, same issue on all of them. This card doesn't work with the 3.0+ CDEV versions.
  • Tried Different Monitors - tested on an Apple 13" RGB (M1297), a second Apple 13" RGB (M0401), an LCD (Samsung SyncMaster 512N), all have the same problem.
  • Tried Different Resolutions - tested at 640x480, 1024x768 at 60Hz, 1024x768 at 75Hz, all the same issue.
  • Tried Different Power Supplies - tested a stock GE PSU, two other ATX converted PSUs, no difference.
  • Tried Resetting the PRAM - did not help. Resetting the PRAM showed me the boot screen option for selecting the resolution/refresh rate (ie. the "Please hit the space bar" screen) but didn't resolve the issue.
  • Tried Holding Option Down on Boot - did not help. Again, this gives me the option at boot for choosing the resolution/refresh rate but didn't help.
  • Tried Upgrading the ROM - original card had ROM version 1.0. I tried ROM version 1.1 and still the same problem.
  • Reheated Solder Joints on Daughterboard and Daughterboard Slots on the Main Board - used a heat gun to reheat the solder joints. When I first received the card, nothing I did would get the artifacts to go away at 24 bit accelerated. After this reheating, the artifacts disappeared and the card worked for a couple days, and then the artifacts reappeared.
  • Reheated Solder Joints (same ones) a Second Time - after this time, the card was working for over a week. But then a few days ago the symptoms returned.
So far no luck in permanently fixing it since I still don't know the root cause of the issue.
 

jmacz

Well-known member
Some additional thoughts.

RAMDAC - I would think the RAMDAC is not the issue... I don't have a problem at 24bit with acceleration turned off. Only at 24bit with acceleration enabled. So I would think the RAMDAC is fine.

VRAM - I believe the VRAM are the components I have highlighted in red below? I would think this is also fine given 24bit unnaccelerated works ok?

VRAM.jpg

On the daughterboard, there are 18 of these chips (in yellow below). They aren't marked at all, no identifiers. The daughterboard was meant purely to accelerate (card works at 24bit without the daughterboard) so I am assuming these are some memory chips for a cache? Maybe one of these are bad?

memory.jpg

This bodge wire looks to be factory. I have tried disconnecting it to see what happens... it shuts off acceleration and disables the acceleration option in the CDEV.

bodgewire.jpg

The resistors on the daughterboard are showing reasonable resistance and continuity. I still need to confirm based on the color codes whether they are in spec.
 

jmacz

Well-known member
Another thought: I am not sure the reheating/reflowing of the solder joints is actually doing anything. I tried using a soldering iron to resolder every joint on the daughterboard and that didn't help either.

It's quite possible that a trace is partially broken somewhere and the act of me installing/uninstalling the card is causing it to work sometimes and stop working other times. Basically, every time I have reheated the solder joints, perhaps rather than the reheating, it's the movement of the card that is causing it to work.

I tried slightly pushing, nudging the card while it's running in a IIci to see if I could 'influence' the artifacts. I did this while switching between 8bit and 24bit accelerated (each time I switch to 8bit, the screen clears and restores to normal). I do see the artifact patterns changing each time I flip but did not notice any pattern associated with physically nudging or applying pressure on the card.
 

MacOSMonkey

Well-known member
It is not a problem with bad RAM. If you try the board without the accelerator, you will likely see that 24-bit mode works normally (and uses the same on-board RAM) - or maybe you have already done this test -- or reported in your earlier testing. The issue is with acceleration and QuickDraw 32. I also wouldn't suspect a broken trace -- the accelerator pcb is fairly thick/stiff -- isn't it around .125"? It might be a connector issue, but probably not.

re: logic devices on the daughtercard -- in the original cards, the parts were all PALs -- sanded tops and blown read fuses to make it slightly harder to reverse-engineer the accelerator technology (which was a successful strategy, for the most part, not to mention the Herculean task of disassembling and patching QuickDraw primitives and/or optimizing certain other routines). Later, SuperMac switched to GALs vs. PALs (programmability advantage...and there may have also been other device/supplier advantages - maybe slightly faster, better pricing, etc.). But, regardless, the concept was the same -- fast video RAM src/dest translations/blits, etc. to eliminate the huge lag associated with NuBus transfers.

As I mentioned earlier, I thought I had seen this problem in the distant past as a software issue. For starters, try getting rid of SuperClock - it's somewhat naughty -- and strip down your system to the absolute basics + SuperVideo -- eliminate all non-essential and non-Apple stuff. But, I seem to remember something in the distant past about SuperClock trashing QuickDraw/Memory. However, it could also be another extension...but SuperClock is definitely nagging at me regarding these kinds of problems. It's always trying to draw in the menubar and may be screwing up the accelerator code.
 

jmacz

Well-known member
Ok thanks. I had thought I had tried running with all extensions moved out of the System Folder (my IIci is running 7.1.1 so no extension manager). But given I don't have notes about it, I will definitely try this again.
 

jmacz

Well-known member
It is not a problem with bad RAM. If you try the board without the accelerator, you will likely see that 24-bit mode works normally (and uses the same on-board RAM) - or maybe you have already done this test -- or reported in your earlier testing.

Yeah, I already tried with the daughterboard removed and it works fine. Even with the daughterboard installed, it works fine if I turn off acceleration via SuperVideo. The artifacts only show up in 24bit color with acceleration enabled.

Note I have also tried with both System 7.1.1 and System 7.5.5. No difference.

As I mentioned earlier, I thought I had seen this problem in the distant past as a software issue. For starters, try getting rid of SuperClock - it's somewhat naughty -- and strip down your system to the absolute basics + SuperVideo

Ok, removed the following:
  • 2020 Patch - Removed; this is the 2020 date fix.
  • A/ROSE - Removed; this is Apple's but I read on another thread that it could cause issues.
  • Iomega Driver - Removed.
  • After Dark 3.0 - Removed.
  • DeskPicture - Removed. I had removed this previously as it also does strange things with the video buffer since it is providing desktop background picture support. I suspected this one early on but removing it never helped.
  • FastCache - Removed. This is for my DayStar FastCache.
  • SuperClock! - Removed.
So now the only things inside the Extensions as well as the Control Panels folder are Apple provided ones with the lone exception being SuperVideo.

Still seeing the artifacts however at 24bit accelerated.
 

MacOSMonkey

Well-known member
Re: Hardware: What other hardware is currently installed? If you have other hardware add-ins -- like PowerCache, etc., you could try removing them.

The solder side of the daughter card looks like it could use some cleaning with flux remover and a horsehair/bristle brush. Are you sure you don't have any debris shorts? You could also brush the top side and check for adjacent shorts on the pins.

Re: Software: You can try removing anything that is not absolutely needed -- even if it's from Apple. You could also try System 6.0.8 with 32-bit QuickDraw installed.

I will try to check my board over the weekend. I think it works...or at least it used to.
 

jmacz

Well-known member
Re: Hardware: What other hardware is currently installed? If you have other hardware add-ins -- like PowerCache, etc., you could try removing them.

Ok, tried removing all other hardware (the only thing was the DayStar FastCache). Didn't help unfortunately. Note that the same issue was happening on my other barebones IIci (with different memory modules) and also on my Quadra 700 (which didn't have any other cards in it).

The solder side of the daughter card looks like it could use some cleaning with flux remover and a horsehair/bristle brush. Are you sure you don't have any debris shorts? You could also brush the top side and check for adjacent shorts on the pins.

Gave it a good clean. It was just some dust, nothing that could have caused a short. It's clean now. But still seeing the issue.

Re: Software: You can try removing anything that is not absolutely needed -- even if it's from Apple. You could also try System 6.0.8 with 32-bit QuickDraw installed.

Good point. I removed all control panels except for "SuperVideo". Problem persists in 24bit accelerated mode.

One thing... might be a coincidence, not sure...but almost feels like the issue gets less severe and starts going away the longer the computer has been on (warms up). The problem has not completely gone away but less and less artifacts as time goes on.
 

MacOSMonkey

Well-known member
It's possible that there could be an accelerator timing issue. You can try lightly and evenly warming the board and accelerator with a heat gun to see if the artifact behavior tracks temperature...but don't overheat it. And generally speaking, you should use the v1.1 ROM.

Also - avoid using NuBus Slot $B with Spectrum/24 Series III. I think I recall that there is a possible 24/32-bit address decoding error on that board with the SMT01. So, always use Slot $9 or $A in a 3-slot machine.
 

jmacz

Well-known member
Ok will try warming the card tomorrow.

Regarding the slots:

IMG_0019.jpeg

I have been using slot $c on my IIci and slot $e on my Quadra 700.
 

MacOSMonkey

Well-known member
Great - so not an issue. I didn't remember that the IIci addressing was different from the IIcx - thought it was also $9-A-B. But - I'm pretty sure the board issue was with slot $B address decoding...hmmm...I think it was a 24-bit issue - address ranges from $fbbxxxxx. The fix was "don't use slot $B" - multiple slots, so not a fatal error -- but resolved in later boards and SMT02. The impact was low. It's ancient/arcane trivia, but may help someone if the board ends up in slot $B. If I recall any other details, I will post them.
 

jmacz

Well-known member
Hmm, it does get better when it warms up. On a cold start, I get a bunch of artifacts, almost unusable. If I warm it up slightly with a hair dryer, or even let the card itself warm up sitting idle, it starts getting better in that the number of artifacts reduces by a lot. Around 15 minutes in, I get almost zero artifacts. Hair dryer accelerates the process.

Test Process
  • Cold start - booted into 8bit accelerated color, no issues.
  • Switched to 24bit accelerated - tons of artifacts, missing window backgrounds, etc.
  • Switch back to 8bit accelerated - artifacts go away.
  • Did this switch back and forth a few times and there's still tons of artifacts.
  • Let it sit for 5 minutes.
  • Switched to 24bit accelerated - a lot less artifacts, window backgrounds are normal.
  • Switch back to 8bit accelerated - artifacts go away.
  • Did this switch back and forth a few times and it's about the same each time (which is less than cold start).
  • Let it sit for another 5 minutes.
  • Switched to 24bit accelerated - even less artifacts.
  • Switch back to 8bit accelerated - artifacts go away.
  • Did this switch back and forth a few times and it's about the same each time (again, much better than before).
  • Let it sit for another 5 minutes.
  • Switched to 24bit accelerated - zero or no artifacts.
I've done the above about 3 times now and it's the same. Artifacts disappear over time. I have also power cycled and restarted a few times to ensure it's not something with the software that corrects itself over time. Power cycles (full shutdown and power on) as well as restarts don't impact the above. As long as the time has gone by, it has improved as a function of time.

Like right now, system has been on for about 30 minutes and I see zero artifacts.
 

MacOSMonkey

Well-known member
Good debugging. It looks like either a thermal issue with a component, a fractured via/trace, or most likely just bad/old solder or a void.

To rule out bad/old/crappy solder, you can flux all the solder-side pins (water-soluble is best) on the accelerator card and thoroughly reflow them with fresh solder and an iron - (not a heat gun). Fully wet each pin. Start with the connectors. Then re-test. Then do the devices if still failing.

You should also flux and reflow the accelerator connectors on the main card on the first pass.

It is hard to resolve old process voids without flux and fresh solder.

If it still has the same issue, then you could theoretically look for resistive connections on the accelerator/connectors, etc., to rule out via/trace issues.
 

jmacz

Well-known member
Reflowed the solder joints using an iron (+ flux) on the following:
  • Daughterboard connectors (both on the daughterboard and the main board)
  • All chips and resistors on the daughterboard
  • Main SuperMac chip on the mainboard
Didn't help unfortunately. Moving on to the other components tomorrow.
 

jmacz

Well-known member
Some more findings.
  • Focus of Heat
    • Heating the RAMDAC and three BSR-02 chips has no effect.
    • Heating the area of the board where the RAMDAC/BSR-02 chips are has no effect.
    • Heating the VRAM has no effect.
    • Heating the oscillators and that area of the board has no effect.
    • Heating the daughterboard area DOES have an effect and improves the situation.
      • Next post will have diagram of heating locations and effect.
  • Ruling Out
    • The computer - same issues across multiple machines.
    • The slot - same issues across multiple slots across multiple machines.
  • Semi Ruled Out
    • The nubus connector - I would think all bit depths and non-accelerated would have an issue if it was the nubus connector.
    • RAMDAC - I would think the same issue for accelerated/non-accelerated if it was the RAMDAC.
    • VRAM - I would think this would cause problems regardless of accelerated/non-accelerated.
 

jmacz

Well-known member
SS24III heatmap.jpg

Heating the green region has an immediate effect and resolves the issue. Then as things cool down over a few minutes, the artifacts come back. Heating the yellow and red regions do not have an effect. And the rest of the main board also has no effect.

Also the main board part of the green region (ie. the resistors (RP1-RP4) and the top of the Supermac SMT01 chip doesn't seem to do as much. So will focus on the daughterboard and narrow down the region.
 

MacOSMonkey

Well-known member
Maybe a bad connector, connector tolerance or trace/via issue. The failure looks like an address translation problem, which may point to a marginal open/bad contact somewhere (that improves/closes when you heat the green area) - maybe just a single intermittent line. During the original thermal testing, there were some heat-related daughtercard issues with random pixel dropout, but that is not what you are seeing. So, I don't think it's the devices. Another general class of problems might be temp-related timing skew...but maybe seems less likely vs. an intermittent connection (but guessing).

Check resistance when cold across the 2 green area connectors to look for anything that diverges from the other pins -- from the connector to the back-side via ring...and maybe the connector to device pin (will have to map it). To test the female connector, pound a rework wire flat with a hammer, use it as a mock pin and hook the meter probe to the other (via) side. If the flattened wire is toowide, dremel or file it to match the pin width.
 

jmacz

Well-known member
Put a narrow tip on my heat gun to narrow things down... and was able to isolate to a single chip or area of the board. My last post was right that it's on the daughterboard, but wrong on the region of it.

daughterboard heatmap.jpg

I went through the painful process of cool down, repro the issue, heat up a single quadrant, check if the issue is gone, rinse and repeat. Narrowed it down to the two green quadrants above. So in the vicinity of this chip:

daughterboard2.jpg

On that chip, it's more towards the center of the board than the outer edge near the resistors. Will need to check the connections on that chip as well as the orange cap/resistor (not sure what it is) above it towards the center of the board.
 
Top