v0.2.6
What's Changed
=> More hadware support, more functions wrapped for an improve compatibity
=> More CPU extension, with ARM64 hardware support when possible, and improved CALLRET optimisation for an improved speed of emulation
=> Some work also to reduce the memory footprint
- X64Libs: Updated libstdc++ & libgcc_s
- X64Libs: Use x86_64 version of libunwind (it's needed by wine)
- Dynarec: More opcodes on ARM64 & RV64
- Dynarec: Fixed some flags propagation issues inside blocks
- Dynarec: Improved Strong Memory Model emulation, introducing a 3rd level
- Dynarec: ARM64: reworked shift and bit opcodes flags handling
- Dynarec: RV64: Many fixes, making Wow64 apps running
- Dynarec: ARM64: Added support for SSE4.2 (with CRC32 if supported by CPU)
- Dynarec: ARM64: Added support for SHA (with hardware support if CPU allows it)
- Dynarec: ARM64: The CALLRET optimisation has been improved and is now default
- CPU: Remoworked how INT, priviliged opcodes and teh Trace flags works
- CPU: Added full support for SSE4.2
- CPU: Added full support for SHA extension
- ElfLoader: rework how elf memory is handled
- Emulation: Added some more syscalls
- Emulation: Better handling of Signal (also handling SIGMAX correctly)
- Emulation: Better support for POKEUSER/PEEKUSER (helps Windows Unity games)
- Wrapping: More libs and some fixes in function wrapping (gtk3, vulkan...)
- Wrapping: Removed faked libunwind wrapping
- Hardware: Added more profile, with support ADLink Ampere Altra, Qualcomm 8Gen3, and Pi5 machines
- OS: Added profile to build for Android and Termux.
- OS: New option to use mold for a high speed link
Contributions
- Update my_posix_spawnp() by @liuli0217 in #942
- [ARM64_DYNAREC] Added 0F F1/F3/F7 opcodes by @wannacu in #941
- Allow running at NULL, and trigger a segfault (backport from box86 5cdc1b9fa2238938e49176fcd937a1294c55a03d ) by @rafael2k in #948
- Added (66) 0F 2A/2C/2D opcodes by @wannacu in #951
- [ARM64_DYNAREC] Added some opcodes by @wannacu in #959
- [ANDROID] Try to create an Android build, porting box86 Android build by @ptitSeb in #962
- [ARM64_DYNAREC] Added some opcodes by @wannacu in #964
- Update README_CN.md by @shenmo7192 in #968
- [RV64_DYNAREC] Added thead vendor extension detection by @ksco in #969
- [DYNAREC_RV64] Added support for xtheadba by @ksco in #970
- [CI] Test RISCV with bit-manipulation extensions on by @ksco in #972
- [CI] Upgrade QEMU to 8.1.0 by @ksco in #973
- [RV64_DYNAREC] Added some support for XTheadBb extension by @ksco in #977
- Fixed a typo in README.md by @Jai-JAP in #983
- [CI] Use qemu snapshots from archlinux archive by @ksco in #987
- [CI] Run tests w/ and w/o DynaRec by @ksco in #988
- [RV64_DYNAREC] Added more support for XTheadBb extension by @ksco in #989
- Add SDL_RenderWindowToLogical and SDL_SetSurfaceColorMod wrapped functions for #939 by @seeschloss in #991
- [RV64_DYNAREC] Added more support for XTheadBs extension by @ksco in #993
- Update dynarec_arm64_emit_math.c by @liuli0217 in #994
- [RV64_DYNAREC] Added more support for XTheadMemPair extension by @ksco in #995
- [ANDROID] Remove PreInit Array Warning and Fix libdl name by @KreitinnSoftware in #1001
- Add mbrtoc32 wrapped function for dfhack (fixes a dfhack crash, see #939) by @seeschloss in #1003
- Add __sF, __assert2 Symbol and set PThread Symbols on libc by @KreitinnSoftware in #1004
- [ANDROID] Fix Most Library Names by @KreitinnSoftware in #1005
- Add c32rtomb wrapped function for dfhack (fixes console, part of issue #939) by @seeschloss in #1008
- Added Snapdragon 8 Gen 2 profile by @strongtz in #1009
- [ARM64_DYNAREC] Take dynarec64_DA into account by @AndreRH in #1014
- [RV64_DYNAREC] Fix a build warning by @ksco in #1020
- Add a new vulkan extension: VK_KHR_maintenance5 by @strongtz in #1021
- [WRAPPER] Added missing function signature by @ksco in #1024
- [DYNAREC] Fix x87cache issues by @ksco in #1025
- [CI] Do not regenerate functions list when running in CI by @ksco in #1028
- [COSIM] Fix x87 testing by @ksco in #1029
- fix emit_sar32c() ZF maybe set error. by @liuli0217 in #1034
- [INTERP] Fix fpu_round by @ksco in #1030
- [WRAPPER] Fixed my_mmap64 on MAP_FIXED handling, helps wine 8.18 by @ksco in #1039
- [DYNAREC_RV64] Fixed opcode DB /5 FLD tbyte (for #871) by @ksco in #1040
- [DYNAREC_RV64] Fixed x87 FCOMI opcodes (for #872) by @ksco in #1041
- [WRAPPER] Fixed my_execl by @wannacu in #1044
- [ELFLOADER] Fixed align issue (may help #1057) by @ksco in #1058
- [COSIM] Fix GO_TRACE by @ksco in #1059
- [RV64_DYNAREC] Added a few opcodes for minipad2.exe by @ksco in #1061
- [RV64_DYNAREC] [32BITS] Added more opcodes for minipad2.exe by @ksco in #1062
- ADLINK with Ampere by @joespeed in #1069
- Change blokc size to 64kb by @Raezroth in #1071
- [RV64_DYNAREC] Fixed zbb andn optimization by @ksco in #1074
- [RV64_DYNAREC] Added FD STD, fixed FC CLD and F3 A4 REP MOVSB (for minipad2) by @ksco in #1075
- [RV64_DYNAREC] Added 64 8F POP & 67 66 89 MOV opcodes (for minipad2.exe) by @ksco in #1076
- [DYNAREC_RV64] Fixed FCOMP opcode by @ksco in #1080
- [DYNAREC_RV64] Added more opcode for minipad2.exe by @ksco in #1081
- [DYNAREC_RV64] Fixed BTS BTR BTC for zbs extension by @ksco in #1084
- [CMAKE] Add WITH_MOLD option by @ksco in #1085
- [SIGNAL] Fixed copyUCTXreg2Emu by @ksco in #1086
- [DYNAREC_RV64] Fixed emit_ror32 by @ksco in #1087
- [ANDROID] Added missing wrappedandroidshmem def headers by @mcagabe19 in #1088
- [DOCS] Add mold usage to COMPILE.md by @kaixindeken in #1089
- [DYNAREC_RV64] Fixed BTS BTR BTC again by @ksco in #1090
- [ANDROID] Fix Compiling by @mcagabe19 in #1091
- [ANDROID] Use TERMUX Define Instead ANDROID by @mcagabe19 in #1093
- [WRAPPERS] Added fallback glXSwapIntervalEXT function if not present by @ksco in #1092
- [ANDROID] Fix Clang Compiling by @mcagabe19 in #1094
- [ANDROID]Fix Termux installation path by @Creeper-xie in #1095
- [DYNAREC_RV64] Added missing fallbacks in x87 opcodes by @ksco in #1096
- [DYNAREC][INTERPRETER] Rework on 6C/6D/6E/6F opcodes by @ksco in #1098
- [DYNAREC_RV64] Added more opcodes for flatout.exe by @ksco in #1099
- [DYNAREC_RV64] Added more opcodes for flatout.exe by @ksco in #1100
- Fix spelling in README.md by @JulianGro in #1101
- [DOCS] Termux Compiling by @mcagabe19 in #1102
- [TERMUX] Added faked wrapped termux-exec and simplified output by @mcagabe19 in #1103
- [TERMUX] Fix make install by @mcagabe19 in #1106
- [TERMUX] Fix debian packaging by @mcagabe19 in #1107
- [DOCS] Added missing library for #1108 by @mcagabe19 in #1109
- [TERMUX] Fix loading box64rc and lib x86_64-linux-gnu path on termux by @Creeper-xie in #1110
- [DOCS] Updated termux building instructions by @mcagabe19 in #1113
- [DYNAREC_RV64] Refine printer and add support for Zb* extensions by @ksco in #1115
- [DYNAREC_RV64] Added more dasm support for thead extensions by @ksco in #1118
- [DOCS] Updated TERMUX Building by @mcagabe19 in #1121
- [DYNAREC_RV64] Use a temporary solution to get things to work by @ksco in #1122
- [DYNAREC_RV64] Added unaligned support for some LOCK opcodes by @ksco in #1123
- [DYNAREC_RV64] Added more opcodes for flatout.exe by @ksco in #1126
- [DYNAREC_RV64] Added more and more opcodes for flatout.exe by @ksco in #1128
- [DYNAREC_RV64] Added more opcodes for flatout.exe by @ksco in #1132
- [DYNAREC_RV64] Added more opcodes for flatout.exe by @ksco in #1133
- [DYNAREC_RV64] Added more opcodes for flatout.exe by @ksco in #1134
- fix emit_shr16 by @liuli0217 in #1135
- [LIBRARIES] Fixed lowercase libXrandr lib call by @mcagabe19 in #1137
- Raspberry Pi 5 support by @sundhaug92 in #1138
- [ARM64_DYNAREC] fix emit_shld16(c) by @liuli0217 in #1141
- Fix raspi5 building by @mcagabe19no2fa in #1142
New Contributors
- @liuli0217 made their first contribution in #942
- @rafael2k made their first contribution in #948
- @shenmo7192 made their first contribution in #968
- @seeschloss made their first contribution in #991
- @KreitinnSoftware made their first contribution in #1001
- @joespeed made their first contribution in #1069
- @Raezroth made their first contribution in #1071
- @mcagabe19 made their first contribution in #1088
- @Creeper-xie made their first contribution in #1095
- @JulianGro made their first contribution in #1101
- @sundhaug92 made their first contribution in #1138
- @mcagabe19no2fa made their first contribution in #1142
Full Changelog: v0.2.4...v0.2.6