openMSX
|
#include <V9990DisplayTiming.hh>
Static Public Member Functions | |
static constexpr int | getUCTicksPerFrame (bool palTiming) |
Get the number of UC ticks in 1 frame. | |
Static Public Attributes | |
static constexpr int | UC_TICKS_PER_SECOND = 3579545 * 12 |
The V9990 has an internal clock (MCLK @ 14MHz) and a terminal for an external clock (XTAL1), which can be connected to a 21 or 25 MHz crystal. | |
static constexpr int | UC_TICKS_PER_LINE = 2736 |
The number of clock ticks per line is independent of the crystal used or the display mode (NTSC/PAL) | |
static constexpr auto | lineMCLK |
Horizontal (line) timing when using MCLK: 'Normal' display modes. | |
static constexpr auto | lineXTAL |
Horizontal (line) timing when using XTAL: 'Overscan' modes without border. | |
static constexpr auto | displayNTSC_MCLK = V9990DisplayPeriod{262, 15, 14, 212, 14} |
NTSC display timing, when using MCLK: Normal display mode with borders. | |
static constexpr auto | displayNTSC_XTAL = V9990DisplayPeriod{262, 15, 0, 240, 0} |
NTSC display timing, when using XTAL: Overscan mode without borders. | |
static constexpr auto | displayPAL_MCLK = V9990DisplayPeriod{313, 15, 41, 212, 37} |
PAL display timing, when using MCLK: Normal display mode with borders. | |
static constexpr auto | displayPAL_XTAL = V9990DisplayPeriod{313, 15, 0, 290, 0} |
PAL display timing, when using XTAL: Overscan mode without borders. | |
Definition at line 20 of file V9990DisplayTiming.hh.
|
inlinestaticconstexpr |
Get the number of UC ticks in 1 frame.
palTiming | Use PAL timing? (False = NTSC timing) |
Definition at line 75 of file V9990DisplayTiming.hh.
References displayNTSC_MCLK, displayPAL_MCLK, and UC_TICKS_PER_LINE.
|
staticconstexpr |
NTSC display timing, when using MCLK: Normal display mode with borders.
Timing is in display lines.
Definition at line 53 of file V9990DisplayTiming.hh.
Referenced by openmsx::V9990::getCursorYOffset(), and getUCTicksPerFrame().
|
staticconstexpr |
NTSC display timing, when using XTAL: Overscan mode without borders.
Timing is in display lines.
Definition at line 58 of file V9990DisplayTiming.hh.
|
staticconstexpr |
PAL display timing, when using MCLK: Normal display mode with borders.
Timing is in display lines.
Definition at line 63 of file V9990DisplayTiming.hh.
Referenced by openmsx::V9990::getCursorYOffset(), and getUCTicksPerFrame().
|
staticconstexpr |
PAL display timing, when using XTAL: Overscan mode without borders.
Timing is in display lines.
Definition at line 68 of file V9990DisplayTiming.hh.
|
staticconstexpr |
Horizontal (line) timing when using MCLK: 'Normal' display modes.
Timing is in UC ticks.
Definition at line 41 of file V9990DisplayTiming.hh.
|
staticconstexpr |
Horizontal (line) timing when using XTAL: 'Overscan' modes without border.
Timing is in UC ticks.
Definition at line 47 of file V9990DisplayTiming.hh.
|
staticconstexpr |
The number of clock ticks per line is independent of the crystal used or the display mode (NTSC/PAL)
Definition at line 36 of file V9990DisplayTiming.hh.
Referenced by openmsx::V9990SDLRasterizer::drawBorder(), getUCTicksPerFrame(), openmsx::V9990::peekIO(), and openmsx::V9990::UCtoX().
|
staticconstexpr |
The V9990 has an internal clock (MCLK @ 14MHz) and a terminal for an external clock (XTAL1), which can be connected to a 21 or 25 MHz crystal.
The Gfx9000 provides an 21 MHz crystal.
The emulation combines these two clocks into one unified clock (UC) running at 42MHz - the smallest common multiple of 14 and 21 MHz.
Definition at line 31 of file V9990DisplayTiming.hh.