summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2019-11-20RefactorOxore
- Rename `rom` to `progmem` to not visually confuse with `ram`. - Unwrap all `o` abbrev names to `oprand`. - Use explicitly named non-mutable local variables when need to assemble u16 from a couple of u8. - Use & instead of + when need to assemble u16 from a couple of u8.
2019-11-20Implement external memory, DPTR, MOVX and 16-bit MOVsOxore
2019-11-19Sort opcode constants and OP_LUT arrayOxore
2019-11-19Move Operand matching into instruction execution functionsOxore
2019-11-19Implement Push and Pop instructionsOxore
2019-11-19Implement JNZ, fix couple of Clippy complainsOxore
2019-11-19Implement getter for PC in Core, print offset for each instructionOxore
2019-11-19Refactor naming in core.rsOxore
2019-11-18Implement LJMP instructionOxore
2019-11-18Implement AJMP instructionOxore
2019-11-18Fix SJMP opcodeOxore
2019-11-18Implement LUT for opcode to Op translationOxore
2019-11-11Add ram and rom, implement basic MOV functionalityOxore
2019-11-11Fix Clippy's complainsOxore
2019-11-11Add operand size detection for fetching operandsOxore
2019-11-10Improve core architecture, add more MOV instructionsOxore
2019-11-10Add comments, format codeOxore
2019-10-01Implement loading hex from fileOxore
2019-10-01Fix hex parsing using radix 16 instead of 10Oxore
2019-09-30Remove most of unwraps, add Mov instructionOxore
2019-09-30Implement basic ram loader from hexOxore
2019-08-15Implement sjmpOxore
2019-07-14Rework internal operation conceptOxore
Rename enum Op to Opcode. Create struct Op that contains all the info about instruction. Implement immutable fetch method that is meant to get the whole instruction. Add exec method skeleton. Add opcodes of NOP, PUSH and POP. Still Don't know what to do with illegal operations.
2019-07-14Rename instruction_size to op_size for consistencyOxore
2019-07-14Implement ram and instructionsOxore
2019-07-14Initial commitOxore
Implement CLI and CPU core skeletons