debug macro adjustments to separate what is printed in DEBUG mode

This commit is contained in:
Kenneth J Davis 2025-03-28 19:57:59 -04:00
parent 7fd6a6b71b
commit 654e7b7a6c
No known key found for this signature in database
GPG Key ID: 59D5F216C38F11FD
3 changed files with 47 additions and 46 deletions

View File

@ -76,7 +76,7 @@ VOID panic(BYTE * s);
/* #define DEBUGIRQ */ /* #define DEBUGIRQ */
/* show output related to moving kernel into HMA */ /* show output related to moving kernel into HMA */
#ifdef DEBUG #ifdef DEBUGHMA
#define HMAInitPrintf(x) DebugPrintf(x) #define HMAInitPrintf(x) DebugPrintf(x)
#else #else
#define HMAInitPrintf(x) #define HMAInitPrintf(x)
@ -128,14 +128,23 @@ VOID panic(BYTE * s);
/* debug truename */ /* debug truename */
#ifdef DEBUG #ifdef DEBUG
#ifndef DEBUG_TRUENAME
#define DEBUG_TRUENAME #define DEBUG_TRUENAME
#endif #endif
#endif
#ifdef DEBUG_TRUENAME #ifdef DEBUG_TRUENAME
#define tn_printf(x) DebugPrintf(x) #define tn_printf(x) DebugPrintf(x)
#else #else
#define tn_printf(x) #define tn_printf(x)
#endif #endif
/* debug task/process creation */
#ifdef DEBUGTASK
#define ProcDbgPrintf(x) DebugPrintf(x)
#else
#define ProcDbgPrintf(x)
#endif
/* ensure printf is prototyped */ /* ensure printf is prototyped */
#if defined(DEBUG) || defined(DEBUGIRQ) || defined(DEBUGCFG) || \ #if defined(DEBUG) || defined(DEBUGIRQ) || defined(DEBUGCFG) || \

View File

@ -30,13 +30,9 @@
#include "portab.h" #include "portab.h"
#include "init-mod.h" #include "init-mod.h"
#include "dyndata.h" #include "dyndata.h"
#include "debug.h"
#ifdef DEBUG
#define DebugPrintf(x) printf x
#else
#define DebugPrintf(x)
#endif
#define para2far(seg) ((mcb FAR *)MK_FP((seg), 0)) #define para2far(seg) ((mcb FAR *)MK_FP((seg), 0))
/** /**
@ -338,7 +334,7 @@ void PreConfig(void)
{ {
/* Initialize the base memory pointers */ /* Initialize the base memory pointers */
DebugPrintf(("SDA located at 0x%p\n", internal_data)); CfgDbgPrintf(("SDA located at 0x%p\n", internal_data));
/* Begin by initializing our system buffers */ /* Begin by initializing our system buffers */
/* DebugPrintf(("Preliminary %d buffers allocated at 0x%p\n", Config.cfgBuffers, buffers));*/ /* DebugPrintf(("Preliminary %d buffers allocated at 0x%p\n", Config.cfgBuffers, buffers));*/
@ -352,14 +348,14 @@ void PreConfig(void)
LoL->CDSp = KernelAlloc(sizeof(struct cds) * LoL->lastdrive, 'L', 0); LoL->CDSp = KernelAlloc(sizeof(struct cds) * LoL->lastdrive, 'L', 0);
/* DebugPrintf((" FCB table 0x%p\n",LoL->FCBp));*/ /* CfgDbgPrintf((" FCB table 0x%p\n",LoL->FCBp));*/
DebugPrintf((" sft table 0x%p\n", LoL->sfthead)); CfgDbgPrintf((" sft table 0x%p\n", LoL->sfthead));
DebugPrintf((" CDS table 0x%p\n", LoL->CDSp)); CfgDbgPrintf((" CDS table 0x%p\n", LoL->CDSp));
DebugPrintf((" DPB table 0x%p\n", LoL->DPBp)); CfgDbgPrintf((" DPB table 0x%p\n", LoL->DPBp));
/* Done. Now initialize the MCB structure */ /* Done. Now initialize the MCB structure */
/* This next line is 8086 and 80x86 real mode specific */ /* This next line is 8086 and 80x86 real mode specific */
DebugPrintf(("Preliminary allocation completed: top at %p\n", lpTop)); CfgDbgPrintf(("Preliminary allocation completed: top at %p\n", lpTop));
} }
/* Do second pass initialization: near allocation and MCBs */ /* Do second pass initialization: near allocation and MCBs */
@ -425,7 +421,7 @@ void PostConfig(void)
if (LoL->lastdrive < LoL->nblkdev) if (LoL->lastdrive < LoL->nblkdev)
LoL->lastdrive = LoL->nblkdev; LoL->lastdrive = LoL->nblkdev;
DebugPrintf(("starting FAR allocations at %x\n", base_seg)); CfgDbgPrintf(("starting FAR allocations at %x\n", base_seg));
/* Begin by initializing our system buffers */ /* Begin by initializing our system buffers */
/* dma_scratch = (BYTE FAR *) KernelAllocDma(BUFFERSIZE); */ /* dma_scratch = (BYTE FAR *) KernelAllocDma(BUFFERSIZE); */
@ -446,10 +442,10 @@ void PostConfig(void)
LoL->CDSp = KernelAlloc(sizeof(struct cds) * LoL->lastdrive, 'L', Config.cfgLastdriveHigh); LoL->CDSp = KernelAlloc(sizeof(struct cds) * LoL->lastdrive, 'L', Config.cfgLastdriveHigh);
/* DebugPrintf((" FCB table 0x%p\n",LoL->FCBp));*/ /* CfgDbgPrintf((" FCB table 0x%p\n",LoL->FCBp));*/
DebugPrintf((" sft table 0x%p\n", LoL->sfthead->sftt_next)); CfgDbgPrintf((" sft table 0x%p\n", LoL->sfthead->sftt_next));
DebugPrintf((" CDS table 0x%p\n", LoL->CDSp)); CfgDbgPrintf((" CDS table 0x%p\n", LoL->CDSp));
DebugPrintf((" DPB table 0x%p\n", LoL->DPBp)); CfgDbgPrintf((" DPB table 0x%p\n", LoL->DPBp));
if (Config.cfgStacks) if (Config.cfgStacks)
{ {
@ -458,9 +454,9 @@ void PostConfig(void)
Config.cfgStacksHigh); Config.cfgStacksHigh);
init_stacks(stackBase, Config.cfgStacks, Config.cfgStackSize); init_stacks(stackBase, Config.cfgStacks, Config.cfgStackSize);
DebugPrintf(("Stacks allocated at %p\n", stackBase)); CfgDbgPrintf(("Stacks allocated at %p\n", stackBase));
} }
DebugPrintf(("Allocation completed: top at 0x%x\n", base_seg)); CfgDbgPrintf(("Allocation completed: top at 0x%x\n", base_seg));
} }
@ -483,12 +479,12 @@ VOID configDone(VOID)
p->m_name[1] = 'C'; p->m_name[1] = 'C';
p->m_psp = 8; p->m_psp = 8;
DebugPrintf(("HMA not available, moving text to %x\n", kernel_seg)); CfgDbgPrintf(("HMA not available, moving text to %x\n", kernel_seg));
MoveKernel(kernel_seg); MoveKernel(kernel_seg);
kernel_seg += hma_paras + 1; kernel_seg += hma_paras + 1;
DebugPrintf(("kernel is low, start alloc at %x", kernel_seg)); CfgDbgPrintf(("kernel is low, start alloc at %x\n", kernel_seg));
} }
/* The standard handles should be reopened here, because /* The standard handles should be reopened here, because
@ -590,7 +586,7 @@ STATIC void umb_init(void)
} }
para2far(umb_max)->m_size++; para2far(umb_max)->m_size++;
para2far(umb_max)->m_type = MCB_LAST; para2far(umb_max)->m_type = MCB_LAST;
DebugPrintf(("UMB Allocation completed: start at 0x%x\n", umb_base_seg)); CfgDbgPrintf(("UMB Allocation completed: start at 0x%x\n", umb_base_seg));
} }
} }
@ -830,11 +826,11 @@ VOID DoConfig(int nPass)
if (mdsk != NULL) if (mdsk != NULL)
{ {
printf("MEMDISK version %u.%02u (%lu sectors)\n", mdsk->version, mdsk->version_minor, mdsk->size); printf("MEMDISK version %u.%02u (%lu sectors)\n", mdsk->version, mdsk->version_minor, mdsk->size);
DebugPrintf(("MEMDISK args:{%S}\n", mdsk->cmdline)); CfgDbgPrintf(("MEMDISK args:{%S}\n", mdsk->cmdline));
} }
else else
{ {
DebugPrintf(("MEMDISK not detected!\n")); CfgDbgPrintf(("MEMDISK not detected!\n"));
} }
#endif #endif
} }
@ -871,10 +867,10 @@ VOID DoConfig(int nPass)
for (ii = 0; configcommands[ii].pointer != NULL; ++ii) { for (ii = 0; configcommands[ii].pointer != NULL; ++ii) {
if (**configcommands[ii].pointer != '\0') { if (**configcommands[ii].pointer != '\0') {
if ((nFileDesc = open(*configcommands[ii].pointer, 0)) >= 0) { if ((nFileDesc = open(*configcommands[ii].pointer, 0)) >= 0) {
DebugPrintf(("Reading \"%s\"...\n", *configcommands[ii].pointer)); CfgDbgPrintf(("Reading \"%s\"...\n", *configcommands[ii].pointer));
break; break;
} else { } else {
DebugPrintf(("\"%s\" not found\n", *configcommands[ii].pointer)); CfgDbgPrintf(("\"%s\" not found\n", *configcommands[ii].pointer));
} }
} }
} }
@ -955,7 +951,7 @@ VOID DoConfig(int nPass)
continue; continue;
} }
DebugPrintf(("CONFIG=[%s]\n", szLine)); CfgDbgPrintf(("CONFIG=[%s]\n", szLine));
/* Skip leading white space and get verb. */ /* Skip leading white space and get verb. */
pLine = scan(szLine, szBuf, 1); pLine = scan(szLine, szBuf, 1);
@ -1828,7 +1824,7 @@ STATIC BOOL LoadDevice(BYTE * pLine, char FAR *top, COUNT mode)
/* The device driver is paragraph aligned. */ /* The device driver is paragraph aligned. */
eb.load.reloc = eb.load.load_seg = base; eb.load.reloc = eb.load.load_seg = base;
DebugPrintf(("Loading device driver %s at segment %04x\n", szBuf, base)); CfgDbgPrintf(("Loading device driver %s at segment %04x\n", szBuf, base));
if ((result = init_DosExec(3, &eb, szBuf)) != SUCCESS) if ((result = init_DosExec(3, &eb, szBuf)) != SUCCESS)
{ {
@ -1923,7 +1919,7 @@ void FAR * KernelAllocPara(size_t nPara, char type, char *name, int mode)
} }
/* create the special DOS data MCB if it doesn't exist yet */ /* create the special DOS data MCB if it doesn't exist yet */
DebugPrintf(("kernelallocpara: %x %x %x %c %d\n", start, base, nPara, type, mode)); CfgDbgPrintf(("kernelallocpara: %x %x %x %c %d\n", start, base, nPara, type, mode));
if (base == start) if (base == start)
{ {
@ -2178,8 +2174,8 @@ STATIC void config_init_buffers(int wantedbuffers)
LoL->deblock_buf = DiskTransferBuffer; LoL->deblock_buf = DiskTransferBuffer;
LoL->firstbuf = pbuffer; LoL->firstbuf = pbuffer;
DebugPrintf(("init_buffers (size %u) at", sizeof(struct buffer))); CfgDbgPrintf(("init_buffers (size %u) at", sizeof(struct buffer)));
DebugPrintf((" (%p)", LoL->firstbuf)); CfgDbgPrintf((" (%p)", LoL->firstbuf));
buffers--; buffers--;
pbuffer->b_prev = FP_OFF(pbuffer + buffers); pbuffer->b_prev = FP_OFF(pbuffer + buffers);
@ -2201,7 +2197,7 @@ STATIC void config_init_buffers(int wantedbuffers)
but not if the BUFFERS count is negative ;-) but not if the BUFFERS count is negative ;-)
*/ */
DebugPrintf((" done\n")); CfgDbgPrintf((" done\n"));
if (FP_SEG(pbuffer) == 0xffff) if (FP_SEG(pbuffer) == 0xffff)
{ {

View File

@ -144,7 +144,7 @@ STATIC COUNT ChildEnv(exec_blk * exp, UWORD * pChildEnvSeg, char far * pathname)
/* create a new environment for the process */ /* create a new environment for the process */
/* copy parent's environment if exec.env_seg == 0 */ /* copy parent's environment if exec.env_seg == 0 */
DebugPrintf(("ChildEnv: environment block is %u, using %s\n", exp->exec.env_seg, (exp->exec.env_seg)?"exec_blk":"parent_blk")); ProcDbgPrintf(("ChildEnv: environment block is %u, using %s\n", exp->exec.env_seg, (exp->exec.env_seg)?"exec_blk":"parent_blk"));
pSrc = exp->exec.env_seg ? pSrc = exp->exec.env_seg ?
MK_FP(exp->exec.env_seg, 0) : MK_FP(ppsp->ps_environ, 0); MK_FP(exp->exec.env_seg, 0) : MK_FP(ppsp->ps_environ, 0);
@ -181,13 +181,13 @@ STATIC COUNT ChildEnv(exec_blk * exp, UWORD * pChildEnvSeg, char far * pathname)
Note: we must allocate at least 1 paragraph (16 bytes) for empty environment Note: we must allocate at least 1 paragraph (16 bytes) for empty environment
+ ENV_KEEPFREE for argv[0] (program name) + ENV_KEEPFREE for argv[0] (program name)
*/ */
DebugPrintf(("PriPathName is %lu bytes\n", sizeof(PriPathName))); /* ProcDbgPrintf(("PriPathName is %lu bytes\n", sizeof(PriPathName))); */
assert(sizeof(PriPathName)+3==ENV_KEEPFREE); assert(sizeof(PriPathName)+3==ENV_KEEPFREE);
if ((RetCode = DosMemAlloc((nEnvSize + ENV_KEEPFREE + 15)/16, if ((RetCode = DosMemAlloc((nEnvSize + ENV_KEEPFREE + 15)/16,
mem_access_mode, pChildEnvSeg, mem_access_mode, pChildEnvSeg,
NULL /*(UWORD FAR *) MaxEnvSize ska */ )) < 0) NULL /*(UWORD FAR *) MaxEnvSize ska */ )) < 0)
{ {
DebugPrintf(("Error alloc Env space\n")); ProcDbgPrintf(("Error alloc Env space\n"));
return RetCode; return RetCode;
} }
pDest = MK_FP(*pChildEnvSeg + 1, 0); /* skip past MCB and set pDest to start of env block */ pDest = MK_FP(*pChildEnvSeg + 1, 0); /* skip past MCB and set pDest to start of env block */
@ -211,10 +211,10 @@ STATIC COUNT ChildEnv(exec_blk * exp, UWORD * pChildEnvSeg, char far * pathname)
/* copy complete pathname */ /* copy complete pathname */
if ((RetCode = truename(pathname, PriPathName, CDS_MODE_SKIP_PHYSICAL)) < SUCCESS) if ((RetCode = truename(pathname, PriPathName, CDS_MODE_SKIP_PHYSICAL)) < SUCCESS)
{ {
DebugPrintf(("Failed to get truename for env argv0\n")); ProcDbgPrintf(("Failed to get truename for env argv0\n"));
return RetCode; return RetCode;
} }
DebugPrintf(("ChildEnv for [%s]\n", PriPathName)); ProcDbgPrintf(("ChildEnv for [%s]\n", PriPathName));
fstrcpy(pDest, PriPathName); fstrcpy(pDest, PriPathName);
/* Theoretically one could either: /* Theoretically one could either:
@ -487,7 +487,7 @@ COUNT DosComLoader(BYTE FAR * namep, exec_blk * exp, COUNT mode, COUNT fd)
rc = ChildEnv(exp, &env, namep); rc = ChildEnv(exp, &env, namep);
#if DEBUG #if DEBUG
if (rc != SUCCESS) DebugPrintf(("Failed to create ChildEnv\n")); if (rc != SUCCESS) { ProcDbgPrintf(("Failed to create ChildEnv\n")); }
#endif #endif
/* COMFILES will always be loaded in largest area. is that true TE */ /* COMFILES will always be loaded in largest area. is that true TE */
@ -519,9 +519,7 @@ COUNT DosComLoader(BYTE FAR * namep, exec_blk * exp, COUNT mode, COUNT fd)
mem = exp->load.load_seg; mem = exp->load.load_seg;
} }
#ifdef DEBUG ProcDbgPrintf(("DosComLoader. Loading '%S' at %04x\n", namep, mem));
printf("DosComLoader. Loading '%S' at %04x\n", namep, mem);
#endif
/* Now load the executable */ /* Now load the executable */
{ {
BYTE FAR *sp; BYTE FAR *sp;
@ -670,7 +668,7 @@ COUNT DosExeLoader(BYTE FAR * namep, exec_blk * exp, COUNT mode, COUNT fd)
rc = ChildEnv(exp, &env, namep); rc = ChildEnv(exp, &env, namep);
#if DEBUG #if DEBUG
if (rc != SUCCESS) DebugPrintf(("Failed to create ChildEnv\n")); if (rc != SUCCESS) { ProcDbgPrintf(("Failed to create ChildEnv\n")); }
#endif #endif
if (rc == SUCCESS) if (rc == SUCCESS)
@ -708,9 +706,7 @@ COUNT DosExeLoader(BYTE FAR * namep, exec_blk * exp, COUNT mode, COUNT fd)
mode &= 0x7f; /* forget about high loading from now on */ mode &= 0x7f; /* forget about high loading from now on */
#ifdef DEBUG ProcDbgPrintf(("DosExeLoader. Loading '%S' at %04x\n", namep, mem));
printf("DosExeLoader. Loading '%S' at %04x\n", namep, mem);
#endif
/* memory found large enough - continue processing */ /* memory found large enough - continue processing */
++mem; ++mem;
@ -909,7 +905,7 @@ VOID ASMCFUNC P_0(struct config FAR *Config)
exb.exec.cmd_line = (CommandTail *)(tailp + 1); exb.exec.cmd_line = (CommandTail *)(tailp + 1);
exb.exec.cmd_line->ctCount = endp - tailp - 2; exb.exec.cmd_line->ctCount = endp - tailp - 2;
#ifdef DEBUG #ifdef DEBUG
printf("Process 0 starting: %s%s\n\n", Shell, tailp + 2); DebugPrintf(("Process 0 starting: %s%s\n\n", Shell, tailp + 2));
#endif #endif
res_DosExec(mode, &exb, Shell); res_DosExec(mode, &exb, Shell);
put_string("Bad or missing Command Interpreter: "); /* failure _or_ exit */ put_string("Bad or missing Command Interpreter: "); /* failure _or_ exit */