Hi!
- bugfix for INT21/3301: MS-DOS clears high buts of DL.
--- Begin Message ---
diff -ruNp old/kernel/inthndlr.c new/kernel/inthndlr.c
--- old/kernel/inthndlr.c 2004-05-28 12:08:32.000000000 +0000
+++ new/kernel/inthndlr.c 2004-05-31 07:29:14.000000000 +0000
@@ -78,14 +78,14 @@ VOID ASMCFUNC int21_syscall(iregs FAR *
case 0x33:
switch (irp->AL)
{
- /* Get Ctrl-C flag */
- case 0x00:
- irp->DL = break_ena;
- break;
-
/* Set Ctrl-C flag */
case 0x01:
break_ena = irp->DL & 1;
+ /* fall through */
+
+ /* Get Ctrl-C flag */
+ case 0x00:
+ irp->DL = break_ena;
break;
case 0x02: /* andrew schulman: get/set extended control break */
@@ -1049,7 +1049,7 @@ dispatch:
/* dta for this call is set on entry. This */
/* needs to be changed for new versions. */
rc = DosFindFirst(lr.CX, FP_DS_DX);
- lr.AX = 0;
+ lr.AX = 0; /* ??? - avb */
goto short_check;
/* Dos Find Next */
@@ -1057,7 +1057,7 @@ dispatch:
/* dta for this call is set on entry. This */
/* needs to be changed for new versions. */
rc = DosFindNext();
- lr.AX = 0;
+ lr.AX = 0; /* ??? - avb */
goto short_check;
/*
case 0x50:
--- End Message ---