From: <pa...@us...> - 2008-01-30 14:58:54
|
Revision: 3503 http://fuse-emulator.svn.sourceforge.net/fuse-emulator/?rev=3503&view=rev Author: pak21 Date: 2008-01-30 06:58:55 -0800 (Wed, 30 Jan 2008) Log Message: ----------- Add command to exit emulator. Modified Paths: -------------- trunk/fuse/debugger/commandl.l trunk/fuse/debugger/commandy.y trunk/fuse/debugger/debugger.c trunk/fuse/debugger/debugger_internals.h trunk/fuse/hacking/ChangeLog Modified: trunk/fuse/debugger/commandl.l =================================================================== --- trunk/fuse/debugger/commandl.l 2008-01-29 10:23:33 UTC (rev 3502) +++ trunk/fuse/debugger/commandl.l 2008-01-30 14:58:55 UTC (rev 3503) @@ -56,6 +56,7 @@ del|dele|delet|delete { return DEBUGGER_DELETE; } di|dis|disa|disas|disass|disasse|disassm|disassmb|diasassmbl|disassemble { return DISASSEMBLE; } +ex|exi|exit { return EXIT; } fi|fin|fini|finis|finish { return FINISH; } if { return IF; } i|ig|ign|igno|ignor|ignore { return DEBUGGER_IGNORE; } Modified: trunk/fuse/debugger/commandy.y =================================================================== --- trunk/fuse/debugger/commandy.y 2008-01-29 10:23:33 UTC (rev 3502) +++ trunk/fuse/debugger/commandy.y 2008-01-30 14:58:55 UTC (rev 3503) @@ -75,6 +75,7 @@ %token CONTINUE %token DEBUGGER_DELETE %token DISASSEMBLE +%token EXIT %token FINISH %token IF %token DEBUGGER_IGNORE @@ -156,6 +157,7 @@ | DEBUGGER_DELETE { debugger_breakpoint_remove_all(); } | DEBUGGER_DELETE number { debugger_breakpoint_remove( $2 ); } | DISASSEMBLE number { ui_debugger_disassemble( $2 ); } + | EXIT { debugger_exit_emulator(); } | FINISH { debugger_breakpoint_exit(); } | DEBUGGER_IGNORE NUMBER number { debugger_breakpoint_ignore( $2, $3 ); Modified: trunk/fuse/debugger/debugger.c =================================================================== --- trunk/fuse/debugger/debugger.c 2008-01-29 10:23:33 UTC (rev 3502) +++ trunk/fuse/debugger/debugger.c 2008-01-30 14:58:55 UTC (rev 3503) @@ -28,6 +28,7 @@ #include "debugger.h" #include "debugger_internals.h" #include "event.h" +#include "fuse.h" #include "memory.h" #include "periph.h" #include "ui/ui.h" @@ -146,3 +147,11 @@ writeport_internal( port, value ); return 0; } + +/* Exit the emulator */ +void +debugger_exit_emulator( void ) +{ + fuse_exiting = 1; + debugger_run(); +} Modified: trunk/fuse/debugger/debugger_internals.h =================================================================== --- trunk/fuse/debugger/debugger_internals.h 2008-01-29 10:23:33 UTC (rev 3502) +++ trunk/fuse/debugger/debugger_internals.h 2008-01-30 14:58:55 UTC (rev 3503) @@ -43,6 +43,8 @@ void debugger_register_set( int which, libspectrum_word value ); const char* debugger_register_text( int which ); +void debugger_exit_emulator( void ); + /* Utility functions called by the flex scanner */ int debugger_command_input( char *buf, int *result, int max_size ); Modified: trunk/fuse/hacking/ChangeLog =================================================================== --- trunk/fuse/hacking/ChangeLog 2008-01-29 10:23:33 UTC (rev 3502) +++ trunk/fuse/hacking/ChangeLog 2008-01-30 14:58:55 UTC (rev 3503) @@ -2434,3 +2434,5 @@ win32ui.c,Makefile.am}: add a keyboard help dialog for the Win32 UI (Marek Januszewski). 20080118 ui/win32/picture.c: swap red and blue colour components (Stuart). +20080130 debugger/{commandl.l,commandy.y,debugger.c,debugger_internals.h}: + add command to exit emulator. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |