c9bf8fdc46
ft(interpreter): impl short jumps
2025-06-11 15:44:42 +09:00
7479021d36
ft: impl most arithmatic ops, dec, inc
2025-06-10 20:57:31 +09:00
037d74ac6a
fix: dont always flip sign_extend msb
2025-06-10 20:00:07 +09:00
3756ada3e0
fix: correctly sign-extend instead of plain byte to word cast
2025-06-10 15:54:25 +09:00
5529fc0b89
ft: impl flag setting closure for binary operations
2025-06-10 14:38:13 +09:00
35fefb7625
ft(interpreter): generalize binary operations
2025-06-10 10:59:35 +09:00
232b73aad8
chore: Rename Operand -> ImmediateOperand
2025-06-05 10:08:35 +09:00
ef4663a245
ft: abstract and implement ADD::* interpretation
2025-06-04 23:01:04 +09:00
a21cc2b4b3
ft: add debug script
2025-05-28 14:13:12 +09:00
c396d33f76
fix: align pointer parsing with spec
...
Previously pointer parsing was completely wrong.
Now split into Pointer32 for immediates with
segment;offset and Pointer16 for short jumps, which
use DS or ES as segment and the Pointer16 value
as offset.
2025-05-28 13:31:14 +09:00
0893969f4e
chore: whole swoop of enhanced documentation
2025-05-28 09:41:40 +09:00
8ea91d80b8
ft: add first basic test
2025-05-25 21:20:12 +09:00
35207d23f0
chore: add nice debug output
2025-05-25 21:06:47 +09:00
f9ae0dc6ee
chore: move pointer parsing function to disasm module
2025-05-25 20:31:55 +09:00
74e936ab76
chore: replace all panic's with proper error propagation
2025-05-25 15:45:09 +09:00
73b1a99cbd
ft: Implement memory pointer (Mp) operand
2025-05-25 11:00:47 +09:00
6762195378
chore: show raw pointer value in disasm
2025-05-25 10:27:32 +09:00
058afeb7ba
chore: split up some structs and add comments
2025-05-20 18:59:09 +09:00