8-oFrom an old email I sent to the SuperMacs list:
The XLR8 instructions list integer and integer + .6 MHz bus speeds. However, it appears that the Carrier ZIF is settable in .2 MHz increments.
Switches 1 - 4 control the fine speed settings. If you imagine them as the digits of a binary number, with 1 most significant and 4 least significant, you can set any bus speed multiple of .2 MHz from 0 to 3 MHz (15 X .2) + the coarse speed setting.
So for example OFF, OFF, OFF, OFF (all OFF) is 0 X .2 = 0 MHz plus the coarse speed setting (switches 5 - 8) .
OFF, ON, OFF, ON (2,4 ON) = 0101 binary = 3 decimal. 3 X .2 = .6 MHz plus the coarse speed setting.
ON, OFF, OFF, ON (1,4 ON) = 1001 = 9 => 1.8 MHz + Coarse Setting.
Etc.
The coarse speed settings (switches 5 - 8) seem to be in 3.2 MHz increments.
OFF, ON, OFF, ON (6, 8 on) = 41 0101
OFF, ON, ON, OFF (6, 7 on) = 44.2 0110
OFF, ON, ON, ON (6,7,8 on) = 47.4 0111
ON, OFF, OFF, OFF (5 on) = 50.6 1000
etc.
=========================================
That's the gist. The stuff below is examples that drag on for a bit.
In equation form: 25 + 3.2 * (5 - 8) + .2 * (1 - 4) = bus speed;
where (5 - 8) and (1 - 4) are four digit binary numbers represented by the corresponding switches, where a switch set to 'ON' is a 1 and a switch set to 'OFF' is a 0.
So, for example, if you wanted 54.8 you solve the above equation (or read the XLR8 table and adjust your switches up or down a couple of binary values). 54.8 - 25 = 29.8. 29.8 / 3.2 = 9 + a remainder so set switches(5 - 8) to 9. This is 1001 or switches 5 & 8 ON. That's our coarse setting. 25 + 3.2 * 9 = 53.8 so we still have 1 MHz to go. 1 / .2 = 5 so switches (1 - 4) need to be set to 5 or 0101 which is 2 & 4 ON.
So 2, 4, 5, 8 should yield 54.8 MHz. Filling in the equation above just to expand the example we have 25 + 3.2 * (1001) + .2 * (0101) =
25 + 3.2 * (9) + .2 * (5) = 25 + 28.8 + 1 =
54.8.
One could more easily arrive at this conclusion by noting that 54.6 on the XLR8 table is switches 2,5,8. Adding 1 to the value of the fine settings simply means turning switch 4 on, so 2,5,8 => 54.6 and 2,4,5,8 => 54.6 + .2 = 54.8 MHz.
I imagine that speeds below 40 and above 66 are accessible and predictable using this system, though not very useful.![]()
When I first looked at this I expected to find some bizarre system because the method of setting the ICD2051 chip is truly bizarre, but it turned out simple. I imagine that's why there's a PIC microcontroller on the card. It probably runs the program that translates the simple binary switch settings into the crazy math the ICD2051 uses.
Jeff Walther
Wait... so is it possible to get a 300Mhz CPU w/ a 50Mhz FSB? or is there a setting for that?
The reason i ask that, is because I don't quite understand how that works (you are talking to a math idiot here) and I understand some binary, and I understand certain switch combos = certain multipliers. But is there a way to do a 50Mhz bus with a 6x Multiplier?
