Author: aandrejevic
Date: Fri May 15 22:18:04 2015
New Revision: 67748
URL:
http://svn.reactos.org/svn/reactos?rev=67748&view=rev
Log:
[NTVDM]
Implement DOS IOCTLs 0x06 (Get Input Status) and 0x07 (Get Output Status).
Modified:
trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dosfiles.c
Modified: trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dosfiles.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/mvdm/ntvdm/dos/…
==============================================================================
--- trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dosfiles.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dosfiles.c [iso-8859-1] Fri May 15
22:18:04 2015
@@ -936,6 +936,52 @@
return TRUE;
}
+ /* Get Input Status */
+ case 0x06:
+ {
+ if (Node == NULL)
+ {
+ Sda->LastErrorCode = ERROR_INVALID_FUNCTION;
+ return FALSE;
+ }
+
+ if (Node->InputStatusRoutine &&
Node->InputStatusRoutine(Node))
+ {
+ /* Set the length to 0xFF to mark that it's ready */
+ *Length = 0xFF;
+ }
+ else
+ {
+ /* Not ready */
+ *Length = 0;
+ }
+
+ return TRUE;
+ }
+
+ /* Get Output Status */
+ case 0x07:
+ {
+ if (Node == NULL)
+ {
+ Sda->LastErrorCode = ERROR_INVALID_FUNCTION;
+ return FALSE;
+ }
+
+ if (Node->OutputStatusRoutine &&
Node->OutputStatusRoutine(Node))
+ {
+ /* Set the length to 0xFF to mark that it's ready */
+ *Length = 0xFF;
+ }
+ else
+ {
+ /* Not ready */
+ *Length = 0;
+ }
+
+ return TRUE;
+ }
+
/* Unsupported control code */
default:
{