Hugo Villeneuve [Mon, 7 Apr 2014 03:46:40 +0000 (23:46 -0400)]
Convert to automake gnits option
Hugo Villeneuve [Mon, 7 Apr 2014 03:10:23 +0000 (23:10 -0400)]
Fix Makefile.am indentation
Hugo Villeneuve [Mon, 7 Apr 2014 03:03:24 +0000 (23:03 -0400)]
Convert to LIBTOOL
Hugo Villeneuve [Mon, 7 Apr 2014 02:39:56 +0000 (22:39 -0400)]
Add option -Wno-extra-portability to AM_INIT_AUTOMAKE
To get rid of warning:
linking libraries using a non-POSIX archiver requires 'AM_PROG_AR'...
Hugo Villeneuve [Mon, 7 Apr 2014 02:36:16 +0000 (22:36 -0400)]
Add option no-define to AM_INIT_AUTOMAKE
No need to define all variables on the compiler command line since
they are already defined in the config.h header file.
Hugo Villeneuve [Mon, 7 Apr 2014 02:27:48 +0000 (22:27 -0400)]
Put automake macros together
Hugo Villeneuve [Sat, 22 Mar 2014 18:24:24 +0000 (14:24 -0400)]
emu8051 2.0.1
Hugo Villeneuve [Mon, 17 Mar 2014 01:25:17 +0000 (21:25 -0400)]
Convert manpage to UTF-8
Hugo Villeneuve [Tue, 18 Feb 2014 03:58:44 +0000 (22:58 -0500)]
Add tests for CLI version commands
Hugo Villeneuve [Sun, 16 Feb 2014 07:33:11 +0000 (02:33 -0500)]
Do not display registers at CLI version startup
This is to help testing the "dr" command, to be able to match
default register values.
Hugo Villeneuve [Sun, 16 Feb 2014 06:51:47 +0000 (01:51 -0500)]
Add proper error checking in asciihex2int functions
Hugo Villeneuve [Sat, 15 Feb 2014 23:07:29 +0000 (18:07 -0500)]
Dont exit in case of hexfile reading failure
Hugo Villeneuve [Sat, 15 Feb 2014 06:43:32 +0000 (01:43 -0500)]
Replace disam.h with opcodes{h,c}
Also rename opcode2c.pl -> opcodes2c.pl
Hugo Villeneuve [Sat, 15 Feb 2014 05:35:27 +0000 (00:35 -0500)]
Fix comment after cleanup
Hugo Villeneuve [Thu, 13 Feb 2014 05:52:19 +0000 (00:52 -0500)]
Fix splint warnings
Hugo Villeneuve [Thu, 13 Feb 2014 05:38:22 +0000 (00:38 -0500)]
Fix C99 standard types uintN_t
Hugo Villeneuve [Thu, 13 Feb 2014 05:37:58 +0000 (00:37 -0500)]
Remove unused header file includes
Hugo Villeneuve [Thu, 13 Feb 2014 05:23:51 +0000 (00:23 -0500)]
Fix test script to work in external build directory
Hugo Villeneuve [Thu, 13 Feb 2014 04:46:44 +0000 (23:46 -0500)]
Shorten memory_ functions prefix to mem_ in memory.c
Hugo Villeneuve [Thu, 13 Feb 2014 04:16:18 +0000 (23:16 -0500)]
Fix checkpatch warnings
Hugo Villeneuve [Thu, 13 Feb 2014 04:05:26 +0000 (23:05 -0500)]
Move memory read functions to memory.c
Fix warnings given by checkpatch.pl
Hugo Villeneuve [Thu, 13 Feb 2014 03:21:15 +0000 (22:21 -0500)]
Fix auto-generated C source files indentation
Hugo Villeneuve [Wed, 12 Feb 2014 04:30:16 +0000 (23:30 -0500)]
Remove unnecessary column in opcodes.lst
Begin to cleanup Perl code
Hugo Villeneuve [Wed, 12 Feb 2014 04:00:34 +0000 (23:00 -0500)]
Remove duplicate code for disassembly
Hugo Villeneuve [Wed, 12 Feb 2014 02:54:49 +0000 (21:54 -0500)]
Fix checkpatch warnings
Hugo Villeneuve [Tue, 11 Feb 2014 07:31:11 +0000 (02:31 -0500)]
Shorten GPLv2 licence text in header of each source file
Hugo Villeneuve [Mon, 10 Feb 2014 05:48:48 +0000 (00:48 -0500)]
Add up to 4 emulator timers
Hugo Villeneuve [Mon, 10 Feb 2014 04:47:58 +0000 (23:47 -0500)]
Rename DumpMem function -> memory_dump
Hugo Villeneuve [Mon, 10 Feb 2014 04:26:33 +0000 (23:26 -0500)]
Add more error checking for CLI version arguments
Hugo Villeneuve [Mon, 10 Feb 2014 01:35:26 +0000 (20:35 -0500)]
Cleanup help menu
Hugo Villeneuve [Sat, 8 Feb 2014 07:40:54 +0000 (02:40 -0500)]
Add support for GNU readline
readline input is fed into Lex.
This adds commands history.
There is also a configure option to disable readline support.
Hugo Villeneuve [Sat, 8 Feb 2014 06:02:14 +0000 (01:02 -0500)]
Rename CLI and GUI versions main source files
Hugo Villeneuve [Fri, 7 Feb 2014 04:00:10 +0000 (23:00 -0500)]
Allow hex numbers to begin with 0x or $ prefix in scanner
Hugo Villeneuve [Thu, 6 Feb 2014 03:24:19 +0000 (22:24 -0500)]
Allow to set all SFR registers in CLI version
Hugo Villeneuve [Thu, 6 Feb 2014 03:02:43 +0000 (22:02 -0500)]
Add new value range check when writing register in CLI version
The GUI version also had this check, so the functionality has been merged.
Hugo Villeneuve [Mon, 27 Jan 2014 00:59:34 +0000 (19:59 -0500)]
Convert CLI version input parsing to Lex/Yacc
Some error checking is still missing, but all commands seem to be
working correctly.
Update CLI help menu.
Hugo Villeneuve [Mon, 27 Jan 2014 01:09:26 +0000 (20:09 -0500)]
Remove address parameter from RUN and TRACE CLI commands
Also automatically display register contents after each RUN operation.
Hugo Villeneuve [Sun, 26 Jan 2014 23:33:32 +0000 (18:33 -0500)]
Add general-purpose timer to CLI
Also add command to reset it.
Hugo Villeneuve [Sun, 26 Jan 2014 23:23:11 +0000 (18:23 -0500)]
Add better error checking when loading invalid hex files
Also replaced custom error message box with standard one.
Hugo Villeneuve [Sun, 26 Jan 2014 22:52:21 +0000 (17:52 -0500)]
Refactor hex loading code
Merged two identical code portions that validated the checksum.
Also added better debug messages.
Hugo Villeneuve [Sun, 26 Jan 2014 22:50:52 +0000 (17:50 -0500)]
Allow EM command to be specified without arguments
In this case, program will run from the current PC address until a breakpoint
is reached.
Hugo Villeneuve [Sun, 26 Jan 2014 20:28:36 +0000 (15:28 -0500)]
Move macro definition to top of file
Hugo Villeneuve [Sun, 26 Jan 2014 20:23:48 +0000 (15:23 -0500)]
Use log functions to display errors
Hugo Villeneuve [Sun, 26 Jan 2014 20:09:20 +0000 (15:09 -0500)]
Fix error when specifying start address in CLI version
Start address was specified as "0x0000", but need to be "0000".
Hugo Villeneuve [Sun, 26 Jan 2014 05:25:48 +0000 (00:25 -0500)]
Add square root regression test
Hugo Villeneuve [Sun, 26 Jan 2014 04:39:27 +0000 (23:39 -0500)]
Return error for test files without any validation condition
Hugo Villeneuve [Sat, 25 Jan 2014 23:56:10 +0000 (18:56 -0500)]
Do not display eror message when simply pressing return in CLI version
Before was displaying message "Syntax error".
Hugo Villeneuve [Sat, 25 Jan 2014 22:38:50 +0000 (17:38 -0500)]
Add general-purpose timer to GUI
This timer is not part of the 8051 hardware. It is a free running
timer/counter added as a mean to quickly measure delays in instruction
cyles.
For now, it is implemented only in GUI version.
Hugo Villeneuve [Fri, 24 Jan 2014 01:01:03 +0000 (20:01 -0500)]
Add documentation about regression testing
Hugo Villeneuve [Fri, 24 Jan 2014 00:45:14 +0000 (19:45 -0500)]
Remove display of command line options in GUI mode
The information message was manually edited, which creates synchronization
problems now that we are using argp to manage our options.
Hugo Villeneuve [Fri, 24 Jan 2014 00:15:39 +0000 (19:15 -0500)]
Simplify options parsing code
Hugo Villeneuve [Wed, 15 Jan 2014 03:20:07 +0000 (22:20 -0500)]
emu8051 2.0.0
Hugo Villeneuve [Tue, 21 Jan 2014 05:05:32 +0000 (00:05 -0500)]
Remove dynamic update of GUI layout
The application must restarted for the changes to take effect.
Added a message for telling this to the user.
Hugo Villeneuve [Tue, 21 Jan 2014 04:59:14 +0000 (23:59 -0500)]
Improve view/hide of memory windows
Do not restart whole GUI, just update vpaned containing
the two memory scroll windows.
Hugo Villeneuve [Tue, 21 Jan 2014 03:23:30 +0000 (22:23 -0500)]
Remove deprecated view->sfr-window option
Hugo Villeneuve [Fri, 17 Jan 2014 04:22:46 +0000 (23:22 -0500)]
Fix error when toggling memory display viewing on/off
Only the first two rows were displayed. The crc_init variable
was not handled correctly.
Hugo Villeneuve [Wed, 15 Jan 2014 03:53:46 +0000 (22:53 -0500)]
Remove autogen.sh from distribution tarball
Hugo Villeneuve [Wed, 15 Jan 2014 03:53:08 +0000 (22:53 -0500)]
ChangeLog is now automatically generated from git log output
Hugo Villeneuve [Tue, 14 Jan 2014 05:23:10 +0000 (00:23 -0500)]
Fix compilation warning
Hugo Villeneuve [Tue, 14 Jan 2014 05:19:59 +0000 (00:19 -0500)]
Refactor memwin.c for internal and external memories
Hugo Villeneuve [Tue, 14 Jan 2014 04:43:46 +0000 (23:43 -0500)]
Change confusing variable name bits_per_row to bytes_per_row
Hugo Villeneuve [Tue, 14 Jan 2014 04:07:41 +0000 (23:07 -0500)]
Improve performance of GUI step operations
Use CRC to detect which memory rows have changed.
This is only to improve GUI performance when using stepping mode, as we then
only update rows which have been modified.
Hugo Villeneuve [Tue, 14 Jan 2014 03:40:56 +0000 (22:40 -0500)]
Set external memory size default to 256
Hugo Villeneuve [Sat, 11 Jan 2014 22:26:25 +0000 (17:26 -0500)]
Set program memory size default to 65536
Before was set to 8192.
To make sure to not cause problems with bigger programs, or with small
programs that are split accross large memory regions.
Hugo Villeneuve [Sat, 11 Jan 2014 22:24:23 +0000 (17:24 -0500)]
Create common function for running instructions
Hugo Villeneuve [Fri, 3 Jan 2014 08:19:32 +0000 (03:19 -0500)]
Fix warning for ignored return value for getline()
Hugo Villeneuve [Fri, 3 Jan 2014 08:18:02 +0000 (03:18 -0500)]
Fix [-Wsign-compare] warnings
Original warning message:
emuconsole.c:45:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
Hugo Villeneuve [Fri, 3 Jan 2014 07:57:16 +0000 (02:57 -0500)]
Merge ADD and ADDC operations into common function
Hugo Villeneuve [Fri, 3 Jan 2014 07:37:18 +0000 (02:37 -0500)]
Fix code indentation
Hugo Villeneuve [Fri, 3 Jan 2014 07:36:17 +0000 (02:36 -0500)]
Fix error with ADDC instruction
The carry flag was not added to the result.
Hugo Villeneuve [Fri, 3 Jan 2014 07:33:32 +0000 (02:33 -0500)]
Add tests for ADD and ADDC instructions
Hugo Villeneuve [Fri, 3 Jan 2014 06:45:47 +0000 (01:45 -0500)]
Fix [-Wformat-security] warning
Original warning message:
emuconsole.c:316:3: warning: format not a string literal and no format arguments [-Wformat-security]
Hugo Villeneuve [Fri, 3 Jan 2014 06:43:55 +0000 (01:43 -0500)]
Fix warnings about unused function parameters
Hugo Villeneuve [Fri, 3 Jan 2014 06:37:20 +0000 (01:37 -0500)]
Fix [-Wmissing-field-initializers] warnings
Hugo Villeneuve [Fri, 3 Jan 2014 06:32:19 +0000 (01:32 -0500)]
Fix regression with ADDC instruction
Introduced when refactoring code with psw_set_ov() function.
Hugo Villeneuve [Fri, 3 Jan 2014 06:56:37 +0000 (01:56 -0500)]
Add additional compile warning flags
Also changed way that warning flags are defined in autoconf files.
Hugo Villeneuve [Wed, 11 Dec 2013 04:05:32 +0000 (23:05 -0500)]
Move git ignore file list to build-aux
Hugo Villeneuve [Wed, 11 Dec 2013 03:34:09 +0000 (22:34 -0500)]
Remove configure cache directory after running autoreconf
Hugo Villeneuve [Sat, 7 Dec 2013 23:48:25 +0000 (18:48 -0500)]
Separate cli and gtk sources into separate directories
Also added a common directory to hold common files to both interfaces,
and compiled into a static library.
Hugo Villeneuve [Sat, 7 Dec 2013 23:50:39 +0000 (18:50 -0500)]
Remove obsolescent macro AM_PROG_CC_C_O
Anthony Liu [Thu, 5 Dec 2013 15:59:42 +0000 (23:59 +0800)]
Improve interrupt trigger code readability
Anthony Liu [Thu, 5 Dec 2013 15:48:36 +0000 (23:48 +0800)]
Fix bug when processing interrupts
Push current PC onto stack and take vector address from parameter.
Hugo Villeneuve [Tue, 3 Dec 2013 02:59:30 +0000 (21:59 -0500)]
Add support for as504 assembler, with output file option
Patch is available here:
http://www.hugovil.com/repository/hvlinux/patches/as504-add-output-file-option.patch
This patch is usefull because it fixes a bug when testing the distribution
in a separate build directory like when using:
make distcheck
configure.ac automatically detects if as504 supports the option.
Hugo Villeneuve [Tue, 3 Dec 2013 02:18:44 +0000 (21:18 -0500)]
Add support for as504 assembler
Hugo Villeneuve [Mon, 2 Dec 2013 04:33:18 +0000 (23:33 -0500)]
Fix bug when using separate build directory to create symbolic link
Hugo Villeneuve [Mon, 2 Dec 2013 04:31:51 +0000 (23:31 -0500)]
Replace CALL by LCALL for compatibility with AS31 and AS504 assemblers
Hugo Villeneuve [Mon, 2 Dec 2013 04:02:09 +0000 (23:02 -0500)]
Remove CSEG directive for compatibility with AS31 and AS504 assemblers
Hugo Villeneuve [Mon, 2 Dec 2013 02:20:49 +0000 (21:20 -0500)]
Remove currently unsupported option to set iram size
Hugo Villeneuve [Thu, 28 Nov 2013 04:02:18 +0000 (23:02 -0500)]
Fix CPPFLAGS for each target (CLI and GTK)
Hugo Villeneuve [Mon, 2 Dec 2013 01:06:29 +0000 (20:06 -0500)]
Change way tests are enabled/disabled by asem presence
Hugo Villeneuve [Fri, 29 Nov 2013 04:11:43 +0000 (23:11 -0500)]
Run each test separately from single shell script
Each new test is simply a link to opcodes.sh, generatated automatically.
Hugo Villeneuve [Thu, 28 Nov 2013 01:56:05 +0000 (20:56 -0500)]
Move timer functions to timers.c
Hugo Villeneuve [Thu, 28 Nov 2013 01:55:21 +0000 (20:55 -0500)]
Add tests for timers mode 2
Hugo Villeneuve [Wed, 27 Nov 2013 05:17:30 +0000 (00:17 -0500)]
Change test output expected string layout
Also check stack pointer value for all tests
Hugo Villeneuve [Wed, 27 Nov 2013 05:16:45 +0000 (00:16 -0500)]
Add tests for timers mode 0
Hugo Villeneuve [Wed, 27 Nov 2013 05:09:40 +0000 (00:09 -0500)]
Fix bug with timers mode 0 (8 bits with 5-bit prescaler)
Hugo Villeneuve [Wed, 27 Nov 2013 04:38:36 +0000 (23:38 -0500)]
Add tests for timers mode 1
Hugo Villeneuve [Wed, 27 Nov 2013 03:54:08 +0000 (22:54 -0500)]
Fix error with timer1 being written to timer0
Hugo Villeneuve [Wed, 27 Nov 2013 04:39:17 +0000 (23:39 -0500)]
Add PC check for all tests
Hugo Villeneuve [Mon, 25 Nov 2013 04:20:18 +0000 (23:20 -0500)]
Add tests for MOV instruction