Commit Graph

115 Commits

Author SHA1 Message Date
Maurice Heumann
2cc2137c3a Unify steady and system clock 2025-03-18 12:10:59 +01:00
Maurice Heumann
450e3c2a9c Use clock interfaces to precisely control time 2025-03-18 11:48:44 +01:00
momo5502
3218e26306 Small callback optimization and unification 2025-02-14 09:05:55 +01:00
Elias Bachaalany
c0719651d3 minor changes 2025-02-11 10:25:02 -08:00
Elias Bachaalany
1d7f841ee4 added more callbacks 2025-02-10 11:25:04 -08:00
momo5502
934374c4bb Extract main module cache into module manager 2025-02-10 17:43:09 +01:00
momo5502
c1aa260f8f Cleanup process context 2025-02-10 17:28:00 +01:00
momo5502
04ca0981a1 Extract API set data 2025-02-10 17:21:34 +01:00
momo5502
2815a74a18 Setup PEB image base 2025-02-10 16:58:57 +01:00
momo5502
349ef9688a Move module manager into windows emulator 2025-02-10 16:49:33 +01:00
momo5502
7ae36a6452 Move registry manager into windows emulator 2025-02-10 16:37:33 +01:00
momo5502
adf632c64e Remove getters 2025-02-10 16:20:24 +01:00
Maurice Heumann
a28be3049b Separate application and emulator settings 2025-02-10 15:46:38 +01:00
Maurice Heumann
a5bae30e00 Rename context_frame to cpu_context 2025-02-10 14:28:53 +01:00
Maurice Heumann
2686251fde Cleanup windows-emulator and extract classes 2025-02-10 13:42:49 +01:00
momo5502
6263353438 Isolate memory manager 2025-02-09 18:19:32 +01:00
momo5502
8a427ec368 Hack to skip nls/alpc communication
This is related to #128
2025-02-09 11:00:12 +01:00
momo5502
27f02c74c7 Support logging actions for interesting modules 2025-02-09 09:43:19 +01:00
momo5502
fe84448bf5 Reserve space for current directory 2025-02-08 18:55:19 +01:00
momo5502
9f4a80b42e Fix running relative applications 2025-02-08 17:52:11 +01:00
momo5502
7efe75ba97 Remove working directory translations 2025-02-08 17:31:53 +01:00
momo5502
72e88d30d4 Use working directory provider 2025-02-08 17:22:17 +01:00
momo5502
3347667948 Prevent unmapping core modules 2025-02-07 19:56:23 +01:00
Maurice Heumann
c94370cc5d Support relative files on windows 2025-02-07 07:21:30 +01:00
Maurice Heumann
83edab3564 Fix bad objects 2025-02-04 20:05:11 +01:00
Maurice Heumann
b56a4bd162 Log singlestep 2025-02-04 19:48:33 +01:00
momo5502
f2c5df5139 Support hardware breakpoints 2025-02-04 19:08:38 +01:00
Maurice Heumann
0029582d12 Support port and path mappings 2025-02-04 09:04:52 +01:00
momo5502
4597f3b6d6 Prevent failure when accessing stack 2025-01-26 07:30:04 +01:00
momo5502
e34a9e6468 Serialization fixes 2025-01-26 07:05:32 +01:00
momo5502
d387477883 Support verbose logging during tests 2025-01-25 13:09:07 +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
ec1333278b Implement root fs handling 2025-01-25 07:24:01 +01:00
momo5502
24bebc4ee2 Prepare filesystem support 2025-01-25 07:24:01 +01:00
momo5502
0698120c71 Log caller 2025-01-25 07:24:01 +01:00
momo5502
32d91bd139 Fix semaphores and mutexes 2025-01-25 07:24:01 +01: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
Elias Bachaalany
fe36ea3f56 replace printf() with logger 2025-01-21 09:05:55 -08:00
momo5502
6ad4a9b0a1 Yield thread when necessary 2025-01-19 16:43:26 +01:00
momo5502
4e80a8bf16 Support threads in gdb 2025-01-19 12:28:40 +01:00
momo5502
270dbf000c Better thread exit check 2025-01-19 08:36:01 +01:00
Maurice Heumann
d8fd9d3e69 Exposing high level callbacks (#79)
The idea here is to start exposing various high level callbacks from
various sub components (syscalls, device io, etc.).

Consumer of `windows_emulator` can then hook into any callback.


Please give your feedback on this initial commit.
2025-01-17 07:15:13 +01:00
robert-yates
7773ea6794 add apiset selection code 2025-01-15 20:55:15 +01:00
Elias Bachaalany
e50eb96470 exposing high level callbacks to win_emu 2025-01-14 22:59:41 -08:00
momo5502
b2b2ffd6be Cleanup exception handling and prepare UI support 2025-01-11 09:55:48 +01:00
Maurice Heumann
ff6fd79dd5 More win 10 fixes (#67) 2025-01-11 09:12:36 +01:00
momo5502
55e2462206 Small fixes 2025-01-11 09:05:27 +01:00