Tag Archives: Apple

An Extremely Tardy Performa 6200 Review

An Extremely Tardy Performa 6200 Review…

… or how slow is the “worst Mac” when you actually spend some time gathering primary evidence, including experimenting with various tools to improve performance over day-one reviews.

Draft Notes

I haven’t fully finished this article because my 6200 stopped working. This notes section just captures a few thoughts I was having and that I wanted to test or investigate. I’ve left it here so I can come back to it once I repair the 6200.

Impact of cache speed? None between 14 and 15ns. Suggests that both are faster than the computer. Interesting to see a) what happens with a 40MHz bus. b) what happens with a 22ns cache.

Impact of using AV card. Seems slower than built in, certainly with G3. I personally can only test without logic board cache if the G3 is installed. CPU runs faster with AV card, even without the cache, which is amazing. Suspect AV + Cache (I can’t test because I don’t have a basic riser) would be pretty good.

Availability of processor upgrades.

Current prices.

Why is quickdraw so slow on the 6200. Confirmed that video is faster on 630. 56.6 vs. 43.8 best case 8.6, or 42.9 for Mac OS 7.6.1.

MDK isn’t that different.

While 68k emulated FP isn’t great, remember this is a replacement 630… Most of which didn’t have a hardware FPU. Performance is ~2.4 times better without tweaks in 7.6.1.

What is the measured difference in performance running different ROM versions?


Forward

Before continuing, please realise that the topic covered on this page is strangely contentious within the retro Mac community and I am very aware of this, to the degree that I have at times hesitated working on and publishing this analysis.

Please understand that I have done my absolute best to approach this as scientifically as possible. I’m not pro or anti Performa 6200, but please, when providing any input or discussion, be mindful a small number of points…

  • Please be kind in your criticism. I’m only human.
  • I have spent literal weeks undertaking benchmarks of dozens of configurations as well as reviewing technical documentation – if you don’t agree with something, please explain the whys and the hows. To meet the required level of rigor to update this page, I will need you to provide reproducible hard data that I can run on my own machine.
  • Any contradiction of previous publications is not intended as a personal slight.

Summary

When executing PowerPC code, the Performa 6200 is 21.1% slower than the Power Macintosh 6100/66 in terms of CPU performance, and about 66.8% slower in graphics performance. Memory throughput is likely the main CPU bottleneck with PM 6100/66 RAM being 52.6% faster. The IDE hard disk performance is good, achieving sustained reads and writes of up to 2.19MB/s and 2.66MB/s respectively, with a fresh Mac OS 7.6.1 install and a slightly newer than stock IDE disk, possibly from a Performa 6300 based on the size and age. The best disk speeds achieved by the Performa 6200 were 2.42 MB/s read and 2.77 MB/s write, surprisingly in emulated 68k mode with SpeedDoubler enabled. The SCSI disk in the PM 6100 SCSI did outperform the IDE disk with 3.68 MB/s read and 3.64 MB/s write with a fresh Mac OS 7.6.1 install, but the disk was borrowed from a newer, high-end system. The best (non-G3 accelerated) PM 6100 disk scores seen were 3.76 MB/s read and 3.82 MB/s write. The Performa 6200’s FPU performance is impressively good, scoring about 30% faster than the PM 6100/66 overall.

There is little difference in emulated 68k performance between the Performa 6200 and the PM 6100/66, with the former scoring 12.5% and the latter 15%, both relative to the benchmark tool’s baseline system (a PM 6100/60) running PowerPC code. While this shows the Performa 6200 is 16.7% slower than the 6100/66, in reality both are only the speed of a 68030 processor + 68882 and the gap is small in absolute terms. More interestingly the gap in performance of emulated 68k mode closes compared to the gap in performance while running PowerPC native code (21.1% for PPC, vs 16.7% for Emulated 68k as indicated above). This suggests that the impact of the smaller Level 1 cache in the PowerPC 603 is not as significant for emulated 68k performance in Mac OS 7.6.1 as has previously been stated. This is an extremely interesting result.

With the exception of graphics performance, the Performa 6200 is faster than any 68k Mac when running PPC code, and by using SpeedDoubler, can be made to be faster than any 68k Mac when running 68k code in emulation, again, excluding graphics performance.

Overall, the biggest issue with the Performa 6200 is the graphics performance and not the 68k emulator performance.

The performance benefits of MathLibMoto and PowerFPU are small, with PowerFPU causing a small reduction in performance in some scenarios.


Background

Apple released the Performa 6200 family as a PowerPC based replacement for the Performa 630 family. I’m going to ignore all the various versions they released as they’re all basically the same machine other than the 6290, which had a better (603e @ 100MHz) CPU.

The Performa 6200 shares it’s chipset with the Performa 630 so completely, that the sound, memory controller, video chip, I/O chip, and more are all identical parts. Technically, the Performa 6200 could be thought of as a Performa 630 with a PowerPC 603 upgrade card soldered to the logic board. So much so that a clue in plain “view” is the startup sound – it matches the one used on the DayStar and Apple PowerPC upgrade cards for various 68k Macs.

While a bottom-end machine at the time, the Performa 630 is an excellent 68k Mac. They are fast, even for a 33MHz 68040, they can be upgraded to have an FPU if you don’t already have the Quadra variant (which came with one), and can be easily overclocked to 40MHz. The various upgrade slots and hardware video scaling make it a fun consumer AV machine, especially if you can find the AV card and the less common hardware MPEG decoding card. An Infra-Red remote, UHF module, and a UHF + FM module were also available. Note that all of these various add-ons work with the Performa 6200, and all parts other than the logic board are functionally identical (case, PSU, etc). Swapping 630 and 6200 boards (as well as 6300 family boards other than the 6360) is trivial.

Apple also released Performa 580, Performa 5200, Performa 5300 machines and equivalents, which are effectively the same computers, but with a built in monitor. Anything on this page discussing the 630, 6200 or 6300 families equally applies to the 580, 5200 and 5300 families respectively.

The Performa 6200 shipped with a 75MHz PowerPC 603 processor. The ROM and L2 cache are connected directly to the processor by a high speed 64bit bus. A bridge chip named “Capella” then connects this PPC 64bit bus to a Performa 630 style 32bit 68040 bus at 37.5MHz. The 040 bus connects to the RAM, the video chip, serial, SCSI and IDE, while the sound, ADB, RTC and floppy are attached to a slower 68030 style bus (16MHz, 32bit) from the “PrimeTime II” I/O controller.

When released, the Performa 6200 received scathing reviews, with particular attention paid to its poor performance when running emulated 68k software. The opinion of these machines has been cemented by a number of online articles describing them as the worst Mac ever, which sadly contain a number of factual inaccuracies. The often stated primary issue when emulating 68k code relates to how the 603 processor uses a separate 8k each for Level 1 data and instruction cache, which was apparently insufficiently large to run the 68k emulator efficiently. This begs the question, given as time went on more and more code was released for PPC and the OS itself was heavily optimised for PPC (speed critical 68k code was replaced to improve performance), does the machine retrospectively deserve its reputation?

One factor that likely caused the poor reaction to the Performa 6200’s performance is the processor speed in MHz. While the Performa 6200 has a numerically superior “speed” compared to the 6100/60 and 6100/66, benchmark scores were lower even for PowerPC native code. I suspect this was the first time a higher clock speed Mac performed worse than an older machine with a lower clock speed (although the IIvx comes close, perhaps that deserves a similar retrospective). Obviously this isn’t an issue in reality, but could cause false expectations. Considering this, it is worth keeping in mind that I think the Performa 6200 cost less in real terms than the 6100. The Performa 6200 was $2300 with a monitor, keyboard and software, while the 6100 was $1700 without either a keyboard or monitor. Although more analysis of prices is required.

I got curious and have been watching for a Performa 6200 of my own. I recently found one at a bargain price and so this post is my investigation and findings. My aim is to provide an unbiased opinion on the performance, but also, to find how the most can be achieved with the machine, and what benefits can be found from various mitigation tools such as…

  • Newer OS versions
  • SpeedDoubler
  • PowerFPU
  • MathLibMoto

Comparison will be primarily made with the Power Macintosh 6100/66, as this is a machine that the 6200 is commonly compared with and I have one for collecting my own benchmarks.


Test Machine Specifications

Performa 6200 Specification

The Performa 6200 in Question

The following specification describes my individual Performa. It is pretty much stock, other than the RAM, hard disk, OS versions and ethernet card.

  • Bezel label says “Performa 6200”.
  • British sold machine from the Cork, Ireland factory, built in the 15th week of 1995.
  • Doesn’t have the bad “not a recall” ROM, or the bad video chip (early machines had stability issues).
  • 75MHz PPC 603 CPU with 8k data and 8k instruction L1 cache.
  • 256k L2 on 64bit bus (I assume at 37.5MHz, but see “Cache Speed”).
  • 64MB of RAM, operated with 80ns timings (regardless of speed fitted) and 32bit.
  • A 1.2GB IDE “spinning rust” Quantum brand hard disk. Apple marked, but from 1996, so likely taken from a 6300 or similar.
  • CD-ROM Drive (4x Matshita CR-8005 drive, original Apple supplied).
  • Apple 10baseT CommSlot Ethernet card (thank you Sophie Rose!).
  • Stock “manual inject” “SuperDrive” floppy drive. Not sure what brand as I haven’t removed it (it is working well).
  • Dual booting Mac OS 7.6.1 and Mac OS 8.6.

The power supply needs recapping, it is a little noisy and turns the computer on by itself.

Power Macintosh 6100/66 Specification

The Scruffy PM 6100 in Question

For reference in the context of benchmarks, the following specifications describe my specific PM 6100/66. I did my best to revert it to stock, other than the RAM, OS versions and hard disk.

  • Bezel label missing, should say “Power Macintosh 6100/66. I suspect the lid is from a Quadra 610 as it has “Macintosh” silkscreened on it, instead of “Power Macintosh”.
  • Weird Frankenstein’s monster of a machine, logic board from the 49th week of 1995, blatant Centris case from 1993 and a logic board serial number factory of “GY” which apparently isn’t a valid factory code.
  • 66MHz PPC 601 CPU with 32k combined instruction and data cache.
  • 256k 64bit L2 cache fitted, 15ns part on a 33MHz bus.
  • 264MB of RAM on 64bit bus. Operated with 80ns timings.
  • A 4GB SCSI hard disk, originally shipped with a 9600. Not stock speed.
  • No CD-ROM fitted (it stopped working).
  • Stock “manual inject” “SuperDrive” floppy drive.
  • Booting 7.6.1 only for comparison.

Advantages / Disadvantages

The following is a list of features of each computer that aren’t purely architectural.

Performa 6200

  • + Three expansion slots, Comm Slot, LC “PDS”, and the video slot for the video input card.
  • + Support for UHF / FM.
  • + Infrared receiver.
  • + Case volume buttons
  • + IDE for cheaper modern CF, SD and M.2 hard disk solutions.
  • – Only 8bit, 22kHz sound.
  • – RAM capped at 64MB

Power Macintosh 6100/66

  • + Ability to fit 7″ NuBus card.
  • + Ability to fit AV Card.
  • + 16bit 44kHz sound.
  • + Ability to upgrade L2 Cache.
  • + Up to 264MB of RAM.
  • + Ability to fit DOS Compatibility Card
  • – Replacement SCSI hard disks are expensive.
  • – Onboard HDI-45 requires ungainly adapter.
  • – Large desktop footprint.

Performa 6200 Performance Considerations

Processor

A “HOT” 603 Micro Processor

Interestingly, manufacturer data suggests that a PowerPC 603 in a similar logic board implementation to a PowerPC 601 Mac should in fact perform comparably. This is based on quoted SPECint92 and SPECfp92 scores. This implies a 75MHz 603 would out perform a 66MHz 601, if they both had 64bit memory, approximately proportionally to the difference in clock speed.

CPU Manufacturer Performance Data

These numbers don’t appear to explain why in benchmarks, the Performa 6200 scores higher than the Power Macintosh 6100/66 in floating point, even after accounting for clock speed.

Cache and CPU Bus Speed

First and foremost, I don’t have a deep understanding of how L2 cache is implemented on early PowerPC Macs. I don’t know anything about the cache timings, so all I have done here is look at the cache chip rated speeds and compared them between different model Macs. This does not represent how quickly the cache is actually running in a machine, but assuming appropriate parts were specified, it should give a good estimate of how different machines’ cache performance compares. This is a fair assumption because SRAM for cache is expensive and so there is a strong motivation not to over-spec cache.

My Performa 6200 Cache (256k, 15ns – the ROM is affixed to the reverse of this PCB)

The Performa 6200 is fitted with 256k of Level 2 (L2) cache, on a SIMM shared with the ROM. This cache is on the PPC 603 bus, which is 64bits wide. Some sources state that the L2 cache is at the full CPU speed of 75MHz, but I doubt this. The Developer Note says that “The 603 bus is connected directly to the main processor and runs at the same clock rate. An external 256 KB second-level cache and 4 MB of ROM attach directly to the 603 data bus and help to optimize system performance”. This could be read to be saying that the L2 Cache and ROM are 75MHz, but Newer’s Gauge Pro software indicates that the L2 is just 37.5MHz. By extrapolating from factors such as cache spec, I believe that the Developer Note is referring to the CPU bus speed of 37.5MHz, rather than CPU core clock, but unfortunately chose slightly ambiguous language. The 603 processor is capable of using an internal bus multiplier which can be set to 1x, 2x, 3x or 4x and so in this case, would be set to 2x. Looking at the Performa 6200 cache chips themselves, they are 15ns parts, which would imply a peak speed of 66MHz (converting 15ns into a frequency by calculating the reciprocal).

Using the linked summary of L2 Cache SIMMs for various PPC Macs posted by Fizzbinn I have reviewed what speed L2 cache Apple is believed to have fitted to various Macs during the timeframe. For Power Macintosh caches, which seem to use 14, 15 and 22ns parts, my theory is that each machine has a cache that corresponds to approximately double the bus speed. With 15ns = 66.67MHz commonly fitted to the 6100 and 14ns = 71.4MHz fitted to faster machines including the PM 8100/110 (with a 36MHz bus). The 22ns cache, identified as being from a 6100/66 is surprisingly slow, equating to 45MHz, no where near double the bus speed of any Power Macintosh. Perhaps Apple was fitting slower caches to early PM 6100s. It would be interesting to see if this makes a difference to performance, especially between 15ns and 22ns. My personal PM 6100/66 appears to have come with a 15ns L2 cache. As a quick aside, I did a quick comparison of my PM 6100/66 with 14 and 15ns cache fitted and got identical CPU benchmark scores. This suggests that both 14 and 15ns cache are “fast enough” and there is no gain in using faster chips, at least at this speed granularity.

The Performa 6200 cache with its 15ns chips does not quite meet the nominal “double the bus speed” as double would be 75MHz, and the reciprocal of 15ns is 66.67MHz. The Performa 6300, which is a minor upgrade to the 6200 fitted with a 100MHz 603e processor, was shipped with 12ns cache. This faster cache, on the computer’s 40MHz bus (using a 2.5x multiplier, as 1.5x, 2.5x and 3.5x bus multipliers were added to the 603e variant) is back in line with performance being double the bus plus a small overhead. This suggests that… perhaps Apple specified the L2 cache in the original PM 6100/60 and Performa 6200 a little below what they were willing to in other period machines.

In conclusion, I suspect that the PM 6100, 7100 and 8100 caches were specified at speeds relative to the bus speed, i.e. 30, 33.3, 36.7 and 40MHz, depending on configuration, but with some variation based on desired cache performance. I also believe the Performa 6200 cache is rated based on PPC bus speed and not CPU core clock. Ultimately, the cache chips appear to be of pretty similar speed between various machines from this era, with the exception of the 22ns PM 6100 SIMM, and so cache performance is more generally expected to be similar between the Power Macintosh 6100/66 and Performa 6200. Note that, if I remember correctly, the PM 6100/60 did not always originally ship with a L2 cache.

ROM Speed

Unusually, the ROM and Cache are both on the same SIMM for the Performa 6200 and similar machines, with TAG RAM for the cache located on the logic board itself. This presumably means these SIMMs can not be used as Cache, or ROMs in other Mac models.

Performa 6200 ROM – Interestingly this is a Flash ROM

Fast ROM access is a significant advantage for “Old World” Macs as many frequently used Macintosh Toolbox functions are held in the ROM. The ROM in this Performa 6200 is built using 120ns chips. While being 64bit wide provides an advantage, presumably meaning that twice as much data is read into the CPU in a single go, 120ns in itself is not faster than late model 68k Macs, but does seem to be inline with other Power Macintosh computers from the era, such as the 6100, 7100 and 8100. This means that in terms of the performance of the connection to the CPU and the ROM chips themselves, the Performa 6200 ROM is not a bottleneck when compared to other Power Macs.

RAM Speed

RAM is on the 37.5MHz, 68040 style bus, which is only 32bits wide, unlike the Power Macintosh 6100, which implements RAM on a 64bit bus. Newer Gauge Pro reports a RAM speed of 15.2MB/s, but mis-reports it as 64bit. For reference, Gauge Pro reports a speed of 23.2MB/s for the Power Macintosh 6100/66.

Do not use virtual memory on this machine in speed critical applications (although turning it on, set to only 1MB is sometimes feasible as it allows more advanced memory management, actually freeing up more RAM, without a significant speed penalty).

While the F108 Memory Controller is known to support 128MB SIMMs (the same chip is used on the Performa 630 where it can recognise a 128MB SIMM), there appears to be an artificial limit applied to the 6200, as when I inserted 256MB of RAM, it reported only 64MB.

The 6200 does not support memory interleaving, so there is no speed benefit in using two identical SIMMs, although maximising the RAM to 64MB is sensible. Strangely, boot times give the impression that this computer may not undertake a full memory test during startup, or the memory test is somehow shorter than usual. It may be my imagination, but the computer turns the screen on (usually only done after the memory test) quite quickly after power on and the chime, regardless of how much RAM is installed.

Out of curiosity, I timed that the PM 6100 took 37 seconds to initialise video (after completing the memory test) with 264MB of RAM. Scaling for RAM speed and quantity, I would expect my Performa 6200 to take about 13.5 seconds, but it only takes 9 seconds.

It should be noted that PowerPC processors expect data to be aligned at 32bit boundaries, while 16bit alignment was the norm for 68k Macs. When data is aligned to 16bit boundaries on the Performa 6200, there will be a performance penalty as additional operations will be undertaken by the computer to manage the situation.

Graphics Performance

For a not fully understood reason, it is suspected that the graphics performance of the Performa 6200 is not only slow for a PowerPC based Mac, but is actually slower than the Performa 630 which the Performa 6200 is based on, even using the same video chip (the Valkyrie). The main exception is that the Performa 6200 is able to draw images to the screen faster, but this is countered by image translation operations being unusually slow. I don’t have an easy way of working out the cause of this discrepancy, especially considering how similar the hardware is, but given that, it would suggest that perhaps it is either to do with the Capella bridge chip, data alignment, a software reason or some other consequence of fitting a PowerPC chip into the Performa 630. An interesting comparison would be to compare Performa 6200 graphics performance with a Performa 630 fitted with a 66MHz PowerPC 601 upgrade card to see if the graphics performance is common to both, or just specific to the Performa 6200.

Another possibility might be that when increasing the bus to 37.5MHz, Apple had some unreliability with the video chip and so had to add wait states. This is vaguely possible as some people overclocking their Performa 630s to 40MHz used to have issues with their video, and have to add a heatsink to the Valkyrie chip. In some cases this apparently still wasn’t enough. See the table at the bottom of this page.

There are a couple of mentions on the internet of Apple having to update the ROM to reduce video performance of the Performa 6200, but I can find no primary evidence of this. The Service Source document mentions replacing the ROM+Cache SIMM, but in the context of a cache related issue. There is a possibility that the cache issue was fixed with a ROM update, but this is not clear in the descriptions. Additionally, there are mentions of colour tint issues on the video and random video related crashes requiring returning the computer to Apple, but the cause and fix for this are not covered in detail. I would be interested to know if anyone has first hand information regarding these issues and their fixes.

A good start might be a ROM dump from one of the “bad” ROMs that escaped the “absolutely not a recall”. If you have a ROM that matches the following description, please get in touch.

Performa 6200 Family Bad ROM – Let Me Know if You Have One

Pixel Doubling

The Performa 6200 video chip supports hardware pixel doubling in a manner that allows the 6200 to draw a 320×240 pixel image, and it be shown full screen at 640×480 with little to no CPU overhead for the scaling. Very little software took advantage of this. Known examples are, Apple’s “Apple Video Player” software, Bungie’s Marathon (by switching on “Hardware Acceleration” in Preferences) and the demo “Some Years Ago” by Noglin, which was written specifically for the 5200/6200. The functionality may also be available in QuickTime, but I haven’t investigated.

Note in early versions of the original Marathon, the option was named differently, and is only available on a reduced selection of Performa 630 or similar computers.

IDE Hard Disk

While the Performa 6200 has a very early IDE implementation for Apple, and was much maligned at the time, read and write speeds are good. I suspect the disk in this machine may have been swapped from a Performa 6300 as it is 1.2GB instead of 500MB or 1GB, and dated approximately a year after the computer was built, but even if this is part of the reason for the good performance, it shows that the IDE interface is capable of reasonable speeds. I haven’t tried a fast drive to test the limits of the interface, but am happy with the performance I’m seeing.

This said, hard disk benchmark speeds show some curious behaviour, with MacBench suggesting that the Performa 6200 hard disk performance is slower than the Performa 630 in some (but not all) tests, but also both MacBench and Norton System Info show that in some cases, hard disk performance is better when running in 68k emulation mode. This latter point suggests that the hard disk driver contains a lot of 68k code and when PPC software is running, is causing a lot of context (PPC->68k and back) switching. Context switching has a time penalty and can cause a reduction in performance. There are situations in which even though PPC code executes faster, the time cost of switching to PPC mode can outweigh the benefit.

I have not undertaken tests to verify this, but if this is the case, it may be worth identifying an alternative IDE driver that contains more, or entirely PPC code. I believe some 3rd party drivers advertised this as a feature, and also suspect that with time Apple will have optimised their newer drivers for PPC. FWBs HDT version 4.5.x might be a good solution to try.


Baseline Benchmarks

Benchmarking Software

I tend to use Norton’s System Info benchmark for three main reasons.

  1. We had a copy when I was growing up.
  2. Because I’m used to it, the numbers are more meaningful to me.
  3. The individual tests are clear in what they do, and are usually specific toolbox, or hardware operations.
  4. It allows you to run benchmarks both natively as PowerPC, or as emulated 68k. It has cats.

I did the bulk of my benchmarking for this investigation using System Info 6.0.3 from 2001. This said, when I ran two benchmarks using version 3.1.3 from 1994 (before the Performa 6200 was released) I found something curious. In version 3.1.3, the Performa 6200 scored noticeable worse than in version 6.0.3. I have no way of knowing exactly why this is. At the time version 3.1.3 the only PowerPC Macs all had PPC 601 processors, so possibly…

  • Norton may have later changed weightings to better represent real world performance of the Performa 6200.
  • Compilers were not optimised for the PowerPC 603 processor and so benchmarks ran less well in 3.1.3.
  • Something else.

The most significant reduction in performance is when you compare with the 6100/60 between the two benchmark versions. System Info 3.1.3 was likely the release that was in the hands of journalists when they originally reviewed the Performa 6200.

With this in mind, I was looking in the Performa 6200 Developer Note and I found the linked section, and found the following extract. It seems that there were sufficient compiler optimisations required initially that Apple was directly working with the producers of development software to improve performance. The two primary issues appear to be that code which called POWER specific instructions would suffer a performance penalty as the instructions would need to be emulated (in practice this should be a rare issue, given that even though the PowerPC 601 supported the POWER instruction set, developers weren’t meant to be targeting it on the Mac), and the second issue is that certain instructions can interfere with instruction pipelining.

Extract from Performa 6200 Developer Note

I can only assume benchmarks made with the newer version of System Info are “more accurate”, on grounds that you should be improving your product with time, but this is an interesting observation, and shows that the only real speed test is whether you are happy with performance or not.

Baseline Overall

The following shows a comparison of Norton System Info’s weighted scoring for each machine overall while running clean installs of Mac OS 7.6.1, as well as the overall scores for CPU, Video (effectively QuickDraw performance), Disk and FPU. The computers are in the recommended configuration for System Info benchmarking, with AppleTalk off, the disk cache set to 128k and the screen set to 8bit colour and 640×480 resolution. Tests were performed with the benchmark tool running both natively in PowerPC mode, as well as with 68k versions of the benchmarks running in the built in emulator.

Scores in these and following benchmarks, unless otherwise noted, are given as a percentage relative to Norton’s included score for a Power Macintosh 6100/60. For the most part I am not paying attention to the baseline 6100/60 score itself as it represents a snapshot in time with an older operating system and so is not a direct comparison with these new benchmark scores.

Baseline Overall Benchmark Scores

The last row in the table above is the PM 6100/66’s score crudely scaled from 66MHz down to the 60MHz of the inbuilt baseline. This shows that even accounting for the difference in MHz, the PM 6100/66 is disproportionately outperforming Norton’s original PM 6100/60. This is anticipated to be a mixture of the inclusion of a 256k L2 Cache, plus software optimisations resulting from a newer operating system (7.6.1 vs 7.1.2).

Baseline Scores Scaled to Percent of PM 6100/66 (PowerPC and 68k)

For clarity, the above shows the results scaled to be a percentage of the PM 6100/66 scores – for PPC and separately for emulated 68k performance. This makes it easier to compare the two systems.

Performa 6200/75 CPU, Video and Disk performance is all behind Power Macintosh 6100/66 performance. Floating Point performance is significantly ahead of the PM 6100/66 which is very interesting because that doesn’t align with expectations based on the SPECfp92 results for the two processors above in the “CPU Manufacturer Performance Data” table. As previously mentioned, the performance of a PowerPC 601 and 603 should actually be pretty close on a per-MHz basis, and so it is likely that the lower performance of the Performa is a result of the logic board design, most likely, specifically the RAM speed.

Baseline CPU

Performa 6200/75 vs. Power Macintosh 6100/66 Baseline CPU Performance

Based on in which benchmarks the Performa 6200/75 performs least well compared to the PM 6100/66, it can be seen that memory bandwidth appears to be the primary bottleneck. In particular, we can see that aligned block move performance is falling behind. On the other hand, the PPC 603 performs well when undertaking bit shifts and multiply / divide operations. The implications of this mean that it would be very interesting to compare performance with a 603 based machine utilising 64bit RAM.

Baseline Video

Performa 6200/75 vs. Power Macintosh 6100/66 Baseline Video Performance

Across the board, graphics performance on my Performa 6200/75 is considerably worse than my PM 6100/66, but also many, if not all, 68040 based Macintosh computers.

This is confusing as the video chip, the Valkyrie, actually performs better when fitted to the Performa 630, even though it is connected to a slower 33MHz bus in that system. I do not have sufficient information to explain this, but would be interested in performing side by side comparisons of performance with all available Performa 6200 ROM variants, and potentially a 6300 ROM if it is capable of booting a 6200.

If anybody has any behind the scenes knowledge regarding this oddity, I’d love to know, especially if there is any way to speed up performance.

Note – I tested video performance using a PPC benchmark, but with SpeedDoubler enabled with the intent that it would give a performance improvement to any 68k code running in QuickDraw or the graphics drivers. It did not improve performance and so I can safely conclude that speed issues are unlikely to be due to emulated 68k code.

Baseline Disk

Performa 6200/75 vs. Power Macintosh 6100/66 Baseline Disk Performance

Norton System Info hard disk benchmarks showed read spreads of up to 2.5MB/s and write speeds of 2.8MB/s for 256k sequential access. These speeds are actually similar to the best speeds you tend to get with spinning hard disks of the era, and the random, 1k and other short reads and writes are faster than many similar era disks. In medium and low end SCSI Macs of the time, the SCSI bus generally has a maximum speed of 5MB/s and it is not usually possible to achieve the full 5MB/s speed.

Norton System Info shows the hard disk significantly outperforming the baseline Power Macintosh 6100, but it is likely that the PM 6100/60 Norton used was underperforming due to early disk drivers with little to no PPC optimisation.

Baseline FPU

Performa 6200/75 vs. Power Macintosh 6100/66 Baseline FPU Performance

In FPU tests, the Performa 6200 is seen to be faster overall, and in the majority of individual tests, when compared to the PM 6100/66 when running PPC native code. When running emulated 68k code, the PM 6100/66 does better and achieves better scores overall and in the majority of benchmarks. Keep in mind that the 68k emulator does not emulate a 68k FPU, so this code will be emulated as if it was running on a 68k CPU.

It is not entirely applicable here, but it is interesting to note the very high scores achieved by both machines for Sine and Cosine functions. I believe this is because when the original PM 6100/60 was benchmarked by Norton for their baseline machine, the operating system (likely System 7.1.2) did not have optimisations which were later added for these functions.

These results seem to suggest that the floating point performance of the PowerPC 603 is strong compared to the PowerPC 601, which is a surprise given this is not shown in the manufacturer SpecFP92 scores in the Performance Considerations section above.

Boot Time

A basic test of the two machines booting Mac OS 7.6.1 resulted in the Performa 6200/75 taking 62 seconds to reach the desktop, while the Power Macintosh 6100/66 took 95 seconds. This includes 9 seconds (about 8.5 seconds from the chime) for the 64MB self test on the 6200 and 37 (31 seconds from the chime) seconds for the 264MB self test on the 6100.

This test isn’t very scientific and is less informative, but is included for completeness. There are a large number of variables that can influence boot time and they were not controlled in this test. The PM 6100/66 did not have a cache fitted during the test and while both operating system version numbers were the same, they were not identical installs. What this test does show is that the Performa is not unreasonably slow booting and in an arbitrary real world example, boots faster than a fairly representative PM 6100 setup.

If we discount the RAM test time, the times the two machines are 53 and 58 seconds for the Performa and the PM 6100 respectively.

Boot time will be influences by factors including installed RAM, compute speed, disk performance and what software is installed. Even how many files are on the desktop and how many Finder windows were left open. As an aside, the same test performed with a 266MHz G3 upgrade in the PM 6100 resulted in a total boot time of 87 seconds (50 seconds excluding the memory test). The G3 upgrades used in the “NuBus” PPC machines such as the PM 6100 do not take over until the processor upgrade’s extension loads, meaning the first portion of the boot process does not change.


Hardware Tweaks

Cache

I’m not aware of any larger caches available for the Performa 6200 and I don’t own any of the larger caches compatible with the PM 6100 so all tests have been undertaken using a 256k L2 cache for both machines, with the exception of a test without L2 cache undertaken on the PM 6100/66. Because the Performa’s L2 cache is on the ROM SIMM, it was not possible to remove the cache from the Performa, although given they all sold with a L2 cache fitted (unlike some PM 6100s), it wouldn’t be a reasonable test scenario anyway.

Comparison of the Power Macintosh 6100/66 With and Without L2 Cache

In the table above, the values have been normalised based on a score of 100 for the machines with no L2 cache fitted, independently for the PPC and emulated 68k benchmark pairs. This makes it easy to see the performance uplift from the 256k L2 cache.

It can be seen that the L2 cache has no impact on FPU performance. CPU performance when running native code increases by 7%, and by 15% for emulated 68k code. This disk performance uplift is each side of 13% which is good, but the biggest impact is an over 100% uplift in QuickDraw graphics performance.

Note that an AV card was fitted, although not in use, during the “No Cache” tests above. When an AV card is fitted it appears as an additional display regardless. I set it to the smallest resolution and black and white in an attempt to minimise the impact, but really, I would prefer to undertake some back to back tests.

Video Considerations

Impact of Changing Resolution

It should be noted that the higher resolution test performed on the PM 6100 was done with the computer booted into Mac OS 8.1, rather than 7.6.1 which was used for most tests undertaken for this analysis. Additionally, as this benchmark was undertaken for another purpose originally, I didn’t run the Disk benchmark, although comparison with other benchmarks suggest we would expect a very small reduction in disk performance, less than 1% and within the magnitude of random variation between tests.

The PM 6100 is more sensitive to resolution on built in video than the Performa 6200. Of note is the larger impact on CPU performance, although 4% isn’t in itself a large drop. It seems likely that the dedicated VRAM used by the Performa 6200 is a benefit here. The increased resolution has a more significant impact on the PM 6100/66’s graphics performance, showing a 14% reduction.

Experimentation suggests that the built-in PM 6100/66 video subsystem’s performance is actually faster than either the (“High Performance Video”) PDS card (scoring 110 for graphics, vs. 129 for built in), or the PDS AV card. The HPV cards have a 64bit bus to their video RAM, while the AV card uses a 040 style bridge chip and 32bit VRAM and so it is expected that the HPV cards would out perform the AV card. The AV card is effectively a re-implementation of the Quadra 840av video circuitry.

The AV card is technically a similar arrangement to the Performa 6200’s video system, given they are both 68040 bus connected through a bridge chip, and use dedicated VRAM. Despite this, the AV PDS card seems to demonstrates faster performance than the Peforma 6200’s graphics.

Due to what riser cards I have and the location of the connectors on the AV card, I wasn’t able to do a full comparison with the L2 cache fitted because I needed to have a G3 upgrade fitted as a riser. The G3 upgrade is not compatible with the L2 cache, even when the G3 is disabled. I was able to fit a HPV card alongside L2 by running the computer with the lid removed and the card stood vertically in the PDS slot. When I tried to do this with the AV card, the video output connector clashed with the rear case and I was unable to connect a monitor.


Software Mods

I’ve experimented with several Apple and 3rd party software packages to improve benchmark scores on the Performa 6200, both in PPC native benchmarks and in emulated 68k benchmarks.

No Extensions

Firstly, while doing my “no cache” tests, I tried booting with Extensions disable as an easy way to disable my G3 upgrade. I then re-ran the same tests having disabled the Sonnet Extension, and was surprised to find that I got different results. Apparently some of the functions that were disabled by me holding shift during startup speed up the Power Macintosh 6100, while others slow down parts of the machine. If you’re benchmarking or trying to run software as fast as possible, don’t assume disabling all Extensions is the best answer. Your exact results will depend on what software you have installed, as different installed packages consume different amounts of CPU resources in the background.

Impact of Booting with Shift Held Down

SpeedDoubler 8.1.2

SpeedDoubler from Connectix is the most critical bit of software, not just for your Performa 6200, but for any beige PowerPC Mac you plan to run 68k code on. Installing SpeedDoubler on my 6200 resulted in a 518% increase in emulated 68k CPU benchmark scores. That is not a typo. That is the difference between running 68k programs at the speed of a IIci with a 33MHz DayStar 68030 upgrade, vs. outperforming a Quadra 840av by 48%.

PowerFPU 1.3

PowerFPU is intended to both fool 68k software that requires an FPU into thinking there is one available like SoftFPU (which improves software compatibility, in particular with 3D graphics, audio and scientific software), but also map the routines to PowerPC FPU functions.

In my experiments, I found there was no significant speed gains (and in some instances, a small reduction in floating point performance), but this may be in part because I already had SpeedDoubler installed.

I would only install and use this software if I needed it for compatibility with 68k software that required a FPU.

MathLibMoto

This software library replaces Apple’s PowerPC floating point routines with equivalents from Motorola, potentially at a small sacrifice in consistency with normal Apple SANE results. I found that in Mac OS 8.6, this library made no significant difference to floating point performance, in Mac OS 7.6.1 the floating point performance was boosted to match performance under Mac OS 8.6. Additionally, I would extrapolate that if you were running even older versions of Mac OS, in particular 7.1.2 (which isn’t compatible with the Performa 6200), you would see big floating point performance speed improvements.

I recommend installing this if you are running Mac OS 8.1 or older.

Newer IDE Hard Disk Drivers

Using the hard disk driver from newer OS versions, such as the Mac OS 8.6 era, seems to improve hard disk speeds, although strangely, the best disk benchmark scores I got were while running emulated 68k benchmarks. The difference wasn’t significant so I wouldn’t be concerned about this and have just put it down to reduced context switching an 68k heavy drivers.

There may be faster, 3rd party IDE hard disk drivers available, such as those from FWB’s HDT. I have not done any testing to compare performance of alternatives. I generally prefer to keep Apple drivers when I can for compatibility.


Alternative Benchmarks

MacBench

MacBench is another benchmarking tool for classic Macs. MacBench appears to be designed to give scores more representative of real world use by using tests which run the type of operations performed in workloads such as publishing. This said, I still prefer to use System Info, because it gives a test by test breakdown of what each sub-element of the benchmark is actually doing, and how it scored (for example aligned and non-aligned memory operations), while MacBench seems to give a single overall score for each test. If I was just sharing overall scores, I would likely use MacBench, but for myself, wanting to see what a computer or CPU is good at, and what it is bad at, I prefer System Info (plus, as previously mentioned, it has cats).

I need to fetch the benchmark scores for MacBench from the Performa 6200’s hard disk.


Comparison with CPU Upgraded 68k Macs

In terms of CPU performance, the Performa 6200 is approximately (I used System Info 3.1.3 for this comparison as I had saved scores from my IIci) 25% faster than a IIci with a 66MHz DayStar Turbo 601, but is 14% slower than a Quadra 650 with a 66MHz PowerPC 601 processor upgrade (System Info 6.0.3). I’ve never fully understood why, but somehow the upgraded Quadra 650 almost matches the performance of a 6100/66 in terms of CPU benchmarks. Perhaps the benchmark is entirely contained within the upgrade card’s cache, or the performance of the interleaved 32bit RAM is close to the 6100’s 64bit RAM.

If anybody has a Performa 630 and a 66 or 100MHz PowerPC upgrade, I would be interested in seeing the results of a few specific benchmark configurations, please get in touch!

With regards to graphics performance, and specifically the raw ability of the Performa 6200 to push pixels, I decided to install the game MDK. MDK is extremely well optimised for Mac, and I have previously run it on my 66MHz PowerPC upgraded IIci. While the Performa 6200 is beneath the minimum recommended specification for the game (it recommends an 8100), it is broadly playable on a 66MHz 6100, so I have to admit what I found surprised me. As a baseline, the first two of the following images are of my IIci, running MDK on Mac OS 8.5.3. This setup is heavily bottlenecked by slow memory on a 25MHz system bus, slightly recovered by a 256k L2 cache (so the same as the Performa 6200). Performance of the upgraded IIci is significantly worse than a similar upgrade card in a Quadra 650. The second two images are of the Performa 6200. Note the frame counter (‘current(average)’) under the health HUD.

We can see that in the benchmark, the IIci was able to achieve “27”, while the Performa 6200 only achieved “22”, and frankly, this is pretty poor on the part of the Performa 6200. The video subsystem on the IIci is un-accelerated, uses main system RAM for the framebuffer and is on a 25MHz bus. This said, in the Performa’s defence, the calculated numbers don’t show the whole picture, and the user interface and load times were better / more responsive on the Performa 6200 – I suspect this is due to better CPU and hard disk performance.


Processor Upgrades

The only way, other than overclocking, of upgrading the processor on a Performa 6200 is by replacing the logic board with one from either a Performa 6300 (a straight swap, other than the 6360, which is effectively a 6400) to gain a 100 or 120MHz PowerPC 603e processor, or to fit a Performa 6400 / PM 6500 board, which requires modifications because these boards need 3.3v for PCI. Once you fitted a 6400 or 6500 board, you could fit a fairly rare Sonnet “L2” CPU upgrade into the cache slot to get PowerPC G3 performance.

By comparison, G3 processor upgrades for the Power Macintosh 6100 are fairly common in their 233 and 266MHz forms, and can be obtained for reasonable prices still, even in 2024.

A G3 upgrade gives a huge performance boost, with my PM 6100 scoring 5.6x faster in CPU benchmarks, as well as improvements in graphics (1.7x faster), disk (1.14x) and huge gains in FPU (5.21x). Additionally, measured RAM speed in my PM 6100/66 increased to 30MB/s with the G3 running, from 23.2MB/s as reported by Gague Pro previously.


Conclusions

The PowerPC 603 processor seems fine, with good CPU speed and excellent FPU performance.

RAM performance is poor compared to the PM 6100, as is expected considering the design of the computer, in particular the use of a 32bit RAM subsystem. This results in reduced overall performance compared to the PM 6100 resulting in a machine with approximately 80% of the compute power. If you use PPC native software, this is a fair performance improvement from any 68k Mac in non-graphic intensive tasks.

68k emulation is not as bad as implied by previous articles and anecdotal reports, and can additionally be vastly improved using SpeedDoubler. SpeedDoubler should be considered mandatory software for these and other PowerPC based Macintoshes running System 7.1.2 through to Mac OS 9.2.2.

IDE bus performance is appropriate for the era and hard disk performance is not significantly different to a similar age SCSI disk.

There is no significant benefit in running Mac OS 8.6, PowerFPU and MathLibMoto in terms of speed gains, although there are some benefits in specific situations. Personally I would chose 7.6.1 in most cases due to the faster boot times and smaller memory footprint.

Graphics performance on the Performa 6200 is abysmal. It is so poor, especially considering that the Performa 630 is slightly faster in many instances even though it uses the same chip, that this may be the consequence of a bug or flaw of some description. I would be interested in finding out more about why this is the case. The one area in which graphics performance is good appears to be drawing an image directly to the screen, but on the flip side, it is then particularly bad at translating an image already on the screen.


Where to get the Software


Further Work

  • Complete system prices for the release period.
  • Measure Quadra 650 RAM performance at 66MHz with a PPC upgrade.
  • Investigate IIvx performance compared to a IIci, with and without upgrades.
  • Get benchmarks for a PPC upgraded Performa 630.
  • Definitively work out Performa 6200 cache speed and timings.
  • PowerPC Performance from 7.1.2 to 9.1.
  • Investigate whether the Performa 6200 performs a memory test.
  • Is the Performa 630 really faster than the 6200 in hard disk and video tests?
  • Does L2 cache chip speed rating influence benchmark scores? I.e, what happens if you benchmark a 6100 with a 22ns cache, and then again with a 14ns cache?
  • Overclock the Performa 6200 to see how fast it can go.
  • Compare the VRAM on a 6200 and 630 to see if they are the same speed.
  • Get results for 6100/66 + AV Card + 256k Cache.

Thank you to archive.org for saving a copy of this page after WordPress randomly deleted all of the bullet lists and galleries at some point this year. Sorry I didn’t notice sooner.

Looking for Performa / LC / Quadra 630 Technical Information

Looking for Performa / LC / Quadra 630 Technical Information

One of the Macs I’m most nostalgic about is the Performa 630 (and it’s many badge engineered siblings). It is a strange derivative of the LC 475, with many similarities, but with a large number of unusual and very specific expansion slots. As well as the LC 475’s LC PDS slot (the 32 bit version), it also adds… An AV slot, a UHF and FM module, a hardware MPEG decoder, a DOS card, a GIMO port and an IR port. It also has SCSI and IDE which can be useful, and a video chip that supports hardware scaling.

Some 630s were fitted with a very similar board also used in the Performa 580. The design is pretty similar, but helpfully provides a second RAM slot.

Technical Info Wanted

I like doing hardware and software projects with old macs but sadly, haven’t been able to find anything much beyond the Developer Note for the Performa 630.

In order of priority, if you happen to have…

  • An ERS for the F108 Memory Controller chip used in the 630 and similar machines…
  • An ERS for the Valkyrie video chip used in the 630…
  • A schematic for the 630 logic board…
  • Anything else similar, the general machine ERS, or technical documentation for other critical chips…

… I would be super interested in hearing. Please let me know. There is a contact form under “About” at the top of this page.

Making a Wombat Fast

Making a Wombat Fast

Or, how to bump your Centris 650, Quadra 650 or Quadra 800 to 40 MHz with minimal effort.

A 40 MHz Quadra 650 (“Current System”)

Traditionally, the way we have overclocked the Wombat family of Macs (the 650s and the 800) is to desolder the CPU clock “G3” and replace it with a faster part, or alternatively, use a commercial product that “clips” onto the clock, disables it, and injects its own clock signal. Through a mixture of experimentation and, let’s be honest, the sudden availability of the schematics, I made the most awesome discovery, I’ve found that 40 MHz is easy without messing with the clock. This is great news, because…

  • The clock is a surface mount part, meaning if you want to swap between speeds, you need to make a socket / adapter.
  • The clock is right up hard against a NuBus slot meaning you have to be very careful when desoldering and soldering in the area.

It actually turns out that the logic board in these machines has a built in function that lets you select the clock source, either from G3, or a clock derived from the NuBus clock. Selecting the NuBus clock as a source just straight up runs your computer’s bus at 40MHz without having to do any particularly fiddly mods.

There are a number of “levels” of effort you can put in, each with different advantages and disadvantages. You can either just hard set your computer to 40MHz and overclock in terms of the timings (because the ROM still runs with 25 or 33MHz timings), change the timings to the correct ones for 40MHz by swapping resistors, or by adding an extra resistor and two jumper headings, make it that by just removing or fitting two jumpers, you can select (independently) the RAM/ROM/VRAM timings and the CPU clock speed (between either 20 and 25 MHz, or between 33 and 40 MHz).

Basic 40 MHz Overclock

This is the simplest overclock with the minimal effort.

Advantages – This is effectively an overclock, so you’ll get super fast video performance as well as fast RAM and ROM.

Disadvantages – This uses whatever timings you already have, so almost certainly be unstable if you have a machine that shipped as 25 MHz, and possibly unstable if you have a 33 MHz machine.

How to do the Basic 40 MHz Overclock…

  1. Remove the logic board from your computer and place it on a heat-proof and static safe surface suitable for soldering.
  2. Find the pair of pads next to the CPU called “J29” on the silkscreen.
  3. Bridge the two pads, either with a blob of solder, or a little length of wire soldered between them. Alternatively, fit a two pin male header (2.54mm pitch) for a jumper.
  4. Reassemble your computer and test to see that everything works.
J29 on the Schematic

The modification works because U71 is wired to select between two clock sources depending on if J29 is fitted or not. As shipped, J29 is always open, ClkSel is always “high” and so the clock signal (half the bus speed) is always taken from G3. If you short J29, ClkSel goes low and the chip switches to using C20M – a 20MHz clock used by things like the SCSI and EtherNet chip, sourced from the NuBus circuit. Whichever clock is selected is doubled by the MC88916 chip before being fed into the CPU. Don’t worry that R235 isn’t fitted – it isn’t needed.

The Location of J29

I recommend leaving a CPU in the socket while soldering to protect the socket from slips. In the photo above I’ve used solder wick / braid and flux to remove the solder that was in the through holes. You only need to do this if you want to fit a jumper (so you can select between the stock speed and 40 MHz by removing and fitting a jumper. The following shows my setup.

J29 with a Header and Jumper Fitted

If you don’t already have a CPU heatsink, consider fitting one.

Adding 40 MHz Timings

This is a more stable solution that requires a little more soldering. This mod is required if your computer originally shipped as a 25 MHz machine.

Advantages – This reduces the overclock on systems such as RAM, ROM and VRAM, likely making the system more stable at 40 MHz. Doing this change will make a 25 MHz machine work at 40 MHz.

Disadvantages – Benchmarks will score a bit lower than using 33 MHz timings at 40 MHz (in line with a real 40MHz machine if Apple had ever released one). The machine ID (gestalt) will change to an unreleased Mac – 7.6.1 will boot OK (but might not install without tricking the installer), but 7.1 won’t boot unless you can find a hacked System Enabler. (Update – I believe I’ve managed to make the required changes and have the magic System Enabler working now. Drop me a message and I’ll send you a copy).

How to select 40MHz timings…

  1. Remove the logic board from the case and place it somewhere suitable to do some soldering.
  2. If there is a resistor fitted to R152, remove it.
  3. If there is a resistor fitted to R151, remove it.
  4. Save any resistors in case you want to put them back.
  5. Reassemble your computer and test to see that everything works.
Setting 40 MHz Timings

The way I remove 0805 surface mount resistors is by putting a little flux on them, and then placing the iron on one end for about 3 seconds, before quickly moving the iron to the other pad and pushing the resistor off. Sometimes it takes a couple of tries, but it is easier than faffing with other methods and I usually already have my iron set up. It is especially helpful if there is plastic parts nearby on the board that hot air might damage.

The Ideal Setup

This last modification is closest (see the “Other Tweaks” section) to how I have my system configured as it gives the best flexibility. It lets you have jumpers to select CPU speed and timings. Removing both jumpers gives you the stock CPU speed (whatever it is on your machine), with (always) 33 MHz timings, while fitting both jumpers gives you 40 MHz and 40 MHz timings. You can also mix and match.

Advantages – Flexibility – you can change the CPU clock between stock (hopefully 33 MHz) and 40 MHz, and also the timings between 33 MHz and 40 MHz settings. All without even removing the logic board from the case (once the modification has been done).

Disadvantages – If you have a machine fitted with the original 12.5MHz clock for 25MHz, it will be slower than as shipped when you pick 25MHz by jumpers, because you will only be able to select timings designed for higher clocks.

If you have a 25MHz machine, I recommend just doing the first two mods above and basically hard wiring it to 40MHz. Make sure you have a heatsink fitted and consider finding a 33MHz grade CPU.

Dual Jumpers

To fit dual jumpers…

  1. Remove the logic board to somewhere you can do soldering.
  2. Make sure no resistor is fitted at location R151.
  3. Fit a 1.2k 0805 resistor (usually labelled 122) at location R152.
  4. Fit a 330 ohm 0805 resistor (usually labelled 331) at location R233.
  5. Fit a header at location J28.
  6. Fit a header at location J29 if you didn’t previously.
  7. Reassemble your computer and test to see that everything works.
J28 in Situ – This Selects 40MHz Timings when Fitted
R151, R152 (I didn’t have a 1.2k Resistor so used a 1.5k) and R233

At this point, as described above and if you started with a 33MHz board, you will be able to select 33 MHz with 33 MHz timings by removing both jumpers (I store them by placing them so they are on only one pin of the header), or 40 MHz with 40 MHz timings by fitting both jumpers. If you fit J29 and not J28, you will get a 40 MHz bus / CPU speed, with 33 MHz timings. This is an overclock with regards to the timings, so you will have boosted video, RAM and ROM performance. Most noticeable in the video benchmarks like the following :

Video Benchmark Score at 40 MHz with 33 MHz Timings

Note that while 40 MHz timings are selected, you will have the machine ID (gestalt) of an unreleased Mac, and System 7.1 won’t boot as mentioned above. If you want to boot in 7.1, just remove jumper J28.

Other Tweaks

  • Fit a 40 MHz Grade CPU and a heatsink.
  • Fit a socket for trying other clock speeds.
  • Fit a 25MHz clock to aim for 50 MHz.
  • Spoof a Quadra 800 power LED by shorting the appropriate two pins on the LED connector location. This makes your computer think it is a Quadra 800, which shipped with faster RAM, so I believe the ROM sets up slightly faster RAM timings.
  • Install the Wish I Were control panel to override the machine ID gestalt and reduce (but not completely) the number of issues from running a machine with an unreleased ID.
  • Replace the MC88916DW55 with an MC88916DW80 as this makes 50 MHz more likely in combination with a faster clock at G3. Fitting J29 still selects 40MHz, but removing it selects the faster clock at G3. Remember G3 is half the bus speed.
  • Remove onboard RAM and fit a single stick of very fast RAM (50ns EDO).
  • Fit a PowerPC Upgrade Card. Some will run at 80 MHz using the modifications described on this page.

I have personally done all the mods listed above to my machine, although I can’t promise they’ll all work for you, or are worthwhile.

Further Research

I worked out how to modify the System Enabler so that 40MHz works with System 7.1! Drop me a message if you want a copy. I might have previously posted it on Tinker Different – I forget.

Additionally, if your board shipped from factory with J28 and or J29 fitted, and especially R233 fitted, I’d be interested to hear from you. It’s likely that such a board would be a prototype and it would be great to check some component values.

This page is making a record of information I originally posted on 68kmla.

How Much Memory Does My Vintage Mac Really Accept?

How Much Memory Does My Vintage Mac Really Accept?

In the early days of Macs, Apple stated the theoretical maximum memory a Mac could use. But with the Macintosh II, a mixture of issues meant that in reality, you really struggled to reach the theoretical 128MB. There were ROM bugs, you needed a Memory Management Unit upgrade, there was no 32bit addressing and the standards for RAM changed meaning the Mac II and IIx accidentally trigger a test mode in normal 4MB SIMMs and crash.

They got sued.

As a result, there after, Apple generally only quoted the maximum RAM a computer had been tested with during development, which was usually, but not always less than the actual maximum.

Note that maxing out the RAM on a Mac will make the built in RAM test take as long as 2 minutes in some cases. During the test the computer will sit with a black, empty screen. On later OSes, possibly from about Mac OS 8.5 onwards, it is possible to disable the Memory test with a hidden option in the Memory control panel. If I remember correctly, it appears when you open the control panel with the Command and Option keys held down.

For Apple’s official recommended maximum RAM for each machine, please see the Service Source document “Apple Memory Guide” from 1998. Where I haven’t included a machine on this page, either Apple’s maximum actually applied, or I’m unfamiliar with the model. Apples maximums apply to machines including the… Plus, SE, Classic, Classic II, Colour Classic, LC, LC II, LC III, IIvx, IIvi, IIci, IIfx, Quadra 660av, Quadra 840av, Quadra 900, Quadra 950, Performa 6200, Performa 6300, Performa 6400, Performa 6500, as well as other machines that are very similar (such as the 5*** series equivalents to 6*** machines, and Performa equivalents to LCs).

I’m not very familiar with PowerBooks, so have mostly excluded them.

Actual Capacities and Observations

The following does not consider hacks or modifications to ROM or hardware, but only what can be easily done by any user.

Macintosh II / IIx

128MB, but you’ll need IIx ROMs and a MMU in the Mac II, plus both need PAL SIMMs and either a 32bit clean ROM, or MODE32.

See Apple Memory Guide for how to correctly fill the two banks of RAM.

Macintosh IIcx & SE/30

128MB, but your’ll need a 32bit clean ROM or MODE32.

See Apple Memory Guide for how to correctly fill the two banks of RAM.

Macintosh IIsi

The IIsi will take four 16MB SIMMs plus the 1MB soldered, for a total of 65MB. Set your hard disk cache to 1MB for improved CPU performance due to a quirk of the video circuit design.

Performa / LC / Quadra 630 & LC / Performa 580

There are two logic board variants. A one RAM slot machine will take up to 128MB plus the onboard 4MB for a total of 132MB. A two slot machine will take up to 196MB. Note the second slot only works with 4, 16, or 64MB SIMMs.

The LC / Performa 580 uses the same board as the two slot 630.

LC / Performa 475, LC / Performa 575 / 577 & Quadra 605

These machines will accept a 128MB SIMM, for a total of 132MB including 4MB onboard.

Centris / Quadra 610

A quirk of the ROM in these machines means that even though the hardware is capable of seeing banks of up to 64MB, the ROM only checks for 32MB banks at most. There are up to two banks per SIMM, but not all SIMMs have two banks. Weirdly, this means that the most RAM you can fit is 128MB + onboard RAM (4MB) for 132MB total, but because 64MB SIMMs are usually single bank, you need to fit two 128MB SIMMs. The computer recognises each 128MB as two 32MB banks instead of two 64MB banks, but otherwise works fine.

Quadra 700

The Quadra 700 accepts up to four 16MB SIMMs plus 4MB of soldered RAM, for a total of 68MB.

Upgrade with a matched set of four.

Quadra / Centris 650 and Quadra 800

A quirk of the ROM in these machines means that even though the hardware is capable of seeing banks of up to 64MB, the ROM only checks for 32MB banks at most. There are up to two banks per SIMM, but not all SIMMs have two banks. Weirdly, this means that the most RAM you can fit is 256MB + onboard RAM (4 or 8MB) for a total of 260 or 264MB, but because 64MB SIMMs are usually single bank, you need to fit four 128MB SIMMs. The computer recognises each 128MB as two 32MB banks instead of two 64MB banks, but otherwise works fine.

Upgrade in matched pairs for improved performance due to memory interleaving.

Power Macintosh 4400

You can fit two 64MB SIMMs and one 32MB DIMMs for a maximum of 160MB. Thanks to D Cook for confirming this for me!

Warning : This machine requires 3.3V 168 pin DIMMs. Very unusual for this era of Macs.

Power Macintosh 6100

The Power Macintosh 6100 can actually recognise two 128MB SIMMs, plus 8MB onboard for a total of 264MB of RAM.

Upgrade with matched pairs.

Power Macintosh 7200 / 8200

Technically, the 7200 could recognise 768MB if you could find some 5V, FPM, 256MB SIMMs, short enough to fit in the chassis. I’ve never seen any. That means you’re likely looking at 384MB, which will be expensive as 168 pin 128MB 5V FPM DIMMs are not cheap.

Power Macintosh 7500, 7600, 7300, 8500 and 8600

Technically, if you could find 256MB 5V FPM or EDO DIMMs that fit the chassis, the maximum would be 1.5GB of RAM (limited by the OS). I’ve never seen any that aren’t too tall. That means you’re likely looking at 1GB, which will be expensive as 168 pin 128MB 5V FPM or EDO DIMMs are not cheap.

Can be upgraded individually, but works better with matched pairs.

Power Macintosh 9500 & 9600

With 12 slots, these will take up to 1.5GB using 128MB 168 pin, 5V FPM or EDO DIMMs.

Can be upgraded individually, but works better with matched pairs.

Power Macintosh G3 (Beige)

These machines will accept three 256MB PC66, PC100 or PC133 DIMMs for a total of 768MB. The DIMMs need to be physically short to fit in the desktop case, and additionally, “high density” DIMMs do not work. Practically, this means you need physically short DIMMs with 16 chips (eight on each side).

PowerBook G3 Pismo

Some (but not all) 512MB PC100 and PC133 SODIMMs work in the Pismo, for a maximum of 1GB of RAM.

Mac OS 8.6 for Unsupported Systems

Mac OS 8.6 for Unsupported Systems

Apple released the early G4s, Yikes and Sawtooth, with special, updated versions of Mac OS 8.6. I’m not sure if people are aware, but @LightBulbFun did some excellent work here to produce a modified version of the Mac OS ROM file, that goes in the System Folder, to enable this special version of 8.6 to be booted on unsupported machines including the Pismo, Gigabit Ethernet G4, some DA G4s, perhaps some extra iMacs that are not usually supported, some iBooks, probably the Cube and perhaps some early PowerBook G4s? The requirements are that the machine needs to have an old enough processor and be similar to an officially supported machine. Machines with the G4 7450 processor and newer are not immediately supported without some further fiddling in OpenFirmware.

Issue 1 – 20240221

Note – a bug in issue 1 prevented the Restore functionality from working.

I decided to take this modified ROM file and wrap it up in a modified version of the Mac OS 8.6 installer CD. I’m not going to lie, while most of it was easy, getting the Installer application on the CD to actually install the modified file was way more tricky than I expected. Yes I tried replacing the file in the two tomes it appeared in. That lost me about 5 hours of my day. Yes I tried editing the install scripts, it wasn’t possible to convert them between their compiled state and editible state easily, given my poor knowledge of the Apple Installer SDK. Right. Anyway.

Make sure your computer is running the most up to date firmware. I forgot to and it caused me issues on my GigE G4.

Features of my CD image :

  • This CD should boot most supported unsupported machines, by holding the ‘C’ key.
  • The firmware updates you might need are included on the CD.
  • An Apple made Machine ID spoofer Control Panel is included in utilities in case you need it.
  • The installer works and provides a system with the modified Mac OS ROM file.
  • The restore application works and restores an image including the modified Mac OS ROM file.

Unintentional features :

  • For some reason, sometimes Pismos (perhaps other similar machines) power off when they start loading the desktop from a CD. Installed systems work just fine, but you might need to boot from another disc while you install.

Things I did :

  • I modified the restore image to add the Mac OS ROM file.
  • I modified the CD System Folder to add the Mac OS ROM file.
  • I added the Machine ID control panel in Utilities (but not the System Folder, I probably should have).
  • I removed the machine specific white-list from the installer program so it will launch on absolutely any machine, regardless of whether it is appropriate or not.
  • I made a new installer script, and tagged it on the end of the 8.6 update in the Installer, so that it silently swaps in the modified Mac OS ROM file without bothering the user.
  • I added a load of firmware updaters in a folder.
  • I added some ReadMes for clarity.
  • I messed up the order of the icons on the CD by accidentally clicking “Clean Up” when I didn’t mean to.

I have tested on a Pismo and on a GigaE G4, but would appreciate feedback on what other machines this disc works with. This disc isn’t a magic bullet – this will not work on a G5, or a Plus, see the thread linked above for OpenFirmware hacks to get 8.6 running on a QuickSilver or MDD, but that won’t work right out the box, so really only play with this if you have a Pismo, early TiBook, G3 iBook, Graphite G4, G3 iMac or Cube.

Issue 2 – 20240222

Following on from the above, I decided to make a few small changes. In addition to the above, I…

  • Added an updated (from Mac OS 9.2.2) version of the ATI drivers to the Installer and Restore Image.
  • Ensured that a newer version of the FireWire and Iomega Zip extensions (again from Mac OS 9.2.2) are installed if the selected option includes them.
  • Ensured that the updated extensions which the original installer only installs for the “PowerPC G4” are always installed, for example on a Pismo.
  • Deleted the Power Mac G4 ReadMe from the Restore Image.
  • Added a date to the top level of the CD, to assist with comparing versions.
  • Fixed the restore image by running the “Scan Image for ASR” script on it.

https://elephantandchicken.co.uk/downloads/CDImages/Mac_OS_8.6_Unsupported_G3_G4-iss2.zip

My hosting service isn’t great sorry. People in the Americas might find the connection drops. All I can say is sorry, but if you keep trying it eventually should complete. The download is approximately 425MB compressed.

Consider the software to be experimental. It might not work, but if it does, that is excellent news.

Notes on Compatibility

LightBulbFun and others have noted some compatibility issues.

  • To boot from the CD, the Macintosh must have a G3, 7400 or 7410 processor. Some newer G4 based systems can be booted, but require the cpu-pvr property is overwritten to spoof a 7400 processor. See details below.
  • Best results are generally achieved with an ATI card with a full ROM including an NDVR for classic Mac OS. This potentially excludes Snow iBooks and iMacs from compatibility.
  • When spoofing cpu-pvr, this CD still will not work with FW800 G4 MDDs.
  • On some machines, only the ATA66 bus will be recognised.
  • Ensure your Macintosh’s firmware is up to date.
  • Sometimes on the Pismo it is not possible to fully boot from the CD and the computer powers down when it tries to load the desktop.

Running Mac OS 8.6 on Unsupported Processors

To boot a late model Digital Audio, QuickSilver, or FW400 MDD G4, power on your computer while holding Cmd+Opt+P+R on the keyboard. When you see a black on white command prompt, enter the following commands :

dev /cpus/PowerPC,G4
.properties
000c0207 encode-int " cpu-version" property
mac-boot

If you are intending to boot from the CD, substitute “boot cd:,\\:tbxi” instead of “mac-boot”.

Compatibility Matrix

The Unsupported Mac OS 8.6 disc image has been tested on the following machines, with results as shown.

Macintosh ModelCD Image VersionInstaller CompatibilityRestore CompatibilityComments
Power Macintosh G4 “Gigabit Ethernet” 500MPIssue 2YesYes
PowerBook G3 “Pismo” 400MHzIssue 2YesYesUnexpected shutdown when booting from CD once
iBook G4 800MHzIssue 2NoNoCan’t boot, even with patches to model, compatible and cpu-pvr

Benchmarking Retro Macs : Norton System Info

Benchmarking Retro Macs : Norton System Info

There are a number of classic Mac OS benchmarking tools available. Different ones have various benefits and personal preference is a major factor in choice. I’ve always used Norton’s System Info, which is provided as part of the Norton Utilities suite for Macintosh. I believe that it was first included with version 3 of Norton Utilities, but I need to verify that. As a kid, this was simply the only benchmark we owned, I like that it makes it clear what it is doing to benchmark (tests are named for the low level function that is being tested, often Macintosh Toolbox routines), and it uses a photo of two cats for the graphics tests that is clearly just a photo of a programmer’s pets. Its not even a very good photo, but this little human touch cheers me up every time I see it, and that’s worth a lot.

Lots of Norton Cats
Lots of Norton Cats

System Info requires System 7 to run, and so an alternative benchmarking tool such as Snooper would be needed if you are running System 6. The newest versions of Norton Utilities claim to need Mac OS 8.* but it isn’t actually true.

Over time, there were few obvious changes within the System Info application. Included benchmarks and System used as the baseline (100 in tests) varied through time. I… think it started as the SE, but haven’t seen this version lately… but more common versions were the Quadra 700, and later the Power Macintosh 6100/60. The following shows System Info’s default window on launch. Later versions show a splash screen while launching, earlier versions did not.

Norton System Info Default Window
Norton System Info Default Window

Features include

  • Native 68k and PPC support.
  • An extensive collection of included benchmark results files for both stock and some accelerated Macintosh computers.
  • Top level CPU, 2D (Quickdraw) graphics, disk and FPU scores.
  • Ability to select PPC or emulated 68020 performance on a PowerPC, and physical or software FPU where available.
  • Ability to select which video card and which disk.
  • Advanced mode which shows more detail during tests, and gives more detail in results. Graphical and tabulated results available, with the ability to show tabulated results in relative or absolute terms.
  • Results can be easily shared as saved individual files for each test run.
  • A detailed description of the computer and settings automatically saved with the results file.
  • Warns about some system settings which may impact performance, such as AppleTalk, Virtual Memory, video bit depth and Disk Cache.
  • A tiny application.
  • Ability to export tab separated values (TSV).

Disadvantages

  • New users don’t notice the need to enable advanced features and assume the tool is more simplistic than it is.
  • As is often the case, the performance benefits of a relatively small cache are possibly exaggerated as the tests seem to be repetitive and fit within the cache (difficult because caches give significant real world advantages, but not in all instances).
  • Tests are very much function based and not representative of real world activities.
  • Graphics tests are only QuickDraw 2D, and don’t include any QuickTime, RAVE, QuickDraw 3D, Glide or OpenGL tests.
  • Not scriptable?
  • The CPU speed shown in the main window in MHz isn’t always correct, especially if the accelerator is only enabled during boot, or is able to change speed.

Tips and Tricks

  • Even if the version of Norton you’re using is too new for the computer you are using, if you go into the “Norton Tools” folder and run “System Info” from there, it will launch in most circumstances, as long as you have System 7 or newer.
  • To enable advanced options within the software, select “Show More Choices” from the “Benchmarks” menu. This provides a number of additional drop down menus for fine tuning and seeing results in a greater level of detail throughout the application, as well as some additional menu items.
Show More Choices
Selecting Show More Choices
System Info Default Window More Choices
System Info Default Window More Choices Shown for Volume and FPU, With the Latter Selected
  • Note that generally, the higher the video bit depth you run, the slower graphics performance will be, except where acceleration is only provided at higher bit depths. It was fairly common for video cards to not provide acceleration at bit depths below 8bit, and a small number of cards only provided 24bit acceleration.
  • Screen resolution doesn’t appear to have a significant impact on video scores for many machines, although running at 640×480 is probably best to ensure consistency with built in benchmarks. This said, Computers that use main memory as VRAM like the IIci, IIsi and 6100 can see significant CPU performance changes depending on video settings.
  • When in the “System Ratings” window, selecting a system from the list and clicking the “Get Info” button (see image “All Results Windows” below) will show a description of the system the benchmark was performed on. Details are given of both hardware, software and some system settings.
  • Additional results supplied, but not shown by default, can be added to the various results windows using the “Add Systems To List” menu item from the “Edit” menu.
Add Systems To List
Add Systems To List

Running a Test

Use the “Selected Suites” checkboxes to enable and disable each of the CPU, video, disk and FPU test suites and if in advanced mode, select between the real and emulated CPU, video card, disk (in reality, the list given is mounted partitions) and FPU or software. Not all of these options will be available at all times, depending on the computer under test.

Link to video showing System Info benchmarks (at 3:22)

Once the options are as desired, click the “Run” button. Note that at this point Norton will inform you of any System settings it has detected which will impact the scores and which it thinks you should change. Unless you’re doing specific testing, such as comparing 24bit mode between video cards, it is generally advisable to follow this guidance. A restart may be required for some changes (for example, disk cache, and AppleTalk on some System versions).

After this the tests will start. Depending on the performance of your computer, they may take quite a few minutes to run, especially the disk tests. In the advanced mode, you will be given greater detail of what test is currently being undertaken and what each test scores. This can help with the boredom of waiting for the tests to complete.

Once the benchmarks have completed, System Info automatically opens the System Ratings window, and lists the tests just undertaken as “Current System”. It is probably a good idea to save the results at this point if you plan to keep them for comparison.

Reviewing Results

All Windows
All Result Windows

Note – the screenshot above incorrectly shows zeros for all results. This is an oddity of running the software within some emulators. Something I did for convenience when getting screenshots. On real hardware you will see actual scores for your and other computers.

Viewing Overall Rating / Test Category / Individual Tests

At the top left of the “System Ratings” window, there is a pop-up menu labelled “Show”. This allows you to select each of the four test categories, CPU, Video, Disk or FPU, as well as the default overall summary “System Rating”. The numbers to the right of each system name represent a score, relative to the baseline system (e.g. scaled where a Quadra 700 equals 100, or a 6100/60 equals 100 etc. dependant on the version of System Info you are using. The baseline system is identified in the list by the text “(reference system)” following its name). The bars to the right of these numbers (ordinarily) vary in length and graphically represent the score for each system.

If all tests were not run, the Current System will show as a dash “-” for the tests which were not completed, as well as for the overall “System Rating”.

If advanced mode (i.e. with “show more choices” enabled), an additional drop down menu is available by clicking the downwards pointing triangle to the left of the “System Rating” column heading. This menu allows you to select individual tests for the category currently selected, for example, if you have selected “Disk”, then you will be able to choose to display specifically the random write, or perhaps 1K read test.

It is worth studying the results at this level, especially with respects to video accelerator performance, because it can be interesting to see how different cards perform in different areas. A card that scores well overall might be weak when it comes to rendering text compared to another card that scores lower overall. In this case, if your primary use case is… rendering text – the supposedly “slower” card might be the best card for you as it performs better in your application that mainly renders text.

To assist in comparing results on a test by test basis, clicking the “Show Details” button presents tabulated results. Within this window, a drop down menu enables you to select between “Absolute” and “Relative” results. I find that generally, “Relative” is more usable with the exception of disk scores, as the “Absolute” scores for the disk results are given in KB/s, which is meaningful.

If you manually select a subset of results in the “System Ratings” window before clicking “Show Details” only details for those, plus the baseline system, will be shown.

Tabulated Results
Tabulated Results

Exporting Results

While in the Detailed Ratings view, pressing Command-C will copy a summary of all results to the clipboard. This text can then be pasted into another application, such as for example, in the following screenshot, a text document. To remove unwanted entries either select a subset of results in the “System Ratings” window before clicking the “Detailed Ratings” button, or alternatively quit System Info and move unwanted benchmark files in the “Benchmark results” folder into the “Hidden Results” folder. Any results in the hidden folder wont show in the results lists / export. Moving them back afterwards will make them re-appear next time you relaunch the program.

Results Copied from the Detailed Ratings View, and Pasted into the Text Editor BBEdit

Note that the exported text includes all result types (CPU, Video, Disk and FPU), not just the results that were currently being viewed. The data is Tab Separated Values (TSV) and should be fairly trivial to paste into a Spreadsheet such as Excel or ClarisWorks.

Moving data to a modern computer can be easily achieved with BBEdit. I recommend BBEdit, because it will run on 68k Macs, and is aware of the three common line ending types. By pasting in the data, selecting save, and then clicking the “Options…” button, you will get the following dialogue box, where you can select your preferred line ending type. I’m picking “Unix”, which is best for Linux and modern versions of Mac OS, but if you are on Windows, you will likely want to pick “DOS”.

Saving for Other Platforms

Name the file, including a “.txt” or “.tsv” file extension and save. Once you have moved the file to your modern computer, you should be able to trivially import the data. You may have minor issues if there are unusual characters, due to the classic Mac OS Roman text encoding. The following shows my example exported collection being opened in LibreOffice Calc.

Importing Norton System Info Results into LibreOffice

Note – You should probably uncheck “Comma” and “Semicolon” if you have used these characters in your system descriptions, or if you are using continental European number formats.

The following screenshot shows the text file imported with no further manipulation, other than creating a chart based on the “Current System” and “Overall” columns of the first table of data.

Working with Norton System Info Data in LibreOffice Calc

Description of the Individual Benchmark Tests

The following is an extract from the Norton Utilities 3.2 manual.

Manual Extract for Norton System Info Benchmarks

Variations in test results of up to 1 percent are normal. For disk tests, variations of up to 7 percent are normal due to disk drive operation.

CPU Benchmarks

Some CPU tests actually test more than the CPU itself. For example, some tests access memory (RAM), which tests not only the CPU, but the system bus, memory speed, and caching (if any). These factors can influence test results substantially. For the purposes of benchmarking, these factors are all considered to be part of the CPU.

BlockMove Aligned and BlockMove Misaligned: Measures the rate at which the Macintosh can move memory using the ROM trap BlockMove. On all Macintosh computers, BlockMove is highly optimized and thus is a good measure of memory bandwidth (how much data can be moved per unit time). An aligned and misaligned case are used because on some Macintosh computers performance is much poorer when data is not aligned properly. Newer models, such as the Power Macintosh computers, have excellent performance in both cases.

Memory Read and Write: This is also a memory bandwidth test, but the benchmark accesses memory in the way a program normally would and does not make use of any special machine instructions.

Function Call: Measures the overhead associated with making a series of function calls with arguments. Most application programs make large numbers of function calls.

Bit Shifts: Measures how fast bits can be shifted in a machine word. This type of instruction is used frequently by a wide variety of software.

Multiply and Divide: Measures speed of integer multiplication and division. The tests are slanted more towards multiplication. Application programs frequently use this type of instruction to access arrays.

Branches: Measures how fast code containing conditional branches can run. Branches are on of the most common types of instructions used and can substantially affect performance on some CPUs. Power Macintosh computers have a special processing unit dedicated to processing branch instructions.

Instruction Overlap: Measures the ability of the CPU to execute integer (not floating point) instructions at the same time it accesses memory. The benchmark is written in such a way that memory access should be able to execute at the same time all intervening computations are performed.

Sort: A high-level benchmark that sorts a large array using a quick-sort and insertion-sort hybrid algorithm that makes heavy demands on memory and looping constructs.

Tree: A high-level benchmark that builds a large, sorted binary tree by repeated insertion. Good caching and/or memory bandwidth can speed up this test considerably.

Search: A high-level benchmark that performs a sophisticated string-searching algorithm that makes extremely heavy demands on memory in a partially-sequential way. This test is designed to access memory in a way that most machines cannot cache effectively without a substantial amount of cache memory.

Video Benchmarks

The Video benchmarks test the speed at which common Quickdraw operations can be performed. The benchmarks are designed to measure frequently used operations – not esoteric transfer modes or rarely utilized Quickdraw routines. For example, scrolling operations are emphasized in the overall video rating because they are heavily used by all users. Note that as the video bit depth is reduced, video performance generally increases. If you compare video performance on two different systems, make sure to test at the same video bit depth.

Rectangles, Round Rectangles, and Ovals: These tests cycle through painting, erasing, filling, framing, and inverting the respective shapes with different fill patterns and colors, where appropriate.

Lines: Draws lines of varying slopes and colors. The video circuitry of some Macintosh computers is highly optimized for drawing lines.

Picture: Draws a bitmapped picture at the same bit depth of the screen. It tests the ability of Quickdraw to decode a PICT format picture and place its bits on the screen.

CopyBits: Measures how fast bits can be moved around on the screen using the CopyBits ROM routine, which is heavily used in screen drawing. The small cases are 32 by 32 (the size of a large icon). The small cases are significantly impacted by the overhead of calling Quickdraw and its setup. The large cases minimize this overhead and, thus, more accurately test the actual speed at which bits can be moved. Aligned (to a 32 pixel boundary) and misaligned cases test optimal and non-optimal situations.

DrawText: Measures how fast a sentence can be drawn on the screen. Primary emphasis is placed on drawing plain text, although bold and italic text are tested as well.

Scrolling: Measures how fast bits can be scrolled on the screen. Emphasis is placed on vertical scrolling, but some horizontal scrolling is also performed. Results of this test vary widely depending on the bit depth of the screen.

Disk Benchmarks

By design, the disk tests do not isolate disk speed alone. The benchmarks include factors applications normally experience, such as CPU speed, SCSI bus speed, impact of the disk cache, and fragmentation.

Random Read and Random Write: These benchmarks read or write data into a file in three 1MB bands. The data size read and written varies from 4 bytes to 4 kilobytes. These tests reflect seek time, the effects of the disk cache, and how fast a drive can process numerous small requests to read or write data. They are a good indicator of overall disk performance.

Sequential Read and Sequential Write (1K, 4K, 16K, 64K, and 256K): Measure how fast the drive can read/write data when requested in a specific size chunk. Some drives can transfer data efficiently only in large chunks, others are efficient with many small chunks, but slow down with large chunks. These sequential tests intentionally bypass the built-in disk cache (to eliminate cache overhead) and provide a better indicator of performance of the disk itself. Smart, disk-intensive applications such as Norton DiskDoubler Pro bypass the disk cache, when appropriate, to provide maximum performance. Few current applications employ this technique, however.

FPU Benchmarks

All FPU tests are directly comparable among themselves. For example, you can directly compare the speed of a multiply to an addition, square root, or cosine.

A single-precision floating-point number is 32 bits. Because of differences in the floating point formats supported on various machines, a double-precision number varies in size. For double precision, the fastest format available that is at least 64 bits in size is used.

Multiply, Divide, Add, and Subtract: Measure basic FPU performance in both single and double precision. On some machines, double precision may actually be faster than single precision because single precision numbers must first be converted to double precision before the calculation occurs.

Integer To Single and Single To Integer: Convert an integer number to a single precision floating point number and vice versa. Some machines have hardware instructions for both operations, some have neither, and some have just one. This accounts for dramatically different results that you may encounter, depending on which way the conversion goes.

Sine, Cosine, Tangent, and Arc Tangent: Measure trigonometric performance on double-precision numbers. These results can vary dramatically from computer to computer. Some older models of the Macintosh can actually outperform the new Power Macintoshes on these functions because the Power Macintoshes implement these routines in software.

Absolute Value, Square Root, and Log 10: Measure the absolute value, square root, and logarithm in base 10, respectively, of a double-precision number.

Vector: Measures how fast an array of numbers (vector) can be manipulated. Each element in the array is multiplied by a constant, a constant is added, and the result is stored back into the array (X’ = aX + B).

Getting Norton System Info

Norton System Info was provided as part of the Norton Utilities for Macintosh suite of software. The best way to get a copy of this is by buying a genuine copy on eBay, although I’m quite sure there are copies on Macintosh Garden.

Feedback on this Post

If you have any additional information which you wish to suggest is added to this page, or would like to correct any errors / inaccuracies, please use my contact form to let me know.

Sonnet 7455 Based “PCI” Upgrade Cards

Sonnet 7455 Based “PCI” Upgrade Cards

The Highest speed of Sonnets “PCI” (as in, for most PCI based beige Macs, rather than it fits in a PCI slot) G4 upgrade cards used a different PCB and Motorola’s 7455 G4 Chips. These boards can be a little unstable and I’ve never had any luck using them with the actual Sonnet drivers. These cards were available with a 700, 800 and 1000MHz processor.

Sonnet 800 Front

The most stable solution I have found is to use the PowerLogix CPU Director drivers, with Speculative Addressing disabled.

To speed up the process of getting this set up, I have created an installer for Mac OS 9 which installs the PowerLogix software, as well as a system preference which has the settings already enabled as required.

Download the installer here.

The download is a .bin file, which can be opened in Stuffit Expander. Inside the .bin file is an installer application called Sonnet7455.

The process…

  1. With the previous CPU still in the computer, install this software, once done, power down the computer.
  2. Remove the previous CPU and install the Sonnet Upgrade.
  3. Make sure the CPU card is firmly seated.
  4. Seriously, double check it – they can be quite stiff and if they’re not properly seated you might kill the computer or card.
  5. Really – check it again, I lost a 500MHz G3 like this. Stupid thing resisted so much I thought it was in properly, and it was one of the ones without the tall bracket so I didn’t notice that it was higher than it should have been in my 8600.
  6. Press the “Cuda” button. Usually a little red tactile switch. Press it once, for about one second. Do not long press it. Do not press it lots of times.
  7. Close up the case and boot the machine up. You will have lost all your mouse / date and time etc. settings due to pressing the Cuda button, so they’ll need resetting.

At this point you should be good to go, although these upgrade cards are known for having incompatibilities. I have seen the following issues :

  • Sometimes it doesn’t like my OEM Twin Turbo card. It works fine with my Radeon 7000.
  • It doesn’t like my ethernet card and will crash if I start transferring a larger file. It works find with the built in ethernet.

There are more compatibility issues listed on the Sonnet FAQs.

Sonnet 800 Back

Cleaning the Lens in a ’90s Apple CD Drive

Cleaning the Lens in a ’90s Apple CD Drive

90s CD-ROM drives frequently struggle to read CDRs (home written discs). Sometimes this can be helped by using another brand of disc or writing the disc at a lower speed, but in the end, the best solution is often cleaning the drive’s laser lens with a cotton bud and IPA. These instructions will be approximately helpful for other brand drives, but the majority of 90s Apple SCSI CD-ROM drives are Matsushita drives of a very similar construction (some early ones were Sony and different – I find the caddy Sony drives tend to be better at reading CDRs anyway).

The actual drive in the following pictures is an IDE drive, but the construction is identical, specifically this drive is basically the same as the one in my Macintosh PowerPC 9600, but I’ve used the same process to clean drives in an 8500 and an 8600.

Matsushita CD Drive
Matsushita CD Drive
Side Bezel Latch
Side Bezel Latch
Top Bezel Latch 2
Top Bezel Latch 2
Front Bezel
Front Bezel
Homemade Drive Eject Tool
Homemade Drive Eject Tool
Ejecting the Tray
Ejecting the Tray
Tray Ejected 2
Tray Ejected 2
Release Right Bezel Catch
Release Right Bezel Catch
Release Bottom Bezel Catch
Release Bottom Bezel Catch
Release Left Bezel Catch
Release Left Bezel Catch
Bezel Released
Bezel Released
Ready to Remove Screws
Ready to Remove Screws
Lower Cover Removed
Lower Cover Removed
Latch 1 (Front Right)
Latch 1 (Front Right)
Release Latch by Pulling Away from Metal Tab
Release Latch by Pulling Away from Metal Tab
Latch 2 (Back Left)
Latch 2 (Back Left)
Disassembled Drive
Disassembled Drive

This is a more modern version – the older ones have a bit more stuff inside them, but the process is identical.

Lens Assembly
Lens Assembly

Don’t touch the lens!

Wipe with IPA
Wipe with IPA
Dry Dry a Little
Dry Dry a Little

Then reverse the instructions to reassemble. All the latches clip in easily when you put things back in space. If you’ve done it before the whole process is only a 10 minute job.

Good Luck.