B&O BeoVision MX 7000 TV
So this is nothing short of weird... After having to walk half-way across Melbourne to get home (thanks to the train lines being shut for upgrades), I find this unit sitting out the front of my apartment building. The weird part is this: I swear this is the exact same TV I saw in a 'vintage shop' in Geelong around a year ago. Geelong is a long way away... and for this ridiculously heavy unit to appear in front of my apartment... in dirty-but-OK condition, is totally surprising.
Of course, this is Melbourne and just maybe there's a lot of rich people with expensive+vintage TV sets just sitting around...
Does it work?
I threw caution to the wind and found a protected power board to plug it in to. A quick visual inspection before hitting the switch and click... we have a red stand-by light! A quick search of the front panel found a power button bottom-right and, tapping this, the unit came to life!
No remote control
Not a deal-breaker... or so I first thought. Turns out B&O decided to use a non-standard IR frequency and standard universal remotes just won't work. LIRC was fun back in the day, so I installed WinLIRC and tried to load up the easy-to-find Beo4 Configuration. Before even trying to hack together a transmitter, I was hit with errors trying to load the configuration.
Not very helpful at all! I hacked around with configuration file and found that it didn't seem to like the area between the raw_codes begin and end. Darn... maybe it's an archaic Windows version... so I installed Mint on the old Intellistation Z and tried again...
After booting into Linux Mint, I installed lirc with sudo apt install lirc. No issues here, so I downloaded and copied the Beo4 configuration to /etc/lirc/lircd.conf. A quick sudo service lirc restart and syslog tells me:
steven@intelli ~/Downloads $ sudo cp Beo4 /etc/lirc/lircd.conf steven@intelli ~/Downloads $ sudo service lirc restart steven@intelli ~/Downloads $ tail /var/log/syslog Jan 7 19:11:47 intelli lirc[3220]: * Loading LIRC modules Jan 7 19:11:47 intelli lirc[3220]: ...done. Jan 7 19:11:47 intelli lirc[3220]: * Starting remote control daemon(s) : Jan 7 19:11:47 intelli lircd-0.9.0[3230]: error in configfile line 45: Jan 7 19:11:47 intelli lircd-0.9.0[3230]: "KEY_0": must be a valid (unsigned int) number Jan 7 19:11:47 intelli lirc[3220]: ...done. Jan 7 19:11:47 intelli lircd-0.9.0[3230]: reading of file '/etc/lirc/lircd.conf' failed Jan 7 19:11:47 intelli lircd-0.9.0[3230]: reading of config file failed Jan 7 19:11:47 intelli lircd-0.9.0[3231]: lircd(dsp) ready, using /run/lirc/lircd Jan 7 19:11:47 intelli systemd[1]: Started LSB: Starts LIRC daemon..
Oh! Right! Here's the actual error! WinLIRC just 'failed', whereas I get proper verbose logging in Linux. Turns out the configuration file is just no good. I ended up browsing back to the lirc page, in a vain attempt to find a forum or mailing list to whinge to... but then... I found the real remote repo! Scrolling down... lo'n'behold is the Beo4 LIRC Configuration File with happy 'compatible' ticks. Opening it, I can see it's a completely different file!
steven@intelli ~/Downloads $ sudo cp Beo4.lircd.conf /etc/lirc/lircd.conf steven@intelli ~/Downloads $ sudo service lirc restart steven@intelli ~/Downloads $ tail /var/log/syslog Jan 7 19:13:39 intelli lircd-0.9.0[3231]: caught signal Jan 7 19:13:39 intelli lirc[3467]: ...done. Jan 7 19:13:39 intelli systemd[1]: Stopped LSB: Starts LIRC daemon.. Jan 7 19:13:39 intelli systemd[1]: Starting LSB: Starts LIRC daemon.... Jan 7 19:13:39 intelli lirc[3478]: * Loading LIRC modules Jan 7 19:13:39 intelli lirc[3478]: ...done. Jan 7 19:13:39 intelli lirc[3478]: * Starting remote control daemon(s) : Jan 7 19:13:39 intelli lirc[3478]: ...done. Jan 7 19:13:39 intelli lircd-0.9.0[3489]: lircd(dsp) ready, using /run/lirc/lircd Jan 7 19:13:39 intelli systemd[1]: Started LSB: Starts LIRC daemon..
Ok, neat... we loaded! What can we send?
steven@intelli ~/Downloads $ irsend list "Bang&Olufsen_Beo4" "" irsend: 0000000000000001 beo4-tv-on irsend: 0000000000000002 beo4-video-poweroff irsend: 0000000000000003 beo4-tv-left irsend: 0000000000000004 beo4-tv-right irsend: 0000000000000005 beo4-tv-up irsend: 0000000000000006 beo4-tv-down irsend: 0000000000000007 beo4-tv-green irsend: 0000000000000008 beo4-tv-yellow irsend: 0000000000000009 beo4-tv-red irsend: 000000000000000a beo4-tv-blue irsend: 000000000000000b beo4-tv-exit irsend: 000000000000000c beo4-tv-menu ....
And that's as far as I got on Linux... For the life of me it wasn't worth the effort trying to work out how to use /dev/ttyS0. It seems that the kernel hogs it and you have to setserial and stuff... so I just re-booted back into windows... on a machine closer to the TV...
Just because Windows is easier and I'm lazy, I plugged the file into WinLIRC... It worked! We're set... time for some actual hardware to get the IR transmitting.
Transmitting signals...
I found some IR sensors that I had lying around... they're TCRT5000s and I only need the transmitting half. That's the half with the bevelled side (when you're looking at it) and the anode is up top. A 220ohm resistor was tied in-line to prevent excess serial current draw.
The contraption was pointed at the TV, but no amount of clicking would work to turn the TV on. I was about to give up, but decided that the transmit power could be an issue and held the IR LED 5cm from the receiver. Presto! Power-On worked!
I plugged the MSX into the SCART plug and got the following... more research to be done! I also need a better mechanism for pressing remote buttons if I'm going to go through the menu and adjust settings.
What about Arduino?
Having a whole computer to control a TV isn't optimal... so...Arduino time! Well.. it will be in the future... after I read this, this, this, this and this. The goal will be to build a controller with enough buttons to re-configure the input... hopefully... to get the MSX to display!
UPDATE: Arduino Remote works like a charm!
Sony Playstation
I suddenly realised that I actually did have a device to plug into this monstrosity. The original Sony Playstation gathering dust under my coffee table has Composite out! Of course, the TV does not have Composite in... so I had to improvise with a Composite-to-SCART adapter.
Yey! Abe's Odyssey!
Sony HITBIT HB-F1XD Floppy Drive
Hello again Mr HIT BIT. I bought this unit a while back and never got around to testing the floppy drive...
As you can see from the image below, there was a sticker attached that said the Floppy drive was problematic. (フロッピーディスクは動作しません)
This didn't worry me too much, as I intended to use the cartridge slot more than the floppy drive. Regardless, I wanted to eventually test it out. I actually even bought a random second-hand disk from a second-hand shop in Japan whilst purchasing the main unit.
Based on the sticker... the first goal was to inspect the drive!
Pulling the unit apart
In full Sony-style, there's 6 screws (with arrows pointing to them!) on the underneath of the unit that need to be undone. Once they're out, flip the unit back on its base and remove the cover left-to-right. The floppy disk eject button is seated through a hole in the top half of the case, so be careful when removing!
Once off, there's a shield on top of the floppy drive to remove. This has one screw top-right. Undo the screw and then use a flat-head screwdriver to prize off the clips along the back of the floppy drive. After this, there are then three screws that hold down the bracket that the drive is attached to. With these out, you can then perform a back-flip with the drive and expose the wiring. It turns out it's a 34-pin data cable and standard floppy drive power cable!? But with only the 5v wiring.
The drive itself
Things got interesting from here... after removing the top case (more clips, use a flat-head screwdriver), I noticed that there didn't seem to be a drive-belt at all. All articles online indicated that these drives had belts and are known to perish over time. I started pulling the drive apart further and found out that Sony actually chose to split the drive motor across the base PCB!? Talk about a nice way to save space... and not have to need a belt!
Talk about mesmerising... those copper coils are beautiful! But dang... I'd gone and bought a belt and everything... if this still isn't working, as per the sticker, then I'm really in trouble!
Testing the drive
I put it as-back-together-as-needed to test the drive and turned it all on. I put the disk in, but all was very quiet. My MegaFlashROM loaded into Nextor and I hit the number '2' key to switch to the second drive.
What? It works? MENU.BAS sounds like a good place to start...
Ok, here we go... is this a demo disk? "Tanaka Yatsuu Shin"? I'll need a bit of help translating this... regardless, "CG" sounds like fun!
4 Images? Here they are in order...
I had it all working nicely, but the machine was half apart... so I screwed it all back together.
Floppy Drive Issues
Once back together, the drive refused to read. Taking it apart bit-by-bit, it started reading again once the drive shell was off... but this wasn't reliable either...
Gosh-darn... it's time to dig further into this drive... It seems I can wire in a PC drive.. but first I'll open the whole unit up again and give it a proper clean. It felt like it was having issues understanding that the disk was in the drive... I'll start there and determine what sensors are used and if they're functioning correctly... but that's all in the new year!
Digital 54-22703-01 Motherboard – L2 Cache
After making this motherboard fit into the IBM PS55/z, I realised I hadn't decked it out fully. I'd mentioned cache in the first post, and finally got around to ordering some. The goal was to speed up the poor old 486 as it wasn't running as fast as I would've expected it to. Of course, this was also all very subjected as it'd be pretty impossible to actually remember how fast my first PC actually ran!
Usually, parts like this can be pilfered from other items laying on the shelves in my apartment, but this motherboard needed specific 'TAG' RAM, as well as the standard 32KBx8 static RAM chips. I had to go hunting...
Required components
Back to Pafe 45 of the User Manual for this motherboard and we find that we need eight 32 KB x 8 cache SRAM chips and three 16 KB x 4 cache tag SRAM chips to max it out. Straight to eBay and I found a seller in Israel with the correct parts. I incorrectly ordered two sets of TAG RAM chips and only half the required static RAM chips... whoops... fortunately I could pilfer those off another board!
The TAG RAM chips are labelled MCM6290BP25 RIQAB9131.
As per usual... always be careful when inserting ICs. Make sure their legs are aligned with the sockets and don't press until it's safe... otherwise this happens!
With everything in, we just need to adjust the jumpers...
Set all four jumpers (J3,J4,J6,J7) to 2-3... and then boot!
Yosh!
Test Software
Go here and download anything that starts with Cache. I then tested them all out...
They all showed that any data size under 256kb proved quick response times. The rest started spiking as more operations were required. The CCT386 application had awesome graphs.
Now to work out if the games actually operate faster...
Microchannel Sounds Cards (aka Hen’s Teeth)
I was interested in these when the IBM PS/55z was on its way as I wanted to deck the machine out with sound. Turns out that MCA is a rare breed and actually-interesting cards are impossible to come by.
Imagine my surprise when I saw an MCA ChipChat Sound Card (with wavetable addon!) appear on eBay. It started at AUD$50 and I was interested... just because it had to be an investment to sell later?
Here's the description...
This a ChipChat Sound-32 Card for a IBM PS/2 Microchannel computer. It comes with original box and contents. Including reference disk and driver disk. Drivers are for DOS, Win (3.1, 95, NT), OS/2 (2.x, Warp)
And a few pictures:
So yeah, nothing special... not even a mention if it works? Anyway... the 7 days were nearly over and it had gotten up to AUD$141. I was a little disjointed, but yeah... it's a relic! I mean, it's beautiful.. but... I wasn't expecting the outcome:
I'm very happy that someone, who I hope REALLY REALLY wanted it, got a very nice piece of computing history!
Testing EGA/CGA Cards
I'd picked these up a while back but never thought I'd get to test them. I don't have any monitors that support the old standard and haven't actually seen any available on eBay for a long time. I was quite surprised when I realised that the GBS-8200 that I picked up for my MSX would work to convert the frequencies! I'd only ever expected to use it for the MSX RGB signal.
V7 VEGA 8-BIT VGA
This card (thanks, stason.org!) has the ability to output both EGA/CGA and VGA! It's 8-Bit ISA and it a little worse-for-wear...
This seems to be quite an advanced card of its era. Happily outputting to the monitor you happen to have and allowing for future upgrades! It also even seems to have the VGA auxiliary header?
VIDEO SEVEN V7 VEGA EGA
This card (thanks again to stason.org!) is a little older. It has a header for a light-pen and suppsoedly two composite video inputs!?
GBS-8200
I had purchased the bare-bones board and never tried it. Thanks to my new desktop power supply, getting it going was really very easy. The board comes with a standard DC jack, but also a pin header for the input voltage. Instead of using a crappy wall-wart, I instead powered it on the supply, having the additional benefit of knowing the current requirement!
Ian Stedman thoroughly reviewed this board. His outcome was that there were a few issues, but a strong power supply is not needed. It turns out that my testing below shows that it hardly needs 5v at 400mA!
You can see where I've soldered on to for the EGA/CGA input. It's the bottom-right 5-pin header and I couldn't find an acceptable plug. In the end, a quick bit of tinning worked. There's 4 wires: R,G,B, Sync and Ground. The EGA Pinout on Wikipedia (CGA is nearly identical) shows that there are two sync lines, but we only have one on the GBS-8200! As mentioned above, we'll use the bottom-left connector on the board.
Combining HSync and VSync
We'll need to combine the Horizontal and Vertical Sync outputs from the EGA signal as the GBS-8200 requires a single Composite Sync signal. To do this, we can use an XOR or OR gate. Ian is our saviour once again and has provided a circuit to combine the signals.
Build the circuit as he's described. I actually found that either XOR or OR worked fine with the GBS-8200!
I probably should've tested some games...
Hercules?
No such love. Same connector, but a very different video signal. Turns out it's actually a digital TTL signal that this unit cannot process. If you really want yo convert it then you'll need to buy a GBS8219.
Is that a printer port? Space saving tech! I don't have any plans to pay for a Hercules monitor or an 8219, so this is going straight on eBay.
DOS USB CD Drives? Of course!
After mucking around trying for a while trying to get the new Compaq motherboard into the old IBM PS55/Z, I realised I'd wasted a lot of time playing with SCSI cards. This motherboard has a USB port! Can I use an external USB CD drive in DOS? It turns out the answer is yes!
Download USBASPI.SYS from here and then a USBCD.SYS (choose your brand) from here. I fluked it and tried the first USBCD1.SYS driver which worked perfectly! Firstly, copy the files to your HDD (I always put them in C:\DOS\), and then edit CONFIG.SYS:
DEVICE=C:\DOS\USBASPI.SYS DEVICE=C:\DOS\USBCD.SYS /D:MSCD001
And don't forget AUTOEXEC.BAT as follows:
C:\DOS\MSCDEX.EXE /D:MSCD001
And reboot...
Out with the old and in with the new!
Meanwhile, Windows 98se kept locking up (whole machine freeze!) at Programs on the Start Menu. I actually had to unplug the CD drive and reboot to get it to continue! But the end result was lovely...
Time to really make this motherboard fit!
IBM PS/55 Z – All About The Pentiums
Found this at the local flea market on the weekend. After spending many nights replacing the guts of my IBM PS/55Z with a 486 DX2/66, I saw the specifications of this motherboard and couldn't resist snatching it up. 166mhz! PCI! ATX! 96mb RAM! USB! What more could you ask for in a vintage machine? I wonder if I should try and make it fit!?
Turns out it's the motherboard from a Compaq Deskpro 2000. Am I happy to have the Compaq splash screen display when the machine powers up? I believe the BIOS will also be tricky to get into as these machines need a separate hidden partition with Compaq's proprietary tools?
A quick Google lead me to realise that building an AT to ATX adapter would be a nightmare. I'd need to create a solid +3.3v DC supply from the 5v rails and also muck around with more sense wires? Might be easier to just rip out the power supply and slap an ATX unit in there. Would have to merge in the CRT electronics though... Of course, it's also ever-slightly too long, so there'd need to be quite a bit of hacking to make it fit.
Such delight at finding this beautiful piece of equipment! ... Oh wait, maybe this will be easier than expected!
How To Actually Connect An External MIDI Device
I started this journey thinking that MIDI cables were really simple. There's a joystick-style plug at one end and two DIN-5s at the other for MIDI-OUT and MIDI-IN. MIDI output from the computer comes out the OUT cable and MIDI you're receiving from elsewhere comes into the computer on the IN cable.
So, when you're hooking up an external module, like this MT-100, you simply connect them up...
There they go, OUT to IN and IN to OUT. Right? You want the output from the PC (be that the soundtrack of a game) to go into the Synth/Module to be processed. Like so... I don't really care about the module output at this point, but for-neatness-sake, let's plug it in!
IT TURNS OUT YOU DON'T WANT TO DO THIS. You're actually creating a loop and the MIDI data will come straight back out of the module and into the PC. This will then cause all matter of DMA/IRQ interrupts and you'll probably freeze your machine. I've actually just spent the greater part of two nights having DOOM II lock up every time I set both SB16 and MIDI-OUT. I went through all matter of IRQ or DMA settings, thinking the combination of a SCSI card, Network card and Sound card were fighting. After a quick google of vogons, I realised that the machine was freezing/slowing-down/locking-up due to the rebounding MIDI data!
This article was actually going to be titled 'DOOM II Freezes when selecting SB16 and MIDI-OUT'. Either way, do this instead... connect OUT (from the PC) to IN (on the module)...
And you'll be an uncle's monkey!
Ahhh… Floppies
There's nothing like the smell from a fresh box of floppies. That acrid plastic fragrance, reminding you how technologically advanced these little wonders are...
I recently found this box for a dollar at a local tip shop. Over the moon, I thought I could finally build a solid set of DOS 6.22 and other disks. I even got labels! Of differing colours!
Of course... none of them worked... They'd neither be read, formatted or imaged. I assume that fresh smell of acrid plastic meant that these had all been toasted by the sun at some point.
In the bin they go... Or maybe I should make some art.
IBM PS/55 Z – Replacing the Guts
I was unsuccessful in restoring the original motherboard contained in the IBM PS/55 Z – 5530 that I picked up recently, so the new goal was to find a similar motherboard with riser card and give the machine an upgrade. I knew I'd never find an exact fit, so I started preparing to make things work.
The overall structure
The motherboard in this machine is around 290mm x 340mm and has a central riser card with 3 MCA slots. These are slimmer than ISA cards, so there was always going to be an issue fitting a standard riser card in there. There was also only front-panel space for two 'tall' floppy drives and hardly any other room internally for hard drives.
Digital 54-22703-01 Motherboard
This item popped up on eBay and looked like a perfect fit. It had no RAM and a Dallas CMOS chip, but I'm always up for a challenge. The board happened to be smaller than the IBM board and so there'd be extra effort to mount it, but it had a replaceable CPU and I had an upgrade for the stock DX-33.
At first it didn't even want to boot. The front-panel connector is a pin-header and I have no idea of the pinout. Flying blind, I tried just about every RAM SIMM I had and still couldn't get it going. Finally I remembered I had an ISA diagnostics card, of which I'd never tested.
Once plugged in, I kept getting 0xD0 on the display... oh wait... that's 0x09. The manual indicates that it's failing to read the stored CMOS configuration data for the BIOS. Well, that isn't entirely unexpected as the Dallas clock-chip is probably toast. I quickly fixed this, as I've done before and before.
With this in, it still didn't work. I emailed the eBay seller as they'd hinted the board needed specific RAM. He sent a few pics of SIMMs he thought might work and I scrummaged through my box-o-junk and found similar. With a little more swapping and testing I got the card through to 0x57. Interesting... nothing on the screen.... OH! I'd disabled the on-board VGA whilst testing!
After a little more testing, I found 3 4mb SIMMs, totalling me up to 12mb of RAM. Perfect for a vintage 486 DX2/66. Note that the board still uses a 33mhz clock when running the DX/2 66mhz. As per the board configuration, the 66mhz is 'internal' to the CPU!
Mounting it
The chassis is pure steel. It took a lot of bending, twisting and grinding to make this fit. The bottom rear slot needed to be extended and the base was punched to allow mounting screws for the motherboard. I then created a vertical bracket to secure the ISA cards to. Thankfully this board had on-board VGA... otherwise I'd have totally run out of slots!
The middle riser card that came with the board was too low... the bottom slot was too low. Fortunately I had another riser that worked perfectly. The lower riser also didn't clear the clock-mod I did for the cell battery!
The plastic housing for the hard drives and floppies was a bit of a pain. It used to secure the center riser card and this was no longer an option. It also held the front floppy drive with very little clearance from the motherboard. I chose to swap the floppy to the other side, but this caused even more problems as the actual case had a blank panel there! More dismantling saw this to be an easy swap, but not after a LOT of fiddling.
As you can see above, I'm messy and always in a rush. Regardless, the end result was totally functional.
Power Supply
The previous motherboard had an edge connector with voltages supplied from the power supply in the chassis up top with the monitor circuitry. This was based off 110v, as the unit was from Japan. I wanted to change this to a newer power supply... so I dismantled the monitor to determine if it was even possible.
All was looking good until I saw that one of the wires over to the monitor board needed +85v. I've no idea how to generate that from a standard PC power supply... so I went back to the original idea of augmenting the internal power board to work with an AT motherboard.
After analysing the pins, I started the re-routing. All was available except the -5v. Goshdarn. I tried to boot it anyway and got a 'blip' from the SCSI LED... but no POST. How do you generate -5v? Seems you can use an oscillator circuit or an LM7905. The guess was that I could use the -12v rail to provide a -5v rail.
A quick soldered-up hack got the -5v rail in place and, well, it booted??? I couldn't actually believe my eyes...
I then turned the power switch off and back on again. I then had issues getting the machine to reliably come back on. Seems that I'd fluked it this time around and the -5v rail wasn't the answer.
Power Good
Seems that the very first pin of a standard AT Power Supply is known as the Power Good signal. This line goes high (+5v) when the power supply has decided it is outputting valid power values and that then notifies the motherboard to start booting. The main point to note in that article is that a motherboard will reject this signal if it fires before 100ms and after 500ms. Eep... we're tied to 5v, so it's probably either totally noisy or easily firing before 100ms.
So... do I fully review the power board in this system and determine a proper value for this? Or just hack in a fake timer to produce a 200ms delay? It seems that we're already causing a random delay on the line as I can get the machine to boot sometimes... so I might just try and fake the signal by use an RC charging circuit to add a small delay.
A quick interesting note: I actually used the wiring off an old power supply from a dead power macintosh for the motherboard plugs. It turns out that pin 1 and 6 were tied together by a tiny capacitor!? That capacitor is shown above. It seems Apple were using the same trick on their 7220 line of Power Macs. Might've been a cheap way to use pc-specification power supplies in that model/series as the goal back then was to be as off-the-shelf as possible to produce a cheaper line of macs.
Anyway, where was I? Oh yeah... I want to fake the signal as well. To do this, I'll throw an electrolytic capacitor and resistor onto the power good signal wire. Use the calculator here (thanks Digikey!) to determine what you need. We'll want a 200ms delay from a 5v supply, so that's a 2k resistor and a 100uf capacitor. The resistor will be between the 5v supply and the positive terminal on the capacitor. We'll then connect the other side of the capacitor to a ground line. Finally we'll run the power good signal wire to the join between the capacitor and the resistor.
Turns out my trusty box-o-stuff only contained 3k3 resistors, so I soldered in this and an 100uf electrolytic capacitor and, heavens above, the machine booted everytime without fail! I then used the remaining 12v and 5v wires to get both full-size and floppy-size molex power plugs connected. Make sure you get the power wires the correct way around! Before I knew it, the machine was booting without any external support. Unfortunately it was stalling at the SCSI BIOS.
HDD Sizes
The BIOS in this machine was determined to not let me use the full size of my 1.2gb C:. I attempted to use ANYDRIVE, but it really didn't like the GOTEK that I was using. Instead I gave EZ-Drive from Western Digital a shot. (Really good VOGONs thread on the topic here!)
I also considered tinkering with the actual BIOS of the motherboard. It seems to be two EPROMs and I would've been happy to whip out an old machine with a real LPT1 port to program one. A little digging revealed a great archived site with the DEC LPV+ support files. One of them even mentions the drive size limitations I was facing! Hah... it then simply recommends to use drive overlay software... So, back to EZ-Drive...
Firstly, set up your BIOS with the 'default' setting for a 504mb drive.
Next, download the EXE (not the ZIP) from Phil's Computer Lab and copy it to a disk. I was using a Gotek, so I copied it to one of the blank disks available. Boot using another disk and then switch back to this one. When you run the EXE, you'll be greeted by the welcome message. It'll take some time at this point as it's copying itself to RAM. Once in RAM, it'll inform you that it's time to switch disks. At this point you need to insert a blank disk that'll be your EZ-Drive boot disk. I swapped to a new slot on the Gotek and hit enter... in no time the disk was built and I was prompted to restart.
From here, it's child's play! The GUI is perfect and found all the information it needed. I just kept choosing the default options. During the install it'll ask for a disk with a bootloader on it. I switched the Gotek back to DOS 6.22 Disk 1 and it copied the required files over.
Once complete, the machine will actually boot from this drive to the basic DOS it installs. Unfortunately, DOS still needs to be fully installed and cannot be done from the booted HDD as the floppy will tell you to restart with the disk in A:. Of course, if we did this and booted straight from the floppy then we'd undo all the work that EZ-Drive has just done. Instead, as per the instructions below, we need to try and boot the HDD, but hit CTRL just as it's about to start.
If your timing is good, then you'll get the following screen...
From here you can hit A, get the disk in the drive (if you have a Gotek, then wait 2 seconds after selecting the floppy index number!) and then hit any key to boot the disk. DOS 6.22 then installed with a minor warning that it'd overwrite the current DOS install... it's not a real DOS install (it was just the boot files that EZ-Drive copied over), so yes, please, wipe it and get my OS ready!
Meanwhile, if you're adventurous... there's a truckload of DDO software here to try out if you can't win with ANYDRIVE or EZ-Drive.
SCSI Card
The card is an Adaptec AHA-1542B and it really didn't want to find the attached drives. I had an external case with a CD drive and an ultra-wide (converted to 50-pin) 9.2gb IBM HDD.
I could see it pinging both drives, but the card never seemed to find Drive ID 0 at LUN 0 whilst loading the BIOS. Usually you can hit CTRL-A at this point to get into the BIOS configuration, but this card wasn't even offering that option?
There's a mention on this forum post that my card can only do up to 1gb HDDs. The manufacturer reckons that it will support 8gb drives. Unfortunately, I don't seem to have any drives small enough? Maybe this is why the boot is stalling. The AHA-1542C BIOS ROM is here, but probably wont work in this card. There's AHA-1542B BIOS ROMs over here on Github, but a quick Notepad++ inspection of the BD00 bin image shows that the newest one is already version 3.20... I have 3.10 so maybe I should update?
I'd been testing all this on an ultra-scsi hdd with a converter... but I remembered I had an ancient macintosh 1.2gb drive laying around and it was a proper 50-pin! It worked perfectly... and then I remembered that old MOTOR START trick. These server-grade SCSI HDDs don't actually spin up until they're told to. Usually you can request this under options in the SCSI BIOS, but this card doesn't seem to have one! Instead, I had to adjust the jumpers on the drive itself AND the converter/adapter. Note that these drives, with only power applied and the MOTOR jumper set, will spin up. Once you plug the SCSI cable in, regardless of the MOTOR jumper setting, they WON'T spin up until the host has been turned on!
All of my SCSI devices were mounted in an external case and it was causing me grief. As mentioned, the drive would spin up fine with the jumpers set and power applied, but as soon as I mounted them and closed the case, a quick power-on test would see the HDD no longer spin up by itself! I spent a long time trying to work out this out. As mentioned above, the result is that the drive won't spin up if an actual ribbon cable is plugged into the drive. The MOTOR will only spin up when it senses that the host is switched on. So the MOTOR jumper is really I'LL SPIN UP IF I SEE THE HOST IS ALIVE; I assumed it was I'LL SPIN UP IF I HAVE POWER.
With everything now powering up, the BIOS was listing the drive as D:. I then tried the ADAPTEC DOS Drivers and found that ASPI4DOS.SYS 3.36 just kept reporting Installation Failed. I found a forum post on VOGONs that mentioned a version downgrade to get things working. I love little hints like this: ASPI4DOS.SYS 3.35 worked perfectly! Of course, 3.36 has all the disk tools whereas 3.35 is just the drivers... I had to download and put both on C: to be able to get the SCSI drive into a usable format.
With partition size limitations, I made 3 that were around the same size as C:. D: was still only being mounted... but I assumed Windows would find the rest. Note that, if you've mounted your D: via the SCSI BIOS, you will be limited by your computer's BIOS for partition sizes. I recommend NOT mounting via your BIOS first and booting to DOS to use AFDISK from the 3.36 driver archive. Once you've created your partition set, you can then turn the BIOS back on, or just let Windows use the drives and have DOS forget them.
Sound Card + MIDI + Speakers
I had an ISA sound card sitting on the shelf. It turns out it's a Reveal SC400 Rev.3 (I38-MMSN811) which seems to have come from a Packard Bell system. Further digging indicates that this card is actually just a rebranded clone of a third generation Sound Galaxy Nova 16. It utilises the AZT-2316 chipset and you can find more information about the whole family here. Grab the full Aztec Driver kit here, and make images of the first three disks in the NOV16E folder. I couldn't actually get the DIAGNOSE application to work successfully... it seemed to either hate the DMA or IRQ configuration... but running DEMO8 and DEMOFM produced sound!
Of course, if you're going to use Windows, then everything will just work. This card is new enough to be well-supported. That bloody W95 Chimes and TADA! were playing over and over whilst installing software and restarting.
Networking
This was the easiest LAN card I've ever installed, well the easiest ISA LAN card. It's a 3Com EtherLink III 3c509b. No jumpers, capable of PnP! Of course, that wont work here, but Win95b happily configured it.
Under older windows, don't forget to provide the gateway and DNS settings! These won't be auto-discovered from DHCP. Internet Explorer 3.0 actually just worked perfectly. HTTPS sites all failed... which is actually a really big issue now with older hardware. Thanks to all the new HTTPS security requirements, no older software works with new URLs.
Front Panel Connection
The DEC obviously had a proprietary front panel board. The header on the motherboard was unlabeled and there is zero documentation online. I grabbed my trusty multimeter and started probing the wires for voltages.
The hard drive activity light was found by choosing the biggest folder on C: and copying it to another folder. From there, there was only one pin that was 'pulsing'. I wired this through to the LED on the front of the IBM. The speaker was a little more tricky. I created a quick QBASIC program: 10 BEEP; 20 SLEEP 1; 30 GOTO 10; which happily started a 1 second beep every second second. Again, this rhythmic pulse was found on another pin. Each seemingly had a GND as a neighbour... but maybe I should have hard-wired to a real GND as I don't know if the neighbour wasn't another digital signal?
Windows
This was going to be another WFW311 machine before I realised I was easily spec'd for 95B. Back in the day, the family had a 486 DX2/66 with 4MB of RAM and we went to the computer store to get a bigger HDD and an extra 4MB of RAM for Windows 95! This machine has a MUCH bigger HDD and 12MB of RAM... so we're good to go.
A quick visit to my favourite site produced the required install media and the WIN95 folder was copied to C:\. I always do this as it makes it much easier when configuring (or re-configuring) network options in the future. Windows always manages to ask for the Installation CD and if it's on C:\ then it just zooms through without asking.
The installation was nearly painless. After typing SETUP.EXE, I was stuck just after hitting ENTER to scan disks. Scandisk didn't actually come up and the SCSI drive was making a very noisy hum. Turns out the heads were starting to fail and SCANDISK's attempt to wake up the drive locked up the computer. Well, not the whole computer... turning off the external SCSI enclosure saw SCANDISK continue... but that wasn't acceptable. I quickly swapped out to another SCSI drive (and partitioned and formatted...) and started the install again.
Before I knew it, I was at that treasured desktop once again! Here's Opera 6.00 and WinZip 5.0.
1024x768 Resolution
The Display Adapter IV card in the old mainboard was capable of a 1024x768 resolution. Unfortunately, this had a weird mode and wasn't standard SVGA. The display mode is detailed here (thank you, Diary on wind) and I tested out if Scitech Display Doctor would make Windows 95 display it. Turns out that previous link is shit.. use this one instead. (or here) (or here) You can find PMHELP.VXD here.
Here's the Quadtel DEC VLB S3 805 Driver.
It turns out that, even with the relevant display drivers installed, Scitech just doesn't care for my video card. The video is soldered onto the motherboard, so we're out of luck. I'll try and find a monitor INF for the display or something shortly... there must be other methods!
L1/L2 Cache
Windows 95B performed pretty awfully... or maybe it was Scitech Display Doctor that started to make it chug... either way, I wanted to see if I could boost performance. One standard method is to install cache. This is a small block of RAM that sits right next to the CPU and provides a 'working area' to pre-load the next disk or ram segment so it's readily available. It's actually the reason the newest CPUs on the market have security bugs as the data pre-loaded can be from other applications and then be viewed.
For this motherboard, there's 8 RAM slots and 3 TAG RAM slots? Page 45 of the Service Manual indicates that I need For the DECpc LPv, secondary cache memory consists of four or eight 32 KB x 8 cache SRAM chips and three 16 KB x 4 cache tag SRAM chips. I jumped on google to try and find the TAG RAM chips, as all boards I already had only had the cache chips.
I hadn't actually heard of TAG RAM before and didn't exactly know what to look for. It turns out it's a block of RAM used to store address data of what's actually in the cache. The CPU uses it to bookmark where it's at and what data is where. For this we'll need 3 chips of 16KBx4. These all seem to be in Israel, so I'll sit tight and wait for them to arrive.
Update: Cache has been installed!
The Final Product
Getting this thing running was a real tour-de-force. At no point was a single task easy, but for the first time in a long time everything did come together nicely. I'm really happy with the end result and may just leave this as my beige beast for playing old games!