fs2port/port/include/portDebug.h

40 lines
1.5 KiB
C

// Diagnostic switches. Every environment variable the port reads is
// declared here so there is one list of what exists and what it does.
//
// SCENERY_REGION=<name> region for --screenshot (see sceneryDataRegionFromName)
// SCENERY_NTSC=1 display the hires bitplane with NTSC colour decode
// SCENERY_WALK_ALL=1 take both branches of every conditional opcode
// SCENERY_OP_TRACE=1 log every dispatched opcode and a summary
// SCENERY_DEMAND_TRACE=1 log every $0D HEADER demand-load
// SCENERY_DUMP_HIRES=1 write the hires page to tmp/port_hires.bin after --screenshot
// PORT_DRAW_DUMP=1 log every DrawColorLine in the MAME drawlist format
// PORT_FRAME_DUMP=1 log every $07/$24 frame setup
// PORT_HORIZON_DUMP=1 log the horizon polygon projection
// CHUNK5_TRACE=1 log every vertex transform and L631D evaluation
#ifndef PORT_DEBUG_H
#define PORT_DEBUG_H
#include <stdbool.h>
typedef enum PortDebugE {
PORT_DEBUG_NTSC,
PORT_DEBUG_WALK_ALL,
PORT_DEBUG_OP_TRACE,
PORT_DEBUG_DEMAND_TRACE,
PORT_DEBUG_DUMP_HIRES,
PORT_DEBUG_DRAW_DUMP,
PORT_DEBUG_FRAME_DUMP,
PORT_DEBUG_HORIZON_DUMP,
PORT_DEBUG_XFORM_TRACE,
PORT_DEBUG_WORK_TRACE,
PORT_DEBUG_COUNT
} PortDebugE;
// True when the flag's environment variable is set (cached on first use).
bool portDebugOn(PortDebugE flag);
// SCENERY_REGION value, or NULL when unset.
const char *portDebugRegion(void);
#endif