15 Commits

Author SHA1 Message Date
df105ea3cf Generalize with perform_load and perform_store, use bit_set for cpu flags 2025-03-22 18:54:36 +07:00
831a307975 Fix and simplify (delete) all the signage stuff 2025-03-22 15:21:47 +07:00
11ccfe78a9 Handle Memory movs, change displacement from union to enum 2025-03-21 20:11:39 +07:00
99fd7fabd7 Add inst decoded type for better modeling, handle jumps correctly with IP register 2025-03-21 16:33:58 +07:00
731e5bd45d CF, OF, and PF flags, keep values as i16, update ref test script 2025-03-20 20:22:12 +07:00
5cf4768b80 Decode then check reference flags, change registers and flags to use enumerated arrays 2025-03-20 16:13:37 +07:00
08874c4533 Use an enum to represent registers, parse txt files, check CPU state against expected 2025-03-20 13:06:33 +07:00
305ac557fa Move registers to CPU struct, start working on testing code 2025-03-20 09:44:41 +07:00
b511c6a620 Clean up/inline functions and clear out TODOs 2025-03-20 08:19:20 +07:00
266f7a7900 Factor out get/set actions to reduce duplication, execute add,sub,cmp and check flags 2025-03-19 21:10:22 +07:00
863ccfc583 Convert TBD instruction op names to the actual enum variants, rather than strings 2025-03-19 21:09:42 +07:00
a91c3d9ba9 Clean up operand code by removing unnecessary variants 2025-03-19 18:57:34 +07:00
c312b7fd57 Fix register logic since we can access high and low parts, it's really ugly 2025-03-18 21:16:08 +07:00
b78d043b6c Add new listings, supply cs register, fix segreg mov instruction 2025-03-17 21:51:52 +07:00
32ddb518e9 Break code up into files, delete C code, organize things better 2025-03-15 17:28:51 +07:00