ComSquare
Functions
testAPUInstructions.cpp File Reference
#include <catch2/catch_test_macros.hpp>
#include <iostream>
#include <bitset>
#include "../tests.hpp"
#include "../../sources/SNES.hpp"
#include "../../sources/APU/APU.hpp"
#include "../../sources/Utility/Utility.hpp"
Include dependency graph for testAPUInstructions.cpp:

Functions

 TEST_CASE ("NOP Standbys", "[Standbys]")
 
 TEST_CASE ("SLEEP Standbys", "[Standbys]")
 
 TEST_CASE ("STOP Standbys", "[Standbys]")
 
 TEST_CASE ("CLRC PSW", "[PSW]")
 
 TEST_CASE ("SETC PSW", "[PSW]")
 
 TEST_CASE ("NOTC PSW", "[PSW]")
 
 TEST_CASE ("CLRV PSW", "[PSW]")
 
 TEST_CASE ("CLRP PSW", "[PSW]")
 
 TEST_CASE ("SETP PSW", "[PSW]")
 
 TEST_CASE ("EI PSW", "[PSW]")
 
 TEST_CASE ("DI PSW", "[PSW]")
 
 TEST_CASE ("SET1 Bit", "[Bit]")
 
 TEST_CASE ("CLR1 Bit", "[Bit]")
 
 TEST_CASE ("TSET1 Bit", "[Bit]")
 
 TEST_CASE ("TCLR1 Bit", "[Bit]")
 
 TEST_CASE ("AND1 Bit", "[Bit]")
 
 TEST_CASE ("AND1_invert Bit", "[Bit]")
 
 TEST_CASE ("OR1 Bit", "[Bit]")
 
 TEST_CASE ("OR1_invert Bit", "[Bit]")
 
 TEST_CASE ("EOR1 Bit", "[Bit]")
 
 TEST_CASE ("NOT1 Bit", "[Bit]")
 
 TEST_CASE ("MOV1 Bit", "[Bit]")
 
 TEST_CASE ("MOV1_carry Bit", "[Bit]")
 
 TEST_CASE ("PUSH Stack", "[Stack]")
 
 TEST_CASE ("POP Stack", "[Stack]")
 
 TEST_CASE ("CALL Subroutine", "[Subroutine]")
 
 TEST_CASE ("PCALL Subroutine", "[Subroutine]")
 
 TEST_CASE ("TCALL Subroutine", "[Subroutine]")
 
 TEST_CASE ("BRK Subroutine", "[Subroutine]")
 
 TEST_CASE ("RET Subroutine", "[Subroutine]")
 
 TEST_CASE ("RETI Subroutine", "[Subroutine]")
 
 TEST_CASE ("BRA ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("BEQ ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("BNE ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("BCS ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("BCC ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("BVS ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("BVC ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("BMI ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("BPL ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("BBS ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("BBC ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("CBNE ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("DBNZ ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("JMP ProgramFlow", "[ProgramFlow]")
 
 TEST_CASE ("DAA DecimalCompensation", "[DecimalCompensation]")
 
 TEST_CASE ("DAS DecimalCompensation", "[DecimalCompensation]")
 
 TEST_CASE ("MUL MultiplicationDivision", "[MultiplicationDivision]")
 
 TEST_CASE ("DIV MultiplicationDivision", "[MultiplicationDivision]")
 
 TEST_CASE ("INCW XVIbitArithmetic", "[XVIbitArithmetic]")
 
 TEST_CASE ("DECW XVIbitArithmetic", "[XVIbitArithmetic]")
 
 TEST_CASE ("ADDW XVIbitArithmetic", "[XVIbitArithmetic]")
 
 TEST_CASE ("SUBW XVIbitArithmetic", "[XVIbitArithmetic]")
 
 TEST_CASE ("CMPW XVIbitArithmetic", "[XVIbitArithmetic]")
 
 TEST_CASE ("MOVW XVIbitDataTransmission", "[XVIbitDataTransmission]")
 
 TEST_CASE ("ASL VIIIbitShiftRotation", "[VIIIbitShiftRotation]")
 
 TEST_CASE ("LSR VIIIbitShiftRotation", "[VIIIbitShiftRotation]")
 
 TEST_CASE ("ROL VIIIbitShiftRotation", "[VIIIbitShiftRotation]")
 
 TEST_CASE ("ROR VIIIbitShiftRotation", "[VIIIbitShiftRotation]")
 
 TEST_CASE ("XCN VIIIShiftRotation", "[VIIIShiftRotation]")
 
 TEST_CASE ("INC VIIIbitIncrementDecrement", "[VIIIbitIncrementDecrement]")
 
 TEST_CASE ("INCreg VIIIbitIncrementDecrement", "[VIIIbitIncrementDecrement]")
 
 TEST_CASE ("DEC VIIIbitIncrementDecrement", "[VIIIbitIncrementDecrement]")
 
 TEST_CASE ("DECreg VIIIbitIncrementDecrement", "[VIIIbitIncrementDecrement]")
 
 TEST_CASE ("ANDacc VIIILogical", "[VIIILogical]")
 
 TEST_CASE ("AND VIIILogical", "[VIIILogical]")
 
 TEST_CASE ("ORacc VIIILogical", "[VIIILogical]")
 
 TEST_CASE ("OR VIIILogical", "[VIIILogical]")
 
 TEST_CASE ("EORacc VIIILogical", "[VIIILogical]")
 
 TEST_CASE ("EOR VIIILogical", "[VIIILogical]")
 
 TEST_CASE ("ADC VIIIArithmetic", "[VIIIArithmetic]")
 
 TEST_CASE ("ADCacc VIIIArithmetic", "[VIIIArithmetic]")
 
 TEST_CASE ("SBC VIIIArithmetic", "[VIIIArithmetic]")
 
 TEST_CASE ("SBCacc VIIIArithmetic", "[VIIIArithmetic]")
 
 TEST_CASE ("CMP VIIIArithmetic", "[VIIIArithmetic]")
 
 TEST_CASE ("CMPacc VIIIArithmetic", "[VIIIArithmetic]")
 
 TEST_CASE ("MovRegToReg VIIIDataTransmission", "[VIIIDataTransmission]")
 
 TEST_CASE ("MovMemToMem VIIIDataTransmission", "[VIIIDataTransmission]")
 
 TEST_CASE ("MovRegToMem VIIIDataTransmission", "[VIIIDataTransmission]")
 
 TEST_CASE ("MovMemToReg VIIIDataTransmission", "[VIIIDataTransmission]")
 

Function Documentation

◆ TEST_CASE() [1/80]

TEST_CASE ( "ADC VIIIArithmetic"  ,
""  [VIIIArithmetic] 
)

◆ TEST_CASE() [2/80]

TEST_CASE ( "ADCacc VIIIArithmetic"  ,
""  [VIIIArithmetic] 
)

◆ TEST_CASE() [3/80]

TEST_CASE ( "ADDW XVIbitArithmetic"  ,
""  [XVIbitArithmetic] 
)

◆ TEST_CASE() [4/80]

TEST_CASE ( "AND VIIILogical"  ,
""  [VIIILogical] 
)

◆ TEST_CASE() [5/80]

TEST_CASE ( "AND1 Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [6/80]

TEST_CASE ( "AND1_invert Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [7/80]

TEST_CASE ( "ANDacc VIIILogical"  ,
""  [VIIILogical] 
)

◆ TEST_CASE() [8/80]

TEST_CASE ( "ASL VIIIbitShiftRotation"  ,
""  [VIIIbitShiftRotation] 
)

◆ TEST_CASE() [9/80]

TEST_CASE ( "BBC ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [10/80]

TEST_CASE ( "BBS ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [11/80]

TEST_CASE ( "BCC ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [12/80]

TEST_CASE ( "BCS ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [13/80]

TEST_CASE ( "BEQ ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [14/80]

TEST_CASE ( "BMI ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [15/80]

TEST_CASE ( "BNE ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [16/80]

TEST_CASE ( "BPL ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [17/80]

TEST_CASE ( "BRA ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [18/80]

TEST_CASE ( "BRK Subroutine"  ,
""  [Subroutine] 
)

◆ TEST_CASE() [19/80]

TEST_CASE ( "BVC ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [20/80]

TEST_CASE ( "BVS ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [21/80]

TEST_CASE ( "CALL Subroutine"  ,
""  [Subroutine] 
)

◆ TEST_CASE() [22/80]

TEST_CASE ( "CBNE ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [23/80]

TEST_CASE ( "CLR1 Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [24/80]

TEST_CASE ( "CLRC PSW"  ,
""  [PSW] 
)

◆ TEST_CASE() [25/80]

TEST_CASE ( "CLRP PSW"  ,
""  [PSW] 
)

◆ TEST_CASE() [26/80]

TEST_CASE ( "CLRV PSW"  ,
""  [PSW] 
)

◆ TEST_CASE() [27/80]

TEST_CASE ( "CMP VIIIArithmetic"  ,
""  [VIIIArithmetic] 
)

◆ TEST_CASE() [28/80]

TEST_CASE ( "CMPacc VIIIArithmetic"  ,
""  [VIIIArithmetic] 
)

◆ TEST_CASE() [29/80]

TEST_CASE ( "CMPW XVIbitArithmetic"  ,
""  [XVIbitArithmetic] 
)

◆ TEST_CASE() [30/80]

TEST_CASE ( "DAA DecimalCompensation"  ,
""  [DecimalCompensation] 
)

◆ TEST_CASE() [31/80]

TEST_CASE ( "DAS DecimalCompensation"  ,
""  [DecimalCompensation] 
)

◆ TEST_CASE() [32/80]

TEST_CASE ( "DBNZ ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [33/80]

TEST_CASE ( "DEC VIIIbitIncrementDecrement"  ,
""  [VIIIbitIncrementDecrement] 
)

◆ TEST_CASE() [34/80]

TEST_CASE ( "DECreg VIIIbitIncrementDecrement"  ,
""  [VIIIbitIncrementDecrement] 
)

◆ TEST_CASE() [35/80]

TEST_CASE ( "DECW XVIbitArithmetic"  ,
""  [XVIbitArithmetic] 
)

◆ TEST_CASE() [36/80]

TEST_CASE ( "DI PSW"  ,
""  [PSW] 
)

◆ TEST_CASE() [37/80]

TEST_CASE ( "DIV MultiplicationDivision"  ,
""  [MultiplicationDivision] 
)

◆ TEST_CASE() [38/80]

TEST_CASE ( "EI PSW"  ,
""  [PSW] 
)

◆ TEST_CASE() [39/80]

TEST_CASE ( "EOR VIIILogical"  ,
""  [VIIILogical] 
)

◆ TEST_CASE() [40/80]

TEST_CASE ( "EOR1 Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [41/80]

TEST_CASE ( "EORacc VIIILogical"  ,
""  [VIIILogical] 
)

◆ TEST_CASE() [42/80]

TEST_CASE ( "INC VIIIbitIncrementDecrement"  ,
""  [VIIIbitIncrementDecrement] 
)

◆ TEST_CASE() [43/80]

TEST_CASE ( "INCreg VIIIbitIncrementDecrement"  ,
""  [VIIIbitIncrementDecrement] 
)

◆ TEST_CASE() [44/80]

TEST_CASE ( "INCW XVIbitArithmetic"  ,
""  [XVIbitArithmetic] 
)

◆ TEST_CASE() [45/80]

TEST_CASE ( "JMP ProgramFlow"  ,
""  [ProgramFlow] 
)

◆ TEST_CASE() [46/80]

TEST_CASE ( "LSR VIIIbitShiftRotation"  ,
""  [VIIIbitShiftRotation] 
)

◆ TEST_CASE() [47/80]

TEST_CASE ( "MOV1 Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [48/80]

TEST_CASE ( "MOV1_carry Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [49/80]

TEST_CASE ( "MovMemToMem VIIIDataTransmission"  ,
""  [VIIIDataTransmission] 
)

◆ TEST_CASE() [50/80]

TEST_CASE ( "MovMemToReg VIIIDataTransmission"  ,
""  [VIIIDataTransmission] 
)

◆ TEST_CASE() [51/80]

TEST_CASE ( "MovRegToMem VIIIDataTransmission"  ,
""  [VIIIDataTransmission] 
)

◆ TEST_CASE() [52/80]

TEST_CASE ( "MovRegToReg VIIIDataTransmission"  ,
""  [VIIIDataTransmission] 
)

◆ TEST_CASE() [53/80]

TEST_CASE ( "MOVW XVIbitDataTransmission"  ,
""  [XVIbitDataTransmission] 
)

◆ TEST_CASE() [54/80]

TEST_CASE ( "MUL MultiplicationDivision"  ,
""  [MultiplicationDivision] 
)

◆ TEST_CASE() [55/80]

TEST_CASE ( "NOP Standbys"  ,
""  [Standbys] 
)

◆ TEST_CASE() [56/80]

TEST_CASE ( "NOT1 Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [57/80]

TEST_CASE ( "NOTC PSW"  ,
""  [PSW] 
)

◆ TEST_CASE() [58/80]

TEST_CASE ( "OR VIIILogical"  ,
""  [VIIILogical] 
)

◆ TEST_CASE() [59/80]

TEST_CASE ( "OR1 Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [60/80]

TEST_CASE ( "OR1_invert Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [61/80]

TEST_CASE ( "ORacc VIIILogical"  ,
""  [VIIILogical] 
)

◆ TEST_CASE() [62/80]

TEST_CASE ( "PCALL Subroutine"  ,
""  [Subroutine] 
)

◆ TEST_CASE() [63/80]

TEST_CASE ( "POP Stack"  ,
""  [Stack] 
)

◆ TEST_CASE() [64/80]

TEST_CASE ( "PUSH Stack"  ,
""  [Stack] 
)

◆ TEST_CASE() [65/80]

TEST_CASE ( "RET Subroutine"  ,
""  [Subroutine] 
)

◆ TEST_CASE() [66/80]

TEST_CASE ( "RETI Subroutine"  ,
""  [Subroutine] 
)

◆ TEST_CASE() [67/80]

TEST_CASE ( "ROL VIIIbitShiftRotation"  ,
""  [VIIIbitShiftRotation] 
)

◆ TEST_CASE() [68/80]

TEST_CASE ( "ROR VIIIbitShiftRotation"  ,
""  [VIIIbitShiftRotation] 
)

◆ TEST_CASE() [69/80]

TEST_CASE ( "SBC VIIIArithmetic"  ,
""  [VIIIArithmetic] 
)

◆ TEST_CASE() [70/80]

TEST_CASE ( "SBCacc VIIIArithmetic"  ,
""  [VIIIArithmetic] 
)

◆ TEST_CASE() [71/80]

TEST_CASE ( "SET1 Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [72/80]

TEST_CASE ( "SETC PSW"  ,
""  [PSW] 
)

◆ TEST_CASE() [73/80]

TEST_CASE ( "SETP PSW"  ,
""  [PSW] 
)

◆ TEST_CASE() [74/80]

TEST_CASE ( "SLEEP Standbys"  ,
""  [Standbys] 
)

◆ TEST_CASE() [75/80]

TEST_CASE ( "STOP Standbys"  ,
""  [Standbys] 
)

◆ TEST_CASE() [76/80]

TEST_CASE ( "SUBW XVIbitArithmetic"  ,
""  [XVIbitArithmetic] 
)

◆ TEST_CASE() [77/80]

TEST_CASE ( "TCALL Subroutine"  ,
""  [Subroutine] 
)

◆ TEST_CASE() [78/80]

TEST_CASE ( "TCLR1 Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [79/80]

TEST_CASE ( "TSET1 Bit"  ,
""  [Bit] 
)

◆ TEST_CASE() [80/80]

TEST_CASE ( "XCN VIIIShiftRotation"  ,
""  [VIIIShiftRotation] 
)