mirror of
https://github.com/zoriya/ComSquare.git
synced 2025-12-20 14:15:11 +00:00
tile rendering is working (still some issues)
This commit is contained in:
@@ -4,6 +4,11 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
namespace ComSquare::PPU
|
||||
{
|
||||
class PPU;
|
||||
}
|
||||
|
||||
#include <QtCore/QSortFilterProxyModel>
|
||||
#include <QEvent>
|
||||
#include <QMouseEvent>
|
||||
@@ -11,38 +16,12 @@
|
||||
#include "PPU/PPU.hpp"
|
||||
#include "Debugger/ClosableWindow.hpp"
|
||||
#include "Renderer/QtRenderer/QtSFML.hpp"
|
||||
#include "../../ui/ui_tileView.h"
|
||||
#include "../../../ui/ui_tileView.h"
|
||||
#include "Ram/Ram.hpp"
|
||||
|
||||
|
||||
namespace ComSquare::Debugger
|
||||
{
|
||||
class TileRenderer {
|
||||
private:
|
||||
//! @brief ram to render
|
||||
std::shared_ptr<Ram::Ram> _ram;
|
||||
//! @brief cgram to access the colors
|
||||
std::shared_ptr<Ram::Ram> _cgram;
|
||||
//! @brief The bpp to use while rendering
|
||||
int _bpp;
|
||||
//! @brief The palette number to use while rendering
|
||||
int _palette;
|
||||
public:
|
||||
//! @brief internal buffer
|
||||
std::array<std::array<uint32_t, 1024>, 1024> buffer;
|
||||
void setPalette(int palette);
|
||||
void setCgram(std::shared_ptr<Ram::Ram> ram);
|
||||
void setBpp(int bpp);
|
||||
void setRam(std::shared_ptr<Ram::Ram> ram);
|
||||
uint8_t getPixelReferenceFromTileRow(uint16_t tileRowAddress, uint8_t pixelIndex);
|
||||
std::vector<uint16_t> getPalette(int nbPalette);
|
||||
//! @brief render the selected ram
|
||||
void render();
|
||||
TileRenderer();
|
||||
TileRenderer(const TileRenderer &) = default;
|
||||
~TileRenderer() = default;
|
||||
TileRenderer &operator=(const TileRenderer &) = default;
|
||||
};
|
||||
|
||||
//! @brief window that allow the user to view all data going through the memory bus.
|
||||
class TileViewer : public QObject {
|
||||
|
||||
Reference in New Issue
Block a user