|
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 |
|
|
ea7b65994b
|
Fix IN and OUT instructions decoding
|
2025-03-22 15:20:48 +07:00 |
|
|
ab2b107e7e
|
Listing 53
|
2025-03-22 15:09:00 +07:00 |
|
|
da78d875c1
|
Effective address movs work, but at what cost?
|
2025-03-21 20:47:42 +07:00 |
|
|
3ca4059c44
|
Listing 52
|
2025-03-21 20:47:34 +07:00 |
|
|
11ccfe78a9
|
Handle Memory movs, change displacement from union to enum
|
2025-03-21 20:11:39 +07:00 |
|
|
948960e8f5
|
Listing 51
|
2025-03-21 20:11:20 +07:00 |
|
|
0e90e2c23c
|
Handle additional jumps for listing 50
|
2025-03-21 17:19:48 +07:00 |
|
|
99fd7fabd7
|
Add inst decoded type for better modeling, handle jumps correctly with IP register
|
2025-03-21 16:33:58 +07:00 |
|
|
d0f91f15f8
|
Listings 48 and 49
|
2025-03-21 16:33:24 +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 |
|
|
cd5eada115
|
Listing 47
|
2025-03-20 16:09:44 +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 |
|
|
fd8f696627
|
Listing 46
|
2025-03-19 21:07:11 +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 |
|
|
118ed482c1
|
Add listing 0044.txt, rm test files at the end of script
|
2025-03-16 23:55:26 +07:00 |
|
|
6e7783c623
|
Bash script to compare expected output, print values in a way that's easy to test
|
2025-03-16 23:45:37 +07:00 |
|
|
7e74d1e9a2
|
Print registers and execute basic mov instructions
|
2025-03-15 22:28:54 +07:00 |
|
|
32ddb518e9
|
Break code up into files, delete C code, organize things better
|
2025-03-15 17:28:51 +07:00 |
|
|
6909f75b35
|
Little bit more clean up
|
2025-03-13 21:59:37 +07:00 |
|
|
d4216d793a
|
Listing 43/44 asm files
|
2025-03-13 17:50:58 +07:00 |
|
|
3dca2254e1
|
Add helper proc to clean up the word/byte keyword
|
2025-03-13 17:50:32 +07:00 |
|
|
460e1a8700
|
Little bit of clean up and organization
|
2025-03-13 12:46:25 +07:00 |
|
|
fc02debf65
|
Last bunch of instructions to get listing 42 fully read
|
2025-03-12 23:46:47 +07:00 |
|
|
babb07cb43
|
Segment register for memory addresses and lock string
|
2025-03-12 11:31:14 +07:00 |
|
|
8967be44a0
|
Major refactor to define both operands so either can be empty
|
2025-03-12 11:07:40 +07:00 |
|
|
08ef7d901b
|
IN, OUT, XLAT, LEA, LDS, LES, ADC
|
2025-03-07 19:27:01 +07:00 |
|
|
782ff93ace
|
Handle accumulator differently, handle segment registers, handle unary, add instructions
|
2025-03-07 10:14:36 +07:00 |
|
|
390fedc848
|
Add more instructions, add segment registers, move types up, read more data
|
2025-03-07 10:13:49 +07:00 |
|
|
c7ee622847
|
Rename listing files
|
2025-03-03 20:40:47 +07:00 |
|
|
6365bd73a0
|
Encode jump offsets, collect instruction lines as strings, print at end
|
2025-02-24 20:03:18 +07:00 |
|
|
1f9837b256
|
Change how we detect explicit word sizes, fix data_idx
|
2025-02-23 12:05:56 +07:00 |
|
|
c1799fcac2
|
Jump instructions and read opname from 3-bit pattern
|
2025-02-22 22:03:14 +07:00 |
|
|
446848dffb
|
Generalizing data and operand bracketing, to make add instrunction work
|
2025-02-21 23:35:24 +07:00 |
|
|
bc0a8b65eb
|
New declarative style instruction definition, generalized parsing
|
2025-02-21 21:53:11 +07:00 |
|
|
f8f5744cd3
|
WIP: Separate parsing from printing, the easy way
|
2025-02-16 17:10:29 +07:00 |
|
|
fbedf7cf67
|
Process mov instruction properly, 01-02-39.asm now decoded properly
|
2025-02-14 23:08:45 +07:00 |
|
|
c5e9cfac44
|
Parse instruction function
|
2025-02-14 13:09:18 +07:00 |
|
|
7c48c5ed90
|
Debug print encoding map
|
2025-01-21 22:46:31 +07:00 |
|
|
444510cca2
|
RegMemMode enum, Instruction struct with 'mov' encodings, plus a map, read bytes
|
2025-01-21 22:45:49 +07:00 |
|
|
86428f0263
|
Test w flag and print with the bytes in comments
|
2025-01-21 14:50:30 +07:00 |
|
|
f67f6de0b6
|
Update building and testing for new odin code
|
2025-01-21 14:50:03 +07:00 |
|