mirror of
https://github.com/RPCSX/rpcsx.git
synced 2026-01-06 08:40:28 +01:00
36 lines
523 B
C++
36 lines
523 B
C++
#pragma once
|
|
#include "Emu/CPU/CPUDecoder.h"
|
|
#include "ARMv7Opcodes.h"
|
|
|
|
|
|
class ARMv7Decoder : public CPUDecoder
|
|
{
|
|
ARMv7Opcodes& m_op;
|
|
u8 m_last_instr_size;
|
|
|
|
public:
|
|
ARMv7Decoder(ARMv7Opcodes& op) : m_op(op)
|
|
{
|
|
}
|
|
|
|
virtual u8 DecodeMemory(const u64 address)
|
|
{
|
|
const u16 code0 = Memory.Read16(address);
|
|
const u16 code1 = Memory.Read16(address + 2);
|
|
const u16 opcode = code0;
|
|
|
|
switch(opcode)
|
|
{
|
|
case 0:
|
|
m_op.NULL_OP();
|
|
break;
|
|
|
|
default:
|
|
m_op.UNK(opcode, code0, code1);
|
|
break;
|
|
}
|
|
|
|
return 2;
|
|
}
|
|
};
|