Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-02-18 | igen: Did some more work on it. | mrb0nk500 | |
2022-02-18 | igen: Start work on writing a preprocessor. | mrb0nk500 | |
2022-02-18 | igen: Start work on a better lexer. | mrb0nk500 | |
The other one I was about to do would've been harder to read, and understand. So, I've decided to write a more readable version. | |||
2022-02-13 | igen: Start work on writing an instruction handler | mrb0nk500 | |
generator. This will make it easier in the long run to modify instructions, add new instructions, and move the opcode tables around. | |||
2022-02-13 | sux.h: Add bitmask for b register addressing mode. | mrb0nk500 | |
2022-02-09 | sux.{c,h}, opcode.h, disasm.c: Add code to use the new | mrb0nk500 | |
instruction handler for reading the interrupt vectors. | |||
2022-02-09 | sux.h: Fix some bugs in the interrupt bitmasks. | mrb0nk500 | |
2022-02-02 | sux.c, sux.h: Add code for using the new instruction | mrb0nk500 | |
handler. | |||
2022-02-02 | io.c: Add include for `<time.h>`. | mrb0nk500 | |
This is used by the delay code in `get_key()`. | |||
2022-02-02 | sux.h: Remove unneeded, and inaccurate cycle increments. | mrb0nk500 | |
2022-02-02 | io.c: Add code for delaying by some amount of time per | mrb0nk500 | |
cycle. | |||
2022-02-02 | sux.h, io.c: Added support for setting key timeout. | mrb0nk500 | |
2022-02-02 | sux.h: Added a `tick()` function. | mrb0nk500 | |
This function will increment the cycle count by one everytime it's called. Later on, this'll help simplify I/O emulation, as I've considered implementing read, write, and tick callbacks for I/O. | |||
2022-02-02 | sux.h: Add third implementation of the `t()` macro. | mrb0nk500 | |
2022-02-02 | sux.h: Corrected some typos, and fixed some bugs in | mrb0nk500 | |
the bitmasks. | |||
2022-01-29 | sux.h: Added bitmasks for updating the status flags. | mrb0nk500 | |
2022-01-29 | sux.h: Make `msb` non const. | mrb0nk500 | |
2022-01-24 | sux.h: Add bitmasks for writing registers. | mrb0nk500 | |
2022-01-24 | sux.h: Corrected typo in `reg2` initialization. | mrb0nk500 | |
2022-01-24 | sux.h: Add bitmasks for arithmetic operations. | mrb0nk500 | |
2022-01-24 | sux.h: Add bitmasks for register transfers. | mrb0nk500 | |
2022-01-24 | sux.h: Correct typos in bitmasks for register | mrb0nk500 | |
assignments, and for inverting `tmp`. | |||
2022-01-21 | sux.h: Use conditional branch code for unconditional | mrb0nk500 | |
jumps. This gets rid of some code duplication, and is also how `bra` was implemented anyway. So, might as well use it for unconditional jumps too. | |||
2022-01-21 | sux.h: Add bitmask for relative addressing. | mrb0nk500 | |
2022-01-21 | sux.h: Add bitmasks for conditional branches. | mrb0nk500 | |
2022-01-21 | sux.h: Corrected typos in bitmasks that dealt with | mrb0nk500 | |
conditional branches. | |||
2022-01-21 | opcode-bitmask-gen: Add relative addressing to the | mrb0nk500 | |
list of addressing modes. oof, forgot about that until just now. | |||
2022-01-21 | sux.h: Add bitmasks for setting/testing/clearing flags, | mrb0nk500 | |
and for bitwise operations. | |||
2022-01-19 | sux.h: Add bitmask for unconditional jumps. | mrb0nk500 | |
2022-01-19 | sux.h: Add bitmasks for stack related operations. | mrb0nk500 | |
2022-01-19 | sux.h: Make `rs` non const. | mrb0nk500 | |
2022-01-19 | sux.h: Set program counter to interrupt vectors, when | mrb0nk500 | |
an interrupt gets triggered. This is done in order to properly use the `read_addr()` function. | |||
2022-01-19 | sux.h: Add bitmasks for writing a value to memory. | mrb0nk500 | |
2022-01-19 | sux.h: Corrected bitmask for `reg = &cpu->a;`. | mrb0nk500 | |
2022-01-19 | opcode-bitmask-gen: Fixed bug that occurred when masking | mrb0nk500 | |
out unwanted bits when inverting the addressing mode bitmask. | |||
2022-01-18 | opcode-bitmask-gen: Invert the addressing mode bitmask | mrb0nk500 | |
after all bits have been found, if inverting is enabled. | |||
2022-01-18 | Add support for getting an inverted addressing mode | mrb0nk500 | |
bitmask in `opcode-bitmask-gen`. | |||
2022-01-18 | Add bitmasks for operations that mogrify (overwrite) | mrb0nk500 | |
memory directly. | |||
2022-01-18 | Add bitmask for instructions that use the processor | mrb0nk500 | |
status register. | |||
2022-01-18 | Remove `pbits` from instruction handler. | mrb0nk500 | |
2022-01-18 | Initialize `tmp`, and `tmp2` to `0`, rather than `-1`. | mrb0nk500 | |
2022-01-18 | Add the rest of the load opcodes to the other register | mrb0nk500 | |
bitmasks. | |||
2022-01-18 | Add `LDA` opcodes to accumulator bitmask. | mrb0nk500 | |
2022-01-16 | Add bitmasks for the registers. | mrb0nk500 | |
2022-01-16 | Fix bug in print_mask() where it'd always use the first | mrb0nk500 | |
instruction entry, rather than the entry of the supplied instruction id(s). | |||
2022-01-14 | Consolidate reading addresses for non-indirect addressing | mrb0nk500 | |
modes into a single block. | |||
2022-01-14 | Add bitmasks for indexing, and indirect addressing. | mrb0nk500 | |
2022-01-14 | Add bitmasks for reading data from memory, and | mrb0nk500 | |
immediate data. | |||
2022-01-14 | Add bitmask for absolute addressing. | mrb0nk500 | |
2022-01-14 | Add a bitmask generator for the new instruction handler | mrb0nk500 | |
macro. This program will help with generating the bitmasks for the instruction handler macro. |