Commit Graph

28 Commits

Author SHA1 Message Date
5e0c990394 It is Turing complete! Running the Mandelbrot renderer with the brainfuck interpreter. Improved addressing modes and added CMP immediate with register instruction 2023-02-15 03:54:12 +00:00
f4d28cf4c8 Added 16bit unaligned register indirect writes, fixed some MOV bugs, clean up code names and data flow 2023-02-15 01:28:02 +00:00
c3563457c5 Finished MOV Reg/Mem to/from register 2023-02-14 15:49:29 +00:00
f97f4625e6 Added unconditional jumps and support for signed addition 2023-02-14 14:48:35 +00:00
037f6dd7da Added support for writing to memory 2023-02-14 13:13:40 +00:00
7c1067088c Properly licensed the project and run it through aspell 2023-02-13 16:49:17 +00:00
0d4221f9de Added config file (mainly for debug verbosity) and kind of patched some weird behaviour when clock is stopped 2023-02-13 15:24:21 +00:00
16e02e0788 Added conditional jump support! 2023-02-13 10:36:37 +00:00
923bf07c72 Fixed ALU bug and added missed updates to the Wbit 2023-02-12 01:28:37 +00:00
c684348e38 Implemented a CMP instruction and the some of the flags 2023-02-12 01:05:39 +00:00
0901af23db Added support for some register indirect addressing modes. Also added documentation comments and did some general cleanup 2023-02-11 20:27:28 +00:00
85bf886223 Improved ALU and added more INC and a DEC instruction 2023-02-11 14:43:53 +00:00
be06244021 Improved register file addressing and printout 2023-02-11 13:41:12 +00:00
fd31eb704c Made the simulation stop at an unrecognised instruction or other error 2023-02-11 01:05:19 +00:00
fc4ecdb8d2 Added HLT instruction, made testbench count total clock cycles and write memdump and fixed reset timing 2023-02-10 18:21:19 +00:00
bba230fbce Added the MOV immediate to register instruction 2023-02-10 15:41:04 +00:00
e685c52ddd Improved instruction decoding 2023-02-10 14:39:34 +00:00
6561018206 Made the processor actually little-endian 2023-02-10 14:09:08 +00:00
39f55aa6c3 Added unaligned access for instructions and data and fixed register file access 2023-02-10 12:02:20 +00:00
185efe9d85 Improved execution state logic, cleaned up code and fixed register file output enable 2023-02-10 01:45:27 +00:00
a5571fda12 Added a very basic execution stage, registers and a very crude adder for ALU. It finally executes instructions! 2023-02-09 20:17:15 +00:00
a166efec9c Moved clock generator to the testbench 2023-02-09 14:51:50 +00:00
c3a2f5eb01 Added primitive decode stage, improved state handling and fixed CIR register 2023-02-09 14:46:21 +00:00
5371caa3bb Implemented a basic Instruction Fetch stage and added some examples in the 8086 doc 2023-02-08 23:59:06 +00:00
139ec3c0c0 Standardised indentation 2023-02-08 12:09:21 +00:00
61a403271c Added ROM, address and data buses and primitive program counter 2023-02-08 11:57:22 +00:00
bc2ef977d8 Improved state logic 2023-02-08 09:36:32 +00:00
f9393cb69f Basic start for the control block 2023-02-08 09:18:00 +00:00