SCP: Move sim_ library debug masks to all be high bits

This is to allow DEVICE defined debug masks to start using the low bits
in the 32 bit debug mask and avoid collisions with library defined values.
This commit is contained in:
Mark Pizzolato 2019-01-23 15:17:19 -08:00
parent 183a8aab60
commit 2f8fca49c6
6 changed files with 36 additions and 31 deletions

Binary file not shown.

29
scp.c
View file

@ -323,13 +323,13 @@
else if ((sim_switch_number >= 2) && (sim_switch_number <= 36)) val = sim_switch_number; \
else val = dft;
#define SIM_DBG_EVENT 0x01000000 /* event dispatch activities */
#define SIM_DBG_ACTIVATE 0x02000000 /* queue insertion activities */
#define SIM_DBG_AIO_QUEUE 0x04000000 /* asynch event queue activities */
#define SIM_DBG_EXP_STACK 0x08000000 /* expression stack activities */
#define SIM_DBG_EXP_EVAL 0x10000000 /* expression evaluation activities */
#define SIM_DBG_BRK_ACTION 0x20000000 /* action activities */
#define SIM_DBG_DO 0x40000000 /* do activities */
#define SIM_DBG_EVENT 0x02000000 /* event dispatch activities */
#define SIM_DBG_ACTIVATE 0x04000000 /* queue insertion activities */
#define SIM_DBG_AIO_QUEUE 0x08000000 /* asynch event queue activities */
#define SIM_DBG_EXP_STACK 0x10000000 /* expression stack activities */
#define SIM_DBG_EXP_EVAL 0x20000000 /* expression evaluation activities */
#define SIM_DBG_BRK_ACTION 0x40000000 /* action activities */
#define SIM_DBG_DO 0x80000000 /* do activities */
static DEBTAB scp_debug[] = {
{"EVENT", SIM_DBG_EVENT, "Event Dispatch Activities"},
@ -6676,12 +6676,13 @@ return SCPE_OK;
t_stat sim_add_debug_flags (DEVICE *dptr, DEBTAB *debflags)
{
dptr->flags |= DEV_DEBUG;
if (!dptr->debflags)
dptr->debflags = debflags;
if (!dptr->debflags) /* Current flags available */
dptr->debflags = debflags; /* No, so just use new flags table */
else {
DEBTAB *cdptr, *sdptr, *ndptr;
for (sdptr = debflags; sdptr->name; sdptr++) {
/* Find a new mask value that isn't in the existing table yet */
for (cdptr = dptr->debflags; cdptr->name; cdptr++) {
if (sdptr->mask == cdptr->mask)
break;
@ -6690,19 +6691,23 @@ else {
int i, dcount = 0;
for (cdptr = dptr->debflags; cdptr->name; cdptr++)
dcount++;
dcount++; /* Count current table size */
for (cdptr = debflags; cdptr->name; cdptr++)
dcount++;
dcount++; /* Count new table size */
/* Allocate enough to hold both plus the list end */
ndptr = (DEBTAB *)calloc (1 + dcount, sizeof (*ndptr));
/* Copy current table to new array */
for (dcount = 0, cdptr = dptr->debflags; cdptr->name; cdptr++)
ndptr[dcount++] = *cdptr;
/* for each element of the new list */
for (cdptr = debflags; cdptr->name; cdptr++) {
/* check if new mask value */
for (i = 0; i < dcount; i++) {
if (cdptr->mask == ndptr[i].mask)
break;
}
if (i == dcount)
ndptr[dcount++] = *cdptr;
ndptr[dcount++] = *cdptr; /* add new value to list */
}
dptr->debflags = ndptr;
break;

View file

@ -68,7 +68,7 @@ extern "C" {
#define SIM_CARD_API 2 /* API Version */
#define DEBUG_CARD 0x0000010 /* Show details */
#define DEBUG_CARD 0x80000000 /* Show details */
/* Flags for punch and reader. */
#define UNIT_V_CARD_MODE (UNIT_V_UF + 0)

View file

@ -151,9 +151,9 @@ typedef void (*TAPE_PCALLBACK)(UNIT *unit, t_stat status);
/* Tape Internal Debug flags */
#define MTSE_DBG_DAT 0x0400000 /* Debug Data */
#define MTSE_DBG_POS 0x0800000 /* Debug Positioning activities */
#define MTSE_DBG_STR 0x1000000 /* Debug Tape Structure */
#define MTSE_DBG_DAT 0x20000000 /* Debug Data */
#define MTSE_DBG_POS 0x40000000 /* Debug Positioning activities */
#define MTSE_DBG_STR 0x80000000 /* Debug Tape Structure */
/* Prototypes */

View file

@ -66,17 +66,17 @@ typedef struct SERPORT *SERHANDLE;
#define TMXR_MODEM_RING_TIME 3 /* seconds to wait for DTR for incoming connections */
#define TMXR_DEFAULT_CONNECT_POLL_INTERVAL 1 /* seconds between connection polls */
#define TMXR_DBG_XMT 0x0010000 /* Debug Transmit Data */
#define TMXR_DBG_RCV 0x0020000 /* Debug Received Data */
#define TMXR_DBG_RET 0x0040000 /* Debug Returned Received Data */
#define TMXR_DBG_MDM 0x0080000 /* Debug Modem Signals */
#define TMXR_DBG_CON 0x0100000 /* Debug Connection Activities */
#define TMXR_DBG_ASY 0x0200000 /* Debug Asynchronous Activities */
#define TMXR_DBG_TRC 0x0400000 /* Debug trace routine calls */
#define TMXR_DBG_PXMT 0x0800000 /* Debug Transmit Packet Data */
#define TMXR_DBG_PRCV 0x1000000 /* Debug Received Packet Data */
#define TMXR_DBG_EXP 0x2000000 /* Debug Expect Activities */
#define TMXR_DBG_SEND 0x4000000 /* Debug Send Activities */
#define TMXR_DBG_XMT 0x00200000 /* Debug Transmit Data */
#define TMXR_DBG_RCV 0x00400000 /* Debug Received Data */
#define TMXR_DBG_RET 0x00800000 /* Debug Returned Received Data */
#define TMXR_DBG_MDM 0x01000000 /* Debug Modem Signals */
#define TMXR_DBG_CON 0x02000000 /* Debug Connection Activities */
#define TMXR_DBG_ASY 0x04000000 /* Debug Asynchronous Activities */
#define TMXR_DBG_TRC 0x08000000 /* Debug trace routine calls */
#define TMXR_DBG_PXMT 0x10000000 /* Debug Transmit Packet Data */
#define TMXR_DBG_PRCV 0x20000000 /* Debug Received Packet Data */
#define TMXR_DBG_EXP 0x40000000 /* Debug Expect Activities */
#define TMXR_DBG_SEND 0x80000000 /* Debug Send Activities */
/* Modem Control Bits */

View file

@ -213,10 +213,10 @@ void vid_set_cursor_position (int32 x, int32 y); /* cursor position (set
*/
extern int (*vid_display_kb_event_process)(SIM_KEY_EVENT *kev);
#define SIM_VID_DBG_MOUSE 0x01000000
#define SIM_VID_DBG_CURSOR 0x02000000
#define SIM_VID_DBG_KEY 0x04000000
#define SIM_VID_DBG_VIDEO 0x08000000
#define SIM_VID_DBG_MOUSE 0x10000000
#define SIM_VID_DBG_CURSOR 0x20000000
#define SIM_VID_DBG_KEY 0x40000000
#define SIM_VID_DBG_VIDEO 0x80000000
#ifdef __cplusplus
}