mirror of
https://github.com/zoriya/ComSquare.git
synced 2026-05-22 14:32:03 +00:00
Starting to test addressings modes
This commit is contained in:
@@ -12,7 +12,25 @@ using namespace ComSquare;
|
||||
Test(AddrMode, Immediate)
|
||||
{
|
||||
auto pair = Init();
|
||||
pair.second.cpu->_registers.pc = 0x15;
|
||||
cr_assert_eq(pair.second.cpu->_GetImmediateAddr(), 0x15);
|
||||
cr_assert_eq(pair.second.cpu->_registers.pc, 0x16);
|
||||
pair.second.cpu->_registers.pac = 0x000015;
|
||||
cr_assert_eq(pair.second.cpu->_GetImmediateAddr(), 0x000015, "Got %i, Expected 0x000015");
|
||||
cr_assert_eq(pair.second.cpu->_registers.pac, 0x000016);
|
||||
}
|
||||
|
||||
Test(AddrMode, ImmediateBankChange)
|
||||
{
|
||||
auto pair = Init();
|
||||
pair.second.cpu->_registers.pac = 0x00FFFF;
|
||||
cr_assert_eq(pair.second.cpu->_GetImmediateAddr(), 0x00FFFF);
|
||||
cr_assert_eq(pair.second.cpu->_registers.pac, 0x010000);
|
||||
}
|
||||
|
||||
Test(AddrMode, Direct)
|
||||
{
|
||||
auto pair = Init();
|
||||
pair.second.cartridge->_data[0] = 0x15;
|
||||
pair.second.cpu->_registers.pac = 0x808000;
|
||||
pair.second.cpu->_registers.d = 0x1000;
|
||||
cr_assert_eq(pair.second.cpu->_GetDirectAddr(), 0x1015, "Returned address was %i but was expecting 0x1015.");
|
||||
cr_assert_eq(pair.second.cpu->_registers.pac, 0x808001);
|
||||
}
|
||||
Reference in New Issue
Block a user