First post, by superfury
I've finished a basic build of my x86 emulator, x86EMU. I've implemented mouse emulation and keyboard emulation as well.
Press the middle mouse button, or both mouse buttons at once, to capture the mouse and keyboard to use in the emulator (You'll see direct input mode being enabled (D in the right-bottom corner of the screen). M=Mouse mode, empty=Keyboard mode(OSK visible), G=Gaming mode (mount the keys to the PSP buttons in the BIOS, opened by SELECT(PSP)/Backspace(PC) while not in Direct Input mode. Quit Direct Input mode by pressing both mouse buttons or pressing the middle mouse button.
All that's left to do is testing it. It seems to work in my case. Anyone notices anything going wrong?
(This is the emulator build only. You'll need to add the ROMs yourself:
Place BIOS ROM in ROM\BIOSROM.bin
Place VGA ROM in ROM\OPTROM.1
(place any other option ROMs in ROM\OPTROM.2, ROM\OPTROM.3 etc.)
Press START(PSP)/Backspace(PC) when not in Direct Input mode or Gaming mode to open the BIOS settings. Here you can change settings (mounted disks, Gaming mode assignments, emulated CPU etc.).
Warning: To use the ROMs, don't forget to set the Execution mode (in the BIOS Advanced menu) to "Load BIOS from ROM directory as BIOSROM.u* and OPTROM.*". If this is set to "Normal operations", it will run emulation without external BIOS (instead use routines in the same way Dosbox loads it's BIOS functionality) and try to emulate a BIOS itself. Unfortunately there still are some errors in this BIOS emulation, so it cannot be used to boot DOS.
The emulated system:
- Intel 8086/80186 (80286 is incomplete, real mode only. Effectively a 80186 with flags like a 80286, used for checking the CPU for errors atm).
- IBM VGA graphics card.
- MPU-401 (Requires soundfont loaded using the BIOS).
- PS/2 keyboard (and mouse when using the 286+ CPU).
- Adlib sound card.
- IDE ATA emulation (incomplete).
- Dual DMA controller.
- Floppy disk controller.
- PCI emulation (unused by hardware).
- PIT timer (with PC Speaker).
- Dual Programmable Interrupt Controller (i8259).
- Serial mouse (When using a 8086 or 80186 processor only).
- Software debugger (Port E9 hack, also port EA extensions for my emulator (see included debugger.txt)).
- UART serial port (with Serial mouse at COM1, when using a 8086/80186 CPU).
Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io