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 14 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 226 of file VDPAccessSlots.cc.
References openmsx::Clock< TICKS_PER_SECOND >::duration(), openmsx::Clock< FREQ_NUM, FREQ_DENOM >::getTicksTill_fast(), TICKS, and to_underlying().
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 236 of file VDPAccessSlots.cc.
Referenced by openmsx::VDP::getAccessSlotCalculator().
|
inlineconstexpr |
Definition at line 12 of file VDPAccessSlots.hh.
Referenced by openmsx::VDPAccessSlots::Calculator::Calculator(), openmsx::VDPAccessSlots::CycleTable::CycleTable(), getAccessSlot(), and openmsx::VDPAccessSlots::Calculator::next().