Commit Graph

87 Commits

Author SHA1 Message Date
785af6b747 added more documentation about debuggin tools 2021-04-19 12:16:50 +02:00
39d5212d3d added stepping functionality to the debugger 2021-04-19 12:10:24 +02:00
521cb73ad6 better dumping code in debugger 2021-04-19 11:27:31 +02:00
318b62431d catching invalid immediate value now 2021-04-19 11:22:08 +02:00
7d095991a2 added light documentation for internal structure 2021-04-19 11:16:57 +02:00
97525bf8ab fixed cpu __repr__ method 2021-04-19 11:16:05 +02:00
Anton Lydike
9cd0fcb7e8 added url to risc-v instruction definition to README 2021-04-19 09:49:06 +02:00
Anton Lydike
b7c0f39aaa added documentation for RV32M 2021-04-19 09:48:31 +02:00
Anton Lydike
7aa67cd4e1 improved instruction parsing in RV32M 2021-04-19 09:48:06 +02:00
Anton Lydike
d8f46c781c finished the RV32I instruction set 2021-04-19 09:00:45 +02:00
Anton Lydike
1abeab6f2d added parse_rs_rs_imm method to InstructionSet, used for branch instructions 2021-04-19 08:53:35 +02:00
Anton Lydike
d40c80cb81 added unsigned options to instruction parsing 2021-04-19 08:37:16 +02:00
Anton Lydike
1957e11f62 added unified instruction parsing 2021-04-19 08:34:39 +02:00
Anton Lydike
2d378f2e0a implemented remu, rem, divu div and mul in RV32M 2021-04-19 00:05:23 +02:00
Anton Lydike
157589548d unified instruction parsing code 2021-04-19 00:04:51 +02:00
Anton Lydike
d3fe6cb1a9 fixed read syscall shadowing of len 2021-04-19 00:04:10 +02:00
Anton Lydike
38cb3f7669 renamed RVM to RV32M 2021-04-18 23:47:08 +02:00
Anton Lydike
7f3fb9b141 fixed bgeu, bltu and bge in RV32I 2021-04-18 23:45:11 +02:00
Anton Lydike
07f097202d added lui instruction to RV32I 2021-04-18 23:44:18 +02:00
Anton Lydike
4c50b8bf06 added .space pseudo op, currently does nothing 2021-04-18 23:43:56 +02:00
Anton Lydike
c6b18dd152 fixed hex check in parse number code 2021-04-18 23:43:39 +02:00
Anton Lydike
d8d53da774 added scaffolding form RVM instruction set 2021-04-18 23:29:12 +02:00
Anton Lydike
7dcbd59d34 removed old unused run.py 2021-04-18 23:16:32 +02:00
Anton Lydike
18a9e5e223 updated todo in README 2021-04-18 23:15:48 +02:00
Anton Lydike
3ce42079d4 refactored instruction sets to be modular 2021-04-18 23:14:53 +02:00
Anton Lydike
c20ab4cfb1 added more debugging info to README 2021-04-18 21:43:39 +02:00
Anton Lydike
e42ec6a331 merged assembly and cpu docs 2021-04-18 20:42:09 +02:00
Anton Lydike
a7cedc1cd2 fixed bad link in README 2021-04-18 20:37:14 +02:00
Anton Lydike
91a12fd2a8 fixed tokenizer hanging on unknown instruction 2021-04-18 20:36:13 +02:00
Anton Lydike
a3ab418858 fixed formatting in Registers.dump() 2021-04-18 20:32:25 +02:00
Anton Lydike
bf4bcfe388 added debugging info 2021-04-18 20:31:53 +02:00
Anton Lydike
cd08cd4f70 added syscall interface to debug variables 2021-04-18 20:11:44 +02:00
Anton Lydike
bf4c705297 added symbol lookup helper MMU.symbol(name) 2021-04-18 20:10:08 +02:00
Anton Lydike
ce59d10a3b fixed range selection for LoadedMemorySection.dump 2021-04-18 20:09:47 +02:00
Anton Lydike
c2cbb4653c updated readme and docs 2021-04-18 19:43:24 +02:00
Anton Lydike
db6d21b734 now officially MIT licensed 2021-04-18 19:33:39 +02:00
Anton Lydike
4135ffdb32 syscall symbols now work as global symbols 2021-04-18 19:30:25 +02:00
Anton Lydike
8b4ba276a8 fixed saving reference to global_symbol_table in executable loader 2021-04-18 19:29:51 +02:00
Anton Lydike
a1b9cf7f22 provide global syscall symbols if flag is set 2021-04-18 19:19:28 +02:00
Anton Lydike
11568ec9b0 improved arguments, dropped support for no-color output 2021-04-18 19:18:17 +02:00
Anton Lydike
2c5655d65a fixed registers keeping track of last accessed register 2021-04-18 18:56:39 +02:00
Anton Lydike
7cb29c5b89 added escape character deocoding for ascii and asciiz pseudo-ops 2021-04-18 18:49:27 +02:00
Anton Lydike
3bcabfbf78 fixed mmu bounds check for read 2021-04-18 18:48:55 +02:00
Anton Lydike
fc22d4b6a7 added better colors to MMU output 2021-04-18 18:39:48 +02:00
Anton Lydike
09844c8d38 fixed isinstance check in write syscall 2021-04-18 18:39:32 +02:00
Anton Lydike
d6e6856431 changed output color for syscall logs 2021-04-18 18:16:53 +02:00
45b82a3fa9 support for loading multiple executables 2021-04-18 12:59:40 +02:00
cb48d66400 stack allocation now fixed 2021-04-18 12:55:57 +02:00
2b87bbe270 reformat Exceptions.py 2021-04-18 12:12:00 +02:00
8fc519ee86 added global symbol support! 2021-04-18 12:09:38 +02:00