emu8051.git
11 years agoFix bug with MOV DPTR,#data16 instruction
Hugo Villeneuve [Mon, 18 Nov 2013 00:52:46 +0000 (19:52 -0500)]
Fix bug with MOV DPTR,#data16 instruction

Source variable was 8 bits instead of 16 bits.

11 years agoRemove unused destination adressing mode #data16
Hugo Villeneuve [Mon, 18 Nov 2013 00:50:28 +0000 (19:50 -0500)]
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.

11 years agoMake MUL and DIV use generic source/destination variables
Hugo Villeneuve [Sun, 17 Nov 2013 23:48:26 +0000 (18:48 -0500)]
Make MUL and DIV use generic source/destination variables

To remove confusing commented code and compilation warning

11 years agoRefactor perl code to write C source code line
Hugo Villeneuve [Sun, 17 Nov 2013 23:16:56 +0000 (18:16 -0500)]
Refactor perl code to write C source code line

11 years agoRefactor perl code to write file header
Hugo Villeneuve [Sun, 17 Nov 2013 22:51:56 +0000 (17:51 -0500)]
Refactor perl code to write file header

11 years agoAdd overflow and auxiliary carry flags manipulation functions
Hugo Villeneuve [Sun, 17 Nov 2013 22:02:10 +0000 (17:02 -0500)]
Add overflow and auxiliary carry flags manipulation functions

11 years agoSimplify carry bit set/clr functions
Hugo Villeneuve [Sun, 17 Nov 2013 21:19:52 +0000 (16:19 -0500)]
Simplify carry bit set/clr functions

11 years agoAdd carry bit definitions
Hugo Villeneuve [Sun, 17 Nov 2013 19:29:25 +0000 (14:29 -0500)]
Add carry bit definitions

11 years agoMove PSW bit manipulation functions to psw.c
Hugo Villeneuve [Sun, 17 Nov 2013 19:03:12 +0000 (14:03 -0500)]
Move PSW bit manipulation functions to psw.c

11 years agoAdd carry flag manipulation functions
Hugo Villeneuve [Sun, 17 Nov 2013 18:47:20 +0000 (13:47 -0500)]
Add carry flag manipulation functions

11 years agoAdd stack push/pop functions
Hugo Villeneuve [Sat, 16 Nov 2013 19:22:20 +0000 (14:22 -0500)]
Add stack push/pop functions

11 years agoAdd DPTR read/write functions
Hugo Villeneuve [Mon, 11 Nov 2013 04:16:33 +0000 (23:16 -0500)]
Add DPTR read/write functions

11 years agoAdd comment about reset value of stack pointer
Hugo Villeneuve [Sat, 16 Nov 2013 21:39:51 +0000 (16:39 -0500)]
Add comment about reset value of stack pointer

11 years agoFix error with ADD instruction and AC bit
Hugo Villeneuve [Sun, 17 Nov 2013 22:03:19 +0000 (17:03 -0500)]
Fix error with ADD instruction and AC bit

The overflow bit was written instead of the auxiliary carry bit.

11 years agoFix bug with ANL instruction
Hugo Villeneuve [Sun, 17 Nov 2013 20:18:19 +0000 (15:18 -0500)]
Fix bug with ANL instruction

11 years agoFix bug with ORL instruction
Hugo Villeneuve [Sun, 17 Nov 2013 20:08:39 +0000 (15:08 -0500)]
Fix bug with ORL instruction

11 years agoFix error with JMP @A,DPTR instruction
Hugo Villeneuve [Mon, 4 Nov 2013 15:27:10 +0000 (10:27 -0500)]
Fix error with JMP @A,DPTR instruction

The resulting jump address is simply the sum of the values in the accumulator
and the DPTR registers, not the indirect read of that sum.

Error reported and fixed by Anthony (antliu at gmail.com).

11 years agoFix error with RETI instruction
Hugo Villeneuve [Mon, 4 Nov 2013 15:16:04 +0000 (10:16 -0500)]
Fix error with RETI instruction

The stack pointer was not updated correctly.

Error reported and fixed by Anthony (antliu at gmail.com).

11 years agoAdd view menu option to view/hide SFR memory dump window
Hugo Villeneuve [Thu, 31 Oct 2013 00:51:11 +0000 (20:51 -0400)]
Add view menu option to view/hide SFR memory dump window

11 years agoAdd support to view/hide SFR memory dump window in config file
Hugo Villeneuve [Thu, 31 Oct 2013 00:49:21 +0000 (20:49 -0400)]
Add support to view/hide SFR memory dump window in config file

11 years agoUpdate TODO
Hugo Villeneuve [Thu, 10 Oct 2013 01:10:10 +0000 (21:10 -0400)]
Update TODO

11 years agoRefactor code to create memory windows
Hugo Villeneuve [Thu, 31 Oct 2013 01:41:09 +0000 (21:41 -0400)]
Refactor code to create memory windows

11 years agoRefactor log functions
Hugo Villeneuve [Mon, 28 Oct 2013 04:13:14 +0000 (00:13 -0400)]
Refactor log functions

11 years agoAdd option to specify maximum pgm memory size
Hugo Villeneuve [Mon, 28 Oct 2013 02:46:52 +0000 (22:46 -0400)]
Add option to specify maximum pgm memory size

11 years agoRefactor code to read/write different memory types
Hugo Villeneuve [Mon, 28 Oct 2013 02:48:24 +0000 (22:48 -0400)]
Refactor code to read/write different memory types

Dynamic memory buffers allocation depending on sizes specified with command-line
options.

Add future support for separate IRAM and SFR buffers.

11 years agoRename macros for maximum memory sizes
Hugo Villeneuve [Mon, 28 Oct 2013 02:28:03 +0000 (22:28 -0400)]
Rename macros for maximum memory sizes

11 years agoLimit default external memory size to 1024 bytes
Hugo Villeneuve [Mon, 28 Oct 2013 02:26:43 +0000 (22:26 -0400)]
Limit default external memory size to 1024 bytes

Emulator is running very slow if external memory is at its maximum of 64K.

11 years agoFix syntax error in comment
Hugo Villeneuve [Fri, 25 Oct 2013 01:25:54 +0000 (21:25 -0400)]
Fix syntax error in comment

11 years agoDo not reset emulator on file load (no ram clear)
Hugo Villeneuve [Thu, 24 Oct 2013 03:32:00 +0000 (23:32 -0400)]
Do not reset emulator on file load (no ram clear)

Reset only when loading first file at application startup.

11 years agoAdd Timers 0 and 1 to SFR window
Hugo Villeneuve [Thu, 24 Oct 2013 03:07:34 +0000 (23:07 -0400)]
Add Timers 0 and 1 to SFR window

11 years agoAdd option to specify maximum memory sizes
Hugo Villeneuve [Wed, 23 Oct 2013 03:16:35 +0000 (23:16 -0400)]
Add option to specify maximum memory sizes

11 years agoAdd view menu option to enable/disable IRAM/XRAM windows
Hugo Villeneuve [Wed, 23 Oct 2013 02:56:02 +0000 (22:56 -0400)]
Add view menu option to enable/disable IRAM/XRAM windows

11 years agoAdd view menu option for selecting bits per row (8/16)
Hugo Villeneuve [Tue, 22 Oct 2013 03:04:16 +0000 (23:04 -0400)]
Add view menu option for selecting bits per row (8/16)

11 years agoAdd support for bits per row in config file
Hugo Villeneuve [Tue, 22 Oct 2013 02:57:28 +0000 (22:57 -0400)]
Add support for bits per row in config file

Also add support for viewing internal and external memory windows
in config file.

These 3 new variables are not yet connected (TODO).

11 years agoAdd live option to change windows layout
Hugo Villeneuve [Tue, 22 Oct 2013 02:36:40 +0000 (22:36 -0400)]
Add live option to change windows layout

Restart UI when changing layout. This is working, altough the main window
temporarily disapear in doing so.

11 years agoUse fixed font for ASCII column
Hugo Villeneuve [Mon, 21 Oct 2013 02:18:53 +0000 (22:18 -0400)]
Use fixed font for ASCII column

11 years agoAlign memory data columns text on left side
Hugo Villeneuve [Mon, 21 Oct 2013 02:12:19 +0000 (22:12 -0400)]
Align memory data columns text on left side

11 years agoAdjust memory index column header according to number of data columns
Hugo Villeneuve [Mon, 21 Oct 2013 02:09:50 +0000 (22:09 -0400)]
Adjust memory index column header according to number of data columns

11 years agoHarmonize windows refresh function names
Hugo Villeneuve [Mon, 21 Oct 2013 01:46:07 +0000 (21:46 -0400)]
Harmonize windows refresh function names

11 years agoSave vpane position for memory windows
Hugo Villeneuve [Mon, 21 Oct 2013 01:33:40 +0000 (21:33 -0400)]
Save vpane position for memory windows

11 years agoAdd external memory window vpaned_mem
Hugo Villeneuve [Mon, 21 Oct 2013 01:13:22 +0000 (21:13 -0400)]
Add external memory window vpaned_mem

11 years agoConvert memwin to display internal or external memory
Hugo Villeneuve [Mon, 21 Oct 2013 00:44:56 +0000 (20:44 -0400)]
Convert memwin to display internal or external memory

11 years agoUse single function to refresh all windows
Hugo Villeneuve [Mon, 21 Oct 2013 00:46:07 +0000 (20:46 -0400)]
Use single function to refresh all windows

Use emugtk_UpdateDisplay() to replace individual calls to these functions:
  regwin_Show();
  memwin_DumpD();
  pgmwin_Disasm();

11 years agoCode cleanup (tree view store init)
Hugo Villeneuve [Fri, 18 Oct 2013 00:37:14 +0000 (20:37 -0400)]
Code cleanup (tree view store init)

11 years agoIncrease dissassembled instructions lines from 24 to 100
Hugo Villeneuve [Thu, 17 Oct 2013 21:17:03 +0000 (17:17 -0400)]
Increase dissassembled instructions lines from 24 to 100

11 years agoAdd red color for current instruction in pgmwin
Hugo Villeneuve [Thu, 17 Oct 2013 21:09:11 +0000 (17:09 -0400)]
Add red color for current instruction in pgmwin

11 years agoRefresh pgmwin after modifying regwin (PC)
Hugo Villeneuve [Thu, 17 Oct 2013 02:25:37 +0000 (22:25 -0400)]
Refresh pgmwin after modifying regwin (PC)

11 years agoAdd offset address to memwin dump header
Hugo Villeneuve [Thu, 17 Oct 2013 02:23:01 +0000 (22:23 -0400)]
Add offset address to memwin dump header

11 years agoRemove address parameter when dumping memwin
Hugo Villeneuve [Thu, 17 Oct 2013 02:21:46 +0000 (22:21 -0400)]
Remove address parameter when dumping memwin

11 years agoRefactor code for memwin and pgmwin modify
Hugo Villeneuve [Thu, 17 Oct 2013 01:56:32 +0000 (21:56 -0400)]
Refactor code for memwin and pgmwin modify

Add common functions int2asciihex and asciihex2int

11 years agoRegisters window can now be edited
Hugo Villeneuve [Sat, 12 Oct 2013 03:26:50 +0000 (23:26 -0400)]
Registers window can now be edited

11 years agoRefresh register window after any memory modification
Hugo Villeneuve [Wed, 16 Oct 2013 20:17:42 +0000 (16:17 -0400)]
Refresh register window after any memory modification

Banked registers R0 to R7 depend on internal memory content.

11 years agoMemory window can now be edited
Hugo Villeneuve [Sat, 12 Oct 2013 02:45:14 +0000 (22:45 -0400)]
Memory window can now be edited

11 years agoReplace macro EMU8051_DEBUG with logging functions
Hugo Villeneuve [Fri, 11 Oct 2013 03:08:00 +0000 (23:08 -0400)]
Replace macro EMU8051_DEBUG with logging functions

11 years agoReplace custom command-line options processing with argp
Hugo Villeneuve [Thu, 10 Oct 2013 02:31:14 +0000 (22:31 -0400)]
Replace custom command-line options processing with argp

11 years agoAdd debug log functions
Hugo Villeneuve [Thu, 10 Oct 2013 02:29:04 +0000 (22:29 -0400)]
Add debug log functions

11 years agoReplace custom help->about dialog with gtk_show_about_dialog
Hugo Villeneuve [Thu, 10 Oct 2013 01:51:31 +0000 (21:51 -0400)]
Replace custom help->about dialog with gtk_show_about_dialog

11 years agoAdd web site url and bug report email to AC_INIT
Hugo Villeneuve [Thu, 10 Oct 2013 01:50:35 +0000 (21:50 -0400)]
Add web site url and bug report email to AC_INIT

11 years agoAct as if reset was pressed if no hex file is specified at startup
Hugo Villeneuve [Thu, 10 Oct 2013 01:01:21 +0000 (21:01 -0400)]
Act as if reset was pressed if no hex file is specified at startup

11 years agoReplace GTK deprecated functions
Hugo Villeneuve [Thu, 10 Oct 2013 00:54:05 +0000 (20:54 -0400)]
Replace GTK deprecated functions

gtk_signal_connect_object -> g_signal_connect
gtk_menu_bar_append -> gtk_menu_shell_append

Also simplified ShowMessage function.

11 years agoReplace deprecated gtk_clist (pgmwin)
Hugo Villeneuve [Wed, 9 Oct 2013 02:34:03 +0000 (22:34 -0400)]
Replace deprecated gtk_clist (pgmwin)

11 years agoReplace deprecated gtk_clist (regwin)
Hugo Villeneuve [Tue, 8 Oct 2013 05:08:00 +0000 (01:08 -0400)]
Replace deprecated gtk_clist (regwin)

11 years agoAdd title to memory window
Hugo Villeneuve [Mon, 7 Oct 2013 04:30:38 +0000 (00:30 -0400)]
Add title to memory window

11 years agoRefactor memory window ASCII display code section
Hugo Villeneuve [Mon, 7 Oct 2013 04:28:15 +0000 (00:28 -0400)]
Refactor memory window ASCII display code section

11 years agoRefactor memory window code section
Hugo Villeneuve [Mon, 7 Oct 2013 04:06:57 +0000 (00:06 -0400)]
Refactor memory window code section

11 years agoReplace deprecated gtk_clist (memwin)
Hugo Villeneuve [Thu, 12 Sep 2013 22:12:23 +0000 (18:12 -0400)]
Replace deprecated gtk_clist (memwin)

11 years agoReplace autogen custom commands with autoreconf
Hugo Villeneuve [Sun, 6 Oct 2013 02:30:48 +0000 (22:30 -0400)]
Replace autogen custom commands with autoreconf

11 years agoRename config to build-aux
Hugo Villeneuve [Sun, 6 Oct 2013 02:29:39 +0000 (22:29 -0400)]
Rename config to build-aux

11 years agoRemove unused configure option --enable-debug
Hugo Villeneuve [Sun, 6 Oct 2013 02:19:13 +0000 (22:19 -0400)]
Remove unused configure option --enable-debug

11 years agoRemove unused/commented code
Hugo Villeneuve [Sat, 5 Oct 2013 16:47:04 +0000 (12:47 -0400)]
Remove unused/commented code

11 years agoRemove superfluous function call gtk_widget_show_all() when creating menu
Hugo Villeneuve [Sat, 5 Oct 2013 16:46:10 +0000 (12:46 -0400)]
Remove superfluous function call gtk_widget_show_all() when creating menu

11 years agoRemove superfluous function WindowDestroyEvent
Hugo Villeneuve [Sat, 5 Oct 2013 16:45:29 +0000 (12:45 -0400)]
Remove superfluous function WindowDestroyEvent

11 years agoFix bug with children not resizing with main window
Hugo Villeneuve [Sat, 5 Oct 2013 16:42:51 +0000 (12:42 -0400)]
Fix bug with children not resizing with main window

11 years agoAdd Gtk windows diagram
Hugo Villeneuve [Fri, 4 Oct 2013 00:56:15 +0000 (20:56 -0400)]
Add Gtk windows diagram

Rename main_vbox -> vbox.

11 years agoAdd example configuration file
Hugo Villeneuve [Sun, 29 Sep 2013 20:47:01 +0000 (16:47 -0400)]
Add example configuration file

11 years agoSave paned positions and main window size to config file
Hugo Villeneuve [Wed, 2 Oct 2013 02:02:17 +0000 (22:02 -0400)]
Save paned positions and main window size to config file

11 years agoAdd support for saving UI settings to config file
Hugo Villeneuve [Sun, 29 Sep 2013 20:44:52 +0000 (16:44 -0400)]
Add support for saving UI settings to config file

11 years agoRename fixed_frame variable to scrollwin
Hugo Villeneuve [Tue, 1 Oct 2013 02:02:16 +0000 (22:02 -0400)]
Rename fixed_frame variable to scrollwin

11 years agoAdd vpaned to separate memory dump window
Hugo Villeneuve [Tue, 1 Oct 2013 01:58:59 +0000 (21:58 -0400)]
Add vpaned to separate memory dump window

11 years agoAdd hpaned to separate pgm and disassembly windows
Hugo Villeneuve [Sat, 28 Sep 2013 00:47:08 +0000 (20:47 -0400)]
Add hpaned to separate pgm and disassembly windows

11 years agoRemove obsolete gtksizes.h
Hugo Villeneuve [Wed, 2 Oct 2013 02:09:49 +0000 (22:09 -0400)]
Remove obsolete gtksizes.h

11 years agoEliminate all fixed size windows
Hugo Villeneuve [Tue, 1 Oct 2013 01:28:04 +0000 (21:28 -0400)]
Eliminate all fixed size windows

11 years agoAllow frames to expand and fill inside vbox and hbox
Hugo Villeneuve [Fri, 27 Sep 2013 22:40:10 +0000 (18:40 -0400)]
Allow frames to expand and fill inside vbox and hbox

11 years agoRemove fixed frame containing the 3 major windows
Hugo Villeneuve [Fri, 27 Sep 2013 22:30:38 +0000 (18:30 -0400)]
Remove fixed frame containing the 3 major windows

11 years agoReplace fixed frames with scrollable windows
Hugo Villeneuve [Thu, 12 Sep 2013 23:06:17 +0000 (19:06 -0400)]
Replace fixed frames with scrollable windows

Done for program, register and memory dump windows.

11 years agoReplace deprecated gtk_widget_set_usize()
Hugo Villeneuve [Tue, 10 Sep 2013 03:41:35 +0000 (23:41 -0400)]
Replace deprecated gtk_widget_set_usize()

11 years agoReplace deprecated gtk_menu_append()
Hugo Villeneuve [Wed, 11 Sep 2013 02:24:54 +0000 (22:24 -0400)]
Replace deprecated gtk_menu_append()

11 years agoReplace deprecated gtk_signal_connect()
Hugo Villeneuve [Mon, 9 Sep 2013 23:58:23 +0000 (19:58 -0400)]
Replace deprecated gtk_signal_connect()

11 years agoIncrease spacing between buttons
Hugo Villeneuve [Tue, 1 Oct 2013 00:54:21 +0000 (20:54 -0400)]
Increase spacing between buttons

11 years agoReplace deprecated functions for displaying pixmap buttons
Hugo Villeneuve [Mon, 9 Sep 2013 03:54:17 +0000 (23:54 -0400)]
Replace deprecated functions for displaying pixmap buttons

11 years agoReplace gtk_idle functions with g_idle equivalents
Hugo Villeneuve [Mon, 9 Sep 2013 03:36:35 +0000 (23:36 -0400)]
Replace gtk_idle functions with g_idle equivalents

11 years agoActivate gtk deprecated compilation flags
Hugo Villeneuve [Mon, 9 Sep 2013 03:35:32 +0000 (23:35 -0400)]
Activate gtk deprecated compilation flags

11 years agoRemember previous opened directory in file selection dialog
Hugo Villeneuve [Sun, 8 Sep 2013 14:15:27 +0000 (10:15 -0400)]
Remember previous opened directory in file selection dialog

11 years agoUse current working directory for initial file selection dialog
Hugo Villeneuve [Sun, 8 Sep 2013 02:03:08 +0000 (22:03 -0400)]
Use current working directory for initial file selection dialog

11 years agoReplace gtk_file_selection dialog with gtk_file_chooser
Hugo Villeneuve [Sun, 8 Sep 2013 13:35:23 +0000 (09:35 -0400)]
Replace gtk_file_selection dialog with gtk_file_chooser

Increase minimum gtk version to 2.4.0.

11 years agoRelease v1.1.2 v1.1.2
Hugo Villeneuve [Sun, 8 Sep 2013 02:03:39 +0000 (22:03 -0400)]
Release v1.1.2

11 years agoFix compiler warning (and potential bug) in auto-generated 8051 instructions
Hugo Villeneuve [Sun, 8 Sep 2013 15:05:23 +0000 (11:05 -0400)]
Fix compiler warning (and potential bug) in auto-generated 8051 instructions

Original warning:
  warning: operation on ‘cpu8051.pc’ may be undefined [-Wsequence-point]

11 years agoFix compiler warning about unused variable set by getline()
Hugo Villeneuve [Sun, 8 Sep 2013 14:41:57 +0000 (10:41 -0400)]
Fix compiler warning about unused variable set by getline()

11 years agoFix compiler warning about unused variable set by getch()
Hugo Villeneuve [Sun, 8 Sep 2013 14:40:21 +0000 (10:40 -0400)]
Fix compiler warning about unused variable set by getch()

11 years agoFix error with CJNE instruction
Hugo Villeneuve [Sat, 7 Sep 2013 22:10:27 +0000 (18:10 -0400)]
Fix error with CJNE instruction

When the comparison was true, the PC was advanced by 2 instead of 3 bytes.

Error reported and fixed by Tobias Diedrich (ranma at tdiedrich.de).