Subscribe via RSS
15Nov/180

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!

Get 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...

DSC05323

Out with the old and in with the new!

DSC05330

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...

DSC05326

Time to really make this motherboard fit!

Filed under: Retro No Comments
14Nov/180

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!?

DSC05301

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?

DSC05310 DSC05311 DSC05313

DSC05304

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!

Filed under: Retro No Comments
26Oct/180

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...

DSC05206

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!

DSC05207

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)...

DSC05213

And you'll be an uncle's monkey!

Filed under: Retro No Comments
25Oct/180

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...

DSC05190

DSC05191 DSC05192 DSC05194

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!

DSC05199

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.

DSC05200

In the bin they go... Or maybe I should make some art.

Filed under: Retro No Comments
16Oct/180

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.

DSC04888 DSC04902 DSC04907

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.

DSC04935

DSC04936 DSC04939 DSC04940

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.

DSC05177

DSC05178 DSC05180DSC05181

DSC05166 DSC05167 DSC05171

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.

DSC04944 DSC04945 DSC04947

DSC04958

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!

DSC04965

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!

DSC04968

DSC04980 DSC04992 DSC04998

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!

DSC04972 DSC04974 DSC04986

DSC04969

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.

DSC04987 DSC05018 DSC05015

DSC05031

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.

DSC05037 DSC05038 DSC05040

DSC05059

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.

DSC05048 DSC05050 DSC05063

DSC05069

DSC05064 DSC05071 DSC05072

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.

DSC05074 DSC05076 DSC05140

A quick soldered-up hack got the -5v rail in place and, well, it booted??? I couldn't actually believe my eyes...

DSC05083

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.

DSC05091

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.

DSC05137

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.

DSC05125 DSC05126 DSC05128

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.

DSC05103DSC05105 DSC05111

DSC05112 DSC05114 DSC05115

DSC05117 DSC05119 DSC05121

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...

DSC05133

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.

DSC05174

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!

DSC05172

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.

DSC05176

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.

DSC05144 DSC05147 DSC05148

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.

DSC05149 DSC05153 DSC05154

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.

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!

Filed under: Retro No Comments
26Sep/180

IBM PS/55 Z – 5530 All-In-One

I saw this on eBay and couldn't resist... I probably should have resisted... I also probably should have actually reviewed the specifications prior... but whatever... I made the seller drop it to a Pack'n'Send and it arrived, perfectly packed, in no time. It's a cute little unit. I actually had the 12" IBM VGA monitor back in the day as a single unit and loved it for its clear and sharp 640x480 picture!

DSC04888

The IBM Personal System/55 (Here's some more information) was a series of computers released in Japan back in the late 1980s. It was based on the x86 architecure, but used IBM's own Microchannel (MCA) system bus. I sorta wish I'd researched that point beforehand as nowadays MCA cards are few and limited in technology. Ethernet is hardly BNC co-axial and SCSI is rare. Audio is even rarer... but there were Creative and Roland cards! Good luck trying to find one!

DSC04890 DSC04896 DSC04897

The front sports two slots for floppy drives, brightness/contrast and a lovely lever-style power switch. There's also your power and HDD LEDs. The swivel base is also a nice addition. There's even a lever on the rear to secure the unit once you've swivelled it to the point you like.

DSC04901 DSC04902 DSC04903

There's a panel on the rear to cover up the VGA cable. This cable is a little strange... it seems to be an artifact from the fact that the whole unit is really just an IBM 12" monitor with a growth hanging from the base. Instead of running the cable internally, they actually have a midget lead and plug that is exactly the length required to fit into the Display Adapter card which can therefore only be in slot one. This becomes more apparent inside when you realise the card requires an extended slot and, you guessed it, slot one is the only such slot.

DSC04906

The whole PC area of the unit slides out once you unplug the VGA cable and unscrew the two black screws. I really do like the modular design! Note, it also seems this unit expects the keyboard to have a speaker in it? Interesting!

But what does it look like on the inside?

Getting access to the motherboard is super easy. Unscrew the two screws and then slide the whole lot out. Make sure you unplug the VGA lead first! The shelf that the motherboard sits on is easy to work with and provides access to drives as well. My unit didn't come with any... I assume the floppy will be standard? But the HDD definitely isn't. Jeesh. The MCA bus is also totally obsure and the graphics card is a Display Adapter IV. It also needs to stay in the top slot as that's the only extended MCA slot and it's also the only one the VGA lead will reach to.

DSC04909

DSC04910 DSC04911 DSC04913

You'll note that with the motherboard removed, the case is still very much in-tact. Actually, it's sealed. Getting to the area where actual power supply and monitor are is a little more tricky. I wanted to give it a good visual inspection prior to powering up, so I endeavoured to open it. Turns out it's built to be totally tamper-proof and return-to-factory only! There are two removeable caps on top that present you with 'headless' screws. Yes, they're screws... but there's no ability to actually unscrew them.

DSC04823

DSC04824 DSC04825 DSC04828

DSC04829

I made a total mess with my (fake) dremel to try and gouge a flat-head screwdriver slot. I ended up melting a lot of plastic... but for some reason I'd decided that the covers will go back over, so the mess is contained. Either way, the screws came out and the case came off.

DSC04831

DSC04832 DSC04833 DSC04835

Yup, it's a CRT alright... and that power supply is totally embedded into the monitor housing. So much for an easy switch to a 240v supply. I'll revisit this once I work out if the motherboard is good. If it's not, I might just gut the whole thing. Back in '99, The Techtroid Box did just that.

DSC04839

Meanwhile, the patterns of dust on the inside of the monitor housing were slightly mesmerising!

Motherboard Layout

This is a flat AT style board. All integrated ports are along the rear. Some of the ICs have IBMs infamous heatsink shields that make them look military-grade. The MCA bus is obvious and two riser cards exist for a HDD and the 3 MCA slots. There's also a floppy header and some random jumpers.

DSC04872

There's a header at the top end that plugs into a socket very similar to a Commodore 64 User Port Edge Connector. This is fed from the powersupply that's intertwined with the monitor circuitry in the do-not-touch zone. Looking down at the board, with the edge connector pointing up, the pinout seems to be as follows:

GND GND GND GND GND GND GND
-12v 12v 2.8v 5v 5v 5v 5v 5v 5v

So, above you'll find the top and bottom rows, as if you were looking into the socket inside the chassis from the rear. I have no idea if the voltages are correct as my machine isn't booting.

Does it work?

The unit requires 110v AC, so I used my trusty step-down transformer. After re-assembling the bare minimum, I applied power. The monitor came to life, but the motherboard was dead. There was a little bit of heat from the CPU, but no other life. No manner of RAM SIMMs helped. A closer inspection revealed that just about every aluminium electrolytic capacitor had started to corrode. Tracks were beaten in a few areas. Looking even closer, it also seems that the motherboard is 4-layer: tracks top and bottom with two plates in the middle... possibly positive and negative?

DSC04849 DSC04850 DSC04858

I started replacing capacitors where relevant and testing tracks... No amount of effort brought it back to life though.

DSC04916

Turns out you can feed the motherboard connector through the front floppy slot and then connect it up... allows for much easier fault diagnosis!

Is it the EPROMs?

I intend on popping them out and reading the data off them. From a visual inspection of the code, I might be able to tell if they look OK? Maybe copyright data, etc... but I'll have no checksum to work with to determine if the images are correct. I'll also have no other images to load to test further...

Final answer: replace the guts?

I'll do this in another post. There's a few options for motherboards with riser cards on eBay and I'll need to choose wisely as I'll want the measurements to line up as closely as possible. Of course, I could just slap something in (as per The Techtroid Box's post), but I want it to be cleaner and more permanent.

Does the CRT work?

The video card is an IBM "Display Adapter IV". Supposedly it has an 1024x768 mode? Here's more information, albeit in the wrong language. And this article (scroll down to PC # 6) also indicates the resolution.

DSC04922 DSC04927 DSC04928

DSC04931

I happily got 640x480 working... I'll spend a little more time later with 1024x768. First I'll find it some new innards.

Filed under: Retro No Comments
24Sep/180

68-pin RAM SIMMs

I had previously picked up this Bravo 4/33 486 Machine and had assumed, from the photos in the auction, that it needed standard 72-pin SIMMs. A quick physical test proved this assumption very wrong. This was a proprietary motherboard and the slots were narrower than 72-pin SIMMs and wider than 30-pin! I'd never actually seen anything like this before. I then researched and realised that this board needed 68-pin SIMMs.

DSC04879

eBay came to the rescue and two 4MB SIMMs arrived from Denmark! Seems they're mainly used in Roland hardware or Macintoshes. Anyway, from the photo above you would easily mistake them for 72-pin SIMMs. It all becomes obviously when you line up all the types...

DSC04881

Above we have a 128-pin SIMM, a 72-pin SIMM, two 68-pin SIMMs and then a 30pin SIMM. I think quickly tested in the motherboard and success! They fit!

DSC04885

Of course, the machine still didn't boot... time for more mucking around... (and no, it wasn't the fault of that loose screw...)

Filed under: Retro No Comments
5Sep/180

What RAM slots are these?

I recently found a relic on eBay. It's an AST Bravo 4/33 (not the LC!) and has a very proprietary motherboard. I'd seen the photos and I thought I saw standard 72-pin SIMM slots. Turns out I was totally wrong... I've never seen this size before!? There's a similar-but-not-quite motherboard diagram here, but the jumpers are in different locations. The strange RAM also doesn't get a mention?

DSC04800

Turns out they're neither 30-pin, nor 72-pin! Did AST decide to use Apple's proprietary 64-pin SIMMs? There are similar (68-pin) 256kb and 512kb SIMMs on eBay, but they don't match the pin-count and they're for VRAM in older Apples? There also seems to be other something resembling RAM soldered onto the motherboard, but I can't find any information to determine if that's actually RAM or just cache. Either way, the machine just beeps once when power is applied. The beep sounds like a standard "NO RAM" boot error. There's also a fried electrolytic capacitor.

...Actually, I just found two 64-pin 4mb SIMMs for an Amiga... Let's see if they work when/if they arrive...

Filed under: Retro No Comments
24Aug/180

ASUS Media Bus (aka not-PCI-64-bit)

I'd picked up an old motherboard from an eBay auction and had seen a PCI slot with an extension.

DSC04423

Here I was thinking it was PCI 64-bit...

DSC04425

I grabbed the 64-bit SCSI card that I'd installed in my G4 Graphite Macintosh (which has a suite of 64-bit slots) and quickly realised it wasn't what I thought it was!

DSC04434

Ok.. it doesn't fit... let's look closer?

DSC04435

From the photos above, it doesn't take a genius to work out that it's actually a Media Bus 2.0 slot by ASUS. Turns out they tried, for a short while, to make their own proprietary slot that combines PCI and ISA. The brown socket is actually just a condensed ISA slot and the cards that fit are usually dual-purpose, combining video and sound or SCSI and sound.

V1.2 and V2.0 Compatiblity

Note that there are two versions and I failed. I went gung-ho and purchased an 'ASUS Media Bus' card on eBay without paying attention to the version. This card was meant to be the ATI Mach 64 + Sound Blaster card and I was really happy... saving slots it a great idea! A week after purchase, whilst the card was still in the mail, I did a little more research and realised that this card would be ASUS Media Bus 1.2, not 2.0! I went back to the seller and found a SCSI + Sound for Media Bus 2.0 and ordered that too.

A few weeks later (thanks to surface mail), a missed-delivery slip appeared in my letterbox and I went to pick up the video+sound card...

DSC04427

DSC04428 DSC04429 DSC04430

Sound? Check! Video? Nope... What? The card I had ordered second arrived first! This can't be good. I still had a V1.2 card in-flight somewhere... would it arrive? I purchased a V1.2 motherboard I saw on eBay anyway; it was cheap and I wanted to use this card... when it arrived!

Anyway, back to this card: It's the PCI-AS300 Adaptec AIC-7880 SCSI + Vibra 16 PnP Sound.

DSC04449

It fits nicely, as one would expect... and works perfectly too!

DSC04452

The V1.2 motherboard then showed up (before the V1.2 card!) and, just to test, I tried to see if the PCI-AS300 would fit...

DSC04447

Nope... millimetres out! I actually think the V1.2 card is lost and I now have a nice and clean Pentium board for another machine... oh wells... Note that the V1.2 slot just says MEDIA whereas the V2.0 says MEDIA BUS 2.0.

DSC04440

I hope others don't make the same mistake!

Filed under: Retro No Comments
21Aug/180

INTERLINK – Reverse-Engineering the Protocol

I've recently been playing with INTERLINK. Firstly, it was between two real machines, but then I managed to get DOSbox to talk to another DOSbox instance and a real physical PC. From here, there was a thought... why need DOSbox to host the INTERLINK server when I could possibly emulate the conversation and then create an app that'd work on all versions of Windows (or other OS') and then allow easier serial transfers to older equipment.

This post will be a work in progress for quite a while. I'll be updating it as I find time to work through the 'conversation' between the hosts... I might also spend a little time on reversing the actual source of INTERLINK itself.

Snooping in on the Conversation

As per the previous post, I created a quick .NET app to listen in to the serial conversation. This was done via the help of Eltima's Virtual Serial Port Driver. A pair of virtual ports was created and DOSbox was hooked onto one side. From here, I hooked my app onto the other side of the virtual pair and then into the real physical port. A real computer was then hooked onto the end of that port. You could also use two DOSbox instances here, along with two pairs of virtual ports.

dosbox-to-real

You can download the source of my serial snooping app here.

The Conversation

This is where it now gets a LOT harder. Below shows the client (green/left) talking to the DOSbox server (blue/right). From the conversation, the client works out what drives are shared: A: and C: to D: and E:.

A: and C: A:, C: and D:
0xAA
Hello?
Hi!
0x00
0x55
0xFF
0x5A
0x11
0x80
0x7B
0x02 0x00 0x00 0x5D 0x03
0x80
0x81
0x7A
0x22 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x01 0x00 0x00 0x01 0x00 0x20 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xD9 0x73 0x50 0x42 0xAA 0x8D 0x75 0x72 0x1F 0x12
0x81
0x02
0xFD
0x02
0x04 0x82
0x79
0x21 0x00 0x00 0x00 0x00 0x00 0x00 0x0A 0x01 0x01 0x00 0x01 0x00 0x20 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xF7 0x0C 0x71 0xEA 0xB0 0x04
0x82
0x03
0x83
0x78
0x24 0x01 0x01 0x00 0x16 0x06 0x03 0x03 0xFF 0xFF 0xFF 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0x95 0x6E
0x83
0x00
0x80
0x7B
0x57 0x01 0x0A 0x16 0x06 0x06 0xFF 0xFF 0xFF 0x00 0x02 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xC2 0x08 0xC2 0x08 0xC2 0x08 0x42 0x28 0x42 0x28 0x42 0x28 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xF2 0x73
0x80
0x01
0x81
0x7A
0x02 0x1C 0x00 0x1B 0x1D
0x81
0x02
0x82
0x79
0x17 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xD5 0x2F
0x82
0x03
0x83
0x78
0x02 0x1C 0x02 0x3B 0x5F
0x83
0x00
0x80
0x7B
0x17 0x28 0x32 0x36 0x38 0x4D 0x62 0x29 0x00 0x00 0x00 0x4D 0x53 0x2D 0x44 0x4F 0x53 0x5F 0x36 0x00 0x00 0x00 0x00 0x00 0xCA 0xC7
0x80
0x01

Other side receives drive D:\

0xFC
Ping
Pong
0xFC
0xFC
Ping
Pong
0xFC
0xFC
Ping
Pong
0xFC
0xAA
Hello?
Hi!
0x00
0x55
0xFF
0x5A
0x11
0x80
0x7B
0x02 0x00 0x00 0x5D 0x03
0x80
0x81
0x7A
0x22 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x01 0x00 0x00 0x01 0x00 0x20 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xD9 0x73 0x50 0x42 0xAA 0x8D 0x75 0x72 0x1F 0x12
0x81
0x02
0xFD
0x02
0x04 0x82
0x79
0x21 0x00 0x00 0x00 0x00 0x00 0x00 0x0A 0x01 0x01 0x00 0x01 0x00 0x20 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xD9 0x73 0x50 0x42 0xAA 0x8D 0x75 0x72 0x28 0xD6
0x82
0x03
0x83
0x78
0x24 0x01 0x01 0x00 0x16 0x06 0x03 0x03 0xFF 0xFF 0xFF 0x00 0x02 0x03 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0x77 0xE9
0x83
0x00
0x80
0x7B
0x57 0x01 0x0A 0x16 0x06 0x07 0xFF 0xFF 0xFF 0x00 0x02 0x03 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xFE 0xC2 0x08 0xC2 0x08 0xC2 0x08 0xC2 0x08 0x42 0x28 0x42 0x28 0x42 0x28 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xF4 0x61
0x80
0x01
0x81
0x7A
0x02 0x1C 0x00 0x1B 0x1D
0x81
0x02
0x82
0x79
0x17 0x00 0x35 0x33 0x36 0x4D 0x62 0x29 0x00 0x00 0x00 0x00 0x53 0x2D 0x44 0x4F 0x53 0x5F 0x36 0x00 0x00 0x00 0x00 0x00 0x00 0x23
0x82
0x03
0x83
0x78
0x02 0x1C 0x02 0x3B 0x5F
0x83
0x00
0x80
0x7B
0x17 0x28 0x32 0x36 0x38 0x4D 0x62 0x29 0x00 0x00 0x00 0x4D 0x53 0x2D 0x44 0x4F 0x53 0x5F 0x36 0x00 0x00 0x00 0x00 0x00 0xCA 0xC7
0x80
0x01
0x81
0x7A
0x02 0x1C 0x03 0x2B 0x7E
0x81
0x02
0x82
0x79
0x17 0x28 0x35 0x33 0x36 0x4D 0x62 0x29 0x00 0x00 0x00 0x00 0x53 0x2D 0x44 0x4F 0x53 0x5F 0x36 0x00 0x00 0x00 0x00 0x00 0x78 0xF4
0x82
0x03
0xFE
Ping
Pong
0xFE
0xFE
Ping
Pong
0xFE
0xFE
Ping
Pong
0xFE

The grey boxes are my annotations for what I believe is occurring. More will be added as I work it all out.

Filed under: Retro No Comments