hard disk and BIOS

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
Rookie

hard disk and BIOS

Post by Rookie »

hi,
ive just found out that with BIOS interrupts you can access only about 8GB of hard disk. how can i access more?
do i have to use a driver?
or are there any other interrupts or something?
Chris Giese

RE:hard disk and BIOS

Post by Chris Giese »

>ive just found out that with BIOS interrupts you can access only about 8GB of hard disk

Where did you hear that?
http://my.execpc.com/~geezer/temp/lba.asm
Rookie

RE:hard disk and BIOS

Post by Rookie »

ive heard about that in the Ralf Brown's interrupt list, ive opened the read sector into memory interrupt function description and it's arguments limit the accessible hard disk capacity to only 8 GB. (1023 cylinders*63 sectors*255 heads*512 bytes per sector = a bit less than 8 GB) the cylinder is specified by the ch register and the high two bits of the cl register. the sector is specified by the six low bits of the cl register. the head is specified by the dh register. those are all the arguments needed and put together can address about 8 GB of data.
Chris Giese

RE:hard disk and BIOS

Post by Chris Giese »

You're describing the CHS disk functions (INT 13h AH=02h and AH=03h). These are, indeed, limited to 8 GB disks.

LBA.ASM uses the LBA disk read function (INT 13h AH=42h), which has no such limit.

PS to St8ic: LBA.ASM also contains an assembly-language routine (wrnum) to display hex or decimal numbers:
http://my.execpc.com/~geezer/temp/lba.asm
Rookie

RE:hard disk and BIOS

Post by Rookie »

and could u help me calling the 42h function in interrupt 13?
i dont understand the parameters...
Post Reply