1
0
Fork 0
mirror of https://github.com/pnx/m16vm synced 2026-06-16 03:44:55 +02:00
Commit graph

40 commits

Author SHA1 Message Date
f2d54204ca
Makefile: add rule for building libm16 2018-12-10 23:13:37 +01:00
aca8d7937e
asm: adding AST 2018-12-10 23:13:37 +01:00
3122da08c9
move include/ to lib/include 2018-12-10 10:10:50 +01:00
a305c34b39
lib: adding vector module 2018-12-10 10:10:50 +01:00
adbe0006f5 asm: adding symbol table datastructure. 2018-12-09 19:52:29 +01:00
0f41fc0870 asm: adding example files 2018-12-09 19:52:29 +01:00
3528c467ac asm: adding the parser 2018-12-09 19:52:29 +01:00
16501e40be asm: adding instr_encode module 2018-12-09 19:52:29 +01:00
95f2e38c2d
asm: adding error module 2018-11-27 10:52:40 +01:00
d530dfda63
include/instr.h: adding a special OP_NONE opcode. 2018-11-27 10:52:39 +01:00
377c008ebe
asm: lexer implementation. 2018-11-27 10:52:39 +01:00
5bf70ad664
Makefile: print memory per default. 2018-11-25 11:39:20 +01:00
61263f65c8
src/vm.c: add preprocessor macro for reg/mem debug output. 2018-11-25 11:38:40 +01:00
66ea2b3b49
src/cpu.c: add M16_DEBUG_INSTR preprocessor macro to toggle debug output. 2018-11-25 11:38:11 +01:00
fea81c37e2
README.md: addr of Type-J is unsigned. 2018-11-25 11:23:11 +01:00
8e6ce776dc
README.md: Correct the LW/SW instructions, they are type RI 2018-11-25 11:22:39 +01:00
6d2ad112af
src/cpu.c: LW/SW are Type-RI. 2018-11-25 11:21:40 +01:00
6256fa7512
src/cpu.c: remove the old static variables that exists in struct cpu_state from now on. 2018-11-24 20:05:27 +01:00
0fcfa253c1 Update .gitlab-ci.yml 2018-11-07 12:42:07 +00:00
3d753e8b09 Add .gitlab-ci.yml 2018-11-06 13:36:58 +00:00
cf752ab682
move src/instr.h to include/instr.h because it will be needed by assembler for code generation. 2018-11-01 18:34:35 +01:00
817642b7e4
src/vm.c: use program.h 2018-10-31 17:53:07 +01:00
fe8804c8d8
add program module 2018-10-31 17:53:07 +01:00
6f60b1a74a
src/cpu.c: alot of refactoring, store state in a struct. and make vm.c "own" the state. 2018-10-28 14:53:41 +01:00
3db5f117d6
README.md: document interrupts. 2018-10-28 14:24:16 +01:00
1088e4960e
programs/hello_world.m16: changed to using "int 10" 2018-10-28 14:23:59 +01:00
bae062cbf9
src/cpu.c: implement OP_INT instead of OP_SYSC_WR 2018-10-28 14:23:35 +01:00
fa30f39d55
src/syscall: define write system call 2018-10-28 14:23:01 +01:00
837bd8f892
src/instr: remove OP_SYSC_WR,OP_SYSC_RD in favor for OP_INT. 2018-10-28 14:22:31 +01:00
dca453457d
src/cpu: add the define "CPU_NUM_REGS" 2018-10-28 14:21:00 +01:00
900e1d87c4
src/cpu.c: implement JR instruction 2018-10-28 13:27:21 +01:00
1eef46cc5e
src/cpu.c: adding print_reg() 2018-10-28 13:27:01 +01:00
96bfab8176
adding programs/jr.m16 2018-10-28 13:18:02 +01:00
61da2339f2
README.md: "jr" is of I-type 2018-10-27 19:12:36 +02:00
584d731122
README.md: minor fix 2018-10-27 19:10:05 +02:00
ae40dea013
README.md: default memory size is 65536 2018-10-27 19:09:29 +02:00
c3a1d3fe77 Add LICENSE 2018-10-26 12:47:02 +00:00
8c7ebdb232 src/vm.c: include unistd.h 2018-10-26 14:43:17 +02:00
540e3b7fa6 move design.txt to README.md and clean up the text. 2018-10-26 14:41:48 +02:00
2ba17c52bd Initial commit 2018-10-26 12:35:17 +02:00