- [FIX] Meimades per a que es calle el compilaor al dir-li -Wall - [NEW] Reestructurats els simbols, 6502dis probablement acabe desapareguent - [NEW] Reactivats els breakpoints i next (pas a pas sense entrar en subrutines) - [NEW] Nou motor de desensamblat - [NEW] Ja es mostren tots els simbols en el desensamblat - [NEW] Syntax colorets en el desensamblat
77 lines
1.9 KiB
C++
77 lines
1.9 KiB
C++
#pragma once
|
|
#include <stdint.h>
|
|
|
|
namespace m6502debugger
|
|
{
|
|
#define MEMTAG_NONE 0x00
|
|
#define MEMTAG_DATA 0x01
|
|
#define MEMTAG_INST 0x02
|
|
#define MEMTAG_CODE 0x04
|
|
#define MEMTAG_IGNORE 0x08
|
|
#define MEMTAG_TDATA 0x10
|
|
#define MEMTAG_TINST 0x20
|
|
#define MEMTAG_TREPEAT 0x40
|
|
#define MEMTAG_MODIFIED 0x80
|
|
|
|
#define MEMTAG_KNOWN 0x07
|
|
#define MEMTAG_TOUCHED 0x70
|
|
|
|
#define BREAKPOINT_EXECUTE 0x01
|
|
#define BREAKPOINT_READ 0x02
|
|
#define BREAKPOINT_WRITE 0x04
|
|
#define BREAKPOINT_NEXT 0x08
|
|
|
|
uint8_t getTag(uint16_t address);
|
|
void setTag(uint16_t address, uint8_t value);
|
|
|
|
void onInstructionExecute(uint16_t address);
|
|
void onMemRead(uint16_t address, bool code=false);
|
|
void onMemWrite(uint16_t address);
|
|
|
|
void init();
|
|
void show();
|
|
void focus();
|
|
void hide();
|
|
|
|
void pause();
|
|
void stop();
|
|
void cont();
|
|
void setmemmodified(const uint16_t addr);
|
|
|
|
void refresh();
|
|
void sendToConsole(const char* text);
|
|
void sendToConsoleLog(const char *text);
|
|
void sendMoreToConsoleLog(const char *text);
|
|
void DeleteCharConsole();
|
|
void executeConsole();
|
|
|
|
const bool isbreak(const uint16_t address, const uint8_t type=1);
|
|
uint32_t next();
|
|
uint32_t stepout();
|
|
|
|
void savestate(const char *filename);
|
|
void loadstate(const char *filename);
|
|
|
|
void loadngo(const char* filename, const char* addr);
|
|
|
|
void setcursor(const uint16_t address);
|
|
void cursorfwd();
|
|
void cursorback();
|
|
|
|
void useOpcode(const uint8_t opcode, const uint8_t base);
|
|
void clearUsedOpcodes();
|
|
void markUsedOpcodes();
|
|
const int getNumOpcodesUsed();
|
|
void printOpcodesUsed();
|
|
|
|
void search(const char *seq=nullptr);
|
|
namespace history
|
|
{
|
|
void reset();
|
|
void store();
|
|
void gototop();
|
|
void goforward();
|
|
void goback();
|
|
}
|
|
}
|