Fixed an issue with the mac x64 build that causes it crash while starting
Merge branch 'james/ARMv8'
Added bound unit test
Fixed Linux x64 build
Fixed the XCode build for x64
Fixed Linux 32-bit
Updated the version to 20.1.2. Also fixed a minor issue with file sytem dependencies.
Restored the ability for the x64 Windows build to map native memory. Now it can map a 64-bit pointer returned from OpenGL and use it in the 32-bit emulated process. This fixes Fire Fight and Age of Empires.
Fixed an issue when a program create a GDI window while a GL window is still open. This fixes a regression with Age of Empires.
Fixed a regression in the dynamic core for the sub instruction when it doesn't need to calculated flags. This was caused by 5e53844 (July 6, 2020)
Added some more cpu unit tests.
8/16 bit ror/rol instructions need to set the flags even though the result won't change for certain shift amounts, like for 8-bit instruction when the shift is 8, 16 or 24
Added unit test for 0xa4 and 0xa5, MOVS.
Abstracted out the binary translator a little bit more.
Forgot to exclude helpView.cpp from the Windows test build
MacOS can now open a hyperlink from Boxedwine UI
Forgot to include the windows project file changes for the last checkin
Added a help button for Boxedwine UI. It still needs to be populated with more help, but its a start. Also added the ability for display hyperlinks in Boxedwine UI.
Boxedwine will now inform the user if a new version of Wine is available and ask them if they would like to download it.
Added the ability for files.xml to contain back up url's for wine file systems.
#19 I think I finally fixed the mouse/keyboard issue that causes some games to hang. The fix came from studying in more detail winex11.drv/event.c/X11DRV_MsgWaitForMultipleObjectsEx
x86, ARMv7 and ARMv8 dynamic recompiler will now combine eip updates where safe. Also ARMv7 and ARMv8 will not reload a constant into a register if that register currently contains the constant from a previous instruction.
The ARMv7 and ARMv8 will now handle 8-bit and 16-bit signed comparisons. This fixes Abiword.
ARMv8: fixed windows build
ARMv8: changed how I handle registers. I will now only use temp registers, so blocks by default will not have to save/restore registers before using them. If a function is called, most of the time it will do a single save/load pair, which will be the register holding the CPU and LR. MDK is up to 28 now which is a good improvement over 16 for the non dynamic 64-bit core.
Also available in: Atom