openMSX
|
Classes | |
struct | AccessTable |
class | Calculator |
VDP-VRAM access slot calculator, meant to be used in the inner loops of the VDPCmdEngine commands. More... | |
struct | CycleTable |
struct | ZeroTable |
Enumerations | |
enum class | Delta : int { D0 = 0 * TICKS , D1 = 1 * TICKS , D16 = 2 * TICKS , D24 = 3 * TICKS , D28 = 4 * TICKS , D32 = 5 * TICKS , D40 = 6 * TICKS , D48 = 7 * TICKS , D64 = 8 * TICKS , D72 = 9 * TICKS , D88 = 10 * TICKS , D104 = 11 * TICKS , D120 = 12 * TICKS , D128 = 13 * TICKS , D136 = 14 * TICKS } |
Functions | |
EmuTime | getAccessSlot (EmuTime::param frame, EmuTime::param time, Delta delta, const VDP &vdp) |
Return the time of the next available access slot that is at least 'delta' cycles later than 'time'. | |
Calculator | getCalculator (EmuTime::param frame, EmuTime::param time, EmuTime::param limit, const VDP &vdp) |
When many calls to getAccessSlot() are needed, it's more efficient to instead use this function. | |
Variables | |
constexpr int | TICKS = VDP::TICKS_PER_LINE |
|
strong |
Enumerator | |
---|---|
D0 | |
D1 | |
D16 | |
D24 | |
D28 | |
D32 | |
D40 | |
D48 | |
D64 | |
D72 | |
D88 | |
D104 | |
D120 | |
D128 | |
D136 |
Definition at line 17 of file VDPAccessSlots.hh.
EmuTime openmsx::VDPAccessSlots::getAccessSlot | ( | EmuTime::param | frame, |
EmuTime::param | time, | ||
Delta | delta, | ||
const VDP & | vdp | ||
) |
Return the time of the next available access slot that is at least 'delta' cycles later than 'time'.
The start of the current 'frame' is needed for reference.
Definition at line 228 of file VDPAccessSlots.cc.
References openmsx::Clock< TICKS_PER_SECOND >::duration(), openmsx::Clock< FREQ_NUM, FREQ_DENOM >::getTicksTill_fast(), and TICKS.
Referenced by openmsx::VDP::getAccessSlot().
Calculator openmsx::VDPAccessSlots::getCalculator | ( | EmuTime::param | frame, |
EmuTime::param | time, | ||
EmuTime::param | limit, | ||
const VDP & | vdp | ||
) |
When many calls to getAccessSlot() are needed, it's more efficient to instead use this function.
Definition at line 238 of file VDPAccessSlots.cc.
Referenced by openmsx::VDP::getAccessSlotCalculator().
|
inlineconstexpr |
Definition at line 15 of file VDPAccessSlots.hh.
Referenced by openmsx::VDPAccessSlots::Calculator::Calculator(), openmsx::VDPAccessSlots::CycleTable::CycleTable(), getAccessSlot(), and openmsx::VDPAccessSlots::Calculator::next().