• Please review our updated Terms and Rules here

Restoring a Sun 386i: What a mess, anyone have a running one?

POSITIVE NEWS!

Plugged in my hacked AT power supply and the system is *doing something*

Started by plugging in my AT power supply (I have to take a picture of this disaster) to the 386i and tested the +5 and +12 lines from the AT 4 pin molex pins against the 4 pin molex pins on the 386i motherboard to make sure there is 0 ohm resistance between +5 on the power supply to +5 expected on the 386i, ground on the PS to ground on the 386i, and +12 on the PS to +12 on the 386i. All look good (0 ohm) which means that my wiring appears to be "right".

Took the memory, digiboard, and frame buffer cards out of the system. If things go bad I'd rather have spares for the other computers.

Powered up the AT supply, fans came on, no flames. This is good. Powered down and re-checked everything. Powered up again and the molex shows +5 and +12 are good, which means I don't have shorts.

Next up I looked at the 8 little LED dots on the back. They came up, flashed a sequence, and settled in on 33 (dec) which consulting the back shows an error on the main board. Ok, it's something. Powered down, Plugged in the memory board, powered up, and now the system flashes a lot of lights, then settles down into the LEDs running back and forth quickly like a cylon.

I think the system is working-ish! Next step is to have breakfast, relax a bit, then put the frame buffer in and see if the keyboard beeps or something. Or I could check the RS232 port and see if anything is there....

Lessons learned:
1) Sun just cloned an AT power supply at the core. Thus that last pad on the PS is a "+5 volt signal when power is stable" line, and without it the CPU will not start
2) -5 and -12 are probably used for something, but glad they are there and running.
3) This hack appears to work. Given that all three of my systems have crap power supplies I can either figure out the problem, or just scoop out all the junk Sun electronics and replace them with a nice 450 watt AT supply board wired into the Sun's edge connector.

I think I'll stop for awhile and spend some time fabricating standoffs so the AT supply board can go right into the Sun power supply box. That would be a much neater solution...
 
Looks like the Sun386i does have a serial boot mode: 9600,8,N,1 with a null modem DB25 to DB9 to USB adapter:

@
Sun Workstation, Model Sun386i/250, Keyboard ID invalid.
ROM Rev 4.5, 16.0 MB memory installed, Serial #23327
Ethernet address 8:0:20:2:5b:1e, Host ID: 31005b1f.


Default keyboard: Using RS232 Port A!
▒Auto-boot in progress...
This system is not properly connected to the Ethernet.
You must fix the cabling problem before booting can finish.

Let's put the old 330mb hard drive in.....


Sun Workstation, Model Sun386i/250, Keyboard ID invalid.
ROM Rev 4.5, 16.0 MB memory installed, Serial #23327
Ethernet address 8:0:20:2:5b:1e, Host ID: 31005b1f.


Default keyboard: Using RS232 Port A!
▒Auto-boot in progress...
Boot: sd(0,2,0)
zsprobe on 1 failed: sync read returned -1
WARNING: TOD clock not initialized -- CHECK AND RESET THE DATE!

At this point the display went nuts.
▒▒e▒rroot▒:▒6▒3▒file󬠸▒▒▒▒▒▒e䬠5▒▒▒▒free▒▒
▒▒e▒rroot▒:▒(▒6▒fr▒▒󬠷09▒▒loc▒▒0.3▒▒fr▒▒ ▒e▒t▒tio
▒▒▒▒▒▒▒▒▒▒▒▒`▒f<x▒▒▒??▒▒▒▒`▒▒▒x
▒▒x
▒x3▒▒f<▒▒▒▒Þx▒x▒x
▒▒▒f<`▒▒▒▒▒▒Ϙ▒▒▒xfxf▒▒>3p▒`▒f<x▒▒??▒▒▒▒`?~▒▒0▒▒▒▒▒▒f▒~▒▒▒▒▒▒x▒▒▒▒▒▒<▒▒▒▒▒▒?▒昆▒▒ ▒f▒~▒▒▒f<▒▒`?▒`?▒▒▒▒▒▒▒▒▒▒▒▒▒$▒▒▒▒▒▒▒
5kL(,L:ende TeMtk*/'P (nter 'q' to rQUr9 t=kjK/-]or)
]Y>:8{d -
5k>h=<P-[*V~qor Input#WV>:
-/hK M5oIe Test
mk - Mouse=[*V~qor P=IQM TeMt
rs - Ser%luK?]>xTest
myP-\*r D%Mk B==QAat! TeMt5k4hsi - SCSI IntIc#WV>:
Ak Z*8*r Tapejk
|xth TeMt5k>hfd -#*k>=Ytt#JWZ{ejk
|xth TeMt
M_{P- Video (Monoc!rome) Test
M_,P-3
^Y
4JCo1=I%#
cm -
kK.hMap TeMt5k4hpp -.xll1uK.] Test
5kLh8{d=>Pu[z
5kL(9O_|6id command!

Tested a bunch of things. Going to 9600,7,n,1 seems to have gotten something.....

Invalid command!


Extended Test Menu: (Enter 'q' to return to Monitor)

Cmd - Test

kb - Keyboard Input Test
me - Memory Test
mk - Mouse/Keyboard Ports Test
rs - Serial Ports Test
sd - SCSI Disk Bootpath Test
si - SCSI Interface Test
st - SCSI Tape Bootpath Test
fd - Diskette Drive Bootpath Test
vm - Video (Monochrome) Test
vc - Video (Color) Test
cm - Color Map Test
pp - Parallel Port Test

Cmd=>me

Memory Tests: (Enter 'q' to return to Test Menu)

Test Options: Command: a,c,s,w
Low Address: greater than 0x100000
High Address: up to 0xffffff
Pattern: 0 - 0xFFFFFFFF (Hex)

Syntax: Cmd [Low Address] [High Address] [Pattern]

Cmd - Test

a - Address Test
c - Write/Read Test
s - Scan Memory Test
w - Write Only Test

Cmd=>

Invalid Selection!

Memory Tests: (Enter 'q' to return to Test Menu)

Test Options: Command: a,c,s,w
Low Address: greater than 0x100000
High Address: up to 0xffffff
Pattern: 0 - 0xFFFFFFFF (Hex)

Syntax: Cmd [Low Address] [High Address] [Pattern]

Cmd - Test

a - Address Test
c - Write/Read Test
s - Scan Memory Test
w - Write Only Test

Cmd=>q


Extended Test Menu: (Enter 'q' to return to Monitor)

Cmd - Test

kb - Keyboard Input Test
me - Memory Test
mk - Mouse/Keyboard Ports Test
rs - Serial Ports Test
sd - SCSI Disk Bootpath Test
si - SCSI Interface Test
st - SCSI Tape Bootpath Test
fd - Diskette Drive Bootpath Test
vm - Video (Monochrome) Test
vc - Video (Color) Test
cm - Color Map Test
pp - Parallel Port Test

Cmd=>q
>
>help
Sorry further help on e command not available
>?
Monitor: Invalid command.
>
>
>
>h

--------------------------------------------------------------------------------
Monitor Commands Rev: 4.5 Built: 01/06/89 12:00:41 Help Menu

b [dev([cntrl],[unit],[part])] Boot a program
c/g [addr] Continue (c) or Go To (g) Address
d/r Dump or Display/modify Registers
e/o/l [addr] Display/modify memory: e(16) o(8) l(32)
f b_addr e_addr ptrn [size (BWL)] Fill memory
h Display help menu
j Display/modify cache tag entries
k [number] Reset: 0:VIDEO 1:SOFT 2:HARD B:Banner
n Disable, enable or invalidate cache
p [io_addr] Display/modify Port I/O locations
q [addr] Display/modify NVRAM locations
s Single Step Program Flow
u [arg] Select Console Device (a/s/k)
v b_addr e_addr [size (BWL)] Display memory
w [addr] [string] Vector To routine
x Extended Diagnostic Tests
z [addr] Set breakpoint

--------------------------------------------------------------------------------
>c

Abort at ffff5adb
>

So there is a pretty big monitor in here. More later.
 
And I need to plug something into the ethernet port. Or I have an old watchdog timer in the OS I have to disable somehow.
Default keyboard: Using RS232 Port A!
Auto-boot in progress...
Boot: sd(0,2,0)
zsprobe on 1 failed: sync read returned -1
/dev/rroota: SUMMARY INFORMATION BAD (SALVAGED)
/dev/rroota: 623 files, 8441 used, 5718 free
/dev/rroota: (46 frags, 709 blocks, 0.3% fragmentation)
Some problems were found in the root filesystem.
These problems were fixed, so this system is rebooting itself.
Boot: sd(0,2,0) ..
zsprobe on 1 failed: sync read returned -1
/dev/rroota: SUMMARY INFORMATION BAD (SALVAGED)
/dev/rroota: 623 files, 8441 used, 5718 free
/dev/rroota: (46 frags, 709 blocks, 0.3% fragmentation)
Some problems were found in the root filesystem.
These problems were fixed, so this system is rebooting itself.
Boot: sd(0,2,0) ..
zsprobe on 1 failed: sync read returned -1
/dev/rroota: 623 files, 8441 used, 5718 free
/dev/rroota: (46 frags, 709 blocks, 0.3% fragmentation)
/dev/rrootg: 3003 files, 22333 used, 10698 free
/dev/rrootg: (154 frags, 1318 blocks, 0.5% fragmentation)
/dev/rrooth: 11143 files, 186436 used, 26211 free
/dev/rrooth: (1651 frags, 3070 blocks, 0.8% fragmentation)
Keyboard REMAP failed
ie0: init failed: no intr
ie0: init failed: no intr
This system is `beaker' in domain `crystel.com'.
Keyboard REMAP failed
Mon Jul 13 16:01:10 EDT 1998
 
Mine changes the serial port settings when SunOS boots, so you see garbage like you do until you change the serial settings.
Yep, in this case it's sending 8 bit characters that are confusing putty. Going 7N1 seems to make it happier.

Now to buy some standoffs and transplant the AT power supply guts into the 386i power case. I can use the plugs and switch on the outside, that way I can have a working supply to test the other systems. Then it will be time to see what happens with the video board.

The real question will be the second system: That one was my normal workstation and had a Roadracer CG5 video card on it. Ran SunView very well. It also had a Sun VGA card in it so I could play doom in addition to running all of the copies of Wordperfect Office gateway for my clients....
 
Your disk seems mighty unhappy but it is at least surviving fsck.
Indeed. It's been almost 30 years since it has been fired up, but it seems to be working. I have dumps of it in case it blows up, but it comes up to the point the watchdog timer is rebooting the system (which is amazing, I totally forgot about that). I wonder if it tries to dial up the ISP for PPP.....

Worst case I can boot off floppy. Oddly enough I think I have SunOS 4.0.2 install media on a DC600 tape, wonder if I still have the 5525 tape drive around here somewhere....
 
I'm not sure why the ethernet not being connected would force a reboot. Normally Unix will just complain that it's disconnected but keep on running. I'm assuming you have not yet been able to get into single-user mode?
 
No, 30 years ago this system was the router for a full class C of Wordperfect Office SMTP gateways and async gateways. Cool business. But it would dial up Digex, connect, and go.

Since it was a telephone connection, when the connection dropped I had to reset it. To fix that I had a crontab process that would ping various internet hosts, and if they came back empty it would reboot the router assuming something (DNS, PPP, etc) was wrong.

I'll figure it out. Is there a way to drop into single user mode from the serial console?
 
Try this.

9.05 How can I boot the 386i in single-user mode?

You can boot into single-user mode at the ROM monitor
prompt (see 9.01) by entering "b -s"

As noted in 9.01 you can also get to single-user mode by
using "shutdown" if already running in multi-user mode
but you must be logged in as "root" or have run "su" to
do this.

You can reboot into single-user mode from single-user
mode with the command "reboot -- -s"

Once in single-user mode (unless you have simply used
"shutdown" from multi-user mode), you can mount all the
usual file systems (those listed in "/etc/fstab") with
the "mount -a" command. You will probably get some error
messages at this point because of missing mount points so
just enter "mount -a" again.

 
Ok, more progress. I got a set of barrel connectors and a 13Y3 video plug. The 4 lines on it match up with the Sun 386i cable (black is sync on the 13Y3, grey on the Sun side) and we now have working video as well!

FL7cSLL.jpg


I don't have the network installed, and I obviously don't have a RARP or BOOTP server running these days anyway. I wonder if I should build one...

Meantime, I'm going to drag out the other two systems I have and see if they come up as well. One I know has the ultra rare CG5 video buffer and the DOS VGA card, the other I forget what it has. I think it's a monochrome frame buffer (I tossed my monochrome sun monitor ages ago), and I think I have a monochrome video cable/keyboard cable for it as well.

Next step is to buy some standoffs so I can mount the PC-AT power supply board and the card edge board into a Sun power supply enclosure to make this more neat, then maybe load up the disk drives and see if I can put it back on the Internet as a BIND/SMTP server like it was in the old days. Wonder if anyone could hack it....
 
Well, back from a trip, and instead of finding the standoffs and getting to work with the power supply refit I figured I'd fire up some other 386i's I have here.

The second one was called firefly if I remember and was the one I liked to use as a main system. It had a 330mb CDC disk along with a CG5 video card and the highly unusual SunVGA card (which allowed you to run a DOS window with full VGA graphics in the SunView system. Great for DOOM). However when I fired it up the system halted with a 0011 code in the diag lights (CPU error, 3) which I'll have to troubleshoot. It does have a TOTALLY dead timekeeper ROM, I'm not sure if they will fire up if the battery is totally dead? Anyone remember?

Anyway I took out the CG5 Roadrunner card (the accelerated color one with 4mb of video RAM) and put it in the first system (Beaker). Good news, it works! Then I hooked up the CDC disk, and tried to let it boot. It did a boot (0,1,0) then just sat there. Which could mean the disk needed an external terminator. Put one on, no dice. So I went back to the Maxtor 330 disk and fired it up.

System booted. IE0: No Intr came up and the ethernet system is down but I was able to get into the login prompt. However I didn't have the root password, drat! After a couple of guesses, I went back to the disk dump on my Mac and just copied the /etc/passwd file then ran john the ripper on it. 20 minutes later I had the password.

Note: SunOS 4.0.2 used an 8 character password max hashed with DES. In other words child's play against modern systems....

Anyway, the nvram is corrupt but I did dump the contents to disk back in 1995. Go me! However I didn't install xtob, so I can't take those files and turn them into something I can copy to /dev/eeprom so.... crap! Need to think about this one. I could hook up the floppy drive and try running the 386i diagnostic floppy, but if that's the last one on earth I might want to make a dump of it. Are there copies of the diag floppies on the net?

I'll stop for tonight, it's getting late and I got a lot done. Next steps will be to get that darn drive up so I can fire up yellow pages and such. I remember you could set these up to boot over the net, it would be kind of cool to figure out how to boot them off my OpenSAN system.... Probably need a BOOTP compatible server and a lot of image work...

It works. Oddly enough I could boot the system
 
....

Anyway, the nvram is corrupt but I did dump the contents to disk back in 1995. Go me! However I didn't install xtob, so I can't take those files and turn them into something I can copy to /dev/eeprom so.... crap!
Is that conversion something that could be done on a Sparcstation IPX running 4.1.4?
 
Is that conversion something that could be done on a Sparcstation IPX running 4.1.4?
Possibly, but I would have to use serial protocols to move files onto/off of the system. I'll think about it for a bit.
 
Meantime I cleaned out the floppy drive and gave it a try. My 4.0.1 diagnostic disk does not boot at all, tried an extra floppy no dice. So I went to the "3.0" diagnostic disk and sure enough it booted.

The system failed the CPU test (odd), passed Ethernet and floating, and got hung up on the video test. It's possible this is because I was using the CG5, I switched back to the CG3 and will try that next. Regardless Ethernet still did not work which was really annoying. Same error.

It's possible the eeprom chip is completely bad, I'll try setting a time, then shutting down and see if it picks up the right time an hour later. If it does then the timekeeper chip is at least working.
 
Meantime I took a bit of stock of what I have:
  • 386i working! With an Eeprom that needs to be loaded with sane values.
  • 386i with a problem on the motherboard and a non-working memory module
  • 386i with MGA graphics, memory card with 0mb memory, untested as of yet.
  • CG3 video, good
  • CG5 video, good
  • Memory board, 16mb good (1)
  • Memory board, 16mb fails tests (2)
  • Memory board, 0mb good (loaded with 4mb from (2)) (3)
  • Two dead power supplies
  • One power supply that is reconfigured for PC-AT operation
  • Two 330 mb hard disks (both work, one jumpered SCSI 1 (wrong), one Maxtor boots fine.
  • SunVGA card (unknown)
  • Two 8 port Intelliport adapters (pass diagnostics, unknown otherwise)
I just tested the memory board on board 3 by loading it with 4mb of memory from board 2. Good news, system will at least come up with 4mb RAM, so we can build a minimum system. Also noted that at least one of the memory SIMMs had junk on the pins, so I sanded them down a bit with 2000 grit finishing paper. Works, but maybe the problem with board 2 is dirty SIMMs.

Next step, test system 3 and see if anything works.
 
Well that was interesting. Checked resistance on the various power lines to ground on system 3, all looked good. Plugged in the power supply and saw a foom followed by smoke by the supply plug.

Turns out one of the filtering caps on the board decided it didn't want to be a cap anymore.

Pulling the cap out of circuit and trying again resulted in a crowbar of the power supply, which is odd. Testing only +5 and +12 showed that the board would come "up" ish but won't start running as +5 stable (the last one on the left) isn't being powered.

Might be a problem with either the -5 or -12. Will work on that.
PXL_20221030_141805022.jpg
 
On to another topic: The timekeeper RAM chip.

This thing is a problem: It's a chip with a battery on its back that keeps all the NVRAM stuff going along with the clock for the 386i. Not having it working can cause all sorts of weirdness.

When I was using these systems back in the early 90's, the first one (beaker) had the chip go bad so I sat down and wired a 3v aaa battery holder into the chip. Problem is my documentation back then is lost in the seas of time (and maybe poloroids). So I needed to figure out what I did.

Here is the chip in the computer.
PXL_20221030_145108920.jpg

This is the chip out of the computer.
PXL_20221030_145729913.jpg

I can see I used several layers of tape to hold the battery (top) to the chip and provide strain relief to the wires.
PXL_20221030_145819106.jpg

Tape off. Odd, there are two wires going to the top battery, and two coming off the BACK to my battery adapter. Not sure what's going on here.

Edit: Oh, that's why: The top "hat" contains the battery and a 32.767 crystal for the oscillator. I guess I had to redo it when I cut into the top.

PXL_20221030_145850417.jpg
However I do see this. Oh my....

PXL_20221030_145923699.jpg
I get a bit of a shudder when I look at something like this: It's a message from myself from 30 years ago, it almost feels like seeing AS on a wall in a cave (see if people get that reference). But there it is, and more importantly I labeled what was + and -.

PXL_20221030_145931087.jpg

I'll put it back together, then start working on another module. It's possible that the power bus runs the length of the chip and I just had to grind away a bit of the top to get to it, then solder the wires on. But what is the purpose of the two wires in the front? Were they factory, or something else....

Hm.
 
Last edited:
Back
Top