summaryrefslogtreecommitdiff
path: root/boot/disk_load_16.asm
diff options
context:
space:
mode:
authorMichal Idziorek <m.i@gmx.at>2014-10-24 01:42:05 +0200
committerMichal Idziorek <m.i@gmx.at>2014-10-24 01:42:05 +0200
commit831df8bcb2717442a41464533bacf0a58a4af0ce (patch)
tree5422b40b6d303a709dac5c6cf6a386df9e071227 /boot/disk_load_16.asm
parent01c79415ed46f645f46287ce3b033943fb9dcb1e (diff)
working on bootloader (extended mem) (broken!)
Diffstat (limited to 'boot/disk_load_16.asm')
-rw-r--r--boot/disk_load_16.asm9
1 files changed, 5 insertions, 4 deletions
diff --git a/boot/disk_load_16.asm b/boot/disk_load_16.asm
index fe573ea..78aa22b 100644
--- a/boot/disk_load_16.asm
+++ b/boot/disk_load_16.asm
@@ -76,15 +76,15 @@ disk_load_lba:
jc disk_read_error
mov bx,es
- add bx,0x0200
- cmp bx,0x9e00
+ add bx,0x0800
+ cmp bx,0x9000
je disk_load_finish
mov es,bx
mov bx,0
mov ax,[LBA]
- add ax,16
+ add ax,64 ; 64 sectors = 0x2000*4 bytes ;16 sectors this is 0x200*0x10 butes
mov [LBA],ax
jmp next_sectors_lba
@@ -157,6 +157,7 @@ disk_load_chs:
;calculate chs
call lba_to_chs
+
; and now READ it!
mov al,16 ;number of sectors to read
mov dl,[BOOT_DRIVE]
@@ -221,7 +222,7 @@ lba_to_chs:
lba_adr:
dw 0x10 ; size of packet ( 16 byte)
- dw 16 ; number of sectors to read
+ dw 64 ; number of sectors to read
; target is 0x10000