Solbourne IDT systems


IDT machines

click for nifty picture of motherboard
IDT (Integrated DeskTop) systems include the S3000, S4000 and S4000DX These systems utilize the Panasonic MN10501 KAP_M2 cpu (KAP supposedly stands for Kick Ass Processor) and have 3 SBus slots. All systems use the same motherboard, except that the S4000DX requires a certain MB revision level that has a DX cache enable jumper block. (i.e. if you have this MB revision and miraculously acquire a DX L2 cache, you can make it your S3,4000 into a DX system)

S3000

[Picture] The S3000 is a vertical standing portable workstation with a 16" plasma display. The plasma display card acts identically to a bwtwo() board and occupies one of the 3 SBus slots (you can remove it, but what's the point?)

S4000

[Picture] The S4000 is in a small-profile table-top configuration. (slightly larger than a sun pizza-box, and not as pretty)

S4000DX also known as the S4100

[Picture] The S400DX is externally identical to the S4000. It utilizes an L2 cache which substantially improves performance since these systems use 100ns Memory chips (ouch!). Additionally, it used a 36 or 40MHz cpu in relation to the 33MHz used in the S4000 base.

SCSI Specifics

Is it SCSI-2?

Well, the external SCSI connector is a micro-mini-D shell SCSI-2 connector, but the system doesn't utilize SCSI-2 commands. You should therefore set your devices to SCSI-1 if you have a jumper to do it.

Don't touch that cable!

If you have the really crummy flat brown molex cabling that Solbourne shipped internal on the IDT systems THROW IT OUT!. Especially after several years it is getting even less reliable than it was when it shipped. If you even look cross-eyed at it, it'll fail. Trust me. Get a flat ribbon 50 pin standard SCSI connector from any PC supply house or build your own. You can also use the ribbon cables connecting the I/O board to the VME backplane on KBus systems.

Sun QIC-60/MT-02 Tape Drives

You need to enable pin-8 on the MT-02 controller to enable SCSI-Parity generation to work with the IDT.

Disk Incompatibility

I've had problems getting several SCSI disks to work with the IDTs.

Newer Quantums can be made to work by disabling SYNC negotiations in the kernel. You can read the man page on 'sd' to determine how to change your kernel config file (the flags value might be like 48 instead of 4a) This however can impact drive performance by like 50%.

Disks i've had good luck with on Solbournes include Fujitsu M1603S, M1606S, & M2684S, Maxtor Panther P0-12S & P1-17S, and of course the standards Solbourne used being the Maxtor 8760 and 8340.

Memory

The memory in the IDT is 100ns cycle type and can be either 1 or 4MB 30-pin SIMMs (yep, 100ns 4MB SIMMs exist. We here at CU, living still in the dark ages, have quite a number of them in several systems). You can of course use faster memory, but no performance gain will be achieved.

The S3000 and S4000 had 8 1MB SIPPs soldered to the Motherboard. The S4000DX came with either 8 1MB SIPPs or 8 4MB SIPPs (depending on your configuration) held in with a rubbery compound into sockets (for easy replacement). (This yields either 8 or 32MB in the base configuration.)

The SIPPs can be removed as long as you have sufficient memory in the SIMM banks, or in the SIMM banks and Memory Expansion card. (sufficient being 16MB for an OS install, or 8MB if you have a TTY console). The obvious reason to do this being if you find that one of the SIPPs has gone bad, it may be easier to extract them all than try to re-install the bad one.

The Motherboard has 8 SIMM slots which must be filled completely as a bank. This can cause a pain in your wallet if you want more than 16MB, but fewer than 40MB. (see Memory expander card below)

Memory Expansion Card

The IDT series has a Memory Expander card, which consists of 2 banks of 8 SIMMs. These could be populated by 1 or 4MB SIMMs and you could bank mix, given that you filled each bank with all the same type.

The card could not be installed without memory in it (darn). Although it wasn't necessary to have memory on the MB slots if you had the expander card populated.

The S3000 and S4000 models, due to the internal layout of the case and internal disk placement, required different Memory Expander cards. The S4000 one is rectangular and occupied the space assigned for a second internal disk, while the S3000 one which is longer and skinnier has the 2 banks offset by approximately 1/2 inch. Make sure you get the right one, or you'll be very sorry.

With the card, you could expand (using 4MB SIMMs) your S3000 to 104MB total, and your S4000DX (with 32MB base memory) to a whopping 128MB.

CPU Mask versions

There were apparently some problems with the first few Mask levels of the Panasonic chip that are not detectable via software (okay, actually all the Mask Levels to some extent are this way), and hence not fixable. Mask Levels M2C4 and above are "fine", while M2C3 has support via lots of kernel hacks (okay, above 4 just required a bit fewer kernel hacks).

You can determine the mask level by looking at the top edge of the CPU, and you should see some number like M2Cn where "n" in this case is the mask level. If you have 1 or 2, you are pretty much SOL. (as you were sold an internal pre-production engineering system)

POST sequence

The Power On LED sequence goes like:
LED=Solid Yellow
Core Self-Test
If this stays more than say 15 seconds, you probably have a bad CPU assembly. (maybe not, timing depends on Memory sizing, too)
LED=Flashing Yellow
System Self-Test
If this stays more than 5 seconds, you probably have a bad CPU assembly.
LED=Flashing Yellow/Green Alternating
System Initialization and SBUS Probe
If this stays more than 5 seconds, the SBus self-tests didn't complete. Perhaps a bad SBus card or the SBus control logic is fried.
LED=Flashing Green (only if DIAGMODE variable set LONG)
SBus Device Selt-Test
If this stays flashing, your SBus is hanging. Remove all SBus cards to diagnose the failure.
LED=Solid Green
All Tests Passed

If you hook a tty up to 'ttya' and set it to 9600,8,n,1, you will see a detailed list of test execution during these phases. Here's the sample output:

Using env variable DIAGMODE 'short'

Starting Test 0xE: Profile Timer Test
Starting Test 0xF: Keyboard/Mouse Reset Test
Starting Test 0x10: Keyboard/Mouse Register Write/Read Test
Starting Test 0x13: Keyboard/Mouse Internal Loopback Test
Starting Test 0x1C: iMC Reset Test
Starting Test 0x1D: iMC Register Write/Read Test
Starting Test 0x20: Memory Probe Test
Starting Test 0x25: iCU Reset Test
Starting Test 0x26: iCU Register Write/Read Test
Starting Test 0x28: Memory Addressing Test
Starting Test 0x29: System RAM MARCH Test
Starting Test 0x2A: ECC RAM Write/Read Test
Starting Test 0x2C: iCU Translation RAM Write/Read Test
Starting Test 0x37: L2 Cache Mode Access Test (L2 Cache not Detected)
Starting Test 0x38: L2 Cache Address Patterns Test (L2 Cache not Detected)
Starting Test 0x39: L2 Cache Address Lines Test (L2 Cache not Detected)
Starting Test 0x3A: L2 Cache Memory Patterns Test (L2 Cache not Detected)
Starting Test 0x3B: L2 Cache Write Through Test (L2 Cache not Detected)
Starting Test 0x3C: L2 Cache Miss Test (L2 Cache not Detected)
System RAM/ECC Initialization
Initial System Self Test Complete

Using env variable DIAGMODE 'long', 'halt', or 'loop'

Serial Port Internal Loopback Test
Starting Test 0xE: Profile Timer Test
Starting Test 0xF: Keyboard/Mouse Reset Test
Starting Test 0x10: Keyboard/Mouse Register Write/Read Test
Starting Test 0x11: Keyboard/Mouse Uniqueness Test
Starting Test 0x12: Keyboard/Mouse Interrupt Test
Starting Test 0x13: Keyboard/Mouse Internal Loopback Test
Starting Test 0x14: RTC Register Write/Read Test
Starting Test 0x15: RTC Counter Write/Read Test
Starting Test 0x16: RTC Counting Test
Starting Test 0x17: FDC Reset Test
Starting Test 0x18: FDC Initialization Test
Starting Test 0x19: DSC Reset Test
Starting Test 0x1A: DSC Loopback Test
Starting Test 0x1B: DSC Register Test
Starting Test 0x1C: iMC Reset Test
Starting Test 0x1D: iMC Register Write/Read Test
Starting Test 0x1E: iMC Register Uniqueness Test
Starting Test 0x1F: iMC Memory Decode Test
Starting Test 0x20: Memory Probe Test
Starting Test 0x21: iMC Address Decode Test
Starting Test 0x22: iMC Bank Uniqueness Test
Starting Test 0x23: iMC Mode Control Test
Starting Test 0x24: iMC Wait State Test
Starting Test 0x25: iCU Reset Test
Starting Test 0x26: iCU Register Write/Read Test
Starting Test 0x27: iCU I/O Decode Register Write/Read Test
Starting Test 0x28: Memory Addressing Test
Starting Test 0x29: System RAM MARCH Test
Starting Test 0x2A: ECC RAM Write/Read Test
Starting Test 0x2B: ECC RAM MARCH Test
Starting Test 0x2C: iCU Translation RAM Write/Read Test
Starting Test 0x2D: iCU Ethernet Address Mapping Register Test
Starting Test 0x2E: iCU Ethernet Buffer Write/Read Test
Starting Test 0x2F: iCU SCSI Control Register Test
Starting Test 0x30: iCU SCSI Address and Buffer Test
Starting Test 0x31: SBIC Reset Test
Starting Test 0x32: SBIC Register Write Test
Starting Test 0x33: LANCE Reset Test
Starting Test 0x34: LANCE Register Write/Read Test
Starting Test 0x35: LANCE Initialization Test
Starting Test 0x36: LANCE Internal Loopback Test
Starting Test 0x37: L2 Cache Mode Access Test (L2 Cache not Detected)
Starting Test 0x38: L2 Cache Address Patterns Test (L2 Cache not Detected)
Starting Test 0x39: L2 Cache Address Lines Test (L2 Cache not Detected)
Starting Test 0x3A: L2 Cache Memory Patterns Test (L2 Cache not Detected)
Starting Test 0x3B: L2 Cache Write Through Test (L2 Cache not Detected)
Starting Test 0x3C: L2 Cache Miss Test (L2 Cache not Detected)
System RAM/ECC Initialization
Initial System Self Test Complete
 
Starting extended DATA RAM test (0x00100000 - 0x01000000)
...............
Starting extended ECC RAM test (0x00100000 - 0x01000000)
...............

ROM Monitor

The ROM monitor on the IDT was supposed to be like the OpenBootProm on SMI SPARCstations. However, the FORTH code was an independent effort, (i.e. not licensed from Sun) and this is reflected in the lack of features and compatability.

FORTH Commands of interest

show-tree
this command is somewhat like the OBP cd, ls, .attributes, and probe-scsi commands. It displays the device tree and reads labels from SCSI disks.

Here's an example output on an S4000 with no SCSI devices and only an sga20 framebuffer

Node: Root
  model=S4000
  name=KAP
  cpu=
  Node: lance-device
    reg=
    intr=
    driver=ei
    name=lance
    model=AMD 7990
    type=network
  Node: uart
    name=Z85C30
    Node: Keyboard/Mouse
      reg=
      intr=
      driver=zs
      name=zs
      model=Z8530 SCC
    Node: Ports A/B
      reg=
      intr=
      driver=zs
      name=zs
      model=Z8530 SCC
  Node: Sbus
    name=Sbus
    Node: Sbus3
      name=SOLB,sga
      model=sga20
      type=display
      intr=
      reg=0
      depth=
      linebytes=
      width=
      height=
      sol-res-bytes=
      address=0@
  Node: scsi-chip
    reg=
    intr=
    driver=si
    name=scsi
    model=WD33C93A
    type=io
    Node: Target0
    Node: Target1
    Node: Target2
    Node: Target3
    Node: Target4
    Node: Target5
    Node: Target6
test-slot
when prefixed with an SBUS slot number, will display the board information for that slot (or empty) and run that devices device test routine.

Here's example output of a test-slot on the above sga20

ok 3 test-slot
Testing SOLB,sga20 Frame Buffer on SBUS: 
Device passed
FORTH Dictionary
I've included the FORTH dictionary from the 2.1 ROM here. Be aware that simply executing one of the words can cause death and dismemberment. I accept no responsibility if you wipe your NVRAM or hose your disk. (being the adventurous type, i've done myself trouble many a time, but discovered some very useful things along the way...)

Boot Rom revisions

The latest known production ROM was version 2.1, dated "10/3/91".

Known working SBUS cards

In addition to the Solbourne vendor SBus cards, several generic SBUS cards are known to work in these systems.
please see the section on compatability for more details on why you can't use Sun video cards, etc.

Solbourne SBUS cards

sga20 (cglite) Click here for nifty picture
"accelerated" 8bit color framebuffer
sga40 (cgfast)
DE-"accelerated" 8bit color framebuffer. This board was misnamed and was the preliminary attempt at color SBus graphics.
bwtwo
monochrome 1152x900 or 1600x1280 framebuffer
bwtwo/plasma
identical to bwtwo for software control, but drives the S3000 plasma display

Generic SBUS cards

X453A
Sun Microsystems Inc (SMI) low-end ethernet controller. Configs as ein.
any more?
Please let me know if have successfully used other SBus cards in IDT systems

ZAP!Warning :
Most SBus based serial/parallel boards utilize the VDDRV "modload" interface. Solbourne's do not have the VDDRV/modload interface, so you will not be able to use such boards unless you are keen at kernel mods and device drivers


last modified on Tue Sep 15 10:49:57 MDT 1998
Stephen Dowdy