Finishing to clean tests and adding the start of the bus logger

This commit is contained in:
Anonymus Raccoon
2020-03-24 01:53:45 +01:00
parent 09cd825bed
commit 95f17c06a8
47 changed files with 2421 additions and 2176 deletions
+26 -26
View File
@@ -11,40 +11,40 @@ using namespace ComSquare;
Test(AND, emulation)
{
auto pair = Init();
pair.second.wram->_data[0] = 0x00;
pair.second.cpu->_registers.a = 0xFF;
pair.second.cpu->_isEmulationMode = true;
pair.second.cpu->AND(0x0);
cr_assert_eq(pair.second.cpu->_registers.a, 0x00, "The flags should be 0x00 but it was %x", pair.second.cpu->_registers.a);
cr_assert_eq(pair.second.cpu->_registers.p.z, true, "The zero flag should be set.");
cr_assert_eq(pair.second.cpu->_registers.p.n, false, "The negative flag should not be set.");
Init()
snes.wram->_data[0] = 0x00;
snes.cpu->_registers.a = 0xFF;
snes.cpu->_isEmulationMode = true;
snes.cpu->AND(0x0);
cr_assert_eq(snes.cpu->_registers.a, 0x00, "The flags should be 0x00 but it was %x", snes.cpu->_registers.a);
cr_assert_eq(snes.cpu->_registers.p.z, true, "The zero flag should be set.");
cr_assert_eq(snes.cpu->_registers.p.n, false, "The negative flag should not be set.");
}
Test(AND, nativeNegative)
{
auto pair = Init();
pair.second.wram->_data[0] = 0xF0;
pair.second.wram->_data[1] = 0xF0;
pair.second.cpu->_registers.p.m = false;
pair.second.cpu->_registers.a = 0xFF00;
pair.second.cpu->_isEmulationMode = false;
pair.second.cpu->AND(0x0);
cr_assert_eq(pair.second.cpu->_registers.a, 0xF000, "The flags should be 0xF000 but it was %x", pair.second.cpu->_registers.a);
cr_assert_eq(pair.second.cpu->_registers.p.z, false, "The zero flag should not be set.");
cr_assert_eq(pair.second.cpu->_registers.p.n, true, "The negative flag should be set.");
Init()
snes.wram->_data[0] = 0xF0;
snes.wram->_data[1] = 0xF0;
snes.cpu->_registers.p.m = false;
snes.cpu->_registers.a = 0xFF00;
snes.cpu->_isEmulationMode = false;
snes.cpu->AND(0x0);
cr_assert_eq(snes.cpu->_registers.a, 0xF000, "The flags should be 0xF000 but it was %x", snes.cpu->_registers.a);
cr_assert_eq(snes.cpu->_registers.p.z, false, "The zero flag should not be set.");
cr_assert_eq(snes.cpu->_registers.p.n, true, "The negative flag should be set.");
}
Test(AND, emulationTest)
{
auto pair = Init();
pair.second.wram->_data[0] = 0b00110011;
pair.second.cpu->_registers.a = 0b00110111;
pair.second.cpu->_isEmulationMode = true;
pair.second.cpu->AND(0x0);
cr_assert_eq(pair.second.cpu->_registers.a, 0b00110011, "The flags should be 0b00110011 but it was %x", pair.second.cpu->_registers.a);
cr_assert_eq(pair.second.cpu->_registers.p.z, false, "The zero flag should not be set.");
cr_assert_eq(pair.second.cpu->_registers.p.n, false, "The negative flag should not be set.");
Init()
snes.wram->_data[0] = 0b00110011;
snes.cpu->_registers.a = 0b00110111;
snes.cpu->_isEmulationMode = true;
snes.cpu->AND(0x0);
cr_assert_eq(snes.cpu->_registers.a, 0b00110011, "The flags should be 0b00110011 but it was %x", snes.cpu->_registers.a);
cr_assert_eq(snes.cpu->_registers.p.z, false, "The zero flag should not be set.");
cr_assert_eq(snes.cpu->_registers.p.n, false, "The negative flag should not be set.");
}