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

Function push16

source/test/testCPU.cpp:3378–3390  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3376}
3377
3378void push16(int instruction) {
3379 newInstruction(instruction, 0);
3380 pushCode16(0x1234);
3381 ESP -= 2;
3382 memory->writew(cpu->seg[SS].address + ESP, 0xAAAA);
3383 memory->writew(cpu->seg[SS].address + ESP - 2, 0xCCCC);
3384 memory->writew(cpu->seg[SS].address + ESP - 4, 0xBBBB);
3385 runTestCPU();
3386 assertTrue(ESP == 4092);
3387 assertTrue(memory->readw(cpu->seg[SS].address + ESP) == 0x1234);
3388 assertTrue(memory->readw(cpu->seg[SS].address + ESP + 2) == 0xAAAA);
3389 assertTrue(memory->readw(cpu->seg[SS].address + ESP - 2) == 0xBBBB);
3390}
3391
3392void push32(int instruction) {
3393 newInstruction(instruction, 0);

Callers 15

pushReg16Function · 0.85
pushSeg16Function · 0.85
pushaFunction · 0.85
push16dataFunction · 0.85
pushf16Function · 0.85
callJwFunction · 0.85
callEv16_regFunction · 0.85
callEv16_mem16Function · 0.85
callEv16_mem32Function · 0.85
pushEv16_regFunction · 0.85
pushEv16_mem16Function · 0.85
pushEv16_mem32Function · 0.85

Calls 6

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

Tested by

no test coverage detected