[NTVDM]
[reactos.git] / subsystems / ntvdm / emulator.h
index ea295ea..877f01e 100644 (file)
@@ -35,8 +35,9 @@
 #define EMULATOR_FLAG_ID (1 << 21)
 
 /* Common definitions */
-#define EMULATOR_BOP        0xC4C4
-#define EMULATOR_INT_BOP    0xFF
+#define EMULATOR_BOP            0xC4C4
+#define EMULATOR_INT_BOP        0xFF
+#define EMULATOR_MAX_BOP_NUM    0xFF + 1
 
 #define STACK_COUNTER   0
 #define STACK_INT_NUM   1
@@ -85,6 +86,51 @@ extern FAST486_STATE EmulatorContext;
 
 /* FUNCTIONS ******************************************************************/
 
+VOID WINAPI EmulatorReadMemory
+(
+    PFAST486_STATE State,
+    ULONG Address,
+    PVOID Buffer,
+    ULONG Size
+);
+
+VOID WINAPI EmulatorWriteMemory
+(
+    PFAST486_STATE State,
+    ULONG Address,
+    PVOID Buffer,
+    ULONG Size
+);
+
+VOID WINAPI EmulatorReadIo
+(
+    PFAST486_STATE State,
+    ULONG Port,
+    PVOID Buffer,
+    ULONG DataCount,
+    UCHAR DataSize
+);
+
+VOID WINAPI EmulatorWriteIo
+(
+    PFAST486_STATE State,
+    ULONG Port,
+    PVOID Buffer,
+    ULONG DataCount,
+    UCHAR DataSize
+);
+
+VOID WINAPI EmulatorBiosOperation
+(
+    PFAST486_STATE State,
+    UCHAR BopCode
+);
+
+UCHAR WINAPI EmulatorIntAcknowledge
+(
+    PFAST486_STATE State
+);
+
 BOOLEAN EmulatorInitialize(VOID);
 VOID EmulatorSetStack(WORD Segment, DWORD Offset);
 VOID EmulatorExecute(WORD Segment, WORD Offset);