mirror of
https://github.com/tdinucci/6502-emulator.git
synced 2024-09-27 13:55:49 +00:00
36 lines
902 B
C
36 lines
902 B
C
|
#ifndef INC_6502_EMULATOR_JUMP_OPCODE_HANDLER_CONTAINER_H
|
||
|
#define INC_6502_EMULATOR_JUMP_OPCODE_HANDLER_CONTAINER_H
|
||
|
|
||
|
#include "opcode-handler-container.h"
|
||
|
|
||
|
namespace emu_6502 {
|
||
|
class JumpOpcodeHandlerContainer : public OpcodeHandlerContainer {
|
||
|
private:
|
||
|
enum Op {
|
||
|
JMP_ABS = 0x4C,
|
||
|
JMP_IND = 0x6C,
|
||
|
|
||
|
JSR = 0x20,
|
||
|
|
||
|
RTI = 0x40,
|
||
|
RTS = 0x60
|
||
|
};
|
||
|
|
||
|
void jmp_abs(Machine& machine);
|
||
|
void jmp_ind(Machine& machine);
|
||
|
|
||
|
void jsr(Machine& machine);
|
||
|
|
||
|
void rti(Machine& machine);
|
||
|
void rts(Machine& machine);
|
||
|
|
||
|
public:
|
||
|
JumpOpcodeHandlerContainer();
|
||
|
JumpOpcodeHandlerContainer(const JumpOpcodeHandlerContainer&) = delete;
|
||
|
JumpOpcodeHandlerContainer& operator=(const JumpOpcodeHandlerContainer&) = delete;
|
||
|
};
|
||
|
}
|
||
|
|
||
|
|
||
|
#endif //INC_6502_EMULATOR_JUMP_OPCODE_HANDLER_CONTAINER_H
|