HELP !!
Re:HELP !!
I suppose you are setting up for 'read_sector', but I'm too lazy (and/or busy) to hunt through your code to find out what the values at 0x8000 etc are supposed to be. Brief comments on those 'lodsb' lines would help.
However, to find the trouble, I would be doing exactly what you should be doing, i.e. stepping through the values you are feeding to INT 13h/AH=02h each time through the loop. If you don't have a way to write register and memory values to the screen, it's worth the trouble to write one.
Sorry I couldn't spot the problem with a cursory glance
;----------------------------------------------
mov si,0x8000
add si,[file_offset]
mov cx,[sector_numbers]
mov ax,0x0060
mov es,ax
xor bx,bx
load_sectors:
push cx
lodsb
mov dh,al
lodsb
mov ch,al
lodsb
mov cl,al
push si
mov si,msg_loading
call bprint
pop si
call read_sector
pop cx
loop load_sectors
;--------------------------------------
However, to find the trouble, I would be doing exactly what you should be doing, i.e. stepping through the values you are feeding to INT 13h/AH=02h each time through the loop. If you don't have a way to write register and memory values to the screen, it's worth the trouble to write one.
Sorry I couldn't spot the problem with a cursory glance
;----------------------------------------------
mov si,0x8000
add si,[file_offset]
mov cx,[sector_numbers]
mov ax,0x0060
mov es,ax
xor bx,bx
load_sectors:
push cx
lodsb
mov dh,al
lodsb
mov ch,al
lodsb
mov cl,al
push si
mov si,msg_loading
call bprint
pop si
call read_sector
pop cx
loop load_sectors
;--------------------------------------