266 Commits

Author SHA1 Message Date
Hugo Villeneuve
a46ab59d50 Run each test separately from single shell script
Each new test is simply a link to opcodes.sh, generatated automatically.
2013-12-01 21:00:08 -05:00
Hugo Villeneuve
356fc4e3a3 Move timer functions to timers.c 2013-12-01 21:00:08 -05:00
Hugo Villeneuve
bdc8dc1d31 Add tests for timers mode 2 2013-12-01 21:00:08 -05:00
Hugo Villeneuve
ce24c216aa Change test output expected string layout
Also check stack pointer value for all tests
2013-12-01 21:00:08 -05:00
Hugo Villeneuve
6a014db0cd Add tests for timers mode 0 2013-12-01 21:00:08 -05:00
Hugo Villeneuve
ef76945139 Fix bug with timers mode 0 (8 bits with 5-bit prescaler) 2013-12-01 21:00:08 -05:00
Hugo Villeneuve
5d04244ebc Add tests for timers mode 1 2013-12-01 21:00:08 -05:00
Hugo Villeneuve
e93543c1a1 Fix error with timer1 being written to timer0 2013-12-01 21:00:08 -05:00
Hugo Villeneuve
1a20c858a9 Add PC check for all tests 2013-12-01 21:00:08 -05:00
Hugo Villeneuve
28f33d3ca4 Add tests for MOV instruction 2013-12-01 21:00:08 -05:00
Hugo Villeneuve
0315df6597 Add tests for DIV instruction 2013-12-01 21:00:07 -05:00
Hugo Villeneuve
d27ffb9c24 Add tests for ANL instruction 2013-12-01 21:00:07 -05:00
Hugo Villeneuve
7521627a72 Add tests for ORL instruction 2013-12-01 21:00:07 -05:00
Hugo Villeneuve
7a22c370ea Add framework for regression testing 2013-12-01 21:00:07 -05:00
Hugo Villeneuve
594b0ac005 Automatic generation of test hex files 2013-12-01 21:00:07 -05:00
Hugo Villeneuve
97e8525955 Add tests for MUL instructions 2013-12-01 20:59:50 -05:00
Hugo Villeneuve
ab08aba210 Remove hex files 2013-12-01 20:59:04 -05:00
Hugo Villeneuve
3e23ac6c01 Rename test-files directory -> tests 2013-12-01 20:59:04 -05:00
Hugo Villeneuve
5f0e9d167d Add automake options -Wall and gnu std-options
Remove configure verbose output
2013-12-01 20:58:50 -05:00
Hugo Villeneuve
359b0be02b Remove superfluous bytes in program disassembly
Sometimes, B1 and B2 were showing old values from previous disassembly.
Now explicitly remove them for each disassembly line.
2013-12-01 20:53:34 -05:00
Hugo Villeneuve
8b2f6f3ebb Fix code indentation 2013-12-01 20:53:34 -05:00
Hugo Villeneuve
3e3d02a2f2 Prevent dissassembling instructions past last address 2013-12-01 20:52:42 -05:00
Hugo Villeneuve
444731db04 Add ignore files to gitignore 2013-12-01 20:52:42 -05:00
Hugo Villeneuve
72e3350162 Fix syntax error in comments 2013-12-01 20:52:42 -05:00
Hugo Villeneuve
3fed93eb25 Fix error with EM command in CLI mode
Address parameter was not handled correctly.
2013-12-01 20:49:43 -05:00
Hugo Villeneuve
b6dd8fec84 CLI version: Add <?> to display help menu 2013-12-01 20:49:43 -05:00
Hugo Villeneuve
a1c2d96861 Reintroduce PSW in list of displayed registers (for regression tests) 2013-12-01 20:49:43 -05:00
Hugo Villeneuve
381b6d7dd0 Display SFR registers one per line in automatic run mode 2013-12-01 20:49:43 -05:00
Hugo Villeneuve
e75510dd87 Move SFR read/write functions to new file sfr.c 2013-12-01 20:49:43 -05:00
Hugo Villeneuve
dd92f3969f Add option to automatically run and stop CLI emulator 2013-12-01 20:49:43 -05:00
Hugo Villeneuve
18b62c73db Replace printf statements with log functions 2013-12-01 20:49:06 -05:00
Hugo Villeneuve
ccb7a5d184 Move variable declaration before statements 2013-12-01 20:49:06 -05:00
Hugo Villeneuve
8c2d345bc7 Display filename in case of HEX file load error 2013-12-01 20:49:06 -05:00
Hugo Villeneuve
8d9b71ab38 Zero all memories when initializing program
This is especially usefull to have NOP in program memory.
2013-11-22 23:42:14 -05:00
Hugo Villeneuve
6bf8b77a5e Add grid lines to PSW window 2013-11-22 22:24:07 -05:00
Hugo Villeneuve
495c40d54e Add PSW sub window 2013-11-21 00:33:25 -05:00
Hugo Villeneuve
484f0d39a0 Use macro to set name of sub window 2013-11-21 00:33:25 -05:00
Hugo Villeneuve
b7b1c62985 Change scope of local variable to static 2013-11-21 00:33:25 -05:00
Hugo Villeneuve
f49cd33240 Add option to display bool hex character 2013-11-21 00:33:25 -05:00
Hugo Villeneuve
6743535949 Add PSW generic bit write/read functions 2013-11-21 00:33:25 -05:00
Hugo Villeneuve
98b757f83d Add parity bit update each instruction cycle 2013-11-17 22:52:00 -05:00
Hugo Villeneuve
ad5ac01289 Add function to read 16-bit address/offset/value from pgm memory 2013-11-17 22:23:50 -05:00
Hugo Villeneuve
61ae08f73d Fix bug with MOV DPTR,#data16 instruction
Source variable was 8 bits instead of 16 bits.
2013-11-17 22:22:48 -05:00
Hugo Villeneuve
47852aee98 Remove unused destination adressing mode #data16
Even if it is required, the destination variable is only 8-bits,
so this would have been a potential bug.
2013-11-17 22:22:27 -05:00
Hugo Villeneuve
f9394f5df4 Make MUL and DIV use generic source/destination variables
To remove confusing commented code and compilation warning
2013-11-17 18:48:26 -05:00
Hugo Villeneuve
e6f062fc43 Refactor perl code to write C source code line 2013-11-17 18:34:36 -05:00
Hugo Villeneuve
5905b40585 Refactor perl code to write file header 2013-11-17 18:33:34 -05:00
Hugo Villeneuve
82819ebb72 Add overflow and auxiliary carry flags manipulation functions 2013-11-17 18:33:26 -05:00
Hugo Villeneuve
eff770859b Simplify carry bit set/clr functions 2013-11-17 17:26:54 -05:00
Hugo Villeneuve
d1c1972f26 Add carry bit definitions 2013-11-17 17:26:54 -05:00