Commit Graph

181 Commits

Author SHA1 Message Date
Yang Liu
84608fc581
[ARM64_DYNAREC] Added DYNAREC_PAUSE option for hint instructions (#2070)
* [ARM64_DYNAREC] Added DYNAREC_PAUSE option for hint instructions

* Use sevl for wfe

* Add docs

* Fix typo

* use switch case
2024-11-25 11:28:19 +01:00
Yang Liu
9757d1b67a
[ARM64_DYNAREC] More optimizations on strongmem emulation (#2051) 2024-11-20 18:59:20 +01:00
Yang Liu
fa432bb9d1
[ARM64_DYNAREC] Added weakbarrier=2 to disable last write barriers (#2049)
Some checks are pending
Build and Release Box64 / build (ubuntu-latest, ANDROID, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ANDROID, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ANDROID_GLIBC, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ANDROID_GLIBC, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ANDROID_GLIBC, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ANDROID_GLIBC, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, TERMUX, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, TERMUX, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, X64, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, X64, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, X64, Trace) (push) Waiting to run
2024-11-19 21:22:55 +01:00
Yang Liu
81e4e26dc5
[ARM64_DYNAREC] Re-enable weakbarrier for dmb.ishst (#2048) 2024-11-19 19:59:43 +01:00
ptitSeb
1a6f49ce45 [ARM64_DYNAREC] Reworked a bit FASTROUND 2024-11-05 14:13:01 +01:00
ptitSeb
c8d98f6901 [RCFIEL] Add an option to force usage of native EGL/GLESv2 library 2024-11-02 09:28:34 +01:00
ptitSeb
29beabd683 [ARM64_DYNAREC] Added BOX64_DYNAREC_NATIVEFLAGS to disable the use of native flags, as there is still a bug or two in that mode (for #1947)
Some checks are pending
Build and Release Box64 / build (ubuntu-latest, ANDROID, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ANDROID, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, TERMUX, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, TERMUX, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, X64, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, X64, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, X64, Trace) (push) Waiting to run
2024-10-20 13:21:08 +02:00
Yang Liu
6cbcfc7ab8
[DYNAREC] Added a new missing mode for fallback opcodes (#1896)
Some checks are pending
Build and Release Box64 / build (ubuntu-latest, ANDROID, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ANDROID, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, ARM64, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, LARCH64, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RISCV, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, StaticBuild) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, RK3588, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, TERMUX, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, TERMUX, Trace) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, X64, Box32) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, X64, Release) (push) Waiting to run
Build and Release Box64 / build (ubuntu-latest, X64, Trace) (push) Waiting to run
2024-10-02 20:44:04 +02:00
ptitSeb
1b48cd157a [RCFILE] Slightly changed how BOX64_ARGS behave, and added BOX64_INSERT_ARGS 2024-09-09 19:45:48 +02:00
Yang Liu
4e63b82f5e
[CI] Refactored CI (#1795)
* [CI] Enable Box32 tests on LA64

* upgrade QEMU

* [COSIM] Removed thread-safe tests

* Use regular cosim in CI

* [CI] Simplified "Test Box64"

* exclude certain tests when testing with cosim

* review

* box64.pod too
2024-09-05 11:07:27 +02:00
Yang Liu
b34a50b381
[X64LIBS] Changed x86/x64 libs install directory to prevent conflicts (#1791)
* [X64LIBS] Changed x86/x64 libs install directory to prevent conflicts

* Update pressure_vessel
2024-09-04 14:13:58 +02:00
WANG Guidong
9beb745765
[RV64_DYNAREC] Fix some typos in docs and dynarec/rv64 (#1758)
* [Typo] fix some typo in docs and dynarec/rv64

* [Typo] fix some typo in docs and dynarec/rv64

* [Typo] fix some typo in dynarec/rv64

* [Typo] fix some typo in dynarec/rv64

* [Typo] fix some typo in docs
2024-08-26 08:19:06 +02:00
ptitSeb
f0ea65dc36 [DOCS] Added entry in USAGE.md for newly introduced BOX64_ARGS 2024-08-09 17:44:05 +02:00
ptitSeb
a8784eff9f [RCFILE] Added support for generic names in RCFiles 2024-07-25 15:10:40 +02:00
ptitSeb
a90c7af708 Added BOX64_SHAEXT to hide sha cpu extension ([RCFILE] And added a profile using it) 2024-07-15 13:43:53 +02:00
josch
dfc60e8bf1
fix some spelling (#1668) 2024-07-10 11:06:02 +02:00
ptitSeb
62695ceed4 Bumped version to v0.3.0 2024-07-09 11:02:43 +02:00
ptitSeb
0ba46403c6 Detect UnityPlayer.dll to apply strongmem=1 automatically (can be disabled with BOX64_UNITYPLAYER=0) 2024-07-03 11:19:55 +02:00
ptitSeb
aeeb9b719a [COSIM] Added range handling in BOX64_DYNAREC_TEST ([RCFILE] too) 2024-06-24 20:32:16 +02:00
theofficialgman
9ab686b3e0
switch to maintained Pi-Apps-Coders apt repo (#1605)
closes https://github.com/ptitSeb/box64/issues/1576
2024-06-19 18:39:03 +02:00
ptitSeb
4eebf25f1c Added BOX64_RESERVE_HIGH in rcfile handling 2024-06-18 17:25:32 +02:00
Yip Coekjan
b5c0a857ca
Fix typo on box64 config file (#1533) 2024-05-25 15:02:32 +02:00
Yip Coekjan
ab9f848dcd
Fix unclosed item list (#1532) 2024-05-25 13:57:35 +02:00
ptitSeb
8545d0505f Bumped version to v0.2.8 2024-05-21 17:33:16 +02:00
ptitSeb
1e44a93c87 Removed all traces of PAGE8K, PAGE16K and PAGE64K as it's now detected in runtime 2024-05-20 10:08:27 +02:00
Yang Liu
86e9a38384
[COSIM] Added thread-safe tests (#1477)
* [COSIM] Added thread-safe tests

* Added more notest

* Run cosim in CI

* Disable tests for RISC-V for now

* Simplify

* Initialize notest
2024-04-30 16:36:48 +02:00
ptitSeb
f256c48505 Fixed non-dynarec build by introducing BOX64_JVM to replace BOX64_DYNAREC_JVM 2024-04-29 11:23:35 +02:00
ptitSeb
71c5447b8a Added a way to hide SSE 4.2, as it might slow down things using the string opcodes. Also, looks like some java program have issue with current implementation of pcmp[ei]str[im] somehow, so diabling automaticaly when detecting libjvm.so (for SlayTheSpire in particular) 2024-04-29 10:57:19 +02:00
olegos2
da64a3eeab
Add BOX64_RCFILE variable (#1392)
* Implement BOX64_RCFILE

* Update USAGE.md

* Should fix tests
2024-03-28 21:08:53 +01:00
ptitSeb
cd8bda7a29 Changed, again, RDTSC and Hardware counter, introducing auto calibration when hardware counter is too slow for modern standard (and removed BOX64_RDTSC env. var.) 2024-03-14 11:01:40 +01:00
ptitSeb
df928fd2d0 [RCFILE] Added 2 new rcfile only option, and try to apply wine program parameter earlier, before wien load to be able to change command line and maxcpu 2024-03-12 11:39:11 +01:00
ptitSeb
13404ed090 Added ability to staticaly build box64 (for #1045 and #310, maybe a few others tickets) 2024-02-26 19:22:53 +01:00
ptitSeb
ffda782c3d Better handling of Hardware counter for rdtsc emulation (ARM64 only for now), more cpuid leafs, and introduce BOX64_RDTSC env.var. with a profile that use it 2024-02-23 16:41:44 +01:00
ptitSeb
6996c06909 TEGRAX1 config also have BOX64_MMAP32 activated by default 2024-02-07 16:42:13 +01:00
Lily
2ee5bcf933
[DOCS] Fix a typo in temrux building (#1240) 2024-02-01 15:46:48 +01:00
josch
508a153973
When BOX64_VERSION is set, just print the version and exit (#1238)
When set, box64 will only print its version and then exit. This option
is analogous to QEMU_VERSION used by binfmt_misc emulation of qemu-user.
Its purpose is the same: provide a way to soft-disable binfmt_misc
emulation as well as for identifying box64 as the registered binfmt_misc
emulator.

This commit enables adding support for box64 to the arch-test utility.
With this change, arch-test is able to soft-disable box64 as the x86_64
emulator in the same way as it does this for qemu and wine already.
Without this change, arch-test will report an architecture as natively
executable by the processor, disregarding that it actually gets emulated
by box64.

Furthermore, this commit enables identifying box64 as the currently
registered emulator for x86_64. This way, applications that know that
their emulation requirements cannot work with box64 can add a check to
find out that it is box64 doing the emulation and are able to print a
helpful error message.

Closes: #1237
2024-01-31 18:29:34 +01:00
ptitSeb
f9c09293bf Added BOX64_IGNOREINT3 env. var. to ignore INT3 in the code ([RCFILE] too) 2024-01-27 20:42:32 +01:00
leonpano2006
0ee5174e18
add optimize build flag for Jetson orin and xavier (#1219)
* add optmized options for Jetson xavier and orin

* Update CMakeLists.txt

* Update COMPILE.md

add info for build on jetson orin and xavier
2024-01-25 23:04:20 +01:00
ptitSeb
bc852aebeb Added a new option BOX64_MMAP32 to use 32bits mapping on external MMAP (help Snapdragon device running Vulkan with Wine/Wow64, active by default on SD845/SD888/SD8G2 profiles) 2024-01-23 15:56:11 +01:00
ptitSeb
5d6ff69e8d [RCFILE] Added more option to rcfile and added geekbench5 profile 2024-01-06 10:48:18 +01:00
ptitSeb
a609452cfd [DYNAREC] Switched back CALLRET to 0 by Default, many things like GoG Wine Installer needs that 2024-01-02 18:50:48 +01:00
Tristan Morgan
499492e10a
Remove FASTPAGE/HOTPAGE docs, related to #1180 (#1181) 2024-01-02 08:09:04 +01:00
ptitSeb
715ce5dbe9 Introduce new BOX64_MAXCPU to cap the number of cpu core exposed, and created profile for wine, wine64 and GridAutosport using it 2023-12-21 15:51:55 +01:00
ptitSeb
e42001b2bc Bumped version to v0.2.6 2023-12-15 19:26:45 +01:00
Lily
9818f5b6a3
Fix raspi5 building (#1142)
* Update CMakeLists.txt

* Update COMPILE.md

* Update COMPILE.md
2023-12-15 17:04:37 +01:00
ptitSeb
7c0180c3b9 Added lldb option to JITGDB 2023-12-15 13:18:59 +01:00
Martin Sundhaug
9b7b91651d
Raspberry Pi 5 support (#1138)
* Basic RPi5 support

* Split RPi5 in 16k page-size variant and not

* Update COMPILE.md

Add documentation about 16K page support
2023-12-14 21:34:20 +01:00
ptitSeb
4dd5b67bbf [DYNAREC] Update USage with latest callret info 2023-12-13 13:06:56 +01:00
Lily
548a8ac87b
[DOCS] Updated TERMUX Building (#1121) 2023-12-07 09:39:52 +01:00
Lily
24f241a1cd
[DOCS] Updated termux building instructions (#1113)
* [DOCS] Add a warning for termux builders (mostly due #1112)

* [DOCS] Added chroot or proot compiling
2023-12-04 18:24:45 +01:00