OXYGENHUB
◆ main openmsx / src / video / v9990 / V9990PxConverter.hh
882 B · C++ · last changed chore(): initial commit 1 month ago source blame history raw
e8555c89 Andy McCall 1
#ifndef V9990PXCONVERTER_HH
2
#define V9990PXCONVERTER_HH
3
4
#include <cstdint>
5
#include <span>
6
7
namespace openmsx {
8
9
class V9990;
10
class V9990VRAM;
11
12
class V9990P1Converter
13
{
14
public:
15
	using Pixel = uint32_t;
16
17
	V9990P1Converter(V9990& vdp, std::span</*const*/ Pixel, 64> palette64);
18
19
	void convertLine(
20
		std::span<Pixel> buf, unsigned displayX, unsigned displayY,
21
		unsigned displayYA, unsigned displayYB, bool drawSprites);
22
23
private:
24
	V9990& vdp;
25
	V9990VRAM& vram;
26
	std::span</*const*/ Pixel, 64> palette64;
27
};
28
29
class V9990P2Converter
30
{
31
public:
32
	using Pixel = uint32_t;
33
34
	V9990P2Converter(V9990& vdp, std::span</*const*/ Pixel, 64> palette64);
35
36
	void convertLine(
37
		std::span<Pixel> buf, unsigned displayX, unsigned displayY,
38
		unsigned displayYA, bool drawSprites);
39
40
private:
41
	V9990& vdp;
42
	V9990VRAM& vram;
43
	std::span</*const*/ Pixel, 64> palette64;
44
};
45
46
} // namespace openmsx
47
48
#endif