Commit Graph

18 Commits

Author SHA1 Message Date
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