UniPCemu build 2018/09/20 18:48 is now live!


Another smaller update, but with large stability and accuracy improvements!

Common emulator framework:

  • PSP requires semaphores too for proper application functioning.
  • Implemented multithreading safety by locking multithreading data using semaphores.
  • Fixed thread.c code typo.
  • Fixed multithreading.
  • Implemented automatic thread cleanup.
  • Improved terminated threads to be cleaned up better.
  • Added the thread cleanup functionality to the threads termination functionality.
  • Optimized thread cleanup.
  • Replaced the entire thread pool used flag with the proper status bit.
  • Fixed terminating threads and deallocating unused threads.

UniPCemu itself:

  • Improved ET3000 vs ET4000 differences and compatiblity.
  • Improved detection using the Segment Select register(always accessable).
  • Improved ET3K/ET4K register protection to be complete.
  • Improved handling of switching VRAM autodetection when changing video cards.
  • Improved ET4K/ET3K memory size autodetect and size filters.
  • Improved VRAM size redetection being applied correctly during restarting the emulator and applying new settings.
  • Improved VGA memory needing to be a power of two to work properly and memory autodetect on VGA.
  • Improved VRAM size safety checks.
  • Improved ET3K/ET4K horizontal timings based on documentation.
  • Improved ET3K double horizontal clocking on ET3000, according to documentation.
  • Improved horizontal timings on ET3K/ET4K.
  • Improved settings save detection, not saving unchanged settings.
  • Simplified settings loading/saving only when starting/terminating the emulator.
  • Fixed saving settings.
  • Removed some unneeded settings saves during emulator startup.
  • Fixed settings loading and saving.
  • Allowed compiling signed PSP builds with the development kit, if supported.
  • Improved free memory requirements.
  • Fixed MMU code.
  • emu_bios_post.c: Implemented logging of failed loading Option ROMs.
  • Added logging of emulator reset loading ROMs.
  • emu_bios_post.c: Improved POST and locks.
  • Fixed graphics debugging to lock and unlock the main thread correctly.
  • Fixed graphics debugging routine to properly release it's main thread lock.
  • Updated the common emulator framework to the latest commit.


So in short, this bigger update contains:

  • PSP versions have been fixed and signed, allowing running on any firmware.
  • Multithreading has been improved and protected against multithreading operations(mostly affecting PSP crashes, which weren't protected from anything running multiple threads).
  • ET3000 vs ET4000 accuracy improvements.
  • Video memory size has been protected against strange values and proper automatic redetection when changing graphics card settings is now applied.

Files

UniPCemu.apk 3 MB
Sep 20, 2018
UniPCemu_PSP.zip 642 kB
Sep 20, 2018
UniPCemu_win64.zip 1 MB
Sep 20, 2018
UniPCemu_win64server.zip 1 MB
Sep 20, 2018
UniPCemu_win32.zip 997 kB
Sep 20, 2018
UniPCemu_win32server.zip 1 MB
Sep 20, 2018

Get UniPCemu

Leave a comment

Log in with itch.io to leave a comment.