Skip to main content

Questions tagged [bios]

Basic Input/Output System, the system firmware found especially in IBM PC compatible computers. Use this tag only for the firmware part; for ‘DOS BIOS’, use [dos] instead.

Filter by
Sorted by
Tagged with
76 votes
8 answers
22k views

Why did IBM make the PC BIOS source code public?

IBM released the IBM 5150 Technical Reference manual in August, 1981, and included in it the fully commented source code listing for the BIOS. I find this odd for two reasons: IBM must have realized ...
Brian H's user avatar
  • 60.8k
29 votes
9 answers
11k views

How did early x86 BIOS programmers manage to program full blown TUIs given very few bytes of ROM/EPROM?

I've always wondered how so much functionality and relative luxuries(CMOS Configuration Utilities. See: https://geekprank.com/bios/ for an example) included with most popular x86 BIOSes could be ...
video_error's user avatar
26 votes
12 answers
5k views

Why did CP/M and MS-DOS use the BIOS instead of their own drivers to access hardware?

Modern versions of Windows (and other modern operating systems I suppose) have their own drivers to access hardware. But as I have read, in the old days, if CP/M or MS-DOS wanted to access hardware, ...
user7681202's user avatar
  • 1,857
24 votes
4 answers
7k views

Why is there only one PS/2 port on my computer?

I have an old computer from around 1995. It's from a computer brand that I've never heard of called Samanna Compu-Solutions. I am unsure of the model. The problem is, I only have one PS/2 port to work ...
TheComputerMan's user avatar
23 votes
9 answers
8k views

Why did "protected-mode MS-DOS" never happen?

Software written for MS-DOS used DOS extenders as early as on PC/AT (DOS/16M), and starting from i386-based systems, DOS extenders became really widespread. I'd think it was pretty obvious at the time ...
DmytroL's user avatar
  • 2,172
23 votes
2 answers
4k views

What is a "sympathetic bit"?

I am reading about BIOS in Phil Storrs PC Hardware book: What happens when we turn on a PC ? Next comes the incremental check of all the RAM memory. The RAM memory is written to, and read from, with ...
Flux's user avatar
  • 531
23 votes
3 answers
4k views

How does the BIOS distinguish Interrupt(08h-12h) from INT instructions, vs. actual exceptions inside the CPU?

This is purely academic, out of date, out of curiosity. Let's go back to the 1990s, before Windows, when real-mode DOS programs were common. The BIOS assigned INT 08H+ for their own interrupt handlers,...
THS's user avatar
  • 333
23 votes
2 answers
2k views

Which is the minimum set of interrupts/functions I should implement in a replacement BIOS for a home made IBM PC class computer?

I'm at the early stages of implementing a home-made IBM PC class computer (maybe AT class, I don't know yet). The CPU will be an actual 8088 chip, but everything else (except memory) will be ...
mcleod_ideafix's user avatar
21 votes
4 answers
2k views

Did the IBM PC use the 8088's NMI line?

As I understand it, the Intel 8088 CPU used in the original IBM PC had two interrupt lines: INTR and NMI. INTR was fed from the Intel 8259 Programmable Interrupt Controller, which handled the IRQs ...
smitelli's user avatar
  • 1,769
19 votes
2 answers
2k views

Was there ever a Linux kernel driver for accessing disks via BIOS?

If there is some piece of PC compatible hardware where there are no (publicly) existing drivers for Linux, the only option is to access the disk with BIOS calls. I'm aware that this imposes ...
PoC's user avatar
  • 1,282
18 votes
2 answers
2k views

How does Windows 9x determine which disk drivers correspond to which BIOS disks/DOS drive letters?

Windows 9x can employ two kinds of disk drivers: native protected-mode drivers and compatibility-mode DOS drivers, and the former are used in preference to the latter whenever possible. When Windows ...
user3840170's user avatar
  • 23.1k
18 votes
1 answer
963 views

How did Drive Overlay programs break BIOS disk barriers on older PCs?

I was just reading a thread on Vogons about OnTrack and EZ-Drive setup, and it occurred to me that I have no idea how they work. Please explain why the barrier existed and then how the overlay ...
Thraka's user avatar
  • 2,913
17 votes
3 answers
4k views

In x86 real mode, how does BIOS know what hardware is present?

I know that BIOS is obsolete, hence why I'm asking here :-) BIOS needed to do things like start loading the OS, for which it (usually?) would have needed things like a hard disk driver. However, BIOS ...
Michael Stachowsky's user avatar
16 votes
3 answers
3k views

Who were the first engineers to "cleanroom" the IBM PC BIOS?

In the first season of the AMC show Halt & Catch Fire, the protagonist "Cameron Howe" is introduced. Cameron portrays a rookie engineer who is recruited for being extraordinarily talented, and is ...
Brian H's user avatar
  • 60.8k
15 votes
4 answers
3k views

How was the real-time clock implemented in the original IBM PC and PC/XT?

I know that the IBM PC/AT added a battery backed real-time clock chip that independently maintained time whether the system was powered or not. I've also seen many of those big DS1287 clock chips on ...
smitelli's user avatar
  • 1,769
15 votes
2 answers
2k views

What information was "off limits" to IBM PC clone BIOS authors?

Back in the PC clone days the accepted legally defensible method of selling a non-IBM PC BIOS was using a "clean room" whereby an engineer who had never been exposed to proprietary IBM ...
640KB's user avatar
  • 1,307
14 votes
4 answers
5k views

Why have MS-DOS device drivers if the ROM BIOS provides access to the same devices already?

IO.SYS is an essential part of MS-DOS that contains the default MS-DOS device drivers. IBMBIO.COM is a system file in PC-DOS. It contains the built-in device drivers. Based on the answers of the ...
9968's user avatar
  • 143
13 votes
1 answer
5k views

What happens when PS1's "Fearful Harmony" is triggered?

When inserting an incompatible disc into a Playstation, after waiting awhile the screen will display very corrupt graphics and unsettling music will begin to play. This is unofficially referred to as "...
Accumulator's user avatar
13 votes
2 answers
2k views

Hard coded hard drive BIOS geometries

Most old BIOSes on PCs and compatibles provided means to enter hard drive geometries (cylinder/head/sector as well as more esoteric things like write precomp) when configuring the machine. Some (AMI ...
Joe's user avatar
  • 1,582
13 votes
2 answers
1k views

Was it ever possible to access the full EGA color space in 200-line modes?

It's long been an established fact that the EGA only had four memory planes, which limited the number of colors on the screen to (24) 16. The best compatible monitors at the time had six TTL color ...
smitelli's user avatar
  • 1,769
13 votes
1 answer
889 views

Is there a way to trick my 386SX laptop into thinking there's a floppy drive installed?

I have a 1991 vintage AST Premium Exec 386SX/20 laptop, which is in excellent condition apart from that the original hard drive and the floppy drive are both dead. I've replaced the hard drive with a ...
user882326721's user avatar
12 votes
2 answers
3k views

Are BIOS ROMs interchangeable among different vendor's PCs?

For PC/AT, 80386, and 80486 machines from the late-1980s through early 1990s (e.g. retro machines, not modern), can you expect to pull a BIOS ROM from one machine and have it work fine in a different ...
Brian H's user avatar
  • 60.8k
12 votes
1 answer
2k views

How can I enter BIOS setup on a Commodore PC 30-III?

I have a Commodore PC 30-III but I can't find a way to start the BIOS menu. It displays the following message during startup:
Peter Szanto's user avatar
12 votes
1 answer
809 views

Why is QEMU cutting off the last cylinder of the disk image?

I made a new disk image with the command dd if=/dev/zero of=hd.img bs=512 count=$(expr 16 \* 63 \* \( 15 \* 16 + 8 \)) which corresponds to creating a disk that would fill exactly with QEMU's default ...
Joshua's user avatar
  • 1,839
11 votes
1 answer
2k views

How can I edit CMOS hard drive geometry settings on a 1991 PC?

First, I am NOT asking how to use the BIOS Setup utility. I'm asking how to OVERRIDE the built-in settings my BIOS Setup supports for the HD geometry. I have a 1991 NCR PC with a 386SX, on-board IDE, ...
Brian H's user avatar
  • 60.8k
11 votes
1 answer
885 views

Can the system's BIOS come from an ISA card?

If an ISA card was configured to respond to the address range of the system's BIOS (and the BIOS chips removed), could you boot from it in the same way as the system's default BIOS? Specifically, I'm ...
Sydius's user avatar
  • 2,634
10 votes
4 answers
3k views

How did DOS know where to load itself in upper memory?

If I remember correctly, you could ask DOS to load in upper memory by writing something like... DOS=UMB ...somewhere in the CONFIG.SYS file. But the question is, how did DOS know what portions of ...
Trap's user avatar
  • 329
9 votes
4 answers
2k views

Detecting if a video mode is supported by INT 0x10

The PC BIOS uses the INT 0x10, AH=0x00 function to change the video mode. There's a big list of video modes available, but how can I be sure that the video mode I want to set is supported? For example,...
DarkAtom's user avatar
  • 2,337
9 votes
2 answers
3k views

Why did the BIOS load the MBR at 0x7c00?

The IVT is at 0x0000-0x03ff while the BDA is at 0x0400-0x04ff but boot sectors are loaded at 0x7c00. What was at 0x0500-0x7bff that caused this convention? I'm also curious why some MBRs relocate ...
Anthony's user avatar
  • 455
9 votes
2 answers
3k views

Can someone explain the logic behind Pause and Print Screen modifiers?

Firstly, do I have a correct understanding of what these keys do? On the Wikipedia SysRq page, it says that the Alt key must be held down to invoke SysRq. On the BIOS interrupt call page, it says ...
Benjamin Penney's user avatar
8 votes
2 answers
903 views

DOSBox problem reading floppy boot sector using INT 0x13 on a drive mounted using MOUNT

I'm writing 16-bit boot sector code. It reads "sector 0" under VMware with all the fields, including the 0xaa55 sig, as expected but the same code copied to DOSBox under Win 8.1 (x64) reads ...
rupertreynolds's user avatar
8 votes
1 answer
785 views

What's the fastest way to ignore keypresses?

I'm writing a game for the IBM PC (running MS-DOS), complete with fancy cutscenes. Unfortunately, though, the keys pressed during those fancy cutscenes are carried out once the fancy cutscene has ...
wizzwizz4's user avatar
  • 18.7k
7 votes
2 answers
6k views

Can DOS 6.22 recognize more than 504MB when the BIOS only supports CHS?

My CMOS setup correctly recognizes the geometry of the drive, (but does not support LBA). And FDISK in DOS 6.22 only recognizes 504MB. FDISK even shows the size of the primary partition as roughly ...
Quasi_Stomach's user avatar
7 votes
3 answers
1k views

How can I tell if my old PC supports > 137 GB hard drives?

I have an old PC from 1999 that has an ASUS P5A motherboard. When I power it on, it says ASUS P5A ACPI BIOS Revision 1011 Beta 005 and 05/02/2002-ALADDIN5-<<P5A>>: I recently read that up ...
pacoverflow's user avatar
7 votes
2 answers
355 views

Why did some BIOSes have the timer tick wrap around at 1800B1h instead of at 1800B0h?

The 1989 2nd edition of the DOS PROGRAMMER'S REFERENCE says: Midnight is determined as the number of ticks in a complete day of 86400 seconds (1573040 ticks of the clock, for a total elapsed time of ...
Sep Roland's user avatar
  • 1,185
7 votes
2 answers
377 views

Need help restoring the OS of an "AST Premium Exec 386SX/20" laptop

I have an AST Premium Exec 386SX/20 Model 63V laptop minus a floppy drive and hard disk. Otherwise the 1991 vintage machine is fully functional (and in excellent condition, so it's definitely worth ...
Wossname's user avatar
  • 171
6 votes
1 answer
1k views

What was the first motherboard with UEFI? [closed]

UEFI is a publicly available (and a bit controversial) specification that replaces the legacy BIOS which has been in x86 computers since the original IBM PC (12 August 1981) At first, I know that this ...
sech1p's user avatar
  • 161
6 votes
1 answer
663 views

How does POST memory test work on a relatively modern (2000s) PC? Does it still test every single byte like on older ones?

I have an Asus eee 4G (AMI BIOS), I want to ask if this product actually overwrites the entire RAM during cold boot. I have the "Quick boot" feature turned off and I can see the memory being ...
Hasbo's user avatar
  • 61
6 votes
1 answer
535 views

Have I Screwed the CMOS by Booting With the Clear Jumper Set?

I've been playing around with one of my old PCs recently, an IBM PC 340, and at some stage in trying to get a compact flash adapter to play nice I hit a weird issue where the system BIOS (a Surepath ...
Matt Lacey's user avatar
  • 2,320
5 votes
2 answers
1k views

Starting a multi core CPU as single core [closed]

Is it possible to use a system with a modern, multi-core CPU with older operating systems that only support single core operation? Is this something that needs to be set in the BIOS? Does it depend ...
user avatar
5 votes
1 answer
16k views

Accessing a USB drive from DOS

I am setting up a new development computer with FreeDOS and can boot off the SATA or USB drive. This is my first new computer with sophisticated UEFI (I have CSM enabled). If I boot from the USB I ...
jwzumwalt's user avatar
  • 4,479
5 votes
1 answer
541 views

Can't boot FAT32 larger than 2GB, unlike FAT16

Why can my PC not boot FAT larger than 2GB (FAT32) in legacy mode, but FAT16 and NTFS work fine? It just gives me a non-system disk error, while booting the same (DOS boot disk) files under FAT16 ...
Ciel Ruby's user avatar
  • 555
5 votes
2 answers
412 views

How to debug BIOS ROM incompatibility?

I'd like to use the XT-IDE Universal BIOS with an IBM XT 286 (5162), but it's known to be incompatible. With the card installed, it will not boot from a floppy from which it would otherwise boot (it ...
Sydius's user avatar
  • 2,634
5 votes
5 answers
522 views

Chaining IRQs in x86 ROM code

Objective Summary: I need to write a sleep() function to be used in 8088 (PC/XT ISA) ROM code with 1 ms resolution. Though the question can be more generalized to chaining INTs with data in different ...
640KB's user avatar
  • 1,307
4 votes
2 answers
781 views

Rufus FreeDOS option for CF is not bootable

When I try to prepare a bootable FreeDOS on my CF disk my old 386SX laptop (AMI Bios from 1990) is not able to boot => "missing operating sytem". If I select "Use a fix for older ...
leon22's user avatar
  • 354
4 votes
2 answers
413 views

Detecting the number of disk drives installed

When the BIOS gives control to the MBR (or the bootloader, for non-partitioned media), it passes the drive number from which the bootloader was loaded in the DL register. This number is most of the ...
DarkAtom's user avatar
  • 2,337
4 votes
1 answer
300 views

Disable motherboard floppy controller DOS

I have a SuperMicro P4SCA motherboard (manual) running FreeDOS 1.3. The motherboard has an onboard floppy controller as part of a W83627HG (datasheet). However, this floppy control fails to provide ...
MattHusz's user avatar
  • 149
4 votes
1 answer
1k views

XT-IDE Universal BIOS does not find master drive on XT CF Lite card

I have built a XT CF Lite v4.1 to boot my 286 with a compact flash card. I have configured it via DIP switches to address 300h and I am using the XT-IDE Universal BIOS 2.0.0 beta 3. This is I think ...
Arne's user avatar
  • 1,274
3 votes
4 answers
893 views

How can I make an 80 GB hard drive work with an Asus P2L97 motherboard?

I have a 80 GB PATA HDD (2003 Western Digital Caviar WD800 LBA) which is not recognized by my very old computer (Pentium 2 / Asus P2L97 motherboard). I thought it was due to the partitioning of the ...
Damien Yearwing's user avatar
3 votes
1 answer
935 views

Award BIOS error code meaning

I have a faulty Asus SP-97V Pentium motherboard. It doesn't boot, but it definitely takes power and does something. I plugged a PCI diagnostics card into it, and it shows error codes C0 or C1. It ...
Tamás Polgár's user avatar