Mesen2/Core/PCE/Debugger/PceAssembler.h
Sour 0a6814d881 Debugger: Assembler - Fixed assembler issues for NES/SNES/PCE when using "edit selected code"
Original byte code did not match the assembler's code based on the assembly code in some scenarios
2023-07-10 18:45:46 +09:00

22 lines
No EOL
657 B
C++

#pragma once
#include "pch.h"
#include <regex>
#include "Debugger/Base6502Assembler.h"
#include "PCE/PceTypes.h"
class LabelManager;
class PceAssembler final : public Base6502Assembler<PceAddrMode>
{
private:
string GetOpName(uint8_t opcode) override;
PceAddrMode GetOpMode(uint8_t opcode) override;
bool IsOfficialOp(uint8_t opcode) override;
void AdjustLabelOperand(AssemblerOperand& operand);
void AdjustLabelOperands(AssemblerLineData& op);
AssemblerSpecialCodes ResolveOpMode(AssemblerLineData& op, uint32_t instructionAddress, bool firstPass) override;
public:
PceAssembler(LabelManager* labelManager);
virtual ~PceAssembler() = default;
};