more work on the command stream debugger

This commit is contained in:
tildearrow 2024-03-09 17:36:44 -05:00
parent 53ff3c2f70
commit 5dd62d45fa
3 changed files with 84 additions and 6 deletions

View file

@ -23,12 +23,15 @@
#include "defines.h"
#include "safeReader.h"
#define DIV_MAX_CSTRACE 64
class DivEngine;
struct DivCSChannelState {
unsigned int startPos;
unsigned int readPos;
int waitTicks;
int lastWaitLen;
int note, pitch;
int volume, volMax, volSpeed;
@ -39,11 +42,7 @@ struct DivCSChannelState {
unsigned int callStack[8];
unsigned char callStackPos;
struct TraceEntry {
unsigned int addr;
unsigned char length;
unsigned char data[11];
} trace[32];
unsigned int trace[DIV_MAX_CSTRACE];
unsigned char tracePos;
bool doCall(unsigned int addr);
@ -51,6 +50,7 @@ struct DivCSChannelState {
DivCSChannelState():
readPos(0),
waitTicks(0),
lastWaitLen(0),
note(-1),
pitch(0),
volume(0x7f00),
@ -64,7 +64,12 @@ struct DivCSChannelState {
arp(0),
arpStage(0),
arpTicks(0),
callStackPos(0) {}
callStackPos(0),
tracePos(0) {
for (int i=0; i<DIV_MAX_CSTRACE; i++) {
trace[i]=0;
}
}
};
class DivCSPlayer {