add some logging to debug
This commit is contained in:
115
win/tty/wintty.c
115
win/tty/wintty.c
@@ -179,6 +179,9 @@ STATIC_DCL boolean NDECL(reset_role_filtering);
|
|||||||
STATIC_DCL void FDECL(status_putstr, (winid, struct WinDesc *, const char *));
|
STATIC_DCL void FDECL(status_putstr, (winid, struct WinDesc *, const char *));
|
||||||
STATIC_DCL boolean FDECL(check_fields, (BOOLEAN_P));
|
STATIC_DCL boolean FDECL(check_fields, (BOOLEAN_P));
|
||||||
STATIC_DCL void NDECL(render_status);
|
STATIC_DCL void NDECL(render_status);
|
||||||
|
STATIC_DCL void FDECL(dump_tty_status, (const char *, int));
|
||||||
|
STATIC_DCL void FDECL(dump_display_status, (const char *, int,
|
||||||
|
struct WinDesc *, const char *));
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* A string containing all the default commands -- to add to a list
|
* A string containing all the default commands -- to add to a list
|
||||||
@@ -3403,6 +3406,31 @@ extern const char *status_fieldfmt[MAXBLSTATS];
|
|||||||
extern char *status_vals[MAXBLSTATS];
|
extern char *status_vals[MAXBLSTATS];
|
||||||
extern boolean status_activefields[MAXBLSTATS];
|
extern boolean status_activefields[MAXBLSTATS];
|
||||||
extern winid WIN_STATUS;
|
extern winid WIN_STATUS;
|
||||||
|
const char *fieldnames[] = {
|
||||||
|
"title",
|
||||||
|
"strength",
|
||||||
|
"dexterity",
|
||||||
|
"constitution",
|
||||||
|
"intelligence",
|
||||||
|
"wisdom",
|
||||||
|
"charisma",
|
||||||
|
"alignment",
|
||||||
|
"score",
|
||||||
|
"carrying-capacity",
|
||||||
|
"gold",
|
||||||
|
"power",
|
||||||
|
"power-max",
|
||||||
|
"experience-level",
|
||||||
|
"armor-class",
|
||||||
|
"HD",
|
||||||
|
"time",
|
||||||
|
"hunger",
|
||||||
|
"hitpoints",
|
||||||
|
"hitpoints-max",
|
||||||
|
"dungeon-level",
|
||||||
|
"experience",
|
||||||
|
"condition",
|
||||||
|
};
|
||||||
|
|
||||||
#ifdef STATUS_HILITES
|
#ifdef STATUS_HILITES
|
||||||
static int FDECL(condcolor, (long, unsigned long *));
|
static int FDECL(condcolor, (long, unsigned long *));
|
||||||
@@ -3509,6 +3537,9 @@ const char *str;
|
|||||||
str = nb - 2;
|
str = nb - 2;
|
||||||
}
|
}
|
||||||
nb = str;
|
nb = str;
|
||||||
|
if (iflags.debug.ttystatus)
|
||||||
|
dump_display_status("status_putstr (before)", st_fld, cw, str);
|
||||||
|
|
||||||
for (i = cw->curx + 1, n0 = cw->cols; i < n0; i++, nb++) {
|
for (i = cw->curx + 1, n0 = cw->cols; i < n0; i++, nb++) {
|
||||||
if (!*nb) {
|
if (!*nb) {
|
||||||
#ifndef STATUS_HILITES
|
#ifndef STATUS_HILITES
|
||||||
@@ -3539,6 +3570,8 @@ const char *str;
|
|||||||
if (*ob)
|
if (*ob)
|
||||||
ob++;
|
ob++;
|
||||||
}
|
}
|
||||||
|
if (iflags.debug.ttystatus)
|
||||||
|
dump_display_status("status_putsr (after)", st_fld, cw, str);
|
||||||
|
|
||||||
(void) strncpy(&cw->data[cw->cury][j], str, cw->cols - j - 1);
|
(void) strncpy(&cw->data[cw->cury][j], str, cw->cols - j - 1);
|
||||||
cw->data[cw->cury][cw->cols - 1] = '\0'; /* null terminate */
|
cw->data[cw->cury][cw->cols - 1] = '\0'; /* null terminate */
|
||||||
@@ -3654,7 +3687,11 @@ unsigned long *colormasks;
|
|||||||
tty_status[NOW][fldidx].lth += 2; /* [ and ] */
|
tty_status[NOW][fldidx].lth += 2; /* [ and ] */
|
||||||
if (fldidx == BL_GOLD)
|
if (fldidx == BL_GOLD)
|
||||||
tty_status[NOW][fldidx].lth -= 9; /* \GXXXXNNNN counts as 1 */
|
tty_status[NOW][fldidx].lth -= 9; /* \GXXXXNNNN counts as 1 */
|
||||||
|
|
||||||
|
/* debugging log */
|
||||||
|
if (iflags.debug.ttystatus)
|
||||||
|
dump_tty_status("tty_status_update", fldidx);
|
||||||
|
|
||||||
if (check_fields(force_update))
|
if (check_fields(force_update))
|
||||||
render_status();
|
render_status();
|
||||||
return;
|
return;
|
||||||
@@ -3703,10 +3740,22 @@ boolean forcefields;
|
|||||||
* Then, status_putstr() will see that flag setting
|
* Then, status_putstr() will see that flag setting
|
||||||
* and ensure that the tty cell content is updated.
|
* and ensure that the tty cell content is updated.
|
||||||
*/
|
*/
|
||||||
|
if (valid && iflags.debug.ttystatus) {
|
||||||
|
char buf[BUFSZ];
|
||||||
|
|
||||||
|
Sprintf(buf, "check_fields: forcefields=%s, name=%s\n"
|
||||||
|
"\t\t\"%s\"",
|
||||||
|
forcefields ? "TRUE" : "FALSE",
|
||||||
|
fieldnames[idx],
|
||||||
|
status_vals[idx]);
|
||||||
|
testinglog("ttystatus", buf, "");
|
||||||
|
}
|
||||||
|
|
||||||
if (forcefields || update_right
|
if (forcefields || update_right
|
||||||
|| tty_status[NOW][idx].color != tty_status[BEFORE][idx].color
|
|| tty_status[NOW][idx].color != tty_status[BEFORE][idx].color
|
||||||
|| tty_status[NOW][idx].attr != tty_status[BEFORE][idx].attr)
|
|| tty_status[NOW][idx].attr != tty_status[BEFORE][idx].attr)
|
||||||
tty_status[NOW][idx].redraw = TRUE;
|
tty_status[NOW][idx].redraw = TRUE;
|
||||||
|
if (iflags.debug.ttystatus) dump_tty_status("", idx);
|
||||||
col += tty_status[NOW][idx].lth;
|
col += tty_status[NOW][idx].lth;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3774,6 +3823,8 @@ render_status(VOID_ARGS)
|
|||||||
|
|
||||||
st_fld = fldidx; /* for status_putstr() */
|
st_fld = fldidx; /* for status_putstr() */
|
||||||
tty_curs(WIN_STATUS, x, y);
|
tty_curs(WIN_STATUS, x, y);
|
||||||
|
if (iflags.debug.ttystatus)
|
||||||
|
dump_tty_status("render_status (before)", st_fld);
|
||||||
if (st_fld == BL_CONDITION) {
|
if (st_fld == BL_CONDITION) {
|
||||||
/*
|
/*
|
||||||
* +-----------------+
|
* +-----------------+
|
||||||
@@ -3881,6 +3932,8 @@ render_status(VOID_ARGS)
|
|||||||
}
|
}
|
||||||
/* reset .redraw */
|
/* reset .redraw */
|
||||||
tty_status[NOW][st_fld].redraw = FALSE;
|
tty_status[NOW][st_fld].redraw = FALSE;
|
||||||
|
if (iflags.debug.ttystatus)
|
||||||
|
dump_tty_status("render_status (after)", st_fld);
|
||||||
/*
|
/*
|
||||||
* Make a copy of the entire tty_status struct for comparison
|
* Make a copy of the entire tty_status struct for comparison
|
||||||
* of current and previous.
|
* of current and previous.
|
||||||
@@ -3946,6 +3999,66 @@ unsigned long *bmarray;
|
|||||||
}
|
}
|
||||||
return attr;
|
return attr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
dump_display_status(descr, idx, cw, str)
|
||||||
|
const char *descr;
|
||||||
|
int idx;
|
||||||
|
struct WinDesc *cw;
|
||||||
|
const char *str;
|
||||||
|
{
|
||||||
|
boolean buf[BUFSZ];
|
||||||
|
const char *d2 = descr ? descr : "dump_Display_status";
|
||||||
|
|
||||||
|
Sprintf(buf,
|
||||||
|
"\t\t\"%s\"\n"
|
||||||
|
"\t\t%s = %d [%s], %s = %d, %s = %s\n"
|
||||||
|
"\t\t"
|
||||||
|
"%-17s = (%d,%d)\n"
|
||||||
|
"\t\t"
|
||||||
|
"%-17s = (%d,%d)\n"
|
||||||
|
"\t\t"
|
||||||
|
"%-17s = (%d,%d)\n",
|
||||||
|
str,
|
||||||
|
"idx", idx, fieldnames[idx],
|
||||||
|
"lth", tty_status[NOW][idx].lth,
|
||||||
|
"redraw",tty_status[NOW][idx].redraw ? "TRUE" : "FALSE",
|
||||||
|
"x,y", tty_status[NOW][idx].x, tty_status[NOW][idx].y,
|
||||||
|
"ttyDisplay->x,->y", ttyDisplay->curx, ttyDisplay->cury,
|
||||||
|
"cw->curx,->cury", cw->curx, cw->cury);
|
||||||
|
testinglog("ttystatus", d2, buf);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
dump_tty_status(descr, idx)
|
||||||
|
const char *descr;
|
||||||
|
int idx;
|
||||||
|
{
|
||||||
|
boolean buf[BUFSZ];
|
||||||
|
const char *d2 = descr ? descr : "dump_status";
|
||||||
|
|
||||||
|
Sprintf(buf,
|
||||||
|
"\t\t%-6s = %s\n"
|
||||||
|
"\t\t%-6s = %d\n"
|
||||||
|
"\t\t%-6s = %d\n"
|
||||||
|
"\t\t%-6s = %X\n"
|
||||||
|
"\t\t%-6s = %d,%d\n"
|
||||||
|
"\t\t%-6s = %d\n"
|
||||||
|
"\t\t%-6s = %s\n"
|
||||||
|
"\t\t%-6s = %s\n",
|
||||||
|
"name", fieldnames[idx],
|
||||||
|
"idx", idx,
|
||||||
|
"color", tty_status[NOW][idx].color,
|
||||||
|
"attr", tty_status[NOW][idx].attr,
|
||||||
|
"x,y", tty_status[NOW][idx].x, tty_status[NOW][idx].y,
|
||||||
|
"lth", tty_status[NOW][idx].lth,
|
||||||
|
"valid", tty_status[NOW][idx].valid ? "TRUE" : "FALSE",
|
||||||
|
"redraw",tty_status[NOW][idx].redraw ? "TRUE" : "FALSE");
|
||||||
|
testinglog("ttystatus", d2, buf);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
#endif /* STATUS_HILITES */
|
#endif /* STATUS_HILITES */
|
||||||
|
|
||||||
#endif /* TTY_GRAPHICS */
|
#endif /* TTY_GRAPHICS */
|
||||||
|
|||||||
Reference in New Issue
Block a user