2003-05-20 Theodore A. Roth
* src/gdb.h: Add irq_raise method to struct GdbComm. * src/gdbserver.c: Catch signals >= 96 and translate into irq triggers. * src/main.c: Set irq_raise method to avr_core_irq_raise. Index: src/gdb.h =================================================================== RCS file: /cvsroot/simulavr/simulavr/src/gdb.h,v retrieving revision 1.10 diff -u -r1.10 gdb.h --- src/gdb.h 4 Mar 2003 21:54:31 -0000 1.10 +++ src/gdb.h 20 May 2003 18:27:48 -0000 @@ -60,6 +60,8 @@ typedef void (*CommFuncIORegFetch) (void *user_data, int addr, byte *val, char *reg_name, size_t reg_name_size); +typedef void (*CommFuncIrqRaise) (void *user_data, int irq); + /* This structure allows the target to supply handler functions to the gdb interact for performing various tasks. */ @@ -95,6 +97,8 @@ CommFuncReset reset; CommFuncIORegFetch io_fetch; + + CommFuncIrqRaise irq_raise; }; extern void gdb_interact( GdbComm_T *comm, int port, int debug_on ); Index: src/gdbserver.c =================================================================== RCS file: /cvsroot/simulavr/simulavr/src/gdbserver.c,v retrieving revision 1.38 diff -u -r1.38 gdbserver.c --- src/gdbserver.c 4 Mar 2003 21:54:31 -0000 1.38 +++ src/gdbserver.c 20 May 2003 18:27:48 -0000 @@ -1017,6 +1017,17 @@ comm->reset( comm->user_data ); gdb_send_reply( fd, "S05" ); return; + default: + /* Gdb user issuing the 'signal