[JUMP FLOPPY Bios PARAMETER BLOCK—\20
Total Page:16
File Type:pdf, Size:1020Kb
US 20020026571A1 (19) United States (12) Patent Application Publication (10) Pub. No.: US 2002/0026571 A1 Rickey (43) Pub. Date: Feb. 28, 2002 (54) DUAL USE MASTER BOOT RECORD comprising: a computer usable medium including at least one partition area and a boot sector, With the computer (76) Inventor: Albert E. Rickey, Lake Forest, CA usable medium having computer readable program code (Us) means embodied therein, comprising: ?rst computer read able code means ?xed in the boot sector including a ?rst Correspondence Address: BIOS parameter block for setting parameters for the medium IRELL & MANELLA LLP if inserted in a ?oppy drive of the computer; and second 840 NEWPORT CENTER DRIVE SUITE 400 computer readable code means ?xed in the boot sector NEWPORT BEACH, CA 92660 (US) comprising a Partition Table for organizing the medium to include at least one partition and for designating an active (21) Appl. No.: 09/960,181 partition. In a further embodiment of the invention, the article of manufacture includes: third computer readable (22) Filed: Sep. 20, 2001 code means ?xed in the active partition area on the computer readable medium and including a second BIOS parameter Related US. Application Data block, and DOS boot record code for locating operating system ?les, loading the operating system ?les into the (63) Continuation of application No. 09/163,359, ?led on memory of the computer and causing the computer to Sep. 30, 1998, noW Pat. No. 6,308,264. execute them; and fourth computer readable code means ?xed in the boot sector comprising a master boot record code Publication Classi?cation for loading into the memory of the computer the third computer readable code means comprising the second BIOS (51) Int. c1.7 ..... .. G06F 7/00; G06F 9/00; G06F 9/445 parameter block and the DOS record code of the active (52) US. Cl. ................................................................ .. 713/2 partition listed in the Partition Table, and causing the com puter to execute the DOS boot record code using parameters (57) ABSTRACT from the BIOS parameter blocks in accordance With Whether A high capacity computer article of manufacture to be the DOS boot record code Was loaded from a ?oppy drive or loaded into a drive of a computer that includes a memory, a hard drive. [JUMP FLOPPY BIos PARAMETER BLOCK—\20 MASTER BOOT RECORD CODE PARTITION TABLE SSh AAh_\24 40, ‘\26 ; REMAINING SECTORS OF ; ~ THE BOOT TRACK - JUMP FIXED DISK BIOS PARAMETER \ BLOCK 28 _\ 44 D05 BOOT RECORD CODE 30 35h AAh FAT O ‘\32 FAT 1 ROOT DIRECTORY DATA AREA Patent Application Publication Feb. 28, 2002 Sheet 1 0f 4 US 2002/0026571 A1 [JUMP FLOPPY BIOS PARAMETER BLOCK-\ZO _ “42 MASTER BOOT RECORD CODE ‘22 ~ ‘\24 f PARTITION TABLE Ssh AM 40 ‘\26 ; REMAINING SECTORS OF ; - THE BOOT TRACK - JUMP FIXED DISK BIOS PARAMETER _\ E - BLOCK 28 K 44 DOS BOOT RECORD coDE 30 _ SSh AAh FAT 0 ‘\32 FAT 1 ‘\34 mm DIRECTORY ~36 DATA AREA “38 FIG./ Patent Application Publication Feb. 28, 2002 Sheet 2 0f 4 US 2002/0026571 A1 H62”) 50 F/G.Z K52 JUMP OVER THE BFB I /54 RELOCATE SELF TO RAM ADDRESS O:600h AND JUMP TO NEW COPY OF F'G' 2(2) SELF I /56 DETERMINE THE DRIVE NUMBER WHICH THE BIOS USED FOR INITIATING THE BOOT AND DRIVE THE RESULT. (WILL BE 0 OR 80h) I /58 SET A POINTER TO THE FIRST ENTRY IN THE PARTITION TABLE. /64 ADVANCE THE POINTER TO THE NEXT ENTRY IN THE PARTITION TABLE. IS THIS PARTITION MORE PARTITION ACTIVE? TABLE ENTRIES? Patent Application Publication Feb. 28, 2002 Sheet 3 0f 4 US 2002/0026571 A1 l r70 l f 66 READ THE FIRST sEcToR OF THE PRINT AN ERRoR ACTIVE PARTlTlON MESSAGE AND WAIT (THE DBR) TO A RAM BUFFER AT ADRESS FOR A KEY PRESS 0:7COOh l r68 72 IS THE EXECUTE AN BOOT DRIVE INTERRUPT NUMBER 0 19h REBOOT. (FLOPPY?) r74 OVERWRITE FIXED DISK BPB IN RAM BUFFER AT 0:7COO WITH FLOPPY BPB FROM RAM BUFFER AT 0:600h Y /76 JUMP TO THE DBR CODE IN RAM BUFFER AT ADRRESS FIG. 2(2) Patent Application Publication Feb. 28, 2002 Sheet 4 0f 4 US 2002/0026571 Al F r100 SET RETRY COUNT 'I ,m USE INTERRUPT 13h TO READ BOOT SECTOR OF FLOPPY DRIVE 0 TO RAM BUFFER r114 112 RESET DISK AND DECREMENT RETRY INTERRUPT 13h REPORTS AN COUNT ERROR? r118 COMPARE BOOT SECTOR OF FLOPPY TO CODE MORE RETRIES'? RESIDING AT 0:600 ,122 NO FLAG BOOT DRIVE AS 00h IS THE CODE IDENTICAL? r124 FLAG BOOT DRIVE AS 80h F/G.ZA US 2002/0026571 A1 Feb. 28, 2002 DUAL USE MASTER BOOT RECORD is, the data contained in drive A: or B: can only be accessed When the BPB is present at sector 0. For partitioned media FIELD OF THE INVENTION such as a HCRM con?gured as C:, the operating system Will scan all drives looking for DOS type partitions, as de?ned in [0001] The present invention relates generally to the ?eld the system type ?le of the Partition Table, and Will only of computer storage, and more particularly to high capacity assign a drive letter if a BPB is found in the ?rst sector of removable media devices Which may be accessed and each partition. The BPB for a hard drive formatted media booted, regardless of format con?guration, as either a ?oppy does not reside in sector 0. Therefore, When attempting to or hard disk. use a partitioned HCRM as A: (i.e. a ?oppy), the operating system Will not be able to access the data on the media. BACKGROUND OF THE INVENTION [0005] To support existing HCRM media, a solution is [0002] The current standard 1.44 megabyte ?oppy remov needed that Will alloW partitioned media to function properly able media is becoming increasingly inadequate to meet user When inserted into a ?oppy con?gured HCRM drive. As needs. In response, BIOS vendors have begun offering indicated above, this requires addressing tWo problems, systems Which alloW High Capacity Removable Media booting, and access to data. Additionally, for a solution to be (HCRM) drives, such as Iomega Corporation’s ZIP® drive, viable, it must provide a simple Way for existing media to be to be BIOS con?gurable as either a hard drive, or a ?oppy updated, Without compromising the user’s data. drive. Although HCRM drives are not neW to the PC industry, they have traditionally been used as removable SUMMARY OF THE INVENTION hard drives, and therefore the HCRM media is generally partitioned in the same manner as conventional hard disks. [0006] The present invention solves the problems dis One of the problems stemming from the use of HCRM cussed above that are associated With accessing and booting drives as ?oppies is the inability of DOS based operating a removable partitioned computer storage media, such as a systems to boot from or access partitioned media in a ?oppy HCRM device, as a ?oppy. In accordance With the present drive. Because of the ability to change the con?guration of invention a removable partitioned media can be both the drive, a single format is needed that Will boot, and alloW accessed and booted by the operating system as either a access to the media, regardless of it’s current con?guration. ?oppy or a hard disk, by replacing the standard MBR With This format should be compatible With existing partitioned a Dual Use MBR. To alloW the operating system to locate media so that they can be used Without requiring reformat the BPB Where it is expected to reside, Which for ?oppy ting, or otherWise destroying the data they contain. drives means that a BPB must be located at sector 0, and for ?xed disks a BPB must be present in the ?rst sector of the [0003] The boot process of IBM compatible computers partition, the present invention takes a hard drive formatted begins With the BIOS reading the boot sector of the boot media and replaces the contents of the Boot Sector With a drive into memory and executing it. If the required boot neW MBR, refered to in this disclosure as “DUMBR” (Dual record code and/or data structure is missing from the media, Use Master Boot Record), that contains neW code in accor the boot process Will fail to load the operating system. For dance With the invention, a Partition Table, and the addition example, in systems Which alloW HCRM drives to be of ?oppy BPB. The neW code ?rst determines the drive con?gured as either A: (i.e. a ?oppy) or C: (i.e. a hard disk); number used by the system BIOS for initiating the boot With the HCRM drive con?gured as C: the partitioned media process and saves the result. Once the DBR of the ?rst active Will boot because a Master Boot Record (MBR) and Parti partition is read into RAM, the neW code then determines if tion Table are present in the boot sector. HoWever When a the saved drive number value is 0 (or 00h), indicating that HCRM drive containing a partitioned media is con?gured as the boot drive is a ?oppy. If the boot Was initiated from a A:, Where no Partition Table is required, the media Will fail ?oppy (saved drive number is 0), the neW code overWrites to boot. This is because the standard MBR code is designed the hard disk BPB in RAM With the ?oppy BPB of DUMBR. to boot a hard drive, and alWays assumes a BIOS drive The code then jumps to the DBR code in the RAM buffer number of 80h.