openMSX
DummyRenderer.hh
Go to the documentation of this file.
1 #ifndef DUMMYRENDERER_HH
2 #define DUMMYRENDERER_HH
3 
4 #include "Renderer.hh"
5 #include "Layer.hh"
6 
7 namespace openmsx {
8 
11 class DummyRenderer final : public Renderer, public Layer
12 {
13 public:
14  // Renderer interface:
15  PostProcessor* getPostProcessor() const override;
16  void reInit() override;
17  void frameStart(EmuTime::param time) override;
18  void frameEnd(EmuTime::param time) override;
19  void updateTransparency(bool enabled, EmuTime::param time) override;
20  void updateSuperimposing(const RawFrame* videoSource, EmuTime::param time) override;
21  void updateForegroundColor(int color, EmuTime::param time) override;
22  void updateBackgroundColor(int color, EmuTime::param time) override;
23  void updateBlinkForegroundColor(int color, EmuTime::param time) override;
24  void updateBlinkBackgroundColor(int color, EmuTime::param time) override;
25  void updateBlinkState(bool enabled, EmuTime::param time) override;
26  void updatePalette(int index, int grb, EmuTime::param time) override;
27  void updateVerticalScroll(int scroll, EmuTime::param time) override;
28  void updateHorizontalScrollLow(byte scroll, EmuTime::param time) override;
29  void updateHorizontalScrollHigh(byte scroll, EmuTime::param time) override;
30  void updateBorderMask(bool masked, EmuTime::param time) override;
31  void updateMultiPage(bool multiPage, EmuTime::param time) override;
32  void updateHorizontalAdjust(int adjust, EmuTime::param time) override;
33  void updateDisplayEnabled(bool enabled, EmuTime::param time) override;
34  void updateDisplayMode(DisplayMode mode, EmuTime::param time) override;
35  void updateNameBase(int addr, EmuTime::param time) override;
36  void updatePatternBase(int addr, EmuTime::param time) override;
37  void updateColorBase(int addr, EmuTime::param time) override;
38  void updateSpritesEnabled(bool enabled, EmuTime::param time) override;
39  void updateVRAM(unsigned offset, EmuTime::param time) override;
40  void updateWindow(bool enabled, EmuTime::param time) override;
41 
42  // Layer interface:
43  void paint(OutputSurface& output) override;
44 };
45 
46 } // namespace openmsx
47 
48 #endif
openmsx::DummyRenderer::updateBlinkBackgroundColor
void updateBlinkBackgroundColor(int color, EmuTime::param time) override
Informs the renderer of a VDP blink background color change.
Definition: DummyRenderer.cc:35
openmsx::adjust
constexpr AdjustTables adjust
Definition: Y8950.cc:204
openmsx::DummyRenderer::updatePatternBase
void updatePatternBase(int addr, EmuTime::param time) override
Informs the renderer of a pattern table base address change.
Definition: DummyRenderer.cc:71
openmsx::DummyRenderer::updateBorderMask
void updateBorderMask(bool masked, EmuTime::param time) override
Informs the renderer of a horizontal scroll change: the border mask has been enabled/disabled.
Definition: DummyRenderer.cc:53
openmsx::DummyRenderer
Dummy Renderer.
Definition: DummyRenderer.hh:12
openmsx::DummyRenderer::updateSuperimposing
void updateSuperimposing(const RawFrame *videoSource, EmuTime::param time) override
Informs the renderer of a VDP superimposing change.
Definition: DummyRenderer.cc:22
openmsx::DummyRenderer::updateBlinkState
void updateBlinkState(bool enabled, EmuTime::param time) override
Informs the renderer of a VDP blinking state change.
Definition: DummyRenderer.cc:38
openmsx::Renderer
Abstract base class for Renderers.
Definition: Renderer.hh:23
openmsx::DummyRenderer::updateNameBase
void updateNameBase(int addr, EmuTime::param time) override
Informs the renderer of a name table base address change.
Definition: DummyRenderer.cc:68
openmsx::DummyRenderer::updateBackgroundColor
void updateBackgroundColor(int color, EmuTime::param time) override
Informs the renderer of a VDP background color change.
Definition: DummyRenderer.cc:29
Layer.hh
openmsx::DummyRenderer::updateDisplayEnabled
void updateDisplayEnabled(bool enabled, EmuTime::param time) override
Informs the renderer of a VDP display enabled change.
Definition: DummyRenderer.cc:62
openmsx::DisplayMode
Represents a VDP display mode.
Definition: DisplayMode.hh:16
openmsx::DummyRenderer::updateWindow
void updateWindow(bool enabled, EmuTime::param time) override
Informs the observer that the entire VRAM window will change.
Definition: DummyRenderer.cc:83
Renderer.hh
openmsx::DummyRenderer::updateVRAM
void updateVRAM(unsigned offset, EmuTime::param time) override
Informs the observer of a change in VRAM contents.
Definition: DummyRenderer.cc:80
openmsx::DummyRenderer::updatePalette
void updatePalette(int index, int grb, EmuTime::param time) override
Informs the renderer of a VDP palette change.
Definition: DummyRenderer.cc:41
openmsx::DummyRenderer::frameEnd
void frameEnd(EmuTime::param time) override
Signals the end of a frame.
Definition: DummyRenderer.cc:16
openmsx::DummyRenderer::updateVerticalScroll
void updateVerticalScroll(int scroll, EmuTime::param time) override
Informs the renderer of a vertical scroll change.
Definition: DummyRenderer.cc:44
openmsx::Layer
Interface for display layers.
Definition: Layer.hh:12
openmsx::DummyRenderer::updateHorizontalScrollHigh
void updateHorizontalScrollHigh(byte scroll, EmuTime::param time) override
Informs the renderer of a horizontal scroll change: the higher scroll value has changed.
Definition: DummyRenderer.cc:50
openmsx::PostProcessor
Abstract base class for post processors.
Definition: PostProcessor.hh:30
openmsx::DummyRenderer::updateDisplayMode
void updateDisplayMode(DisplayMode mode, EmuTime::param time) override
Informs the renderer of a VDP display mode change.
Definition: DummyRenderer.cc:65
openmsx::RawFrame
A video frame as output by the VDP scanline conversion unit, before any postprocessing filters are ap...
Definition: RawFrame.hh:26
openmsx::DummyRenderer::updateColorBase
void updateColorBase(int addr, EmuTime::param time) override
Informs the renderer of a color table base address change.
Definition: DummyRenderer.cc:74
openmsx::DummyRenderer::paint
void paint(OutputSurface &output) override
Paint this layer.
Definition: DummyRenderer.cc:86
openmsx::DummyRenderer::updateSpritesEnabled
void updateSpritesEnabled(bool enabled, EmuTime::param time) override
Informs the renderer of a VDP sprites enabled change.
Definition: DummyRenderer.cc:77
openmsx::DummyRenderer::updateBlinkForegroundColor
void updateBlinkForegroundColor(int color, EmuTime::param time) override
Informs the renderer of a VDP blink foreground color change.
Definition: DummyRenderer.cc:32
openmsx::OutputSurface
A frame buffer where pixels can be written to.
Definition: OutputSurface.hh:20
openmsx::DummyRenderer::frameStart
void frameStart(EmuTime::param time) override
Signals the start of a new frame.
Definition: DummyRenderer.cc:13
openmsx::DummyRenderer::updateHorizontalAdjust
void updateHorizontalAdjust(int adjust, EmuTime::param time) override
Informs the renderer of a horizontal adjust change.
Definition: DummyRenderer.cc:59
openmsx::DummyRenderer::updateForegroundColor
void updateForegroundColor(int color, EmuTime::param time) override
Informs the renderer of a VDP foreground color change.
Definition: DummyRenderer.cc:26
openmsx::DummyRenderer::updateHorizontalScrollLow
void updateHorizontalScrollLow(byte scroll, EmuTime::param time) override
Informs the renderer of a horizontal scroll change: the lower scroll value has changed.
Definition: DummyRenderer.cc:47
openmsx::DummyRenderer::getPostProcessor
PostProcessor * getPostProcessor() const override
See VDP::getPostProcessor.
Definition: DummyRenderer.cc:6
openmsx
Thanks to enen for testing this on a real cartridge:
Definition: Autofire.cc:5
openmsx::DummyRenderer::updateTransparency
void updateTransparency(bool enabled, EmuTime::param time) override
Informs the renderer of a VDP transparency enable/disable change.
Definition: DummyRenderer.cc:19
openmsx::DummyRenderer::reInit
void reInit() override
Reinitialise Renderer state.
Definition: DummyRenderer.cc:10
openmsx::DummyRenderer::updateMultiPage
void updateMultiPage(bool multiPage, EmuTime::param time) override
Informs the renderer of a horizontal scroll change: the multi page setting has changed.
Definition: DummyRenderer.cc:56