VOID EmulatorCleanup(VOID) { DiskCtrlCleanup(); VgaCleanup(); /* Close the input thread handle */ if (InputThread != NULL) CloseHandle(InputThread); InputThread = NULL; /* Close the task event */ if (VdmTaskEvent != NULL) CloseHandle(VdmTaskEvent); VdmTaskEvent = NULL; PS2Cleanup(); SpeakerCleanup(); CmosCleanup(); // PitCleanup(); // PicCleanup(); // DmaCleanup(); CpuCleanup(); MemCleanup(); }
VOID EmulatorCleanup(VOID) { VgaCleanup(); /* Close the input thread handle */ if (InputThread != NULL) CloseHandle(InputThread); InputThread = NULL; PS2Cleanup(); SpeakerCleanup(); CmosCleanup(); // PitCleanup(); // PicCleanup(); CpuCleanup(); /* Free the memory allocated for the 16-bit address space */ if (BaseAddress != NULL) HeapFree(GetProcessHeap(), 0, BaseAddress); }