Commit Graph

660 Commits

Author SHA1 Message Date
Maurice Heumann
a0aef05eca Add cross platform filesystem support (#94) 2025-01-25 08:42:31 +01:00
momo5502
a3c6e9a5c0 Cleanup emulation root handling
This fixes #103
This fixes #105
2025-01-25 08:30:43 +01:00
momo5502
4cd098626e Support host/default apiset loc and empty emulation root 2025-01-25 08:09:00 +01:00
momo5502
0454120f45 Serialize file system
This fixes #108
2025-01-25 07:47:04 +01:00
momo5502
376015a84a This fixes #104 2025-01-25 07:24:02 +01:00
momo5502
c4a02d3190 Add more DLLs 2025-01-25 07:24:02 +01:00
momo5502
2c1e6f10e0 Fix formatting 2025-01-25 07:24:02 +01:00
momo5502
d360a06737 Archive more DLLs and retain root fs for a day 2025-01-25 07:24:02 +01:00
momo5502
6b43e53a6f Don't build universal binaries on macOS 2025-01-25 07:24:02 +01:00
Maurice Heumann
ff51fbcb24 Update compiler-env.cmake 2025-01-25 07:24:02 +01:00
momo5502
e9f7051a75 Add macOS intel tests 2025-01-25 07:24:02 +01:00
momo5502
7d65059151 Test auto var init 2025-01-25 07:24:02 +01:00
momo5502
4d31331b0a Update unicorn 2025-01-25 07:24:02 +01:00
momo5502
aa162cc548 Fix debug tests 2025-01-25 07:24:02 +01:00
momo5502
22565683a7 Fix casing 2025-01-25 07:24:02 +01:00
momo5502
795badf806 Retain permissions when uploading artifacts 2025-01-25 07:24:02 +01:00
momo5502
114d87cd5a Fix test 2025-01-25 07:24:02 +01:00
momo5502
4300422b77 Fix path key 2025-01-25 07:24:02 +01:00
momo5502
d836567db1 Fix PE parsing 2025-01-25 07:24:01 +01:00
momo5502
ec1333278b Implement root fs handling 2025-01-25 07:24:01 +01:00
momo5502
b581d74433 Fix test matrix 2025-01-25 07:24:01 +01:00
momo5502
e15bb33e10 Dump API set 2025-01-25 07:24:01 +01:00
momo5502
64e21ff5d2 Add root dumping to workflow 2025-01-25 07:24:01 +01:00
momo5502
77cb4d18ff Add script to create root folder 2025-01-25 07:24:01 +01:00
momo5502
24bebc4ee2 Prepare filesystem support 2025-01-25 07:24:01 +01:00
momo5502
739cbbf549 Fix verbose logging 2025-01-25 07:24:01 +01:00
momo5502
8854968256 Rename spawned thread count to prevent confusion 2025-01-25 07:24:01 +01:00
momo5502
df089e9e08 Fix current thread id 2025-01-25 07:24:01 +01:00
momo5502
e175c83e25 Support verbose logging 2025-01-25 07:24:01 +01:00
momo5502
0698120c71 Log caller 2025-01-25 07:24:01 +01:00
momo5502
f23fe935c1 Fix handle closing 2025-01-25 07:24:01 +01:00
momo5502
32d91bd139 Fix semaphores and mutexes 2025-01-25 07:24:01 +01:00
momo5502
5160bacd1e Correctly handle existing objects 2025-01-25 07:24:01 +01:00
momo5502
98c29ba75a Use u16string in NtAddAtomEx 2025-01-25 07:19:22 +01:00
momo5502
8adb479cf3 Fix NtWaitForMultipleObjects
This fixes #97
2025-01-24 08:53:05 +01:00
Maurice Heumann
e5830e5a64 some refactoring with optional_function (#96)
- wrapped std::function into utils::optional_function 
  - cleaned the code accordingly in windows_emulator
- using the 'emulator'/'windows_emulator' dependency implies the
emulator_common as well.
2025-01-23 18:07:27 +01:00
Elias Bachaalany
194a0de01e minor 2025-01-23 08:48:51 -08:00
Elias Bachaalany
5703a46e30 fix 2025-01-22 06:07:35 -08:00
Elias Bachaalany
638a720ab8 fixing CI errors 2025-01-22 05:55:46 -08:00
Maurice Heumann
72c7b75816 replaced puts() with logger calls (#98) 2025-01-22 10:38:03 +01:00
Elias Bachaalany
365e94d834 replaced puts() with logger calls 2025-01-21 21:50:47 -08:00
Elias Bachaalany
ebf563e313 fix1 2025-01-21 21:43:42 -08:00
Elias Bachaalany
5bf325c77f some refactoring with optional_function
- wrapped std::function into utils::optional_function
-- cleaned the code accordingly in windows_emulator
- using the 'emulator'/'windows_emulator' dependency implies the emulator_common as well.
2025-01-21 19:25:51 -08:00
Maurice Heumann
eb613b2214 replace printf() with logger (#95) 2025-01-21 20:03:30 +01:00
Elias Bachaalany
fe36ea3f56 replace printf() with logger 2025-01-21 09:05:55 -08:00
momo5502
35a0616997 Collect locale 2025-01-21 16:15:08 +01:00
Maurice Heumann
7a663094d6 [NFC] Cleanup project structure a bit (#93) 2025-01-20 20:25:52 +01:00
Elias Bachaalany
1d5c5c2e74 Introducing reflection levels concept into core components (#91)
The idea is to allow as much internal information into inner components.
to not burden all builds, the reflection level can be controlled via the
MOMO_REFLECTION_LEVEL (where 0 means no reflection code is included).

more reflection variables will be introduced as needed.

For now, the memory manager's layout state version is used to track
whether the memory layout is changed or not (at the lowest level). the
win_emu API consumer can use this reflection to decide to whether to
refresh or not expensive computations
2025-01-20 11:19:33 -08:00
momo5502
067421bf85 Prepare grouping targets 2025-01-20 20:14:49 +01:00
momo5502
2e1fa4554a Extract windows-gdb-stub 2025-01-20 20:09:16 +01:00