MCPcopy Create free account
hub / github.com/danoon2/Boxedwine / push16Reg

Function push16Reg

source/test/testCPU.cpp:2975–2992  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2973}
2974
2975void push16Reg(int instruction, Reg* reg) {
2976 newInstruction(instruction, 0);
2977 U32 value = 0xDDDD1234;
2978 ESP -= 2;
2979 if (reg == &cpu->reg[4]) {
2980 value = reg->u16;
2981 } else {
2982 reg->u32 = value;
2983 }
2984 memory->writew(cpu->seg[SS].address + ESP, 0xAAAA);
2985 memory->writew(cpu->seg[SS].address + ESP - 2, 0xCCCC);
2986 memory->writew(cpu->seg[SS].address + ESP - 4, 0xBBBB);
2987 runTestCPU();
2988 assertTrue(ESP == 4092);
2989 assertTrue(memory->readw(cpu->seg[SS].address + ESP) == (U16)value);
2990 assertTrue(memory->readw(cpu->seg[SS].address + ESP + 2) == 0xAAAA);
2991 assertTrue(memory->readw(cpu->seg[SS].address + ESP - 2) == 0xBBBB);
2992}
2993
2994void Pushf(int instruction) {
2995 newInstruction(instruction, 0);

Callers 8

testPushAx0x050Function · 0.85
testPushCx0x051Function · 0.85
testPushDx0x052Function · 0.85
testPushBx0x053Function · 0.85
testPushSp0x054Function · 0.85
testPushBp0x055Function · 0.85
testPushSi0x056Function · 0.85
testPushDi0x057Function · 0.85

Calls 5

newInstructionFunction · 0.85
runTestCPUFunction · 0.85
assertTrueFunction · 0.85
writewMethod · 0.45
readwMethod · 0.45

Tested by

no test coverage detected