Need Help Salvaging Data From an Old Xenix System
Milo_Mindbender writes "I've recently gotten ahold of an old Altos 586 Xenix system (a late '80s Microsoft flavor of Unix) that has one of the first multi-user BBS systems in the US on it, and I want to salvage the historical BBS posts off it. I'm wondering if anyone remembers what format Xenix used on the 10MB (yes MB) IDE hard drive and if it can still be read on a modern Linux system. This system is quite old, has no removable media or ethernet and just barely works. The only other way to get data off is a slow serial port. I've got a controller that should work with the disk, but don't want to tear this old machine apart without some hope that it will work. Anyone know?"
Even if it would take weeks. You're handling a historical relic, don't want to mess it up.
Emotions! In your brain!
The cu command is used to call up another system and act as a dial in terminal. It can also do simple file transfers with no error checking. cu is part of the UUCP source but has been split into its own package because it can be useful even if you do not do uucp.
Now that this is an "Ask Slashdot," I'm sure someone (who probably helped develop Xenix or something) will give you an exact answer. But in general, "what file system does Xenix use and will it interoperate with Linux/anything modern" is not a difficult sort of question to research, if you're willing to go beyond a Google search. Amazon has plenty of used Xenix books for cheap, and at least the Dallas and Cleveland (and based on that sample, I'm guessing most large city public) libraries have at least a title or two. Even Ebay has a Xenix manual up for sale.They should tell you whatever you need to know about Xenix, and then you can Google about support for it in modern OS's. .
In fact, you may even be able to just Google it. No need to bother a million Slashdot readers.
Can anyone tell me how to set my sig on Slashdot?
It'll take a few hours at 9600 baud. It's your best bet. Let it run over night and the job is done.
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
Old connectors, pcb cracks, static damage...why risk it? Write a script and automate it...
You might have done this already, but since you do not mention it: I would highly suggest making an image of the disk (using dd or dd_rescue) and working on a copy of that, before the original disk dies. Maybe foremost can be of any use, although I doubt it can either handle the original Xenix file system - whatever it might have been - or BBS text files very well...
Do some research, and find professional data restoration specialists in your area. If there aren't any nearby, get ready to travel. You've got a real gem on your hands. DON'T FUCK THIS UP. Get it to a professional who does data retrieval of this sort for a living, and knows how to avoid cock-ups. You'll probably have to pay at least a few hundred dollars, but it will probably be worth it.
What you've got could very well be one of the most important finds in the field of technoanthropology.
Your website, along with this website suggests that the ALTOS 586 has a 5 1/4 floppy drive in it.
"I bless every day that I continue to live, for every day is pure profit."
if the thing has a pc speaker you can (with a bit of work) and a noisy export via modulated audio.
of course if you have access to a serial port controller that's easily the simplest method.
~.~
I'm a peripheral visionary.
Xenix used their "sco xenix" filesystem. The Xenix filesystem is supported under the mount utility in modern 2.6 linux kernels
by Anonymous Coward
Seriously, don't go there, not until you get the data off via the serial port (or flatly establish that you _can't_).
You are dealing with a system that is lucky to be functional _at all_ after 25+ years, and presumably got heavy use while it was active. Corrosion, brittle plastics, dust worked into dangerous areas, etc..
If it's working now, taking it apart stands a good chance of breaking something that is difficult or impossible to fully repair, and you don't want to go there until the information is preserved.
Hmm, well 'Xenix' is actually an old SCO product which SCO originally bought off Microsoft, but it was then licensed to several other vendors - but as has been said here, your best bet is the serial port. Either use UUCP, or if you have a compiler on the host - compile up a simple xmodem/ymodem/zmodem binary and transfer like that. Worst case scenario, tar up all the data, compress it (it would have old style unix compress -.Z), uuencode it (if you don't have uuencode, you can download it -it's just a shell script I recall), split it up into chunks, then just cat each individual chunk onto another host and reverse the process to decode it all back into a tar file. You might want to checksum each bit too (sum should be on old Xenix systems).
I think removing the disk and mounting it on another host should be your absolute last resort.
If the system isn't bootable, and you have the right drive controller, carefully connect the old drive to a new system and use something like "ddrescue" ( http://www.forensicswiki.org/wiki/Ddrescue) or "dd_rescue" ( http://www.forensicswiki.org/wiki/Dd_rescue) to take a disk image. Both those programs try to recover from bad blocks, whereas standard dd usually will error out. (Personally, I'd make an image even if the system is bootable.)
With the disk image extracted, you can pack the hardware away or do whatever with it. Then you can focus on finding (or writing) tools to read the disk image. If you find that there is a Linux filesystem driver, you can use the loopback behaviour (see the man pages for "mount" or "losetup") to treat the disk image as if it were a drive. If you don't find a driver, perhaps you'll find some specialty command-line tools that can extract information, or documentation to write your own. At worst, you could use the "strings" command to read any text found on the image. Since you're working against an image, you can take your time, experiment with ad hoc techniques, make mistakes (remember to make backups), and try again and again.
What a great machine. The Altos 586 was the first machine I used to run my BBS (which has run nonstop since 1988 and is still online today) before SCO Xenix and later Linux arrived on the scene. It was an insanely cool computer.
Anyway, even if there were an operating system available today that is still capable of parsing the Xenix filesystem, you wouldn't be able to get to it because the disk is attached to the system I/O board using an ST506 controller. Good luck finding a modern computer with one of those in it.
You're going to have to move that data off the machine the way we did it back in the days when an Altos was a modern computer. Plug a null modem cable into that serial port and use UUCP to get the data moved. Or if the machine has rzsz installed, you might be able to get away with using Zmodem instead.
Tired of FB/Google censorship? Visit UNCENSORED!
This takes me back....
Firstly, I'm sure that there were never 10MB IDE drives. The drive will either be ST506, ESDI or possibly even SCSI.
Secondly Xenix would create several filesystems within the Xenix partition, using its own separate partition table. As far as I'm aware no mechanism to read these tables was ever added to the Linux kernel.
Watch out for ANSI Bombs! :)
Cwm, fjord-bank glyphs vext quiz
If the information was in a "public" forum, one visible with the access level generally granted to members of the general public, it's probably considered a "publication."
If they were "published" prior to March 1, 1989 but not registered with the copyright office AND not marked (c) they might be in the public domain. See a lawyer.
Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
Screendump.
"WTF?"? Assuming most of the data is ASCII/ANSI, cat it to the screen, preferably with pagination (it will ease the conversion if pagination is used). Place a high res camera in front of the screen and photograph/video record the data then run the photos through OCR...voila! (of course if video is used you'll want to just grab 1 occurrence of each page...if you've just done a cat without pagination this is going to make the conversion a lot harder).
Of course the above sounds stupid but with hardware that age you want to do everything possible to capture the data as fast as possible. Depending on how much data you're talking about you might be able to do the above faster than transferring the data via serial.
Oopps, time for me to climb back into my box.
Have people lost the ability to Google for answers before pestering other people? After about 5 seconds I found this:
http://aplawrence.com/SCOFAQ/FAQ_scotec1linuxfs.html
You're welcome. =P
-- There are 10 types of people in the world: Those who understand binary, And those who don't.
If the drive is actually compatible with a modern PC you could start by just taking a straight rip of the data using DD. That way you've at least got an archive of the data, and at only 10 megs you could probably analyse the data in a hex editor fairly easily.
Setup your terminal emulator package to capture to a file.
You'll need to test this and make sure syntax is write because it has been a while since I've needed to do this.
tar -cvf - /datadir | uuencode data.tar -
Capture in emulator then transfer it to Linux and uudecode it and untar it. 10MB will take about 2 hours at 9600
treat it like a bbs connection. have your new system connect to the old one and download the files and pray the 10mb IDE drive still works.
You obviously dont have to copy the whole drive just the relevant bbs files. Of course you might need to know the old passwords.
Depending on which one it was, some of us may not want our beer-posts out there for the whole world to see....
(he says nervously)
Orwell: "In a Time of Universal Deceit, telling the Truth is a Revolutionary Act"
The Altos 586 was available in 1983 and predated Western Digital's invention of IDE. Most likely the Altos 586 would have used the so-called ST-506 interface (also colloquially known at the time as the MFM or RLL interface), although SASI or a proprietary interface would have been possibilities. If it's ST-506 then you might be able to fire up a old 386 or 486 PC/AT-compatible with an old ST-506 controller and copy the contents of the drive using Linux. But I would agree with essentially everyone else: use one of the serial ports to get the data transferred. Xenix has uucp available, and uucp is also still available for today's operating systems. That'll work.
Setting up UUCP on Xenix
Setting up UUCP on Linux
If you really want to try to read the disk it is probably UFS which you can read from Linux.
Hope this helps.
The porn from that era just wasn't as good as you remember it to be. Perhaps you're better off with the good memories that you have. The reality can only diminish them. Leave the data on that old machine and you'll be happier.
Fascism trolls keeping me up every night. When I starts a preachin', he HITS ME WITH HIS REICH!
I worked on these way back when. I'm surprised it still works. I agree with the above, you have two options:
1) tar up the whole filesystem (if it will fit), and use uucp to move it via serial port. Make a null-modem cable and ship it across. Be careful to get the flow control right. Some of the old machines had serial ports that couldn't keep up with 9600 baud, so needed RTS/CTS or DTR flow control to avoid overruns.
2) It should have the ability to make FAT format floppies. Do it piecemeal, if you can find a 1.2 MB 5-1/4 drive for a PC anymore.
The filesystem is XENIX format, not FAT. If I recall, it's similar to the original SVRX filesystem. It MIGHT mount under Linux, but I'd be more afraid of an incompatible controller frying the drive. I don't recall these machines used IDE, I could have sworn they predate IDE, and the drive would have been either the old Shugart interface, or some kind of SCSI. The Altos machines I used had either a 10MB or 40 MB Shugart, and those were the BIG sealed units. IDE didn't come in till 3-1/2" drives, and I believe the later Altos machines had at best 5-1/4 drives either ESDI or SCSI.
Ah, the Altos systems. 8800 series, then 486, then 586. They used up numbers years before Intel got to them (the Altos 486 had an Intel 80186 in it, and 4 serial ports). Often paired with Wyse terminals. Anybody else remember "business basic"?
It's almost certainly an ST506 drive; you will be very hard pressed to connect it to a PCI era system; probably can only get as far as AT bus machine.
In any case, if you do manage to image the drive, the filesystem will be based on either Unix version 7, Unix System V, or the Berkeley Fast File System. It wasn't until Linux rolled along that we started to seriously fork into lots of file system variants. It's most likely the basic System V file system, which is well documented, and pretty simple stuff.
The posters above are correct, however. You really should try the serial port approach first. I'd go for cu over uucp - getting uucp running can be quite an exercise in itself. And you'll want either tar or cpio; probably tar, but watchout for version and format incompatibilities there as well.
You can also just cat the data out a serial port, and capture it as a session log on the other end. That's likely to be the easiest solution, and perhaps more reliable than any other.
You haven't said what the nature of the data is, but after this much time laying dormant, you are likely to have substantial challenges at the application level interpreting the data as well.
1. One or more mentioned Google. It was obviously tldr for them. You should start at http://justfuckinggoogleit.com Serously.
2. That drive is most likely MFM due to it's size and age. Even if you find a controller you won't likely have a machine that you can plug it in to. When was the last time you saw an ISA slot? IDE was designed in 1986 and your machine was 1983ish. If it has 2 ribbon cables going to it, it's MFM (or RLL), or ESDI. If 1 it's going to be SCSI.
3. Linux should mount it just fine. Even if it runs MP/M-86 (a CP/M variant), Xenix, or MS-DOS.
4. Given the age everything is likely to be stored in straight text files.
5. Magnetic media used Ferric Oxide (Rust) to record on. They were dying from the day the were manufactured. Good Luck with that!
You can use tar and serial ports.
Once you get the systems connected via serial, you can do something like this on the Xenix box:
tar cf /dev/serialdevice0 /home (or whatever directory you want to move)
then on the Linux box on the other end:
tar xpf /dev/ttyS0
will unpack the data. Tar hasn't changed much in decades, and works very well through pipes like this. Good luck. :)
Mind you, what are you going to put at the other end - what reads serial, these days? I guess the port is still there on ATX motherboards, so it probably still works!
Assuming you dump twice and compare the output, lack of error checking should not be a problem.
With regard to do the transfer to a newer system, cables.com sells a 25-pin Serial-to-USB cable (http://www.cables.com/Products/USB-to-DB25-Serial-Adapter---USB-A-Male-to-DB25M__USB-DB25.aspx).
Have fun!
Live Long and Prosper - Thanks Leonard. You are missed.
Off topic but I'm gonna be an old man.. I remember those machines from the early 90s. Working at a consulting firm that sold accounting software I replaced many of them with X86 boxes running SCO UNIX driving serial terminals off digiboards and eventually ethernet. SCO owned the market back then for small business UNIX. That is why they fought so hard against linux, because suddenly there was a free solution out there spreading like a brush fire.
When it came time to extract the data off the old Altos boxes, we used magnetic tape. The machine you have should have a tape drive. Buy an old scsi tape drive off ebay and plug it into a modern box and away you go...
Once you've taken a disk image of the original machine and have the image on a less fragile system, Linux will probably mount it with:
mount -t sysv -o loop /path/to/image /mnt/tmp
(possibly with any required -o offset= if it's a full-disk image not just an image of the partition/slice containing the file system).
Failing that, you can probably read it with SCO OpenServer 5.x if nothing else will handle it. SCO OpenServer still runs under current VMWare releases (though linux-kvm's SCSI HCI implementation is too incomplete so it crashes on kvm) and can be pointed at the disk image that way.
You can still find the old FreeSCO ISOs around on the mouldier corners of the 'net. I can't offer you any, since I only have fully licensed OpenServer 5.0.5 which I can't distribute. It's for a truly amazingly legacy Microsoft Xenix application from 1983!
SCO uses HPFS by default, but I think Xenix used something more elderly. SCO's mount(ADM) lists it only as fs type "XENIX".
Assuming you have raw disk access I'd just dd the entire filesystem out over the serial port. If you have slip on that machine I'd create a slip link between the Altos and a Linux (or *BSD) box so you can use TCP. Once you have the whole disk image in an image you can use whatever tools available to extract the data.
--frank[at]unternet.org
Oh, Hesu..., you whiners haven't looked in my garage, ever!; Apple /// with 5Mb Profile Hard Disk anyone? If I recall correctly, that flavour of xenix is EFS and there are still some old unixes (and early 90s BSDs) that can bridge that gap. It's probably an MFM or RLL ISA controller but I'm sure you could cobble together the hardware to either extract data or image the drive. The people whining about "OMG! Don't Touch It! You might break it!" never lived through that vintage of hardware....
Inset witty quote about knowing a buncha binary evaporator languages here....
Dude, it'd be easy.... First you need to make a raw disk image of the thing. I'm assuming you can do that? Your ancient machine should have one of those ST-506/MFM controllers.... You could even use dd on the native platform and swap floppies out of it just by grabbing how many kb you can fit on a floppy at a time, and reconstruct the hd image onto a linux PC.. From there you can either try to mount that hard disk image on linux with an old sysv filesystem driver... Another alternative if you have a serial hookup is to simply hook up a serial port, and do something like "tar -cvf /dev/tty0a /"
And redirect it on the other side. If you have uuencode/uudecode you could throw that in there.
Heck, you could even use tar with floppy disks.
I don't know what you plan to do with your 'stuff' off of the old machine though.... Have you tried to score a copy of Xenix for the pc? It runs on Virtual PC/VMWare ok, it'll boot from a HD with Qemu but the floppy emulation is screwed up in Qemu. There is (was?) the ibcs2 emulation thing for linux as well...
There are ways of keeping these things going, although I know the Altos was a unique machine...
IMHO you should use the serial port to move whatever data you want moved. Your chances of success with other methods are low.
so where's the guy who posted this? He got lots of replies.
What you've got could very well be one of the most important finds in the field of technoanthropology.
Fortunately, his name does not seem to be Belzoni. :)
Ezekiel 23:20
I worked with a lot of MFM (ST506 interface) drives back in the day, and from my experience it was very unlikely that different models of MFM controller cards could read the drives from one another. If I installed a newer MFM disk controller card in a machine or moved the drive to a different machine with a different MFM controller, I would almost always have to re-low level format the drive before I could even run DOS format. (And mine were just FAT16 so the file system was never the issue)
So even if you have another MFM controller card, unless it is the exact same model of card it is unlikely that you could read sectors off of the drive. Their underlying low-level formats seemed to differ.
I also actually had the pleasure of briefly using an older model Altos 8600. That model had a bunch of serial ports for dumb terminals, an 8 inch floppy drive and an *8 inch* 40 meg Quantum Q2040 hard drive. I still have the 8" Microsoft Xenix floppy disks.
The hard drive in that ancient behemoth is most likely a MFM device. I don't think you're going to find anything "cheap" to read the data off that thing and onto some modern storage media. Other than sending it to a data recovery lab, I would have to agree with the bulk of the posts here: USE THE SERIAL PORT! Those are probably your only two options for a device that old with data that is irreplaceable and of an historic nature.
'Nuf said.
I had a 70 MB IDE drive in a 386 around 1990, FWIW. But I think anything under 40 is going to be MFM/RLL.
unless you post pr0^H^Hics of the machine . . .
"I believe in Karma. That means I can do bad things to people all day long and I assume they deserve it." : Dogbert
A working 586? C'mon, not exactly modern, but not really ancient, either. Also zero chance of your box containing "one of the first" BBSs... For reference, Compuserve went live in 1969 - Six years before even the legendary Altair 8800, 17 years before Western Digital developed the IDE standard, and a good 24+ years before Intel released the CPU in Altos to which you refer.
I do find a 10MB HDD in a 586 somewhat strange, though... Yes, they certainly did exist, but it would have counted as an antique even back then. By the time I had a 586 (1994, they debuted in 1993), you could already get drives measured in gigabytes, and most people ran drives in the high-3-digit megabytes.
Others, however, have already given you your answer. Dump the whole FS over the serial link. Don't bother screwing around with trying to get it running in a modern box, just get what you want off it while it still works in its current form.
As someone who, even now, is buildworlding FreeBSD 4.9 on a 486 with 32MB of RAM; Craigslist that piece of junk and go outside for a walk. Look at the trees and clouds and the sun. On Monday make an appointment with a shrink. That's what I'm going to do, once I get ppp working.
uh... you know the Altos doesn't have a screen, right?
Like most older Unix-y systems, you plug a terminal (or a bank of modems, or a protocol converter or whatever) into one of the serial ports, just like how you might configure a router these days. The system might have been sold with a terminal, but video output was not part of the computer itself.
Wait a minute, computers have serial ports nowadays too! Seems like you could just use those, with a null modem cable.
I'm waiting for someone to suggest plugging in a speech synthesizer and a DTMF dialer, then using a Google Voice account to transcribe the speech back into text which would then be emailed to you.
Putting moderation advice in your
my ole man has an old 286 has windows 3.1 on a 20meg ide hdd and 1 meg of ram used to run word perfect 5.1 and firstchoice a spreadsheet program. Took years to get him off that and he won't sell it since it was so expensive to buy. I bet he never throws it out.
Blarney Quality Restaurant, Plants
You can still buy a brand new motherboard with an ISA slot today. Admittedly they are more expensive than a more mainstream motherboard, but anyone telling you that they don't exist is just plain ignorant. The ISA slot is not going to disappear anytime soon. If I have $100,000 upwards worth of equipment that is controlled by a computer using an ISA expansion card, I am not throwing it out because the computer is now kaput There are a whole range of USB to ISA and PCI to ISA converters that you can buy as well. Personally a new motherboard with ISA slot is the way I have gone in the past and would again.
I haven't seen a computer manufactured with an ISA bus slot for well over 10 years.
ISA-equipped mobo's are still produced and in use (a Google search for "isa motherboard" will tell the tale), mainly for data acquisition. There are a lot of legacy DAQ apps out there that depend on the ISA bus. I have a chassis dyno in my shop, 4 years old that uses ISA for DAQ.
Hm, my first PC in 1990 was a 286 with onboard IDE controller, and came with a 3.5in 40MB IDE drive.
You can try porting the entire system over to a virtual machine, using dd to copy the entire system, then booting it up in qemu... Here's a link to someone who's had success with this approach... http://virtuallyfun.blogspot.com/2007/05/running-xenix-on-qemu.html Good luck!
Sometimes the light at the end of the tunnel is the headlight of an oncoming train.
But yes, we use them at work, because of some old MS-DOS app we have that has all these specialized terminals on a non standard serial bus thing.... It was cool in the 1980's but some people just will *NOT* upgrade their kit.
I got mine for about $150 but I've seen them go for WAY more then that... You have to keep on shopping around...
Perhaps he wasn't looking at porn - he was spending nights with actual women. (Those adventurous ones using BBSes in that era.) And now he wants to contact them to, you know, "get together" again?
My first IDE drive was a 30MB or 40MB Seagate ST-138, I think that was the model. There were smaller, HP made them. You can still find them for sale , though other than a collector item I wonder why.
I have an ISA slot in my spare Sempron machine that's about 6 years old or so now. ISA could be found up to about 2 years ago if you strayed off the beaten path.
There will be more trouble getting the drive booted to any new hardware.
deleting the extra space after periods so i can stay relevant, yeah.
... so 10 million characters , at 100 cps, is only 100,000 seconds, or just over a day @ 1200 baud, or 14 hours@ 2400 baud. Of course, if you zipped it first, you could probably transfer it in an hour or two, since text files are VERY compressible, and you only want the data, not the system files. Heck, the zipped file might fit on one high-density 5-1/4" floppy.
Forget about transplanting the hard drive into a more modern machine - it won't work.
Since many modern machines don't have a serial port, you may have to buy a serial-to-usb converter, as well as a null modem cable.
about.
Oh, wait. This is Slashdot.
The filesystem is going to be BFFS or Xenix format, and you could, in fact, mount those, *if* you have a controller that a) has drivers in Linux (the last one I remember is the WD 100...3? 7?) b) for which you have a bus slot.
The xda drivers haven't been in the kernel since, I think, 2.2; maybe 2.0.
But the *real* problem is that Xenix is going to have wrapped the actual filesystem partiiton inside a "division", with a divvy table, which is *then* further inside the disk partiiton.
To the best of my knowledge, Linux has never had divvy table handling; you could mount Xenix filesystems, but only if they'd manually been made on an entire partition, instead of inside a division -- I had to do this a couple times, during conversions.
If you have a working ethernet adapter and the TCP stack, by all means, FTP the entire raw division image over to a Linux box, and then loopback mount it there. If not, then UUCP it over the serial port.
Once you *do* have it in a file on a current linux box, you should be able to mount it, though you may have to rebuild some things into your kernel that aren't there by default.
If you need details, I have a complete set of SCO Xenix manuals, including development and, I think, TCP, on my shelf, ca 2.3.4 timeframe; let me know.
(I would sign in, but Slashdot won't let me from the laptop for some reason; jra/5600)
I'm too young to know the awesomeness, but I enjoyed the experience. :)
Telnet rocks. :D
http://www.megaupload.com/?d=CGD3RFSD
Enjoy.
First and foremost, clone the D*mn drive! Then play with clones to your heart's content.
Any chance you have a parallel port? Should be able to boost your dump rate to 500kpbs or so.
This is one of the only ask Slashdot questions that isn't completely stupid and couldn't be answered with common sense.
You have no idea what you are talking about.
What on Earth makes you think that any modern adaptor will accept that ancient type of hard drive, even if it used IDE connectivity? Hell, it's hard to read anything less than about a Gig with modern adaptors sometimes. The addressing modes have been changed any number of times since then, and the specs in the article even refer to it as a "Winchester" drive... when was the last time you heard that?
using a video camera and some video code you could get some decent throughput, in theory.
I have a 105MB WD IDE drive in my desk draw and I've seen 10MB ide drives sold as replacements for failed equipment.
However, I'd say its highly unlikely its an IDE drive as they were very rare at that size.
Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
I did a consulting gig for someone who had a similar problem. The state police needed the information off of a database that was running on an old [3|4]86 Xenix system. Here is the script I used.
#!/bin/sh
for I in bin boot dos etc lib oa.files once shlib tmp u unit57 unit58 unit59 usr xenix
do
echo "tar -cf - $I|uuencode -"
tar -cf - $I|uuencode -
done
tar -cf - `find /usr -type f -print` >2/usr.err|uuencode -
for I in `cat usr.txt`
do
tar -cf - $I |uuencode -
done
Nope, I distinctly remember the first IDE drive I used was a Western Digital 40 Meg, had that shiny gold metal look, with a stick on sticker on top, and a clear cover over the head stepper motor that stuck out and it had a pretty loud head movement to it too...They were neat because we didn't have to low level format'em! AND they only had a single cable to the computer instead of two on ST506, so that was different. I don't think this system used IDE.
Well, not the entire disk but...
In about 1988 I was migrating a union office off an old Altos Xenix system over onto a network of PCs served by a Novell file server (the hot setup at the time).sds
They got a ridiculous quote from the company that provided the accounting / WP apps and the OS and Hdw for the Xenix system to provide a set of the word processing docs. I was a PC LAN guy and had not remembered much UNIX (this was pre Linux days) but did a little scoping and found the following solution worked. No doubt this will seem crude and inelegant, but it worked....
Got a PC attached to the Altos via a null-modem cable to PC serial port and used ProComm, a popular serial terminal program to match the protocol the old IBM dumb ASCII terminals used ( 9600 / 8, N , 1) so I got a shell on the Altos. Wasn't sure if there was any serial transfer programs (Xmodem or preferably Zmodem) on the Altos side but I found word processing files were plain text and were in each users directories. You could cat them to the screen. There were a few hundred files so I wasn't going to do this manually, so I dredged up shell scripting manual and wrote a little script (sorry actual code was lost). Then did the following
1) Put Procomm in loggin mode and removed all the limits from file size, so it was going to create a local text file on the PC that contained the entire session
2) Created from ls'ing each dir and editing it, a target list of wp filenames.
3) Ran the script which
a) echo'd each filename with some special markers eg "*****$FILENAME_BEGINS*****"
b) cat (type'd for you Win/DOS people) contents of each file to the screen
c) echo'd each filename with some special markers eg "*****$FILENAME_ENDS*****"
4) When all files were done script terminates, closed the ProComm SESSION.LOG file which now had the entire contents of all the WP docs in it.
5) Wrote a VBSCRIPT parser that found the FILENAME for each file and saved contenst between the BEGIN and END for each file under that name.
Ugly and dumb but it worked. - Sometimes that's the fastest way to do it,
Random suggestion: Can you print the data out in text format and then OCR it into a new machine?
I hada 20 meg connor HDD IDE in my 286 back in the day.
Sadly I've recently worked for a place still using Xenix as their main computing platform. I was a bit amused.
At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
Probably being born in the mid 90's or something. Consider yourself lucky he didn't recommend mkisofs | cdrecord
I did a lot of work with hard disks in those days (of course I was a toddler cough cough) and I remember all too well that a hard disk formatted by one controller would almost always NOT work with a different controller. The ST-506 interface carries quite raw signals and the timing would vary slightly from controller to controller. So, plugging that disk into another machine's controller is not likely a good move, unless you can replicate the Altos' controller in an ISA controller form factor, and even then it's not likely.
Best bet is serial port with a null-modem (crossover RX and TX). Could the Altos only do 9600 BAUD? I'd try for 38,400 or more and use X-MODEM, Y-MODEM, or best: Z-MODEM protocol for transfer.
This could be helpful if it has linux drivers?
http://www.iofast.com/product_info.php/products_id/3949
Should be much quicker than any RS232 ports.. It advertises OSX compatibility so presumably there are linux drivers for it or something like it? Likely a rather long shot though, RS232 and a long coffee break or two are likely your best bets :/
I'd like to know more about this BBS. How many incoming lines did it have? What modem speeds did it support? What topics did it cover?
Will the OP put the BBS (or a copy of it) back on line (perhaps in read only mode)? I'm not sure how easy this would be to do but it would be cool if it were possible. Or perhaps just the text of the messages.
The Altos 586 I used to own also had a QIC tape drive in it (it's in the front of the unit). It also had an Ethernet connector - blanked off in the case of my machine, the Ethernet controller wasn't installed. But check yours.
The filesystem format is UFS and is intelligible by Linux (I verified this in the case of the 5.25" floppies, but the hard disk should be the same).
NN
>> JUST MAKE SURE THAT THE PIN 1s LINED UP
OTHERWISE YOU CAN BLOW THE DRIVE,
CONTROLLER, AND MAYBE EVEN THE COMPUTER.
Was it the ST-506's hard drives or the old 8 inch floppies that would write 1's all over head 1 if you plugged a cable in backwards?
I had a lot of fun with machines equipped with low end hard drives at a time when 40MB seemed like a big deal compared with 20. The old Mac Plus, the first 9" B&W classic. Of course, its users were normally well content with an 800kB floppy drive, but the former owner had lashed out on a 20MB external hard drive whose audible chattering betrayed its good humour and continuing health. I believe it was powered mainly by clockwork, but it also had a SCSI controller, oldie stylie 50 PIN cables, and a military-grade steel case of generous proportions and massive weight, and a hardworking fan. The sound it made as it booted from off was lovely: like a miniature knife-grinding museum starting up at 11am for Visitors' Hour. But hey! If it's worked this long, it'll probably work a bit longer. I'd advise techniques that use the absolute minimum of violence on the hardware. And once you've got the data backed up and reformatted for the modern reader, think of all the fun you can have if you network up that machine and use it as a webserver for a couple of novels or something.
My advice is coming late in the thread, but I hope the submitter gets it:
The first person I would talk to is Jason Scott of textfiles.com. He collects old BBS files and some hardware. He would be able to give you some tips on the system or put you in touch with someone who can.
And if you do manage to get the data without his help, please send it to textfiles.com anyway so the world has access to it.
Incorrect.
As an initial shareholder of Conner, I can assure you - they started at 10MB and went up, and up, and up...
If the drive is truly IDE - anything should be able to make a disk image. Hell - there might be a entry in the BIOS for that drive!
IDE harddisk as small as 10MB from Conner Peripherals were used in orginial Compaq Portable III PC, so IDE drive were available at a lot smaller capacity then 200MB.
are you sure it has no ethernet? that old-computers.com page you linked to says it has.
back in those days, ethernet ports were mostly either BNC (coax cable, 10base2) or AUI.
You can still find PCI cards for PCs with BNC connectors. Probably not new any more, but try a swap meet or ebay or in the old-parts bins at small computer retailers. lots of cheap NE2000 clones had both RJ45 and BNC. you'd also need a length of cable and a terminator for each end of the cable. this stuff is all long-obsolete but not that hard to find. esp the connectors and terminators.
you can even find MAUs with RJ-45 connectors (i've still got one lying around some where).
of course, getting this working might end up transferring the data a lot faster but could take you days to figure out how to set up networking on the old machine. serial is probably still best and easiest.
one easy way would be to use a linux box as a terminal (null-modem cable, running cu or minicom or something). set the linux software to log everything to disk and then cat the /dev/ node for the hard disk through 'od'. or, optionally, 'cat /dev/XXX | compress | od'.
that will get you a text hex dump of the entire disk. you can then extract that into a disk image. you may even be able to mount that on linux.
NOTE: od will massively inflate the size of the transfer. that's because it's converting the binary into an ascii representation. if the altos system has uuencode installed, that would probably be a better choice than od (it's a lot more efficient, averaging about 40% inflation of file size instead of more than doubling it with od).
similarly, you can get the files rather than a disk image by using tar. capture and log the output of "tar cf - / | od". again, optionally use compress in the pipeline. that will end up giving you a standard old-fashioned tar file which can just be extracted with GNU tar.
unfortunately, od has no ecc or even checksumming. if you have awk on the altos system, it might be better to write an awk script that does a hex dump with support for error correction). you could probably do it in sh too if you had to. note: it would be better to do it in a scripting language rather than C because the system may not even have a compiler installed, and even if it does you don't want to thrash the disk to compile something.
if the altos system has zmodem software installed (quite likely since it was a BBS), that would be even better. use minicom on the linux end (and make sure you have the lrzsz package installed for zmodem receive support), then pipe the output of cat or tar into sz instead of od. that would give you a transfer with error detection and recovery (i.e. error free transfer) and no need to mess around with the log to extract the actual data.
carefully read the man page for sz on the altos system to find out how to set the filename when transferring stdin. it may have a default filename that it uses, or it may let you set an env var (e.g. the linux version of sz you can set the $ONAME environment variable).
to summarise:
1. "cat /dev/XXX" (disk image) or "tar cf - /" (files). or do both.
2. use zmodem "sz" if it's installed.
3. otherwise use "uuencode" if it's installed
4. otherwise, use "od"
5. if the system doesn't have od (unlikely) or some other hex-dumper, then write up a clone in awk or sh or something.
these people are all wrong...just take it to Best Buy! the Geek Squad could save the data for you fo' sure!
Just because the hayes modems could only modulate at 9600 baud didn't mean that was the speed limit of the old serial ports. The UART chip on the old x86 PCs would often support 56Kb or 110kb transfers when using a hard-wired "null modem" cable with RTS and CTS wires crossed internally. You had to put the UART into 8-bit transfer mode with hardware flow control and NO PARITY (that allows the use of the 8th bit for data instead of parity on the 7-bit character). But then a protocol like xmodem or zmodem would provide the error detection coding/retransmission, and you could send files over at a really good clip. Send 10MB in about 1/2 hour,easy.
That thing's older than I am! I refuse to get off your lawn.
> As I recall, IDE drives first appeared with about 200MB of capacity.
Not so, I have a Western Digital Caviar 280 around here somewhere (I may have just thrown it out, actually) -- that's an 80MB IDE disk.
I also remember 40MB IDE drives quite clearly.
I may even remember 10MB "XT-IDE" drivers. These weren't ATAPI, they were IDE for PC-XT machines.
Do daemons dream of electric sleep()?
Just download the SCO OpenServer trial download. It reads Xenix filesystems with no problem. After all, SCO Unix is Xenix.
Be careful, because I'm not talking about SCO Unixware, but the older software called SCO OpenServer. That's the new name for Xenix-based SCO Unix.
This from an old-time Xenix on-site service guy.
Kriston
Segate had a 30MB IDE drive that shipped with some 386 SX units.
The disk probably is NOT IDE as the article says. The harddisk is probably MFM. It probably has 17 sectors per head, 4 tracks per cylinder and 312 cylinders.... IIRC...
The serial line sounds reasonable to me.
I'm currently recovering data from a seagate drive. The seagate drive has a debugging serial port. The sata port is completely dead.... I'm hoping to figure out which parts I need instead of having to copy everything over the serial port....
Would be great to know WHICH BBS this was - I used XENIX for a while, but on a PC based machine running xbbs - but also had a BNC/coaxial based 3com network card (8mbps) - painful to get set up properly, but worked like a champ once it WAS working...and I wouldn't even care of someone divulged the content of conversations back then - was a great time, had heaps of fun. Too bad you can't image the whole shebang and stick it in a VM and play with it from there...(gosh this brings back heaps of great late night memories)
YankDownUnder Veni, Vidi, volo in domum redire
Simply tar the entire hard drive and direct it to a serial port. No special tools needed.
/dev/serialportdevice
:)
Oh... if I recall correctly, it also had compress, so you can probably tar | compress >
no problems
Xenix on an Altos 586 would have been licenced from Microsoft, not SCO, and was Microsoft's version of Unix (they had a license from AT&T / Bell Labs). Later Microsoft sold their Xenix stuff to SCO.
I have install disks for Xenix 2 which was 7th edition Unix (manuals are on the web http://cm.bell-labs.com/7thEdMan/) and Xenix 3 which was AT&T System III (pre System V).
My system had a 40 MB ST506 Hard disk (you could only access 32 Meg), a 720 KByte floppy drive (Double sided, Double Density 96TPI, 5 1/4") and 5 (or was it 6) serial ports, 512K of memory and an 8086 processor. I think that the 586 name indicated that you could have 5 users and a printer connected on a 8086 processor. The Altos 986 had 10 ports for 9 users!
By far the easiest way to get data on and off at the time was using the floppy. With a 10 meg drive it would only take a dozen or so floppies to back the system up. Tar was the standard backup command, but I think there was an odd extension to tar for multi-volumes.
I think all the machines should have had 720KB floppy drives. Xenix came on floppies and so did diagnostics. These are much easier to swap with other systems than ST506 hard disks. Other systems such as some NEC PCs (IBM clones) also used these 720 KB drives And they were pin compatible with 720k 3 1/2 drives (different connector, but same pins).
Second best method was kermit (I remember having a lot of trouble trying to compile kermit on this) and with a 10 meg system, it is quite possible that you don't have a C compiler.
UUCP is an option, but it may not be installed. You could also use cu from another unix system, but it does not have error checking.
However if it was a BBS server, there is a better chance that it does have Kermit, UUCP, or X-modem software installed. I think the serial ports default to 9600 baud, 1 sotp bit, no parity.
Many of the comments suggest using SCO software. Most SCO software requires either a 286, 386, or higher processor and won't run on an Altos 586. SCO did sell Xenix for 8086, but it was not very widely used.
Of course I bought this machine around 1987 and threw it out around 2004, and my memory is a bit rusty, so my comments should probably be considered as hints at the truth.
Grant
Well, my first one was 80Mb. I seem to remember that being reasonably respectable for a desktop at the time, so there were probably lower capacity ones. In fact, I seem to remember my office PC at the time had a 30Mb drive.
You can certainly dump 10MB through the serial port, should only take a few hours (as noted by others). But if you dump a raw image copy of the entire hard drive, there's a high probability that you can run the whole machine as a virtual machine under Linux (or whatever). I had probably the first UNIX based BBS in the country, back when the "UNIX-PC" (aka at&t 7300) came out with SysVR3. I ran both Citadel and my own MBS on it, with a modem on each serial port. Good fun!
Given the power of current hardware, you could probably put it back up in a VM and let people use it.
Your best bet is to call up Century Software and see if they still have a copy of "term" for the Altos laying around somewhere. Developing this product for the Altos boxes was what put them into business. I first discovered it back around 1985 when I was developing vertical apps (medical) for the Altos boxes and needed a way to transfer programs to clients over 1200 baud dialup. Give my regards to Greg H. if he's still around (one of the founders).
I still have several IDE Type 17 42MB hard drives, both in 5.25" and 3.5" form factors.
My 1st admin was Xenix on a 386 with a 40MB MFM drive. I worked as a computer operator before that at a place that had Altos Xenix, SunOS i386, Sequent and DTSS.
Anyways...
You have up to 10MB of data. It can use a serial port. Without hardware handshaking, 9600 baud is the fastest you can expect.
10485760 bytes @ 2400 bytes/sec ~= 73 minutes. Geez, why not just use the serial port?
Plug a PC with a 3 wire serial port cable & a terminal program that can log to file. Even Hyperterm can capure text.
If it's just text, cat it on the Xenix just after you start the capture txt on your terminal.
If it's binary, you have 2 choices.
1) Get something like xmodem, zmodem or kermit running on both ends.
2) uuencode the data to convert it to 7 bit ascii and cat it as above.
compress should be on Xenix to reduce the file size before you transfer. uuencode will convert 3 bytes to 4 bytes. gzip can uncompress.
I had xmodem and zmodem for Xenix back in the day. Since I didn't have a compiler, I had to get a binary from CompuServ's Unix SIG. If I had known about uuencode, I would have used that.
The only problem with uuencode it error checking. You might want to do some kind of checksum on your data.
I don't remember the tools. Zmodem and kermit both do error checking. If you have a short cable ( 9600 baud without hardware handshaking, you will get errors. I used to use a 50' 5 wire hardware handshaking cable for zmodem transfers at 115k all the time.
10*1024*1024*10/300/3600=97.09 hours because there are start/stop bits with each character transmitted. Calculation needs to be further adjusted to account for any overhead of the protocol (not familiar with zmodem myself).
I just threw away some SCO Xenix manuals this last weekend... Oops... also worked on ACER/Altos many years ago... you might just find out the Fstype if it is IDE/eIDE put it in an external HD case (saw some at Best Buy the otherday for eIDE/IDE) put it in there hook it up to your favorite Linux variant on it's USB, mount it any copy away. Linux has quite a variety of legacy FS drivers, would have to look, but I'll bet you can mount it... and copy the entire FS to your favorite home NAS.... Used 586 Acer/Altos in mid 1990's... not that old, SCO Xenix early 90's... also... can put in external drive and dd the whole thing off for safe keeping at the device level... exactly what the FBI does when they save for forensic purposes... not a big deal. You pay shippin' and handlin' and $500.00 I'll get it off for you...
nah, they'll just re-format it.
whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
My Xenix box is actually a little older. It's a Nabu 1600. It has an 8086 CPU plus an MMU built out of TTL chips. It uses ST506 disk drives (broken now).
The filesystem is the standard 7th edition Unix filesystem. Partitioning is compiled into the kernel (if I remember correctly). Actually, so is disk drive geometry. This makes it hard to substitute other drives.
The original Nabu Xenix port was done by HCR, starting from Altos work done by Microsoft (and possibly SCO). Years later SCO bought HCR, but that is another story.
Xenix at this point was really 7th Edition Unix. Right down to using the Ritchie C compiler, not PCC. The system was very much like a PDP-11, right down to the limitation of 64k bytes for code and 64k bytes for data ("split I and D").
Obvious ways of getting data off this machine (might apply to the OP's machine): uucp (9600 baud is probably the limit on mine) or tar to raw floppies. Using 7th edition filesystem floppies is probably a mistake. Linux could surely read tar files off of raw (no-filesystem) floppies.
If you can bring the system to life then login as root and make an old fashioned tar file of whatever you want to recover. Then use something like Windows Hyperterminal that supports Z-Modem file transfer (gosh I'm old) . On the Xenix side just type "sz filename" and the transfer should start up. A word of caution however. I did this once (about 20 years ago) and the transfer took 4 days. On the last day we had a power failure and I had to start all over again so make sure both boxes are on reliable power.
If you want to mount the disk on a new machine good luck. The disks are ST506 format.
SG