Changing ROM BIOS Disk Media Types between 1.2 Meg. and 360K

ID Number: Q36314

3.x 4.00

MS-DOS

Question:

When switching the disk drive from a 1.2-megabtye disk in a

1.2-megabyte drive to a 360K disk in a 1.2-megabyte drive and back

again, we are running into problems. After the media change,

subsequent disk I/O results in a MS-DOS "General Failure" error. Is

this a problem with MS-DOS? Under what conditions will this occur? Is

there a known fix?

Response:

MS-DOS file control block (FCB) or file-handle based I/O does not have

this problem. A program that uses handle or FCB-based I/O does not

need to be concerned with the disk media type.

However, an application that uses ROM BIOS interrupt 13H disk I/O

services needs to be concerned with the disk media type. If you use

these low-level disk I/O services, you should retry your I/O

operations. Normally, retrying enables your code to allow the ROM BIOS

to reset the media type. If the last access of a disk was as a 360K

disk, and then a 1.2-megabyte disk is inserted, your code will need to

retry the next low-level I/O operation while the ROM BIOS adjusts the

media type to a 1.2-megabyte disk in a 1.2-megabyte drive. (On some

systems, such as Compaq systems, this change is noticeable, since the

drive light changes from green to red when different media is inserted

in the drive.)

According to some OEM ROM BIOS technical reference manuals, when using

interrupt 13H, if you receive a disk error, you should reset the disk

controller and retry the operation. A specified number of retries

should be required on most I/O operations.

For more IBM (and 100-percent compatible) ROM BIOS information, refer

to the "IBM PS/2 and PC BIOS Interface Technical Reference," part

number 68X2260, available from IBM by calling (800) IBM-PCTB. Another

reference that contains similar material is the Microsoft Press book,

"Programmer's Quick Reference Series: IBM ROM BIOS," by Ray Duncan,

ISBN 1-55615-135-7. For OEM ROM BIOS extensions, refer to your OEM's

hardware and technical reference manuals.