Oldskooler Ramblings

the unlikely child born of the home computer wars

Data Preservation Case Study: AT&T 6312 WGS

Posted by Trixter on May 27, 2012

One of my hobbies is taking old IBM PCs (and clones) and restoring them.  “Restoring them” can mean anything, but for me, it usually means these three things:

  1. Get the hardware functional and booting up
  2. Archive the data off of any internal hard drives
  3. Wipe the hard drives clean and set it up for appropriate use

I did that last night to a new acquisition, an AT&T 6312 WGS.  This is one of the later “workstation”-class 286 machines that AT&T OEM’d from Olivetti, and I got it from a former AT&T/Teletype/Lucent employee (which is common, since they sold them to internal employees at a discount.  If you want to learn more about AT&T and their computer history, check out a video I made on the AT&T PC 6300.)

Step 1: Get the hardware functional and booting up

On opening it up, I saw both an internal hard drive and a second hardcard, a Western Digital PS30 which was a 32MB drive+card meant for the PS/2 Model 30.  I also saw a rechargeable battery pack, long since depleted, and sure enough, on bootup, the 6312 complained that it had no idea what the date/time was or what hard drive was installed in the system.  Furthermore, the PS30 hardcard started executing its option ROM at CA00 but then later spat out the dreaded 1701 error message, indicating that the drive was non-functional.  Fixing this requires the setup disk for the 6312 (which it helpfully barked at me during the BIOS POST), and thankfully NCR still had it available for download.  But when I got the file, I noticed with frustration that it was not a bootable disk image, but rather just a collection of files that came from the original bootable disk — and it had a specialized COMMAND.COM, which means they likely wouldn’t run by themselves and needed the specific boot disk environment to work.  You can’t just copy the DOS kernel files IBMBIO.COM and IBMDOS.COM to a disk and expect them to boot properly without a lot of work (usually the SYS command does this, but only for the DOS you currently have booted, so that wouldn’t work for me).

Sometimes restoration work requires creativity, and sometimes it just requires experience and educated guesses.  I used the latter to reconstruct the 6312 setup disk.  First, I looked at the IBMBIO.COM and IBMDOS.COM startup portions of DOS in a hex editor and determined that it was an AT&T OEM version of DOS (not surprising, really).  I figured I could find disk images of that DOS and use those to make a bootable disk on another vintage computer and then copy the 6312 setup files onto it.  Luckily, AT&T only produced two versions of DOS that supported hard drives, 3.2 and 3.3.  I checked the 3.2 image and sure enough the copyright string was identical and so were the IBMBIO/IBMDOS sizes, so I now had my bootable DOS disk to use.  But I had another problem:  The setup files were larger than a 360K disk.  This meant the 6312 setup disk was a 1.2MB floppy — and I didn’t have any vintage machines set up and working with a 5.25″ high-density 1.2MB floppy.  I know I could have tried to do things like take out the drive cage and swap cables, but I have a strong philosophy on trying to get the data off of the machine before messing with its innards (in case I break something).  So, I used a second vintage machine with both a double-density 5.25″ (360K) and 3.5″ (720K) drives in it to help me, and followed this procedure:

  1. Helper PC: Make an AT&T DOS 3.2 bootable 360K disk.  Make a .ZIP file of the setup files and put those on a 720K disk along with pkunzip.exe
  2. 6312: Boot the 360K disk and use it to run “format a: /s” to make a working 1.2MB bootable disk.  Put in the 720K disk and extract the setup files to the 1.2MB A: drive, taking care not to touch IBMBIO.COM and IBMDOS.COM.

That wasn’t so terrible, and I didn’t have to crack the drive cage open or attempt other trickery.

Once I could boot the setup program, I noticed I had over 30 hard drive types to choose from, and I couldn’t determine what the internal drive was because it was located underneath the floppy drives.  How to pick the right type without removing the drive to look at it?  While I could have tried all 30+ combinations, rebooting after each one and seeing if that worked, I did something much easier:  I set it to Type 1, a “10 MB” drive, just so the system would try to boot.  I then booted off of a floppy with Norton Diskedit and used it to look at the first sector of the drive (which will always work no matter what drive type you have, because it’s track 0 head 0 sector 0), choosing View->As Partition Table, and seeing how many tracks/sides/sectors per track there were.  There were 611 tracks defined, 17 sectors per track, and everything added up to 20MB.  So, we have a 20MB drive.  I checked a few CMOS drive table types online looking for 20MB drives with 600-ish tracks and 17spt and decided to try Type 16, which worked!  I could see the first hard drive’s contents, and after using LIST to check a few files, I was confident I had the geometry right.

This brought me to the second hard drive, the PS30 hardcard.  Every boot, I kept getting the 1701 error, which is usually drive death.  But on closer examination, I could see that the stepper motor axle was exposed — I could literally turn it with my fingers without dismantling anything.  I worked the stepper motor a few times, turned the machine back on, and it spun up and seeked!  The ROM on the card was smart enough to handle being the second drive as well as setting up the drive type/table; when I booted the machine, it showed up as D: and everything on it was readadble.

At this point, we have the 6312 back to its original operational capacity.  This entire process took about 2 hours, about half of which was careful thought on how to proceed.

Step 2: Archive the data off of any internal hard drives

There are two schools of thought on dealing with the data on old machines: Wipe the drives clean, or archive them.  Some people immediately wipe them, out of a sense of privacy for the previous owner, or maybe because they don’t want to unintentionally break any privacy laws.  I don’t do this; I try to preserve everything.  The main reason is that there might be a driver on the hard drive that is necessary in getting the thing working.  For example, there’s an extended memory board in this 6312 that, with the custom AT&T driver, can also be set up as a hardware LIM EMS board.  Without that driver, I would never have that option.  Another reason is that there might be some rare software on there that has been lost to the ages.  On this machine, I found a fantastic DOS version of VI that works better than any other VI clone I’ve run on a DOS machine, and I’d never heard of the product or the company before.  Researching it further, there’s a good reason:  It’s Custom Software Systems’ “PC/VI” and it was based on AT&T source which is why it works so damn well — and they hadn’t purchased a license for the source and it went off the market after only a year, which is why I hadn’t heard of it!

Poking around an old hard drive is sometimes like archaeology; you always find a piece of the prior owner there.  My favorite example of this was a no-name taiwanese clone I got as a gift a few years back.  The previous owner was a Chinese immigrant and had her college homework on it.  She was studying both business and politics, and the homework reflected how dry and boring it all was.  But tucked away in a corner of the drive was a single directory that contained several poems written by her — an oasis of creativity in the middle of all the tedium of trying to get an MBA.

To date, I haven’t spread my “system archives” around, out of respect for the prior owner.  (I’m not worried about privacy laws though:  If they threw it out, then they threw out their right to privacy.  This is why dumpster diving is legal, and why private investigators dig through people’s trash — anything they find, they can legally use.)

Okay, you’ve made the decision to get the data off the drives before they go bad, and a requirement is that the drives not be written to or altered during the process.  There are many different ways to do this, so I’ll outline a few:

  1. The hard way (floppies).  Using completely free software (ARJ, RAR for DOS, or PKZIP) and some pre-formatted floppies, you can just start archiving.  The big disadvantage to this is time, effort (it’s a manual process), and the risk of getting a bad floppy that you can’t read on the target halfway through your stack.  I only do this if I have one floppy’s worth of data to suck off the drive.
  2. Use a backup program.  This is the fastest way to format and write to floppy disk media, and you get error-correction thrown in for free, but the drawback is that you need another vintage computer to read the backups (one that can accept the floppy media and has enough space to hold the files, as well as a way to get them off to something more usable like through a network connection).
  3. Install a network card.  You can attempt setting up MS Lan Manager to mount a samba share as a drive letter, but sometimes I like to just load a packet driver and use mTCP to set up an FTP server and just suck the files off.  A lot less hassle.
  4. Connect external storage.  ebay is just maggoty with Iomega parallel-port ZIP drives, and as long as you’re trying to suck data off of a 286 or higher and can boot DOS 5.0 or higher (even from a floppy disk), they work great.  Each disk holds 100MB which is more than enough for most MFM and RLL drives.  One of these and XCOPY or PKZIP is all you need, and if you don’t have another machine to hook them up to, you can turn around and pull #3 (install network card) and upload the results.
  5. Parallel or Serial cable.  Laplink, FastLynx, and even DOS 6.x’s built-in INTERLNK can all transfer files over cable.  It’s inconvenient and not too swift, but it works.  I prefer FastLynx, which has exactly the same code as INTERLNK but has a nifty interface and can use realtime compression.

For the 6312, I chose the zip-drive-then-ftp-to-my-fileserver route.

Step 3: Wipe the hard drives clean and set it up for appropriate use

Wiping the drives clean is easy — you can just delete all of the data and then run Norton WIPEDISK.  If you’re more paranoid, you get to locate your drive’s low-level format program and have at it, secure in the knowledge that you’re laying down the low-level format at the same time (just make sure you enter in the defect table from the sticker on top of the drive!).

As for “appropriate use”, that is completely in the eye of the beholder.  Because this is an AT&T “WGS” machine (meant for workgroups), I’m going to leave all of the AT&T-specific software on it (there are some terminal emulators on it, etc.) and I’m going to set it up as a business-class PC:  A word processor or two, all of my typical programming tools and environments (Turbo Pascal, Turbo Debugger, Turbo Assembler, and a86/d86), and a network card with both the mTCP suite on it as well as MS LAN Manager.  I’ll configure the machine to boot up and set the time automatically via SNTP, and I’ll also investigate MS lanman so that it can mount my local SAMBA shares.  This will require a more beefy DOS than 3.2, so PC DOS 2000 is probably going to go on there.

Of course I’m going to throw some games on it too :-) Every system needs games.


7 Responses to “Data Preservation Case Study: AT&T 6312 WGS”

  1. Chris said

    I just went through this process with a circa 1994 Tandy Sensation! II. The drive still had the OEM software load and a ton of older DOS software. So whats the big deal if the drive is standard IDE? The twist was the drive was compressed with Stacker, so I went the INTERLNK route and did a direct zip archive from my Windows 98 machine. Despite the parallel port being “slow”, it was actually quicker for me to backup the drive, wipe it, and then plug the drive into a modern machine to rewrite the contents back to an uncompressed volume (the data didn’t take up more then the drive’s native capacity).

    I never really bothered with Zip drives, too many problems with the Click of Death, plus I already own the cables to do direct cable connection (which more then paid for themselves over the years of tech work!). INTERLNK/INTERSVR will also run without issue on a 8088 machine. The machine also had Laplink 3, which just about every XT-486 I’ve encountered seems to have on the HD for some reason. Never Laplink 2 or 4.

  2. John O'Callaghan said

    I have an AT&T 6386 WGS that also works and would love to chat with you about it.
    I rescued it without the needed AT&T proprietary keyboard, but was able to find one from a great vintage computer parts place in NJ after an extensive web expedition.

    I haven’t done much with it for the last two years, but it’s a top quality piece of engineering made by Olivetti and I’ like to “set it up for appropriate use” and have some fun with it.
    Could it be a good gaming machine?

    John O.

    • Trixter said

      It sure can be used for games, although it is a bit unwieldy (it’s a physically large machine IIRC). There’s nothing stopping you from slapping any ISA sound card in there and loading pretty much anything made between 1987 and 1992. For a list of games that should work fine on a 16MHz 386-class machine, check http://www.mobygames.com/browse/games/dos/tic,11/ti,65/ for some ideas.

    • Chris said

      Please do share your “source” in NJ. Although I wouldn’t be surprised if I’ve been there before! The store I used to work at kept some vintage parts around, but not too much. The stock was mostly to support repairs for legacy hardware users since we were pretty much the only folks in the area that would touch any from older then a 486/Pentium at the time (ten years ago!).

  3. Trixter: Have you ever considered (or actually tried) using a SmartMedia NAND flash memory card in a 3.5-inch HD floppy/flexible disk drive? It is reportedly possible with an adapter such as [1] but I have never tried it because I have never had one of the required adapters. I have used SmartMedia cards, though; I think I still have a 128-MiB SmartMedia card in my Fuji FinePix 2600Zoom digital still camera from 2001 or 2002, which no longer powers on. [1] says the adapter requires at least an 80486 CPU but I do not know how a device in a standard IBM PC(/AT)-compatible floppy disk drive can execute code on the CPU or otherwise do something which would require a minimum class of CPU? Maybe 80486 is only the lowest CPU class with which the adapter was tested or is officially supported. Anyway, SmartMedia cards are still available in storage capacities of up to at least 128 MiB, which is 28% more than a 100-MiB (or is it truly 100 MB?) Zip disk. A SmartMedia card also has the practical advantage of being usable as a High-speed USB Mass Storage device when installed in a USB (flash) memory card reader/writer. I know Zip drives are available with USB interfaces too but I do not know if USB Zip drives are USB Mass Storage devices: USB Zip drives may require a specific device driver?

    [1] http://www.ebay.ca/itm/FlashPath-SmartMedia-SM-Floppy-Disk-Adapter-Converter-/200767554859?pt=PCC_Drives_Storage_Internal&hash=item2ebeadc52b

    • Trixter said

      I have not used that adapter. It is useful for transferring data off of such a machine — you can copy to the “floppy disk” and then remove the SD card and read the contents on a modern machine. But it doesn’t exceed the capacity of a 1.44MB floppy, no matter the size of SD card you put into it.

      There are USB drivers for DOS, but there are no USB adapters for the class of machines I usually work with (ie. 386s and lower).

      • I did not ask if you have used that specific model of adapter: I asked if you have ever used a SmartMedia card in a floppy disk drive, implying with any model of adapter.

        Why did you write “SD card” instead of “SM card”? I guess you meant to write SM.

        I was not suggesting using a USB device instead of a Zip drive connected via a parallel port: I was saying I know a SmartMedia card can be used as a USB Mass Storage class device by installing the SmartMedia card in a USB→SmartMedia card adapter but I do not know if USB Zip drives are USB Mass Storage class devices: if they are not, they probably require a device driver written specifically for a (USB) Zip drive. In this case, the USB Zip drive can only be used with a combination of OS and architecture for which a specific device driver is available instead of being usable with any OS with a generic USB Mass Storage device driver. I mentioned USB Zip drives because a relatively modern computer, especially a “laptop” computer, on which you want to access a Zip disk which was used in the parallel-port Zip drive may not have a parallel port. In this case, I think a USB Zip drive would be best because it can be used with desktop/tower computers, portable/all-in-one computers, and even embedded computers if they have USB Host capability.

        Even if you could add a USB host controller to an 80386 or lower class of computer, the USB software for MS-DOS may have been written or compiled for 80486 or a higher class of CPU. Are USB host controllers in IBM PC/AT-compatible computers even available for any bus other than PCI (Express), such as ISA or maybe MCA? I think all of the USB host controllers I have used in (80)x86 computers have used (conventional) PCI or PCI Express.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: