diff --git a/kernel/trunk/core/debug.inc b/kernel/trunk/core/debug.inc index 74ead68aba..0b3376bef0 100644 --- a/kernel/trunk/core/debug.inc +++ b/kernel/trunk/core/debug.inc @@ -421,6 +421,7 @@ debugger_notify: debug_exc: ; int 1 = #DB save_ring3_context + cld mov ax, os_data mov ds, ax mov es, ax diff --git a/kernel/trunk/core/sys32.inc b/kernel/trunk/core/sys32.inc index a7137cc1f5..7245338c1a 100644 --- a/kernel/trunk/core/sys32.inc +++ b/kernel/trunk/core/sys32.inc @@ -246,6 +246,7 @@ exc_c: .debug: ; we are debugged process, notify debugger and suspend ourself ; eax=debugger PID + cld movzx ecx, bl push ecx mov ecx, [0x3010] diff --git a/kernel/trunk/fs/fat12.inc b/kernel/trunk/fs/fat12.inc index 62a71c9688..22b78a6890 100644 --- a/kernel/trunk/fs/fat12.inc +++ b/kernel/trunk/fs/fat12.inc @@ -1328,14 +1328,14 @@ fs_FloppyRead: jz .eof cmp edi, 0xFF8 jae .eof + sub ebx, 512 + jae .skip lea eax, [edi+31] pusha call read_chs_sector popa cmp [FDC_Status], 0 jnz .err - sub ebx, 512 - jae .skip lea eax, [0xD000+ebx+512] neg ebx push ecx