Parent |
WARNING: | This web page is about the IBM Fixed Disk Adapter. Other controllers can behave differently. |
IBM 5150/5155/5160 without IBM Fixed Disk Adapter: | INT 13h supports only the floppy disk system (because the 5150/5155/5160 motherboard BIOS knows nothing about hard drives). |
IBM 5150/5155/5160 with IBM Fixed Disk Adapter: | INT 13h supports both the hard disk system and the floppy disk system. |
- a 100 | |
xxxx:0100 mov ah,00 | (Comment: [00] = function 00h of INT 13h ) |
xxxx:0102 mov dl,80 | (Comment: [80] = hard drive 0) (Comment: Required to inform INT 13h that the target is the hard disk system [not the floppy disk system]) |
xxxx:0104 int 13 | (Comment: INT 13h) |
xxxx:0106 int 3 | (Comment: Breakpoint return for DEBUG) |
xxxx:0107 <------------------------ | at this line just press the [ENTER] key - this will return DEBUG's dash prompt |
- g=100 | (Comment: Executes the code that we typed in above) |
- a 100 | |
xxxx:0100 mov ah,12 | (Comment: [12] = function 12h of INT 13h ) |
xxxx:0102 mov dl,80 | (Comment: [80] = hard drive 0) (Comment: Required to inform INT 13h that the target is the hard disk system [not the floppy disk system]) |
xxxx:0104 int 13 | (Comment: INT 13h) |
xxxx:0106 int 3 | (Comment: Breakpoint return for DEBUG) |
xxxx:0107 <------------------------ | at this line just press the [ENTER] key - this will return DEBUG's dash prompt |
- g=100 | (Comment: Executes the code that we typed in above) |
- a 100 | |
xxxx:0100 mov ah,14 | (Comment: [14] = function 14h of INT 13h ) |
xxxx:0102 mov dl,80 | (Comment: [80] = hard drive 0) (Comment: Required to inform INT 13h that the target is the hard disk system [not the floppy disk system]) |
xxxx:0104 int 13 | (Comment: INT 13h) |
xxxx:0106 int 3 | (Comment: Breakpoint return for DEBUG) |
xxxx:0107 <------------------------ | at this line just press the [ENTER] key - this will return DEBUG's dash prompt |
- g=100 | (Comment: Executes the code that we typed in above) |
- a 100 | |
xxxx:0100 mov ah,10 | (Comment: [10] = function 10h of INT 13h ) |
xxxx:0102 mov dl,80 | (Comment: [80] = hard drive 0 ) ([81] = hard drive 1 ) |
xxxx:0104 int 13 | (Comment: INT 13h) |
xxxx:0106 int 3 | (Comment: Breakpoint return for DEBUG) |
xxxx:0107 <------------------------ | at this line just press the [ENTER] key - this will return DEBUG's dash prompt |
- g=100 | (Comment: Executes the code that we typed in above) |
- a 100 | |
xxxx:0100 mov ah,11 | (Comment: [11] = function 11h of INT 13h ) |
xxxx:0102 mov dl,80 | (Comment: [80] = hard drive 0 ) ([81] = hard drive 1 ) |
xxxx:0104 int 13 | (Comment: INT 13h) |
xxxx:0106 int 3 | (Comment: Breakpoint return for DEBUG) |
xxxx:0107 <------------------------ | at this line just press the [ENTER] key - this will return DEBUG's dash prompt |
- g=100 | (Comment: Executes the code that we typed in above) |
- a 100 | |
xxxx:0100 mov ah,0C | (Comment: [0C] = function 0Ch of INT 13h ) |
xxxx:0102 mov dl,80 | (Comment: [80] = hard drive 0 ) ([81] = hard drive 1 ) |
xxxx:0104 mov cx,4001 | (Comment: Cylinder 40h, sector 1. Cylinder number contained in CH and upper two bits of CL. Sector number in lower 6 bits of CL ) |
xxxx:0107 int 13 | (Comment: INT 13h) |
xxxx:0109 int 3 | (Comment: Breakpoint return for DEBUG) |
xxxx:010A <------------------------ | at this line just press the [ENTER] key - this will return DEBUG's dash prompt |
- g=100 | (Comment: Executes the code that we typed in above) |
- a 80 | |
xxxx:0080 mov ah,02 | (Comment: [02] = function 02h of INT 13h ) |
xxxx:0082 mov dl,80 | (Comment: [80] = hard drive 0 ) ([81] = hard drive 1 ) |
xxxx:0084 mov dh,00 | (Comment: [00] = head 0 ) |
xxxx:0086 mov cx,4001 | (Comment: Cylinder 40h, sector 1. Cylinder number contained in CH and upper two bits of CL. Sector number in lower 6 bits of CL ) |
xxxx:0089 mov al,01 | (Comment: [01] = 1 sector is to be read) |
xxxx:008B mov bx,0100 | (Comment: Point ES:BX to our local data buffer) |
xxxx:008E int 13 | (Comment: INT 13h) |
xxxx:0090 int 3 | (Comment: Breakpoint return for DEBUG) |
xxxx:0091 <------------------------ | at this line just press the [ENTER] key - this will return DEBUG's dash prompt |
- g=80 | (Comment: Executes the code that we typed in above) |
- n mysector.bin | (Comment: file will be named MYSECTOR.BIN) |
- rbx | |
BX 0100 | |
: 0 | (Comment: BX = high-order file size = 0000) |
- rcx | |
CX 4001 | |
: 200 | (Comment: CX = low-order file size = 0200h [512 decimal] ) |
- w100 | (Comment: write from offset 0100 in local segment to file) |
Writing 0200 bytes | |
- |
- a 100 | |
xxxx:0100 mov ah,13 | (Comment: [13] = function 13h of INT 13h ) |
xxxx:0102 mov dl,80 | (Comment: [80] = hard drive 0 ) ([81] = hard drive 1 ) |
xxxx:0104 int 13 | (Comment: INT 13h) |
xxxx:0106 int 3 | (Comment: Breakpoint return for DEBUG) |
xxxx:0107 <------------------------ | at this line just press the [ENTER] key - this will return DEBUG's dash prompt |
- g=100 | (Comment: Executes the code that we typed in above) |
- a 100 | |
xxxx:0100 mov ah,05 | (Comment: [05] = function 05h of INT 13h ) |
xxxx:0102 mov dl,80 | (Comment: [80] = hard drive 0 ) ([81] = hard drive 1 ) |
xxxx:0104 mov cx,6001 | (Comment: Cylinder 60h, sector 1. Cylinder number contained in CH and upper two bits of CL. Sector number in lower 6 bits of CL ) |
xxxx:0107 mov dh,00 | (Comment: [00] = head 0 ) |
xxxx:0109 mov al,05 | (Comment: [05] = Use a sector interleave of 5 ) |
xxxx:010B int 13 | (Comment: INT 13h) |
xxxx:010D int 3 | (Comment: Breakpoint return for DEBUG) |
xxxx:010E <------------------------ | at this line just press the [ENTER] key - this will return DEBUG's dash prompt |
- g=100 | (Comment: Executes the code that we typed in above) |