Fix CHS sector-by-sector read loop
Some checks failed
Builds / ExectOS (amd64, debug) (push) Failing after 32s
Builds / ExectOS (amd64, release) (push) Failing after 29s
Builds / ExectOS (i686, debug) (push) Failing after 41s
Builds / ExectOS (i686, release) (push) Failing after 40s

This commit is contained in:
2025-10-10 19:05:23 +02:00
parent 56a1a811b9
commit fdbe157c18

View File

@@ -121,7 +121,7 @@ VerifyBiosParameterBlock:
ja FsError
ReadExtraCode:
/* Read second VBR sector with extra boot code */
/* Read second VBR sector with extra boot code (1 sector starting from sector 2) */
movl HiddenSectors - Start(%bp), %eax
addl $0x02, %eax
movw $0x01, %cx
@@ -151,6 +151,10 @@ ReadSectors:
ReadCHS:
/* Read sectors using CHS */
popal
CHSLoop:
/* Read sector by sector using CHS */
pushw %cx
pushal
xorl %edx, %edx
@@ -176,7 +180,7 @@ ReadCHS:
movw %es, %dx
addw $0x20, %dx
movw %dx, %es
loop ReadCHS
loop CHSLoop
popw %es
ret