diff --git a/src/os/bios/disk.rs b/src/os/bios/disk.rs
index 0551ef10bcdce8c4382d7d716a4bd68558038497..4f864f8e661210fa7cb50ba9c27141f73b39e74f 100644
--- a/src/os/bios/disk.rs
+++ b/src/os/bios/disk.rs
@@ -79,7 +79,8 @@ impl Disk for DiskBios {
             data.with(self.thunk13);
 
             //TODO: return result on error
-            assert_eq!({ data.eax }, 0);
+            let ah = ({ data.eax } >> 8) & 0xFF;
+            assert_eq!(ah, 0);
 
             //TODO: check blocks transferred
             dap = ptr::read(DISK_ADDRESS_PACKET_ADDR as *mut DiskAddressPacket);