| version 1.1, 2003/12/08 00:55:31 | version 1.3, 2004/01/15 15:50:33 | 
| Line 68  memory_dump(int idx, DWORD madr) | Line 68  memory_dump(int idx, DWORD madr) | 
 | } | } | 
 | } | } | 
 |  |  | 
 |  | static const char *exception_str[EXCEPTION_NUM] = { | 
 |  | "DE_EXCEPTION", | 
 |  | "DB_EXCEPTION", | 
 |  | "NMI_EXCEPTION", | 
 |  | "BP_EXCEPTION", | 
 |  | "OF_EXCEPTION", | 
 |  | "BR_EXCEPTION", | 
 |  | "UD_EXCEPTION", | 
 |  | "NM_EXCEPTION", | 
 |  | "DF_EXCEPTION", | 
 |  | "CoProcesser Segment Overrun", | 
 |  | "TS_EXCEPTION", | 
 |  | "NP_EXCEPTION", | 
 |  | "SS_EXCEPTION", | 
 |  | "GP_EXCEPTION", | 
 |  | "PF_EXCEPTION", | 
 |  | "Reserved", | 
 |  | "MF_EXCEPTION", | 
 |  | "AC_EXCEPTION", | 
 |  | "MC_EXCEPTION", | 
 |  | "XF_EXCEPTION", | 
 |  | }; | 
 |  |  | 
 | static const int exctype[EXCEPTION_NUM] = { | static const int exctype[EXCEPTION_NUM] = { | 
 | 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 1, 1, 1, 2, 0, 0, 0, 0, 0, | 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 1, 1, 1, 2, 0, 0, 0, 0, 0, | 
 | }; | }; | 
| Line 84  exception(int num, int error_code) | Line 107  exception(int num, int error_code) | 
 | { | { | 
 | int errorp = 0; | int errorp = 0; | 
 |  |  | 
| VERBOSE(("exception: num = 0x%02x, error_code = %x", num, error_code)); | __ASSERT((unsigned int)num < EXCEPTION_NUM); | 
|  |  | 
|  | VERBOSE(("exception: %s, error_code = %x", exception_str[num], error_code)); | 
 |  |  | 
 | CPU_STAT_NERROR++; | CPU_STAT_NERROR++; | 
 | if ((CPU_STAT_NERROR >= 3) | if ((CPU_STAT_NERROR >= 3) | 
| Line 153  exception(int num, int error_code) | Line 178  exception(int num, int error_code) | 
 |  |  | 
 | INTERRUPT(num, FALSE, errorp, error_code); | INTERRUPT(num, FALSE, errorp, error_code); | 
 | CPU_STAT_NERROR = 0; | CPU_STAT_NERROR = 0; | 
 |  | #if defined(WIN32) | 
 |  | longjmp(exec_1step_jmpbuf, 1); | 
 |  | #else | 
 | siglongjmp(exec_1step_jmpbuf, 1); | siglongjmp(exec_1step_jmpbuf, 1); | 
 |  | #endif | 
 | } | } | 
 |  |  | 
 | /* | /* |