tests - Add test for memory register
This commit is contained in:
parent
09b2823ef6
commit
86eeb90868
1 changed files with 25 additions and 0 deletions
25
tests/test_memory_register.cpp
Normal file
25
tests/test_memory_register.cpp
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
#include "doctest.h"
|
||||||
|
|
||||||
|
#include <cpu/cpu.h>
|
||||||
|
#include <memory/bus.h>
|
||||||
|
#include <memory/ram.h>
|
||||||
|
#include <memory/register.h>
|
||||||
|
|
||||||
|
TEST_CASE("IE controllable via bus")
|
||||||
|
{
|
||||||
|
u8 test_ram[] = {
|
||||||
|
0x3E, 0xFF, // LD A, $0xFF
|
||||||
|
0xE0, 0xFF, // LDH [FF:FF], A
|
||||||
|
};
|
||||||
|
|
||||||
|
Bus b;
|
||||||
|
Cpu cpu(&b);
|
||||||
|
|
||||||
|
b.map_device(0x0000, 0x0004, new RAM(test_ram, 0x4, true));
|
||||||
|
b.map_device(0xFFFF, 0xFFFF, new BoundRegister(cpu.state.IE));
|
||||||
|
|
||||||
|
cpu.step();
|
||||||
|
cpu.step();
|
||||||
|
|
||||||
|
CHECK(cpu.state.IE == 0xFF);
|
||||||
|
}
|
Loading…
Reference in a new issue