• Please review our updated Terms and Rules here

Bootstrapping an IBM PC with only blank media and no tweener machine

You see you vanilla peecee guys are just getting around to this stuff. We (lol) have been doing it for years. These off the wall pc's demand all sorts of improvisation, overcoming, and adapting.
That is because PCs don't have such homogeneous configurations as some other systems.

On true-blue IBM you have built in basic you can work with. Not the case with clones. A few clones have ROM monitors, but most don't. The IBM 5150 and PCJr have cassette ports, but later models don't. You can't absolutely guarantee that an IBM PC or clone has a compatible serial port UART at a known address.

Add to that, that until a few years ago it was not too hard to find new motherboards with real honest to goodness floppy disk controllers. Now you can hardly even find them with real COM ports any more either.

So at this point, it should be assumed that you will need at least some "special" hardware (meaning hardware you can't get at Walmart) to get things running.
 
SYSTEM does not exist in cassette BASIC. Instead, DEF SEG followed by CALL would need to be used. The OP should examine Appendix C of the BASIC reference for examples.

Quite correct--SYSTEM is the way you get out of disk BASIC--it is a 'call' in some dialects, however. Nothing like standardization. You can tell how much I use IBM BASIC (or any BASIC at all--except as a calculator).
 
There was an older thread on this same topic... search.. uhm... AHA:

http://www.vintage-computer.com/vcforum/showthread.php?22598-ADTPro-for-PC

On page 7 of the posts I threw in some completely untested hypothetical code for using com ports (if any) to at least first stage load more code to be run, making the basic program you have to type in relatively small. Once you load the larger "monitor" type program that could then be used to write to the floppies.

That's really going to be the key -- keeping the program you have to type in tiny! That tiny program can then read the larger executable off the COM port into memory, so long as the maximum buffer you allocate is big enough for it.

Though as suggested it might be a decent idea to build a keyboard interface device to sit between a modern computer and the PC; particularly when devices like a Teensy can easily pretend to be a keyboard and connect via USB to a more modern system... but again that's a hardware solution; still you can get arduino nano knockoffs from Korea for two or three bucks.
 
Though as suggested it might be a decent idea to build a keyboard interface device to sit between a modern computer and the PC; particularly when devices like a Teensy can easily pretend to be a keyboard and connect via USB to a more modern system... but again that's a hardware solution; still you can get arduino nano knockoffs from Korea for two or three bucks.

I think I suggested a Maple mini a few posts up. $4 shipped seems to be about the going price. Has a 72MHz STM32F103 ARM with USB in a 40 pin DIP . I couldn't even come close to assembling one from parts for that much. Half a meg of flash and 20KB of RAM; pretty cool.
 
If booting over a serial port is the objective then I'm surprised that no one has suggested using XTIDE Universal BIOS? Of course the hard part is to install the option ROM but other than that... Or am I missing something here?
 
The problem is that a serial port on the 5150 was another optional bit of kit. For those using PCs to run spreadsheets and games, there was no need for it, or a modem for that matter. Same for hard disks--most 5150s had none.
 
If booting over a serial port is the objective then I'm surprised that no one has suggested using XTIDE Universal BIOS? Of course the hard part is to install the option ROM but other than that... Or am I missing something here?

I think part of the goal was to do the initial bootstrap using only period IBM PC components. Lots of options if newer devices are allowed to be attached.
 
I think part of the goal was to do the initial bootstrap using only period IBM PC components. Lots of options if newer devices are allowed to be attached.

Or at least something cheaper. XT-IDE is fun and all, but the lack of reliable sourcing of pre-builts bars entry for many; the cost of building one yourself prohibiting it for others.

... and in my own collection it's far more likely that I'd have a 8 bit multi-io card sitting around than I would an XT-IDE. It's also far more likely for me to have a stack of three dollar arduino's, teensy's and other small AVR or ARM devices handy. Some of us are doing this on a shoe-string budget and have to make do with what we have in front of us.

Hence why I just use a tweener for PC. Well, that and I got sick of the stack of dead flash cards from the one XT-IDE I do have killing them on writes. (I have the same problem with modern SSD's -- I kill them ridiculously fast which is why I don't use them on serious builds)

Never thought we'd come up with something less reliable than the 3.5" floppies or Zip disks, but lo and behold the flash card and SSD's take up the mantle.
 
Never thought we'd come up with something less reliable than the 3.5" floppies or Zip disks, but lo and behold the flash card and SSD's take up the mantle.

*cough* optical discs *cough*
I don't have any experience with SSDs but plenty with flash cards. Sorry to say it's all been really good. :) In fact I still have some SmartMedia that's over 15 years old and a FlashPath 3½" Floppydisk Adapter to read and write the SmartMedia in a 3½" floppy drive and none of these has ever failed or given any problems whatsoever. That goes for my stack of USB flash drives as well. All in all I'm quite satisfied with the array of flash media I've been regularly using over the years.
 
I don't have issues with the solid-state stuff /yet/.

But, I do have a slew of high quality CD-Rs on which the oxide is deteriorating. Some, it has come clean off, leaving a clear acrylic disk exactly like the ones that they give you atop a stack of new disks.
 
But, I do have a slew of high quality CD-Rs on which the oxide is deteriorating.
AFAIK, there is no oxide to deteriorate on CDs. Oxide is used in magnetic media.

In any case, if the surface is deteriorating I doubt they deserved to be called high quality. :)
 
High quality is relative. AFAIK all common opticals are ultimately susceptible to disc rot. It's generally much worse with consumer-recordables (CD-Rs, etc.).
 
AFAIK, there is no oxide to deteriorate on CDs. Oxide is used in magnetic media.

In any case, if the surface is deteriorating I doubt they deserved to be called high quality. :)

We've all seen the CD holders that slide onto a car's sun visors. Generally the CD's are supposed to be between the car's headliner and the visor when the visor isn't being used. One of my co-workers decided it worked better the other way so that if he left his visor down the CD's were partially exposed to direct sunlight. Long story short, during our recovery from Hurricane Andrew he brought in some music CDs that had had the data bearing aluminum layer bleached into being transparent. Mind you these were not CDR's or CDRW's with an organic dye layer. These were commercially produced music CD's that had been pressed in a plant.

When the Aztecs wanted to preserve data they engraved it onto gold sheets. Then they got a visit from some guy named Cortez.

I guess if you really want long term data storage you have to carve stuff on a rock.
 
I don't have any experience with SSDs but plenty with flash cards. Sorry to say it's all been really good. :) In fact I still have some SmartMedia that's over 15 years old and a FlashPath 3½" Floppydisk Adapter to read and write the SmartMedia in a 3½" floppy drive and none of these has ever failed or given any problems whatsoever.
My experience is similar. I have many very old flash cards that still are in perfect working order, like MMC or a 16 MB CF card from HP which I still use quite often. However, I also have modern high-capacity SD cards that I can kill easily within weeks when using them in my digital camera. I guess those too-highly integrated multi or even tripple level cells are just a piece of crap. Old cards used to use single level cells, which are way more reliable. For "serious use" I always buy not-so-high capacity industrial grade cards.
 
I dunno--5.25" floppies were pretty good, if you stored them correctly. I just finished transferring a batch (most DOS 1.0) from 1983-84. One or two needed a little help (D5) but they all came through--no lost oxide. Probably no more than three bad sectors in the whole batch. 8" floppies tend to be very good. Most of my CDs are on Mitsui (MAM-A "gold") CD-Rs and I haven't had a spot of trouble with them. Half-inch tape also tends to be pretty good long term. DDS, surprisingly seems to hold up well. QIC carts, not so much.

It's possible to purchase CD/DVD media that's been stated to have a life approaching 1000 years. It's quite expensive, however and I'm a bit dubious about the life of the substrate.
 
Or at least something cheaper. XT-IDE is fun and all, but the lack of reliable sourcing of pre-builts bars entry for many; the cost of building one yourself prohibiting it for others.

... and in my own collection it's far more likely that I'd have a 8 bit multi-io card sitting around than I would an XT-IDE.

Who said anything about XT-IDE cards? All you need to use XTIDE Universal BIOS is an EEPROM (and somewhere to put it, and something to program it with).
 
It's possible to purchase CD/DVD media that's been stated to have a life approaching 1000 years.
If you're into hype... I've got a really nice bridge for sale, cheep. :)

Other than TIME itself there is no process that can accurately simulate its effects. It just an educated (or uneducated, in some instances) guess.
 
Back
Top