10#include "PeddleTypes.h"
11#include "PeddleUtils.h"
14namespace vc64::peddle {
19 friend class Debugger;
39 Disassembler(Peddle& ref);
46 void setNumberFormat(DasmNumberFormat instrFormat, DasmNumberFormat dataFormat);
47 void setNumberFormat(DasmNumberFormat format) { setNumberFormat(format, format); }
48 void setIndentation(
int value);
58 isize disass(
char *dst,
const char *fmt, u16 addr)
const;
59 isize disass(
char *dst,
const char *fmt,
const RecordedInstruction &instr)
const;
60 isize disass(
char *dst, u16 addr)
const;
61 isize disass(
char *dst,
const RecordedInstruction &instr)
const;
65 isize disass8(u8 value,
char *dst, isize tab)
const;
66 isize disass16(u16 value,
char *dst, isize tab)
const;
67 isize disassB(u8 byte1, u8 byte2, u8 byte3,
char *dst, isize tab)
const;
68 isize disassI(u16 addr, u8 byte1, u8 byte2, u8 byte3,
char *dst, isize tab)
const;
69 isize disassF(u8 flags,
char *dst, isize tab)
const;
74 isize disassemble(
char *str, u16 addr)
const;
75 isize disassemble(
char *str, u16 pc, u8 byte1, u8 byte2, u8 byte3)
const;
78 void disassembleFlags(
char *str, u8 sr)
const;
79 void disassembleFlags(
char *str)
const;
82 void dumpByte(
char *str, u8 value)
const;
83 void dumpWord(
char *str, u16 value)
const;
86 void dumpBytes(
char *str, u32 addr, isize cnt)
const;
87 void dumpBytes(
char *str, u8 values[], isize cnt)
const;
88 void dumpWords(
char *str, u32 addr, isize cnt)
const;
89 void dumpWords(
char *str, u16 values[], isize cnt)
const;
92 void disassembleRange(std::ostream& os, u16 addr, isize count);
93 void disassembleRange(std::ostream& os, std::pair<u16, u16> range, isize max = 255);