Commit Graph

60 Commits

Author SHA1 Message Date
201ac2d401 Build system: switched to valgrind for profiling 2024-02-26 19:04:54 +00:00
f6008b603d Project: Updated the name of the main memory window and made a small change to make clang happy 2024-02-23 08:06:03 +00:00
9f987da7a6 GUI: Added basic support for freeing up unused parts of the cpu output buffer 2024-02-22 00:04:56 +00:00
0b9be7aaa6 GUI,CPU: Added some quick content to the Pipeline tab and made the CPU Pipelined! 2024-02-20 21:56:48 +00:00
9abad9d9ed Programs: decreased the angle of rotation in the 3d renderer to accommodate they higher framerates being achieved 2024-02-20 21:55:22 +00:00
5816fa316b GUI: Added support for using tabs, filled out the memory tab and created a window with some interesting information in the debug tab 2024-02-20 20:02:30 +00:00
4da500e5ec Build system: Started using pkg-config for finding the link flags and cflags for ncursesw 2024-02-20 15:36:12 +00:00
893e44f20a Project: Added -O2 to the CFLAGS and fixed some compiler warnings 2024-02-20 15:27:24 +00:00
783a8bac23 Build system: Added basic support for profiling 2024-02-20 02:12:57 +00:00
af71b6e75e ASM: fixed small bug in the assembler 2024-02-17 20:54:39 +00:00
184cba5adf Programs: Improved the 3d rendering code but this yielded only a marginal increase in fps 2024-02-17 20:43:41 +00:00
a031119272 CPU,ASM: Added register to register MOV instruction 2024-02-17 19:52:27 +00:00
5d4916339d CPU,ASM: Added the INC/DEC instructions 2024-02-17 19:30:39 +00:00
8f817a17b7 GUI: Added an option to run multiple cycles per frame when in run mode so that the bottleneck isn't the terminal as much 2024-02-17 00:07:29 +00:00
519c762287 Programs: Made the 3d renderer spin the 3d model 2024-02-16 21:55:42 +00:00
7ae98d8353 CPU: Fixed a bug with the PUSH/POP instructions where only the lower 24bits were saved 2024-02-16 21:54:17 +00:00
da8ffaf3a4 CPU,ASM: Added the trigonometric instructions SIN and COS 2024-02-16 19:46:25 +00:00
fba8c1f2f4 GUI: Added support for double buffering on the vector display for smoother motion 2024-02-16 19:12:03 +00:00
2c07ced789 Programs: Added a program that will draw a spinning cube on the vector display but currently only does the perspective calculations 2024-02-16 18:11:58 +00:00
31a26c14ad CPU,ASM: Added floating point add and subtract instructions FADD and FSUB 2024-02-16 17:48:04 +00:00
19deb0581c Project: fixed several small bugs and changed the implementation of the line drawing algorythm for the braille display to one that actually works 2024-02-16 17:06:27 +00:00
fd86df806b ASM: Implemented the ability to reference only the upper or lower double-word of a label's address to accommodate the limited register loading mechanism in the intruction set 2024-02-14 19:36:17 +00:00
15b385876c CPU: Added floating point multiplication and division 2024-02-14 17:15:04 +00:00
7383811892 ASM: Added support for empty lines... ...and comments on those empty lines 2024-02-14 14:22:49 +00:00
35588a07c8 CPU: Added support for reading into registers from indirect memory access with register 2024-02-14 14:03:03 +00:00
d643dc3e55 ASM: Added support for defining arbitrary double-words 2024-02-14 12:57:07 +00:00
d8c50156a8 ASM: Fixed potential bug in the assembler's parser 2024-02-14 02:50:51 +00:00
79577d7b4e Project: fixed some warnings from other compilers 2024-02-14 02:45:28 +00:00
ed415511dc GUI: Added a vector graphics display using braille characters to form a frame buffer in the terminal window 2024-02-14 02:42:24 +00:00
591d07f478 CPU,ASM: Added support for writing to register indirect locations and mapper the temrinal into the address space 2024-02-13 22:37:36 +00:00
fe1bcfb471 GUI: Added terminal output window 2024-02-13 21:28:42 +00:00
966a0eee14 CPU: Added support for PUSH and POP and fixed CALL and RET 2024-02-12 19:42:27 +00:00
4863db36ee ASM: Added support for labels in the assembler 2024-02-12 17:51:16 +00:00
41fed482fe GUI: Added display of PC and SP to the registers window 2024-02-12 15:15:54 +00:00
deed349cd1 CPU: Moved the PC and SP registers into the registers_t struct 2024-02-12 14:16:41 +00:00
2579d6974c CPU: Added support for CALL, RET and setting the stack pointer 2024-02-12 13:43:13 +00:00
1e04a7ab0d CMD_LINE: Fixed handling of missing input file 2024-02-07 00:34:45 +00:00
4402688a20 GUI: Added colors to indicate where in the pipeline is each instruction 2024-02-07 00:31:23 +00:00
800e11be16 CPU: Added support for conditional branches, HLT and NOP 2024-02-06 23:14:33 +00:00
1dcc69ba50 CPU: Added support for the add,sub,sl,sr and cmp instructions 2024-02-06 21:53:42 +00:00
e86bf547cb GUI: Fixed the float interpretation of the registers in the gui registers window 2024-02-06 20:55:39 +00:00
3e5e8f56e8 GUI: fixed refresh of registers window 2024-02-06 17:43:17 +00:00
e5705a8477 GUI: Added support for registers in the gui 2024-02-05 21:25:00 +00:00
1f3f26d91e GUI: slight fix on input handling 2024-02-05 12:34:28 +00:00
2d4c021130 GUI: Added support running instead of just single stepping 2024-02-03 23:49:45 +00:00
5595ea91f2 CPU: Created a basic CPU that can run a loop, along with several small bugfixes elsewhere to make it work 2024-02-03 22:54:20 +00:00
bd84eb5b2e ASM: Added code to assembler into a binary and fixed some disassembly logic 2024-02-03 18:03:37 +00:00
3ff187824c ASM: Wrote the start of the definition for the ISA and some of the disassembly logic 2024-01-31 18:29:19 +00:00
651e875c9b GUI: Slight improvement to general->memdump window 2024-01-29 13:21:56 +00:00
9b679d8f82 Build system: General improvements 2024-01-29 13:03:43 +00:00