Commit Graph

712 Commits

Author SHA1 Message Date
Maurice Heumann
baad36ccf2 Support interrupt hooks 2025-04-07 07:24:46 +02:00
momo5502
1ed997445d Fix IRETQ instruction 2025-04-06 20:56:28 +02:00
momo5502
e8ac70f0d0 Use ghidra spec from icicle-python
--> https://github.com/icicle-emu/icicle-python
2025-04-06 20:55:51 +02:00
momo5502
5fde8c033d Fix hooks
This fixes #180
2025-04-06 20:01:18 +02:00
momo5502
cacf2c152c Fix single stepping after breakpoints 2025-04-06 17:50:02 +02:00
momo5502
e40e1bfb83 Ugly hack to *sometimes* fix instruction skipping 2025-04-06 10:46:21 +02:00
momo5502
3450a6a517 Fix reading/writing eflags 2025-04-06 09:44:46 +02:00
momo5502
320af6bb46 Support GDB stepping
...almost :(
2025-04-06 09:44:05 +02:00
momo5502
ed711197ae Fix GDB debugging with icicle 2025-04-05 16:15:56 +02:00
momo5502
bfb9760d29 Fix unicorn read hook 2025-04-05 15:58:34 +02:00
momo5502
3978eeed2a Finish execution hook support 2025-04-05 15:28:14 +02:00
momo5502
efe5a21e57 Switch to icicle fork 2025-04-05 14:50:11 +02:00
momo5502
638ad2c7a4 Support read and write hooks 2025-04-05 12:51:37 +02:00
momo5502
349526a54a Simplify hooking interface 2025-04-05 11:59:49 +02:00
momo5502
a336bdf2af Simplify violation hook API 2025-04-05 10:01:28 +02:00
momo5502
0fbb7a2e0d Revert "Disable exceptions for now"
This reverts commit 3391780c2f.
2025-04-05 09:28:01 +02:00
Maurice Heumann
3391780c2f Disable exceptions for now 2025-04-05 09:23:30 +02:00
momo5502
d191f8e667 Optimize MMIO handling 2025-04-05 09:03:41 +02:00
momo5502
b696117424 Add safety checks 2025-04-05 09:03:41 +02:00
Maurice Heumann
d6a419d5f6 Add Ghidra processor specification 2025-04-04 15:35:10 +02:00
Maurice Heumann
8de5c7be3a Run icicle tests 2025-04-04 15:34:58 +02:00
Maurice Heumann
24df7c65c2 Support accurate instruction counts 2025-04-04 13:13:09 +02:00
Maurice Heumann
204159f137 Support violation hooks 2025-04-02 08:21:37 +02:00
momo5502
f5b77ffa67 Tests 2025-04-02 07:03:01 +02:00
momo5502
84268bc7e3 More icicle progress 2025-04-02 06:28:01 +02:00
momo5502
ec235202fb Prepare instruction hook injection 2025-04-01 20:54:08 +02:00
momo5502
5846d2c0b9 Generalize hook store 2025-04-01 20:54:08 +02:00
momo5502
bdf5d60fd9 Implement serialization 2025-04-01 20:54:08 +02:00
momo5502
1cdf280fcf Support disabling rust code 2025-04-01 18:49:41 +02:00
momo5502
7d5555e985 Fix unicorn and switch back to it as default emulator 2025-04-01 18:37:00 +02:00
momo5502
afd9344e97 Extract registers 2025-04-01 18:34:29 +02:00
momo5502
fd018c46b4 Support saving and restoring registers 2025-04-01 18:23:24 +02:00
Maurice Heumann
7222c0fc1d Add icicle mmio support 2025-04-01 15:40:53 +02:00
momo5502
54b5bdc531 Small fix 2025-04-01 09:27:07 +02:00
momo5502
3e6c8ed84c Adjust icicle config 2025-03-29 11:39:13 +01:00
momo5502
b215699360 Fix syscall execution 2025-03-29 11:31:30 +01:00
momo5502
2a74303cdc Support syscall hooks 2025-03-29 10:44:41 +01:00
momo5502
637ed75b8c GDT fixes 2025-03-29 10:44:41 +01:00
momo5502
af6492be6d Unify setting segment base 2025-03-29 10:44:41 +01:00
Maurice Heumann
dec66f051d Test 2025-03-29 10:44:41 +01:00
Maurice Heumann
ab144de125 Prepare register support 2025-03-29 10:44:41 +01:00
momo5502
da6ba1a329 Support reading and writing memory 2025-03-29 10:44:41 +01:00
momo5502
65d0da70a0 Fix rust cmake 2025-03-29 10:44:41 +01:00
Maurice Heumann
63f54df78c Icicle progress 2025-03-29 10:44:41 +01:00
momo5502
985dd49059 Fix cargo builds 2025-03-29 10:44:41 +01:00
momo5502
32ebda5fe7 Support android 2025-03-29 10:44:41 +01:00
momo5502
448e11b737 Support iOS 2025-03-29 10:44:41 +01:00
momo5502
6fb7450e0f Add rust code and cmake integration 2025-03-29 10:44:41 +01:00
momo5502
e0b0630171 Small cleanup 2025-03-29 10:44:31 +01:00
momo5502
7c3f848b36 Support dump generation for GDB mode 2025-03-23 13:17:23 +01:00