Skip to content

Commit

Permalink
Add boilerplate for the OPCODES
Browse files Browse the repository at this point in the history
  • Loading branch information
Aviii06 authored and r41k0u committed Jan 21, 2023
1 parent c560ca6 commit 3a22309
Show file tree
Hide file tree
Showing 2 changed files with 744 additions and 262 deletions.
246 changes: 245 additions & 1 deletion src/cpu.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -58,9 +58,253 @@ int CPU::LD_BC_A()
return 8;
}

int CPU::INC_BC() { return 0; }
int CPU::INC_B() { return 0; }
int CPU::DEC_B() { return 0; }
int CPU::LD_B_u8() { return 0; }
int CPU::RLCA() { return 0; }
int CPU::LD_u16_SP() { return 0; }
int CPU::ADD_HL_BC() { return 0; }
int CPU::LD_A_BC() { return 0; }
int CPU::DEC_BC() { return 0; }
int CPU::INC_C() { return 0; }
int CPU::DEC_C() { return 0; }
int CPU::LD_C_u8() { return 0; }
int CPU::RRCA() { return 0; }
int CPU::STOP() { return 0; }
int CPU::LD_DE_u16() { return 0; }
int CPU::LD_DE_A() { return 0; }
int CPU::INC_DE() { return 0; }
int CPU::INC_D() { return 0; }
int CPU::DEC_D() { return 0; }
int CPU::LD_D_u8() { return 0; }
int CPU::RLA() { return 0; }
int CPU::JR_r8() { return 0; }
int CPU::ADD_HL_DE() { return 0; }
int CPU::LD_A_DE() { return 0; }
int CPU::DEC_DE() { return 0; }
int CPU::INC_E() { return 0; }
int CPU::DEC_E() { return 0; }
int CPU::LD_E_u8() { return 0; }
int CPU::RRA() { return 0; }
int CPU::JR_NZ_r8() { return 0; }
int CPU::LD_HL_u16() { return 0; }
int CPU::LD_HLp_A() { return 0; }
int CPU::INC_HL() { return 0; }
int CPU::INC_H() { return 0; }
int CPU::DEC_H() { return 0; }
int CPU::LD_H_u8() { return 0; }
int CPU::DAA() { return 0; }
int CPU::JR_Z_r8() { return 0; }
int CPU::ADD_HL_HL() { return 0; }
int CPU::LD_A_HLp() { return 0; }
int CPU::DEC_HL() { return 0; }
int CPU::INC_L() { return 0; }
int CPU::DEC_L() { return 0; }
int CPU::LD_L_u8() { return 0; }
int CPU::CPL() { return 0; }
int CPU::JR_NC_r8() { return 0; }
int CPU::LD_SP_u16() { return 0; }
int CPU::LD_HLm_A() { return 0; }
int CPU::INC_SP() { return 0; }
int CPU::INC_HLp() { return 0; }
int CPU::DEC_HLp() { return 0; }
int CPU::LD_HLp_u8() { return 0; }
int CPU::SCF() { return 0; }
int CPU::JR_C_r8() { return 0; }
int CPU::ADD_HL_SP() { return 0; }
int CPU::LD_A_HLm() { return 0; }
int CPU::DEC_SP() { return 0; }
int CPU::INC_A() { return 0; }
int CPU::DEC_A() { return 0; }
int CPU::LD_A_u8() { return 0; }
int CPU::CCF() { return 0; }
int CPU::LD_B_B() { return 0; }
int CPU::LD_B_C() { return 0; }
int CPU::LD_B_D() { return 0; }
int CPU::LD_B_E() { return 0; }
int CPU::LD_B_H() { return 0; }
int CPU::LD_B_L() { return 0; }
int CPU::LD_B_HLp() { return 0; }
int CPU::LD_B_A() { return 0; }
int CPU::LD_C_B() { return 0; }
int CPU::LD_C_C() { return 0; }
int CPU::LD_C_D() { return 0; }
int CPU::LD_C_E() { return 0; }
int CPU::LD_C_H() { return 0; }
int CPU::LD_C_L() { return 0; }
int CPU::LD_C_HLp() { return 0; }
int CPU::LD_C_A() { return 0; }
int CPU::LD_D_B() { return 0; }
int CPU::LD_D_C() { return 0; }
int CPU::LD_D_D() { return 0; }
int CPU::LD_D_E() { return 0; }
int CPU::LD_D_H() { return 0; }
int CPU::LD_D_L() { return 0; }
int CPU::LD_D_HLp() { return 0; }
int CPU::LD_D_A() { return 0; }
int CPU::LD_E_B() { return 0; }
int CPU::LD_E_C() { return 0; }
int CPU::LD_E_D() { return 0; }
int CPU::LD_E_E() { return 0; }
int CPU::LD_E_H() { return 0; }
int CPU::LD_E_L() { return 0; }
int CPU::LD_E_HLp() { return 0; }
int CPU::LD_E_A() { return 0; }
int CPU::LD_H_B() { return 0; }
int CPU::LD_H_C() { return 0; }
int CPU::LD_H_D() { return 0; }
int CPU::LD_H_E() { return 0; }
int CPU::LD_H_H() { return 0; }
int CPU::LD_H_L() { return 0; }
int CPU::LD_H_HLp() { return 0; }
int CPU::LD_H_A() { return 0; }
int CPU::LD_L_B() { return 0; }
int CPU::LD_L_C() { return 0; }
int CPU::LD_L_D() { return 0; }
int CPU::LD_L_E() { return 0; }
int CPU::LD_L_H() { return 0; }
int CPU::LD_L_L() { return 0; }
int CPU::LD_L_HLp() { return 0; }
int CPU::LD_L_A() { return 0; }
int CPU::LD_HLp_B() { return 0; }
int CPU::LD_HLp_C() { return 0; }
int CPU::LD_HLp_D() { return 0; }
int CPU::LD_HLp_E() { return 0; }
int CPU::LD_HLp_H() { return 0; }
int CPU::LD_HLp_L() { return 0; }
int CPU::HALT() { return 0; }
int CPU::LD_HLA() { return 0; }
int CPU::LD_A_B() { return 0; }
int CPU::LD_A_C() { return 0; }
int CPU::LD_A_D() { return 0; }
int CPU::LD_A_E() { return 0; }
int CPU::LD_A_H() { return 0; }
int CPU::LD_A_L() { return 0; }
int CPU::LD_A_HL() { return 0; }
int CPU::LD_A_A() { return 0; }
int CPU::ADD_A_B() { return 0; }
int CPU::ADD_A_C() { return 0; }
int CPU::ADD_A_D() { return 0; }
int CPU::ADD_A_E() { return 0; }
int CPU::ADD_A_H() { return 0; }
int CPU::ADD_A_L() { return 0; }
int CPU::ADD_A_HLp() { return 0; }
int CPU::ADD_A_A() { return 0; }
int CPU::ADC_A_B() { return 0; }
int CPU::ADC_A_C() { return 0; }
int CPU::ADC_A_D() { return 0; }
int CPU::ADC_A_E() { return 0; }
int CPU::ADC_A_H() { return 0; }
int CPU::ADC_A_L() { return 0; }
int CPU::ADC_A_HLp() { return 0; }
int CPU::ADC_A_A() { return 0; }
int CPU::SUB_B() { return 0; }
int CPU::SUB_C() { return 0; }
int CPU::SUB_D() { return 0; }
int CPU::SUB_E() { return 0; }
int CPU::SUB_H() { return 0; }
int CPU::SUB_L() { return 0; }
int CPU::SUB_HLp() { return 0; }
int CPU::SUB_A() { return 0; }
int CPU::SBC_A_B() { return 0; }
int CPU::SBC_A_C() { return 0; }
int CPU::SBC_A_D() { return 0; }
int CPU::SBC_A_E() { return 0; }
int CPU::SBC_A_H() { return 0; }
int CPU::SBC_A_L() { return 0; }
int CPU::SBC_A_HLp() { return 0; }
int CPU::SBC_A_A() { return 0; }
int CPU::AND_B() { return 0; }
int CPU::AND_C() { return 0; }
int CPU::AND_D() { return 0; }
int CPU::AND_E() { return 0; }
int CPU::AND_H() { return 0; }
int CPU::AND_L() { return 0; }
int CPU::AND_HLp() { return 0; }
int CPU::AND_A() { return 0; }
int CPU::XOR_B() { return 0; }
int CPU::XOR_C() { return 0; }
int CPU::XOR_D() { return 0; }
int CPU::XOR_E() { return 0; }
int CPU::XOR_H() { return 0; }
int CPU::XOR_L() { return 0; }
int CPU::XOR_HLp() { return 0; }
int CPU::XOR_A() { return 0; }
int CPU::OR_B() { return 0; }
int CPU::OR_C() { return 0; }
int CPU::OR_D() { return 0; }
int CPU::OR_E() { return 0; }
int CPU::OR_H() { return 0; }
int CPU::OR_L() { return 0; }
int CPU::OR_HLp() { return 0; }
int CPU::OR_A() { return 0; }
int CPU::CP_B() { return 0; }
int CPU::CP_C() { return 0; }
int CPU::CP_D() { return 0; }
int CPU::CP_E() { return 0; }
int CPU::CP_H() { return 0; }
int CPU::CP_L() { return 0; }
int CPU::CP_HLp() { return 0; }
int CPU::CP_A() { return 0; }
int CPU::RET_NZ() { return 0; }
int CPU::POP_BC() { return 0; }
int CPU::JP_NZ_u16() { return 0; }
int CPU::JP_u16() { return 0; }
int CPU::CALL_NZ_u16() { return 0; }
int CPU::PUSH_BC() { return 0; }
int CPU::ADD_A_u8() { return 0; }
int CPU::RST_00H() { return 0; }
int CPU::RET_Z() { return 0; }
int CPU::RET() { return 0; }
int CPU::JP_Z_u16() { return 0; }
int CPU::PREFIX_CB() { return 0; }
int CPU::CALL_Z_u16() { return 0; }
int CPU::CALL_u16() { return 0; }
int CPU::ADC_A_u8() { return 0; }
int CPU::RST_08H() { return 0; }
int CPU::RET_NC() { return 0; }
int CPU::POP_DE() { return 0; }
int CPU::JP_NC_u16() { return 0; }
int CPU::UNKNOWN() { return 0; }
int CPU::NC_u16() { return 0; }
int CPU::PUSH_DE() { return 0; }
int CPU::SUB_u8() { return 0; }
int CPU::RST_10H() { return 0; }
int CPU::RET_C() { return 0; }
int CPU::RETI() { return 0; }
int CPU::JP_C_u16() { return 0; }
int CPU::CALL_C_u16() { return 0; }
int CPU::SBC_A_u8() { return 0; }
int CPU::RST_18H() { return 0; }
int CPU::LDH_a8_A() { return 0; }
int CPU::POP_HL() { return 0; }
int CPU::LDH_C_A() { return 0; }
int CPU::PUSH_HL() { return 0; }
int CPU::AND_u8() { return 0; }
int CPU::RST_20H() { return 0; }
int CPU::ADD_SP_i8() { return 0; }
int CPU::JP_HL() { return 0; }
int CPU::LD_a16_A() { return 0; }
int CPU::XOR_u8() { return 0; }
int CPU::RST_28H() { return 0; }
int CPU::LDH_A_a8() { return 0; }
int CPU::POP_AF() { return 0; }
int CPU::LDH_A_C() { return 0; }
int CPU::DI() { return 0; }
int CPU::PUSH_AF() { return 0; }
int CPU::OR_u8() { return 0; }
int CPU::RST_30H() { return 0; }
int CPU::LD_HL_SP_i8() { return 0; }
int CPU::LD_SP_HL() { return 0; }
int CPU::LD_A_a16() { return 0; }
int CPU::EI() { return 0; }
int CPU::CP_u8() { return 0; }
int CPU::RST_38H() { return 0; }

int CPU::executeNextInstruction()
{
// Get the opcode
Byte opcode = (*mMap)[reg_PC.dat];
Byte opcode = (*mMap)[reg_PC.dat];
return (this->*method_pointer[opcode])();
}
Loading

0 comments on commit 3a22309

Please sign in to comment.