Using WinBox for 86Box:
An IBM™ PC/AT Example
Using WinBox for 86Box
Using WinBox for 86BoxIf you haven't installed WinBox for 86Box yet, you should read this page first.
An IBM™ PC/AT Example[ Note: For this example, I used "Build 4584" of 86Box (April 29, 2023).
Open WinBox for 86Box and click on the New Machine item in the menu area:
NOTE: If you happen to click your mouse cursor while it's over the emulator window, to get it back outside, you must press both the F8 and F12 Keys at the same time! Or, if you have a Center Mouse Button, clicking on that may also work. (Note: Unlike some other emulators, the cursor does not need to be inside an 86Box window in order to ENTER data via the Keyboard; keyboard presses are automatically captured by the VM.)
Now click on the "Start" icon and the window that pops-up will first go through a Memory test of the VM's 512 KiB of Memory, and then show the
following: Before proceeding, I need to point out that whenever you "Start" an existing VM, the window that pops-up and the code running
it is that of 86Box; not WinBox. If you're interested in any particular details of what you see next, the 86Box Documentation is located here.
Leave the 86Box window open. Now download the IBM SETUP diskette from: Diagnostics [diskette] for the IBM Personal Computer AT. Extract the file, ATAD_207.IMG, from that Zip file into some folder nearby
(for example, your ...\Documents\WinBox for 86Box\Virtual Machines folder), then click on the empty 5.25-inch diskette icon, circled in GREEN in the
lower left corner of the screen shown below, choose "Existing image..." and lastly navigate to wherever you extracted the ATAD_207.IMG file and select it:
IBM™ PC/AT's Built-In ROM BASIC Interpreter Before moving on, we'll take a quick look at the fact that all IBM PCs included a quite versatile
BASIC Language interpreter (stored in its ROM chips) which was immediately available to users when no operating system was found. Restart the VM without any diskette image in its
floppy drive, and you should see IBM BASIC's editor window pop-up. The code lines (100 - 500) are what I wrote in BASIC to show the same "BIOS Release Date" that we saw
in the first Diagnostics window above:
Using DEBUG on an IBM™ PC/AT's ROS Chips First, download PC-DOS 3.30 on 5.25-inch (360 KiB) diskette image files into a Directory (Folder)
you can easily navigate to from within 86Box: Many sources exist on the Net, but I recommend using these two image files from archive.org, which I've verified as copies of the
original diskettes.[3] Download the: Start your IBM PC/AT VM, but at any time before it finishes the Memory test be sure to click on the "Pause" icon: Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00000000 36 58 38 30 4F 52 20 42 20 4F 50 20 39 31 31 38 6X80OR B OP 9118 00000010 20 36 32 58 30 38 32 30 20 43 4F 50 52 2E 20 49 62X0820 COPR. I 00000020 42 4D 20 31 39 38 35 BM 1985 That chip is also referred to as the the one with the "Even" (or "Low") bytes and the other physical chip (in socket U47 of that motherboard) with IBM Part Number "62X0821" printed on it as containg the "Odd" (or "High") bytes, which begin as: Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00000000 32 30 32 43 50 2E 49 4D 43 52 2E 31 38 2C 39 35 202CP.IMCR.18,95 00000010 20 36 32 58 30 38 32 31 20 43 4F 50 52 2E 20 49 62X0821 COPR. I 00000020 42 4D 20 31 39 38 35 BM 1985 Do some research and see if you can answer the question: "Why was this BIOS code split into alternating 8-bit bytes on two different chips?"
For Extra Credit (or for "Old Timers" wishing to relive early DOS days)Installing IBM PC-DOS 3.30 on a PC/AT Disk Drive With the "Startup" diskette (IBM330_1.IMA) in the A: drive, ENTER
fdisk at the command prompt, and you should eventually see: After restarting, you'll still need to format the drive and transfer the DOS system files to it. Now comes the task of copying all the
DOS files to the hard disk; no automatic setup programs back then! Here are the steps I used:
Next 86Box VM Example: NEAT BIOS
Note: If you need help setting up a particular Virtual Machine, you can contact me here for help.
Footnotes 1[Return to Text] When starting a PC with this error, you will never see a Memory test, it will immediately display this error message:
2[Return to Text] Although the terms we use for magnetic storage device capacities did have a direct correspondence to their physical attributes at one time; and still do for what we called floppy disks, where the magnetic medium has only two surfaces at most (so a maximum of 2 sides), and concentric rings on either side of the medium called tracks, generally comprised of 512-byte sectors, that has not been true for hard disk drives for many decades. So, a floppys capacity is computed by: 1 or 2 sides x tracks/side x sectors/track x bytes/sector. Early hard disks, which had already been created two decades before the first PC, used multiple platters, and the term heads rather than sides came from the combination of all the sides of the many platters. Thus the dimensions for computing the capacity of an early disk drive were: heads x tracks/head x sectors/track x bytes/sector, and each of those terms was directly related to some physical aspect of the drive's structure. It must be noted here that the term cylinders is equivalent to "tracks/head" in that equation. To make it a bit clearer, the number of sectors in a disk drive can be found using this equation: heads x tracks/head (cylinders) x sectors/track = Total Sectors
However, by the time only 20 MiB disk drives started to become popular in IBM PCs, a conflict was already brewing: Disk drive manufacturers made a rather reasonable decision when constructing new IDE (Integrated Drive Electronics) drive controllers under what came to be called ATA-1 in 1986, to limit the number of Heads to 16 (who would ever use more than 8 platters in a drive for a PC, right? Counting from 0 to 15), the number of Sectors/Track to 255 and the number of Cylinders (or Tracks per surface) to 65,536 (counting from 0 to 65,535). That allowed for 267,386,880 Sectors (or 136,902,082,560 bytes; 127 GiB of storage). But IBM; not Microsoft, specifically whomever made the final decision to use the limited C/H/S values of only 1024 cylinders, 255 heads (crazy) and only 63 sectors, in the PCs BIOS code (loosely based upon the existing BIOS Interrupts for floppy drives) created what later became a big problem for PC users and the industry. Why? Because the BIOS, OS and disk drive controllers all needed to communicate with each other using the smallest common maximum allowable values in each case, which was the 1024 cylinders and 63 sectors of IBM, and the 16 heads of the ATA-1 standard, meaning that the PC's BIOS could never access more than 1024 x 63 x 16 = 1,032,192 sectors, or 528,482,304 bytes (504 MiB). When disk capacities exceeded that, drive manufacturers had to include special software installed (and hidden) at the first sector and following for accessing the full capacity of their drives! 3[Return to Text] 21 years ago now, I had access to some original physical IBM PC-DOS 3.30 diskettes and wrote in an email dated May 04, 2002, that I'd hashed the contents of the whole "Startup" diskette as a MD5 checksum of: 12dd70c60e57ce97b4e5aabd0f05c71a; which is the same exact value for the image file I recently downloaded from archive.org. In that email, I also mentioned the diskette contained the Hidden zero-length file: VENDOR-#.DO1 (07-04-83 12:00a) and that the files, 4201.CPI, EGA.CPI, FDISK.COM, FORMAT.COM and IBMBIO.COM were dated: 03-18-87 12:00p (whereas all the other files were dated: 03-17-87 12:00p). And in another email dated April 28, 2002, I mentioned the MD5 checksum for the "Operating" diskette was: 2e1ec52cc9cdbf8d93f9fabf27aafe51. Thus the reasonat I can state these two image files at archive.org are identical to the original contents. 4[Return to Text] In fact, I did quite a bit of the file hashing and correcting of the checksums for the dead website 16bitos.com. You can, however, still see its pages at archive.org, such as this one for IBM PC DOS 3.30; which includes photos of the diskette labels. There's also a very nice clear photo of the Startup diskette label on archive.org's IBM PC-DOS 3.30 Details page.
|
First Published: 28 May 2023 (28.05.2023).
Updated: 28 May 2023 (28.05.2023); finished initial set up for IBM PC/AT example, 29 May 2023 (29.05.2023); finished IBM PC/AT and DEBUG example, 30 May 2023 (30.05.2023);
added many details and some links, 31 May 2023 (31.05.2023); added more pics and finished the page.
Last Update: 05 June 2023 (05.06.2023); added small section on BASIC Interpreter.
You can write to me here: Author's
email address. (It opens in a new window.)
Back to the BIOS page
MBR and Boot Records
Index
The Starman's Realm Index Page