Reply 80 of 87, by superfury
The latest version of my emulator:
New stuff:
- Updated framerate to include IPS/KIPS/MIPS(Instructions Per Second).
- Floppy: fixed partly filling during data transfers, implemented Fix drive data/Specify command and MT bit supported.
- Fixed timing issues (mainly with the new MIDI player support) and various timing bugs.
- Added MIDI options to the emulator (in the BIOS, goto Advanced, a new option for MIDI settings has been added):
-- Soundfont: Select the soundfont to use for rendering MIDI sounds. In older versions this was locked to MPU.SF2. Now you can choose it (it still requires a reboot to apply).
-- MIDI player: Select the file with up and down, press Cross/Play to play, Circle/Stop to stop playing and select a new file, press circle again to quit the player and return to the BIOS MIDI menu.
- Multiple SDL locks have been added to improve stability during runtime. Although it still seems to hang when debugging from Visual C++ when trying to terminate the application.
- The updated BIOS settings (BIOS.DAT) is incompatible with the previous BIOS settings (new data has been inserted). This has increased the BIOS.DAT version number (to version 2), making it incompatible with older BIOS.DAT versions. The BIOS.DAT loader has been updated to allow future updates of BIOS.DAT to read the current BIOS.DAT version, providing that the version number matches and the checksum is correct (new features will, by default, leave new settings zeroed, thus making the checksum identical (32-bit CRC)? Thus new BIOS data being non-existant in the file and zeroed by default before loading, will cause the BIOS to stay valid (since zero is added to the checksum(new fields appended to the configuration), the new fields will have it's default values set, and the checksum has nothing added, making a valid BIOS)?
The PSP version currently doesn't work anymore (it hangs when trying to initialise the video font color). This will need to be fixed later. Currently SDL locks have been disabled on the PSP for debugging purposes (I don't know if the PSP needs them at all, since it's using multitasking based on delays(a delay will cause the current thread to suspend and another to activate, defeating the purpose of locks, since locked parts will never use delays during it's execution?)).
I don't know if the Play/Stop keys will work on any keyboard, since they use the keyboard's scancodes directly (since SDL (the first version) doesn't seem to support them directly). Anyone can tell me if other keyboards work as well?
Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io