mirror of
https://github.com/MoleskiCoder/EightBit.git
synced 2026-04-26 21:18:36 +00:00
Make disassembly available from the checking code.
This commit is contained in:
1 parent
6d7fc70810
commit
63e958e069
2 files changed
+10
-4
No files matched your search
@@ -186,9 +186,13 @@ void checker_t::pushCurrentMessage() {
|
|||||||
os().str("");
|
os().str("");
|
||||||
}
|
}
|
||||||
|
|
||||||
void checker_t::disassemble(uint16_t address) {
|
std::string checker_t::disassemble(uint16_t address) {
|
||||||
|
return m_disassembler.disassemble(address);
|
||||||
|
}
|
||||||
|
|
||||||
|
void checker_t::add_disassembly(uint16_t address) {
|
||||||
try {
|
try {
|
||||||
os() << m_disassembler.disassemble(address);
|
os() << disassemble(address);
|
||||||
}
|
}
|
||||||
catch (const std::domain_error& error) {
|
catch (const std::domain_error& error) {
|
||||||
os() << "Disassembly problem: " << error.what();
|
os() << "Disassembly problem: " << error.what();
|
||||||
@@ -220,7 +224,7 @@ void checker_t::check(test_t test) {
|
|||||||
|
|
||||||
if (invalid() && implemented()) {
|
if (invalid() && implemented()) {
|
||||||
|
|
||||||
disassemble(pc);
|
add_disassembly(pc);
|
||||||
|
|
||||||
const auto final = test.final();
|
const auto final = test.final();
|
||||||
raise("PC", final.pc(), cpu.PC().word);
|
raise("PC", final.pc(), cpu.PC().word);
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ private:
|
|||||||
void addActualReadCycle(EightBit::register16_t address, uint8_t value);
|
void addActualReadCycle(EightBit::register16_t address, uint8_t value);
|
||||||
void addActualWriteCycle(EightBit::register16_t address, uint8_t value);
|
void addActualWriteCycle(EightBit::register16_t address, uint8_t value);
|
||||||
|
|
||||||
void disassemble(uint16_t address);
|
void add_disassembly(uint16_t address);
|
||||||
|
|
||||||
template<class T>
|
template<class T>
|
||||||
void dumpCycle(const uint16_t address, const uint8_t value, const T action) {
|
void dumpCycle(const uint16_t address, const uint8_t value, const T action) {
|
||||||
@@ -91,5 +91,7 @@ public:
|
|||||||
|
|
||||||
void initialise();
|
void initialise();
|
||||||
|
|
||||||
|
[[nodiscard]] std::string disassemble(uint16_t address);
|
||||||
|
|
||||||
void check(test_t test);
|
void check(test_t test);
|
||||||
};
|
};
|
||||||
Reference in new issue
Block a user