UniPCemu build 2020/07/25 20:23 is now live!
UniPCemu » Devlog
This time it's a bit smaller update with some bigger changes (mainly the addition of the i430fx Pentium up to 128MB RAM chipset).
UniPCemu emulator updates:
- Improved Android Manifest to be more compatible with SDL 2.0.12.
- Updated Android gradle to the latest version.
- Implemented the i430fx architecture with minimal required features (running the Apollo S728 ROM, which is it's S728P.ROM from Bochs feature request #468). It's just booting with a Cache Memory Error, which can be ignored.
- Improved linux default path and non-Android path determination.
- Implemented a S-suffix to debugger breakpoints to enforce debugger single-stepping on said breakpoint, instead of just matching it for debugging and/or logging.
- Optimized BIOS ROMs using shadow ROMs in RAM, instead of performing the seperating of even/odd ROMs and reversed ROMs live.
- Implemented memory caching of any word or doubleword loaded from RAM or (flash) ROM.
- Optimized Compaq memory wrapping and BIU memory accesses a lot, as well as A20 behaviour.
- Optimized logical address to linear address translation.
- Optimized and improved PCI transfer cycles to update when the write to PCI configuration space finishes.
- Improved i430fx shutdown cycle recognition according to documentation, with the exception of special cycles being enabled by default(for compatiblity) on PCI reset.
- Shutdown cycles without recognition by the i430fx will cause the CPU to hang up correctly(because shutdown never raises the reset line).
- Seperated PSE and non-PSE paging for improved speed.
- Optimized the busy indicators on-screen to update less frequently and only when needed(with the write (or CD-ROM tray opened) priority over read).
- Improved 8042 controller input port to be giving correct memory size information on the AT and i430fx architecutures.
- Implemented most 8042 i430fx AMI commands.
- Fixed PS/2 architecture CMOS settings to not write the Compaq CMOS settings as well.
- Optimized the DMA controller.
- Improved floppy Specify, Configure, Perpendicular Mode and unknown commands to lower the IRQ.
- Improved PCI IDE to properly handle enabling and disabling the controller using the PCI command register.
- Improved PCI IDE to handle both PCI and legacy mode (although with fixed IRQ mapping in both modes, for IRQ 14 and 15).
- Improved the ATA Identify command to not raise an IRQ when the transfer is completed.
- Improved the ATA Identify command to properly set Drive Seek Complete.
- Improved i430fx PCI IDE to disable writes to the Drive Address Register, as is documented on PCI IDE controllers.
- Improved PCI BARs to be emulated more accurately.
- The PCI IDE controller now properly identifies itself as not supporting PCI Bus Mastering on the i430fx.
- Implemented 8259 PIC polling mode.
- Improved PS/2 keyboard and PS/2 mouse response to reset and enable/disable of the ports.
- Serial mouse now reports it's movement in mickeys.
- Improved Sound Blaster and Sound Blaster 2.0 commands and DMA modes to be more accurate and compatible.
- Implemented various missing Sound Blaster 2.0 commands.
- Improved (S)VGA vertical retrace depending triggers to be handled better.
- Fixed video card full synchronization with the CPU to no longer perform the wrong synchonization mode.
- Fixed (S)VGA to use the correct 16 frame blink rate instead of the 8 frame blink rate.
- ET3000/ET4000 will now use a proper 50MHz and 66MHz clock.
- Updated SDL2 to version 2.0.12.
Common emulator framework:
- Implemented fast overlap detection support to types.h
- Made the busy indicators only update at 10 FPS.
- Optimized 16-bit and 32-bit FIFO reads/writes for aligned accesses.
- Made fprintf64 use a global buffer.
- Made LCTRL being pressed before ALTGR only handle handle ALTGR when it's received at the same time, within a single input loop. This removes the LCTRL presses when ALTGR is pressed and seperates their detection(although LCTRL can't be pressed with ALTGR anymore, only taking every second LCTRL press).
- Implemented mouse movements in both mm and mickeys.
- Fixed mouse movement in mickeys and mm.
- Fixed input mickey movement.
Files
UniPCemu_PSP.zip 931 kB
Jul 28, 2020
UniPCemu_win64.zip 1.2 MB
Jul 28, 2020
UniPCemu_win64server.zip 1.4 MB
Jul 28, 2020
UniPCemu_win32.zip 1.1 MB
Jul 28, 2020
UniPCemu_win32server.zip 1.2 MB
Jul 28, 2020
UniPCemu.apk 4.3 MB
Jul 28, 2020
Get UniPCemu
UniPCemu
A cycle-accurate PC emulator
Status | In development |
Category | Tool |
Author | Superfury1 |
Tags | 16-bit, 32-bit, cycle-accurate, Emulator, i430fx, pc, x86 |
Languages | English |
Accessibility | Configurable controls |
More posts
- UniPCemu build 2023/04/11 18:33 is now live!Apr 11, 2023
- UniPCemu build 2023/01/03 14:55 is now live!Jan 03, 2023
- UniPCemu build 2022/10/19 22:02 is now live!Oct 19, 2022
- UniPCemu build 2022/10/16 14:49 is now live!Oct 16, 2022
- UniPCemu build 2022/10/01 14:51 is now live!Oct 01, 2022
- UniPCemu build 2022/09/10 12:42 is now live!Sep 14, 2022
- UniPCemu build 2022/06/24 12:22 Android bugfix!Jun 24, 2022
- UniPCemu build 2022/06/19 19:15 is now live!Jun 19, 2022
- UniPCemu build 2022/04/07 22:49 is now live!Apr 08, 2022
- UniPCemu Switch release and PSP/Vita bugfixesSep 26, 2021
Leave a comment
Log in with itch.io to leave a comment.