Load, Call, Character Generators, and "Letter Quality" printers

I remember early versions of FoxPro had the LOAD and CALL commands (try typing them in the command window!) that allowed you to put binary code directly into memory and run it!


Back about 20 years ago, I wrote code in Foxbase that I hand assembled into a binary file that Fox would LOAD and CALL .One of the applications was a real-time registration system that would register babies for the “Healthy Baby Contest” in Hawaii. Families registered by mail beforehand, and I did data entry into a FoxBase application. The day of the contest, the families came to the registration desk and gave their name. I typed in their name to pull up their record. My code CALLed my LOADed code, passing a string that would use the BIOS Character fonts to display instructions to the family on the screen: something like “Is your baby’s birth date January 2, 1984?” or “Please proceed to the staging area”.


My binary code looped through the string and looked up the raster fonts in the BIOS and wrote directly to the display adapter to double the size of the font in width and height, so it actually displayed 4 times larger. My IBM PC Technical Reference (which I bought (for $60: a great investment!) along with my first PC in 1982) has the full BIOS ASM listing including the Character Generator Graphics (essentially a bitmap for each character). Each of the 128 characters in the font occupied 8 bytes, for a total of about 1k. Windows and GUI make things so much easier! That manual (sitting next to me) also has the full schematics of the original IBM PC: very valuable for clone makers! (see also Why was the original IBM PC 4.77 Megahertz?)


The program also printed a “Thank you for participating” certificate. Getting a Letter Quality printer on site was quite difficult. I actually borrowed one from my Dad’s office for the few years I ran the contest. Initially it was a huge, very loud NEC typeball printer. Eventually it was a laser printer. Nowadays, we don’t even think about “Letter Quality” any more!


Does anybody else remember using the LOAD and CALL commands?


Comments (3)

  1. wOOdy says:

    Hi Calvin,

    sure I do… That’s one of the basic requirements to get called a "FOXIL" 😉

    LOAD/CALL was the only way to hook some nifty Assembler calls into Foxbase and FoxPro. I stil have a couple of those *.BIN files floating around somewhere on the server.

    Remember IsDiskIn.Bin? And Decode/Encode? And then I had a Peek and a Poke.bin …

    Stil used those in a FoxPro 2.0 application.

  2. Michel Roy says:

    I really should do a cleanup. I still have a MKDIR.BIN and a 3rd party barcode application that makes use of load/call floating around in the system.

  3. Randy Jean says:

    Yep, isdiskin.bin I definitely remember but there were a few other bin libraries I used as well.