aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErwan Velu <erwanaliasr1@gmail.com>2014-01-21 12:23:45 +0100
committerErwan Velu <erwanaliasr1@gmail.com>2014-01-21 12:23:45 +0100
commitde2e72d82999f176dda42aedb6983f85699481a7 (patch)
tree495f408ef90200d6800c016a5e3e742f7e943ef8
parentba3c1d66fc9f6638ea22949e71d10dc4f7e83796 (diff)
downloadhdt-master.tar.gz
hdt-master.tar.xz
hdt-master.zip
core/localboot: Fixing DX mis-initialisationHEADmaster
The original ASM code of localboot was feeding DL with AX but cleared DH. The current code was missing the DH part of it making localboot 0x<something> doing random things. This patch does insure the complete DX register is setup and makes localboot 0x80 working back.
-rw-r--r--core/localboot.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/core/localboot.c b/core/localboot.c
index a4df9171..dcf23c58 100644
--- a/core/localboot.c
+++ b/core/localboot.c
@@ -57,7 +57,7 @@ __export void local_boot(int16_t ax)
* Load boot sector from the specified BIOS device and jump to
* it.
*/
- ireg.edx.b[0] = ax & 0xff;
+ ireg.edx.w[0] = ax & 0xff;
ireg.eax.w[0] = 0; /* Reset drive */
__intcall(0x13, &ireg, NULL);