dcpu16
12 years agotile rendering for chargen now working correctly
Justin Wind [Sun, 22 Apr 2012 18:25:57 +0000 (11:25 -0700)]
tile rendering for chargen now working correctly

resolved small bugs in rendering textmode cells to display buffer

12 years agoinitial support for a display module, incomplete
Justin Wind [Sat, 21 Apr 2012 19:37:17 +0000 (12:37 -0700)]
initial support for a display module, incomplete

Added basic support for an optional display buffer output module, which is currently just written out to a PNM file on each screen update.
Tile rendering needs some further work&tests.

12 years agoadded user data to event callbacks
Justin Wind [Thu, 19 Apr 2012 22:02:34 +0000 (15:02 -0700)]
added user data to event callbacks

watchpoint callbacks now include a pointer to user-specified data

12 years agoadded cpu context to event callbacks
Justin Wind [Thu, 19 Apr 2012 20:08:06 +0000 (13:08 -0700)]
added cpu context to event callbacks

watchpoint callbacks now include a pointer to the cpu structure.

12 years agoremoved checks for setting literal operands
Justin Wind [Thu, 19 Apr 2012 19:09:30 +0000 (12:09 -0700)]
removed checks for setting literal operands

opcodes just set the scratch register the literal is stored in, causing no harm nor later effect.
also added _XOPEN_SOURCE=600 define to Makefile, now compiles cleanly on both darwin and linux.

12 years agominor portability enhancements
Justin Wind [Wed, 18 Apr 2012 21:25:27 +0000 (14:25 -0700)]
minor portability enhancements

missed some headers, use sigaction() instead of signal()

12 years agominor cleanup of verbosity
Justin Wind [Wed, 18 Apr 2012 03:03:47 +0000 (20:03 -0700)]
minor cleanup of verbosity

12 years agoredid line tokenizer
Justin Wind [Wed, 18 Apr 2012 01:46:22 +0000 (18:46 -0700)]
redid line tokenizer

cleanup, minor refactoring, addressed minor stringhandling bugs

12 years agofixing sloppy errors introduced with new strqtok
Justin Wind [Tue, 17 Apr 2012 19:45:41 +0000 (12:45 -0700)]
fixing sloppy errors introduced with new strqtok
prior commit broke things, this one works better

12 years agobegan support for DAT assembler directive
Justin Wind [Mon, 16 Apr 2012 23:02:51 +0000 (16:02 -0700)]
began support for DAT assembler directive

initial support for DAT in assembler
moved some common routines out to shared non-exported module

12 years agogeneralized list handling of instructions and labels
Justin Wind [Sat, 14 Apr 2012 19:49:40 +0000 (12:49 -0700)]
generalized list handling of instructions and labels

Instructions and labels are now kept in growable arrays, using common interface.

12 years agocleaned up verbosity in vm-dcpu16.c
Justin Wind [Fri, 13 Apr 2012 22:01:43 +0000 (15:01 -0700)]
cleaned up verbosity in vm-dcpu16.c

12 years agoremoved old skip code
Justin Wind [Fri, 13 Apr 2012 21:46:58 +0000 (14:46 -0700)]
removed old skip code

12 years agocleanup, simplified event callbacks, step now consumes branch-skipped instructions
Justin Wind [Fri, 13 Apr 2012 21:31:30 +0000 (14:31 -0700)]
cleanup, simplified event callbacks, step now consumes branch-skipped instructions

12 years agofixed instruction length issue
Justin Wind [Fri, 13 Apr 2012 19:14:27 +0000 (12:14 -0700)]
fixed instruction length issue

dcpu16.c: fixed instruction length issues
dcpu16.c: fixed and cleaned up disassembly function
vm-dcpu16.c: fixed argument handling for some commands

12 years agobugfix in event accounting
Justin Wind [Fri, 13 Apr 2012 04:05:23 +0000 (21:05 -0700)]
bugfix in event accounting

12 years agoadded callback support for memory access
Justin Wind [Fri, 13 Apr 2012 03:37:34 +0000 (20:37 -0700)]
added callback support for memory access

Basic support in place for registering callbacks which get called on ram access events.

12 years agobetter shell loop
Justin Wind [Thu, 12 Apr 2012 23:14:55 +0000 (16:14 -0700)]
better shell loop

cleaned up vm-dcpu16.c, made the shell loop simpler and better

12 years agovm-dcpu16 shell rewritten to be use command table
Justin Wind [Thu, 12 Apr 2012 05:31:31 +0000 (22:31 -0700)]
vm-dcpu16 shell rewritten to be use command table

minor cleanups all around, redid entirety of main driver routine in vm shell

12 years agoseparated vm-dcpu16.c cli driver wrapper from vm emulator core
Justin Wind [Wed, 11 Apr 2012 03:28:35 +0000 (20:28 -0700)]
separated vm-dcpu16.c cli driver wrapper from vm emulator core

12 years agoadded tests/test.bin
Justin Wind [Wed, 11 Apr 2012 01:24:01 +0000 (18:24 -0700)]
added tests/test.bin

test.bin is just test.s correctly assembled

12 years agoredid value_bits_ and assorted cleanup
Justin Wind [Wed, 11 Apr 2012 01:06:24 +0000 (18:06 -0700)]
redid value_bits_ and assorted cleanup

value_bits_ can now handle labels in odd places

12 years agoassembler functional now
Justin Wind [Tue, 10 Apr 2012 20:43:31 +0000 (13:43 -0700)]
assembler functional now

12 years agoactually commit minor cleanups
Justin Wind [Tue, 10 Apr 2012 19:08:32 +0000 (12:08 -0700)]
actually commit minor cleanups

hah, still acclimating to git

12 years agominor cleanups, added docs and test files
Justin Wind [Tue, 10 Apr 2012 19:06:24 +0000 (12:06 -0700)]
minor cleanups, added docs and test files

12 years agoassembler functional
Justin Wind [Tue, 10 Apr 2012 05:00:19 +0000 (22:00 -0700)]
assembler functional

12 years agoinitial commit
Justin Wind [Sun, 8 Apr 2012 22:12:52 +0000 (15:12 -0700)]
initial commit