housekeeping
This commit is contained in:
@@ -37,10 +37,11 @@ add_executable(
|
||||
gui/editor/editor.cc
|
||||
gui/editor/overworld_editor.cc
|
||||
app/rom.cc
|
||||
app/core/constants.cc
|
||||
app/core/controller.cc
|
||||
app/gfx/bitmap.cc
|
||||
app/gfx/tile.cc
|
||||
app/gfx/palette.cc
|
||||
app/gfx/snes_palette.cc
|
||||
app/zelda3/overworld.cc
|
||||
app/zelda3/overworld_map.cc
|
||||
# GUI libraries
|
||||
@@ -67,7 +68,6 @@ target_include_directories(
|
||||
/
|
||||
Library/
|
||||
app/
|
||||
gui/
|
||||
"C:/msys64/mingw64/include/libpng16"
|
||||
"C:/msys64/mingw64/include/SDL2"
|
||||
"C:/msys64/mingw64/include"
|
||||
|
||||
1
src/app/core/constants.cc
Normal file
1
src/app/core/constants.cc
Normal file
@@ -0,0 +1 @@
|
||||
#include "app/core/constants.h"
|
||||
@@ -1,8 +1,10 @@
|
||||
#include "bitmap.h"
|
||||
|
||||
#include <SDL2/SDL.h>
|
||||
#include <rommapping.h>
|
||||
|
||||
#include "rom.h"
|
||||
#include "app/core/constants.h"
|
||||
#include "app/rom.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
@@ -28,7 +30,7 @@ int GetPCGfxAddress(char *romData, char id) {
|
||||
char gfxGamePointer3 = romData[gfxPointer3 + id];
|
||||
|
||||
return lorom_snes_to_pc(
|
||||
AddressFromBytes(gfxGamePointer1, gfxGamePointer2, gfxGamePointer3),
|
||||
yaze::app::rom::AddressFromBytes(gfxGamePointer1, gfxGamePointer2, gfxGamePointer3),
|
||||
info1);
|
||||
}
|
||||
|
||||
|
||||
@@ -2,8 +2,10 @@
|
||||
#define YAZE_APP_UTILS_BITMAP_H
|
||||
|
||||
#include <SDL2/SDL.h>
|
||||
#include <rommapping.h>
|
||||
|
||||
#include "Core/constants.h"
|
||||
#include "app/core/constants.h"
|
||||
#include "app/rom.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
|
||||
@@ -1,7 +1,17 @@
|
||||
#include "palette.h"
|
||||
#include "snes_palette.h"
|
||||
|
||||
#include <SDL2/SDL.h>
|
||||
#include <imgui/imgui.h>
|
||||
#include <palette.h>
|
||||
#include <tile.h>
|
||||
|
||||
#include <cstdint>
|
||||
#include <cstdlib>
|
||||
#include <cstring>
|
||||
#include <iostream>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
@@ -57,7 +67,7 @@ SNESPalette::SNESPalette(const unsigned char* snes_pal) {
|
||||
size_ = sizeof(snes_pal) / 2;
|
||||
for (unsigned i = 0; i < sizeof(snes_pal); i += 2) {
|
||||
SNESColor col;
|
||||
col.snes = snes_pal[i + 1] << (uint16_t) 8;
|
||||
col.snes = snes_pal[i + 1] << (uint16_t)8;
|
||||
col.snes = col.snes | snes_pal[i];
|
||||
m_color mColor = convertcolor_snes_to_rgb(col.snes);
|
||||
col.rgb = ImVec4(mColor.red, mColor.green, mColor.blue, 1.f);
|
||||
@@ -7,6 +7,8 @@
|
||||
#include <tile.h>
|
||||
|
||||
#include <cstdint>
|
||||
#include <cstdlib>
|
||||
#include <cstring>
|
||||
#include <iostream>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
@@ -13,8 +13,8 @@
|
||||
#include <unordered_map>
|
||||
#include <vector>
|
||||
|
||||
#include "app/core/constants.h"
|
||||
#include "app/gfx/palette.h"
|
||||
#include "app/gfx/snes_palette.h"
|
||||
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
|
||||
@@ -14,13 +14,17 @@
|
||||
#include <unordered_map>
|
||||
#include <vector>
|
||||
|
||||
#include "app/core/constants.h"
|
||||
#include "app/gfx/palette.h"
|
||||
#include "app/gfx/snes_palette.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
namespace gfx {
|
||||
|
||||
using ushort = unsigned short;
|
||||
using uchar = unsigned char;
|
||||
using ulong = unsigned long;
|
||||
using uint = unsigned int;
|
||||
|
||||
// vhopppcc cccccccc
|
||||
// [0, 1]
|
||||
// [2, 3]
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
|
||||
namespace rom {
|
||||
int AddressFromBytes(uchar addr1, uchar addr2, uchar addr3) {
|
||||
return (addr1 << 16) | (addr2 << 8) | addr3;
|
||||
}
|
||||
@@ -301,6 +301,6 @@ SDL_Texture *ROM::DrawgfxSheet(int offset) {
|
||||
}
|
||||
return sheet_texture;
|
||||
}
|
||||
|
||||
} // namespace rom
|
||||
} // namespace app
|
||||
} // namespace yaze
|
||||
@@ -19,7 +19,7 @@
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
|
||||
namespace rom {
|
||||
int AddressFromBytes(uchar addr1, uchar addr2, uchar addr3);
|
||||
|
||||
class ROM {
|
||||
@@ -68,6 +68,7 @@ class ROM {
|
||||
std::shared_ptr<SDL_Renderer> sdl_renderer_;
|
||||
};
|
||||
|
||||
} // namespace rom
|
||||
} // namespace app
|
||||
} // namespace yaze
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#include "overworld.h"
|
||||
|
||||
#include "gfx/tile.h"
|
||||
#include "rom.h"
|
||||
#include "app/gfx/tile.h"
|
||||
#include "app/rom.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
@@ -41,7 +41,7 @@ static TileInfo GetTilesInfo(ushort tile) {
|
||||
return TileInfo(tid, p, v, h, o);
|
||||
}
|
||||
|
||||
void Overworld::Load(ROM& rom) {
|
||||
void Overworld::Load(app::rom::ROM& rom) {
|
||||
rom_ = rom;
|
||||
for (int i = 0; i < 0x2B; i++) {
|
||||
tileLeftEntrance.push_back(constants::overworldEntranceAllowedTilesLeft +
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
#include "Core/constants.h"
|
||||
#include "gfx/bitmap.h"
|
||||
#include "gfx/tile.h"
|
||||
#include "overworld_map.h"
|
||||
#include "rom.h"
|
||||
#include "app/core/constants.h"
|
||||
#include "app/gfx/bitmap.h"
|
||||
#include "app/gfx/tile.h"
|
||||
#include "app/rom.h"
|
||||
#include "app/zelda3/overworld_map.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
@@ -21,7 +21,7 @@ class Overworld {
|
||||
Overworld() = default;
|
||||
~Overworld();
|
||||
|
||||
void Load(ROM& rom);
|
||||
void Load(app::rom::ROM& rom);
|
||||
|
||||
char* overworldMapPointer = new char[0x40000];
|
||||
gfx::Bitmap* overworldMapBitmap;
|
||||
@@ -30,7 +30,7 @@ class Overworld {
|
||||
gfx::Bitmap* owactualMapBitmap;
|
||||
|
||||
private:
|
||||
ROM rom_;
|
||||
app::rom::ROM rom_;
|
||||
int gameState = 1;
|
||||
bool isLoaded = false;
|
||||
uchar mapParent[160];
|
||||
|
||||
@@ -1,7 +1,11 @@
|
||||
#include "overworld_map.h"
|
||||
|
||||
#include "gfx/tile.h"
|
||||
#include "rom.h"
|
||||
#include <cstddef>
|
||||
#include <memory>
|
||||
|
||||
#include "app/gfx/bitmap.h"
|
||||
#include "app/gfx/tile.h"
|
||||
#include "app/rom.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
@@ -10,7 +14,7 @@ namespace zelda3 {
|
||||
using namespace core;
|
||||
using namespace gfx;
|
||||
|
||||
OverworldMap::OverworldMap(ROM& rom, const std::vector<gfx::Tile16> tiles16,
|
||||
OverworldMap::OverworldMap(app::rom::ROM& rom, const std::vector<gfx::Tile16> tiles16,
|
||||
uchar index)
|
||||
: rom_(rom), index(index), tiles16_(tiles16), parent(index) {
|
||||
if (index != 0x80) {
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
#include <cstddef>
|
||||
#include <memory>
|
||||
|
||||
#include "gfx/bitmap.h"
|
||||
#include "gfx/tile.h"
|
||||
#include "rom.h"
|
||||
#include "app/gfx/bitmap.h"
|
||||
#include "app/gfx/tile.h"
|
||||
#include "app/rom.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
@@ -37,12 +37,12 @@ class OverworldMap {
|
||||
ushort** tilesUsed;
|
||||
|
||||
bool needRefresh = false;
|
||||
ROM rom_;
|
||||
app::rom::ROM rom_;
|
||||
|
||||
uchar* currentOWgfx16Ptr = new uchar[(128 * 512) / 2];
|
||||
std::vector<gfx::Tile16> tiles16_;
|
||||
|
||||
OverworldMap(ROM& rom, const std::vector<gfx::Tile16> tiles16, uchar index);
|
||||
OverworldMap(app::rom::ROM& rom, const std::vector<gfx::Tile16> tiles16, uchar index);
|
||||
void BuildMap(uchar* mapParent, int count, int gameState,
|
||||
ushort** allmapsTilesLW, ushort** allmapsTilesDW,
|
||||
ushort** allmapsTilesSP);
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
#include <imgui/imgui_memory_editor.h>
|
||||
#include <imgui/misc/cpp/imgui_stdlib.h>
|
||||
|
||||
#include "core/constants.h"
|
||||
#include "gfx/palette.h"
|
||||
#include "gfx/tile.h"
|
||||
#include "app/core/constants.h"
|
||||
#include "app/gfx/snes_palette.h"
|
||||
#include "app/gfx/tile.h"
|
||||
#include "app/rom.h"
|
||||
#include "gui/editor/overworld_editor.h"
|
||||
#include "gui/icons.h"
|
||||
#include "gui/input.h"
|
||||
#include "rom.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace gui {
|
||||
@@ -518,6 +518,6 @@ void Editor::DrawHUDEditor() {
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace Editor
|
||||
} // namespace app
|
||||
} // namespace editor
|
||||
} // namespace gui
|
||||
} // namespace yaze
|
||||
@@ -7,12 +7,12 @@
|
||||
#include <imgui/imgui_memory_editor.h>
|
||||
#include <imgui/misc/cpp/imgui_stdlib.h>
|
||||
|
||||
#include "core/constants.h"
|
||||
#include "gfx/tile.h"
|
||||
#include "app/core/constants.h"
|
||||
#include "app/gfx/tile.h"
|
||||
#include "app/rom.h"
|
||||
#include "gui/editor/overworld_editor.h"
|
||||
#include "gui/icons.h"
|
||||
#include "gui/input.h"
|
||||
#include "rom.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace gui {
|
||||
@@ -45,7 +45,7 @@ class Editor {
|
||||
void *rom_data_;
|
||||
bool is_loaded_ = true;
|
||||
|
||||
app::ROM rom_;
|
||||
app::rom::ROM rom_;
|
||||
TextEditor asm_editor_;
|
||||
TextEditor::LanguageDefinition language_65816_;
|
||||
OverworldEditor overworld_editor_;
|
||||
@@ -66,7 +66,7 @@ class Editor {
|
||||
};
|
||||
|
||||
} // namespace editor
|
||||
} // namespace app
|
||||
} // namespace gui
|
||||
} // namespace yaze
|
||||
|
||||
#endif // YAZE_APP_VIEW_EDITOR_H
|
||||
@@ -4,11 +4,12 @@
|
||||
|
||||
#include <cmath>
|
||||
|
||||
#include "gfx/bitmap.h"
|
||||
#include "gfx/tile.h"
|
||||
#include "app/gfx/bitmap.h"
|
||||
#include "app/gfx/snes_palette.h"
|
||||
#include "app/gfx/tile.h"
|
||||
#include "app/zelda3/overworld.h"
|
||||
#include "gui/icons.h"
|
||||
|
||||
|
||||
// first step would be to decompress all gfx data from the game
|
||||
// (in alttp that's easy they're all located in the same location all the
|
||||
// same sheet size 128x32) have a code that convert PC address to SNES and
|
||||
@@ -31,7 +32,7 @@ namespace yaze {
|
||||
namespace gui {
|
||||
namespace editor {
|
||||
|
||||
void OverworldEditor::SetupROM(app::ROM &rom) { rom_ = rom; }
|
||||
void OverworldEditor::SetupROM(app::rom::ROM &rom) { rom_ = rom; }
|
||||
|
||||
void OverworldEditor::Update() {
|
||||
if (rom_.isLoaded()) {
|
||||
@@ -377,6 +378,6 @@ void OverworldEditor::Loadgfx() {
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace Editor
|
||||
} // namespace app
|
||||
} // namespace editor
|
||||
} // namespace gui
|
||||
} // namespace yaze
|
||||
@@ -1,12 +1,13 @@
|
||||
#ifndef YAZE_APP_EDITOR_OVERWORLDEDITOR_H
|
||||
#define YAZE_APP_EDITOR_OVERWORLDEDITOR_H
|
||||
|
||||
#include <imgui/imgui.h>
|
||||
#include <imgui.h>
|
||||
|
||||
#include "gfx/palette.h"
|
||||
#include "gfx/tile.h"
|
||||
#include "app/gfx/bitmap.h"
|
||||
#include "app/gfx/snes_palette.h"
|
||||
#include "app/gfx/tile.h"
|
||||
#include "app/zelda3/overworld.h"
|
||||
#include "gui/icons.h"
|
||||
#include "zelda3/overworld.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace gui {
|
||||
@@ -16,7 +17,7 @@ static constexpr unsigned int k4BPP = 4;
|
||||
|
||||
class OverworldEditor {
|
||||
public:
|
||||
void SetupROM(app::ROM &rom);
|
||||
void SetupROM(app::rom::ROM &rom);
|
||||
void Update();
|
||||
|
||||
private:
|
||||
@@ -29,7 +30,7 @@ class OverworldEditor {
|
||||
|
||||
void Loadgfx();
|
||||
|
||||
app::ROM rom_;
|
||||
app::rom::ROM rom_;
|
||||
app::zelda3::Overworld overworld_;
|
||||
app::gfx::Bitmap allgfxBitmap;
|
||||
app::gfx::SNESPalette palette_;
|
||||
|
||||
@@ -19,7 +19,7 @@ add_executable(
|
||||
../src/app/rom.cc
|
||||
../src/app/gfx/tile.cc
|
||||
../src/app/gfx/tile.cc
|
||||
../src/app/gfx/palette.cc
|
||||
../src/app/gfx/snes_palette.cc
|
||||
${SNESHACKING_PATH}/compressions/alttpcompression.c
|
||||
${SNESHACKING_PATH}/compressions/stdnintendo.c
|
||||
${SNESHACKING_PATH}/tile.c
|
||||
|
||||
Reference in New Issue
Block a user