GBZ80 { public int getProgramCounter() { return programCounter; } GBZ80(); void reset(); byte get8BitRegisterValue(Register register); void set8BitRegisterValue(Register register, byte value); int get16BitRegisterValue(Register register); void set16BitRegisterValue(Register register, int value); int getProgramCounter(); void incrementProgramCounter(); void incrementProgramCounterTwice(); void setProgramCounter(int programCounter); void adjustProgramCounter(); int getStackPointer(); void setStackPointer(int stackPointer); void decrementStackPointer(); void incrementStackPointer(); void setLastInstructionExecutionTime(int lastInstructionExecutionTime); int getLastInstructionExecutionTime(); void resetFlagF(); void disableFlagZ(); void disableFlagN(); void disableFlagCY(); void disableFlagH(); void enableFlagZ(); void enableFlagN(); void enableFlagCY(); void enableFlagH(); boolean isFlagZEnabled(); boolean isFlagNEnabled(); boolean isFlagCYEnabled(); boolean isFlagHEnabled(); void enableInterruptMasterFlag(); void disableInterruptMasterFlag(); boolean isInterruptMasterFlageEnabled(); void enableHalt();  }
@Test public void shouldInitializeProgramCounterToTheInitialPCValue() { GBZ80 z80 = new GBZ80(); int programCounter = z80.getProgramCounter(); assertEquals(INITIAL_PROGRAM_COUNTER_VALUE, programCounter); }