openMSX
|
#include <DummyRenderer.hh>
Public Member Functions | |
DummyRenderer () | |
PostProcessor * | getPostProcessor () const override |
See VDP::getPostProcessor. | |
void | reInit () override |
Reinitialize Renderer state. | |
void | frameStart (EmuTime::param time) override |
Signals the start of a new frame. | |
void | frameEnd (EmuTime::param time) override |
Signals the end of a frame. | |
void | updateTransparency (bool enabled, EmuTime::param time) override |
Informs the renderer of a VDP transparency enable/disable change. | |
void | updateSuperimposing (const RawFrame *videoSource, EmuTime::param time) override |
Informs the renderer of a VDP superimposing change. | |
void | updateForegroundColor (byte color, EmuTime::param time) override |
Informs the renderer of a VDP foreground color change. | |
void | updateBackgroundColor (byte color, EmuTime::param time) override |
Informs the renderer of a VDP background color change. | |
void | updateBlinkForegroundColor (byte color, EmuTime::param time) override |
Informs the renderer of a VDP blink foreground color change. | |
void | updateBlinkBackgroundColor (byte color, EmuTime::param time) override |
Informs the renderer of a VDP blink background color change. | |
void | updateBlinkState (bool enabled, EmuTime::param time) override |
Informs the renderer of a VDP blinking state change. | |
void | updatePalette (unsigned index, int grb, EmuTime::param time) override |
Informs the renderer of a VDP palette change. | |
void | updateVerticalScroll (int scroll, EmuTime::param time) override |
Informs the renderer of a vertical scroll change. | |
void | updateHorizontalScrollLow (byte scroll, EmuTime::param time) override |
Informs the renderer of a horizontal scroll change: the lower scroll value has changed. | |
void | updateHorizontalScrollHigh (byte scroll, EmuTime::param time) override |
Informs the renderer of a horizontal scroll change: the higher scroll value has changed. | |
void | updateBorderMask (bool masked, EmuTime::param time) override |
Informs the renderer of a horizontal scroll change: the border mask has been enabled/disabled. | |
void | updateMultiPage (bool multiPage, EmuTime::param time) override |
Informs the renderer of a horizontal scroll change: the multi page setting has changed. | |
void | updateHorizontalAdjust (int adjust, EmuTime::param time) override |
Informs the renderer of a horizontal adjust change. | |
void | updateDisplayEnabled (bool enabled, EmuTime::param time) override |
Informs the renderer of a VDP display enabled change. | |
void | updateDisplayMode (DisplayMode mode, EmuTime::param time) override |
Informs the renderer of a VDP display mode change. | |
void | updateNameBase (unsigned addr, EmuTime::param time) override |
Informs the renderer of a name table base address change. | |
void | updatePatternBase (unsigned addr, EmuTime::param time) override |
Informs the renderer of a pattern table base address change. | |
void | updateColorBase (unsigned addr, EmuTime::param time) override |
Informs the renderer of a color table base address change. | |
void | updateSpritesEnabled (bool enabled, EmuTime::param time) override |
Informs the renderer of a VDP sprites enabled change. | |
void | updateVRAM (unsigned offset, EmuTime::param time) override |
Informs the observer of a change in VRAM contents. | |
void | updateWindow (bool enabled, EmuTime::param time) override |
Informs the observer that the entire VRAM window will change. | |
void | paint (OutputSurface &output) override |
Paint this layer. | |
Public Member Functions inherited from openmsx::Renderer | |
virtual | ~Renderer ()=default |
Public Member Functions inherited from openmsx::Layer | |
virtual | ~Layer ()=default |
ZIndex | getZ () const |
Query the Z-index of this layer. | |
bool | isActive () const |
Coverage | getCoverage () const |
Query the coverage of this layer. | |
void | setDisplay (Display &display_) |
Store pointer to Display. | |
Additional Inherited Members | |
Public Types inherited from openmsx::Layer | |
enum class | ZIndex { BACKGROUND , MSX_PASSIVE , MSX_ACTIVE , OSDGUI , IMGUI } |
Determines stacking order of layers: layers with higher Z-indices are closer to the viewer. More... | |
enum class | Coverage { FULL , PARTIAL , NONE } |
Describes how much of the screen is currently covered by a particular layer. More... | |
Static Public Attributes inherited from openmsx::Renderer | |
static constexpr std::array< uint16_t, 16 > | GRAPHIC7_SPRITE_PALETTE |
Sprite palette in Graphic 7 mode. | |
Protected Member Functions inherited from openmsx::Renderer | |
Renderer ()=default | |
Protected Member Functions inherited from openmsx::VRAMObserver | |
~VRAMObserver ()=default | |
Protected Member Functions inherited from openmsx::Layer | |
Layer (Coverage coverage_, ZIndex z_) | |
Construct a layer. | |
void | setCoverage (Coverage coverage_) |
Changes the current coverage of this layer. | |
void | setZ (ZIndex z) |
Changes the current Z-index of this layer. | |
Dummy Renderer.
Definition at line 11 of file DummyRenderer.hh.
|
inline |
Definition at line 14 of file DummyRenderer.hh.
|
overridevirtual |
Signals the end of a frame.
time | The moment in emulated time the frame ends. Note: this is the same time stamp as the start of the next frame. |
Implements openmsx::Renderer.
Definition at line 16 of file DummyRenderer.cc.
|
overridevirtual |
Signals the start of a new frame.
The Renderer can use this to get fixed-per-frame settings from the VDP, such as PAL/NTSC timing.
time | The moment in emulated time the frame starts. |
Implements openmsx::Renderer.
Definition at line 13 of file DummyRenderer.cc.
|
overridevirtual |
Implements openmsx::Renderer.
Definition at line 6 of file DummyRenderer.cc.
|
overridevirtual |
|
overridevirtual |
Reinitialize Renderer state.
Implements openmsx::Renderer.
Definition at line 10 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a VDP background color change.
color | The new background color. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 29 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a VDP blink background color change.
color | The new blink background color. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 35 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a VDP blink foreground color change.
color | The new blink foreground color. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 32 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a VDP blinking state change.
enabled | The new blink state. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 38 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a horizontal scroll change: the border mask has been enabled/disabled.
masked | true iff enabled. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 53 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a color table base address change.
addr | The new base address. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 74 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a VDP display enabled change.
Both the regular border start/end and forced blanking by clearing the display enable bit are considered display enabled changes.
enabled | The new display enabled state. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 62 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a VDP display mode change.
mode | The new display mode. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 65 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a VDP foreground color change.
color | The new foreground color. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 26 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a horizontal adjust change.
Note that there is no similar method for vertical adjust updates, because vertical adjust is calculated at start of frame and then fixed.
adjust | The new adjust value. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 59 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a horizontal scroll change: the higher scroll value has changed.
scroll | The new scroll value. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 50 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a horizontal scroll change: the lower scroll value has changed.
scroll | The new scroll value. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 47 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a horizontal scroll change: the multi page setting has changed.
multiPage | The new multi page flag. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 56 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a name table base address change.
addr | The new base address. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 68 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a VDP palette change.
index | The index [0..15] in the palette that changes. |
grb | The new definition for the changed palette index: bit 10..8 is green, bit 6..4 is red and bit 2..0 is blue; all other bits are zero. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 41 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a pattern table base address change.
addr | The new base address. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 71 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a VDP sprites enabled change.
enabled | The new sprites enabled state. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 77 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a VDP superimposing change.
videoSource | Video that should be superimposed, nullptr if none. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 22 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a VDP transparency enable/disable change.
enabled | The new transparency state. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 19 of file DummyRenderer.cc.
|
overridevirtual |
Informs the renderer of a vertical scroll change.
scroll | The new scroll value. |
time | The moment in emulated time this change occurs. |
Implements openmsx::Renderer.
Definition at line 44 of file DummyRenderer.cc.
|
overridevirtual |
Informs the observer of a change in VRAM contents.
This update is sent just before the change, so the subcomponent can update itself to the given time based on the old contents.
offset | Offset of byte that will change, relative to window base address. |
time | The moment in emulated time this change occurs. |
Implements openmsx::VRAMObserver.
Definition at line 80 of file DummyRenderer.cc.
|
overridevirtual |
Informs the observer that the entire VRAM window will change.
This update is sent just before the change, so the subcomponent can update itself to the given time based on the old contents. This happens if the base/index masks are changed, or if the window becomes disabled. TODO: Separate enable/disable from window move?
enabled | Will the window be enabled after the change? If the observer keeps a cache which is based on VRAM contents, it is only necessary to flush the cache if the new window is enabled, because no reads are allowed from disabled windows. |
time | The moment in emulated time this change occurs. |
Implements openmsx::VRAMObserver.
Definition at line 83 of file DummyRenderer.cc.