[nostalgia/core] Make FileAddress args const ref
This commit is contained in:
parent
937bf3ad91
commit
504d248ce3
@ -164,28 +164,28 @@ ox::Error initConsole(Context *ctx) noexcept {
|
|||||||
|
|
||||||
ox::Error loadBgTileSheet(Context *ctx,
|
ox::Error loadBgTileSheet(Context *ctx,
|
||||||
int section,
|
int section,
|
||||||
ox::FileAddress tilesheetAddr,
|
const ox::FileAddress &tilesheetAddr,
|
||||||
ox::FileAddress paletteAddr) noexcept {
|
const ox::FileAddress &paletteAddr) noexcept {
|
||||||
oxRequire(tsStat, ctx->rom->stat(tilesheetAddr));
|
oxRequire(tsStat, ctx->rom->stat(tilesheetAddr));
|
||||||
oxRequire(ts, ctx->rom->directAccess(tilesheetAddr));
|
oxRequire(ts, ctx->rom->directAccess(tilesheetAddr));
|
||||||
GbaTileMapTarget target;
|
GbaTileMapTarget target;
|
||||||
target.pal.palette = &MEM_BG_PALETTE[section];
|
target.pal.palette = &MEM_BG_PALETTE[section];
|
||||||
target.bgCtl = &bgCtl(section);
|
target.bgCtl = &bgCtl(section);
|
||||||
target.tileMap = &ox::bit_cast<uint16_t*>(MEM_BG_TILES)[section * 512];
|
target.tileMap = &ox::bit_cast<uint16_t*>(MEM_BG_TILES)[section * 512];
|
||||||
oxReturnError(ox::readMC(ts, tsStat.size, &target));
|
oxReturnError(ox::readMC(ox::bit_cast<char*>(ts), tsStat.size, &target));
|
||||||
// load external palette if available
|
// load external palette if available
|
||||||
if (paletteAddr) {
|
if (paletteAddr) {
|
||||||
oxRequire(palStat, ctx->rom->stat(paletteAddr));
|
oxRequire(palStat, ctx->rom->stat(paletteAddr));
|
||||||
oxRequire(pal, ctx->rom->directAccess(paletteAddr));
|
oxRequire(pal, ctx->rom->directAccess(paletteAddr));
|
||||||
oxReturnError(ox::readMC(pal, palStat.size, &target.pal));
|
oxReturnError(ox::readMC(ox::bit_cast<char*>(pal), palStat.size, &target.pal));
|
||||||
}
|
}
|
||||||
return OxError(0);
|
return OxError(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
ox::Error loadSpriteTileSheet(Context *ctx,
|
ox::Error loadSpriteTileSheet(Context *ctx,
|
||||||
int section,
|
int section,
|
||||||
ox::FileAddress tilesheetAddr,
|
const ox::FileAddress &tilesheetAddr,
|
||||||
ox::FileAddress paletteAddr) noexcept {
|
const ox::FileAddress &paletteAddr) noexcept {
|
||||||
oxRequire(tsStat, ctx->rom->stat(tilesheetAddr));
|
oxRequire(tsStat, ctx->rom->stat(tilesheetAddr));
|
||||||
oxRequire(ts, ctx->rom->directAccess(tilesheetAddr));
|
oxRequire(ts, ctx->rom->directAccess(tilesheetAddr));
|
||||||
GbaTileMapTarget target;
|
GbaTileMapTarget target;
|
||||||
@ -193,31 +193,31 @@ ox::Error loadSpriteTileSheet(Context *ctx,
|
|||||||
// Is this needed? Should this be written to an equivalent sprite value?
|
// Is this needed? Should this be written to an equivalent sprite value?
|
||||||
// target.bgCtl = &bgCtl(section);
|
// target.bgCtl = &bgCtl(section);
|
||||||
target.tileMap = &ox::bit_cast<uint16_t*>(MEM_SPRITE_TILES)[section * 512];
|
target.tileMap = &ox::bit_cast<uint16_t*>(MEM_SPRITE_TILES)[section * 512];
|
||||||
oxReturnError(ox::readMC(ts, tsStat.size, &target));
|
oxReturnError(ox::readMC(ox::bit_cast<char*>(ts), tsStat.size, &target));
|
||||||
// load external palette if available
|
// load external palette if available
|
||||||
if (paletteAddr) {
|
if (paletteAddr) {
|
||||||
oxRequire(palStat, ctx->rom->stat(paletteAddr));
|
oxRequire(palStat, ctx->rom->stat(paletteAddr));
|
||||||
oxRequire(pal, ctx->rom->directAccess(paletteAddr));
|
oxRequire(pal, ctx->rom->directAccess(paletteAddr));
|
||||||
oxReturnError(ox::readMC(pal, palStat.size, &target.pal));
|
oxReturnError(ox::readMC(ox::bit_cast<char*>(pal), palStat.size, &target.pal));
|
||||||
}
|
}
|
||||||
return OxError(0);
|
return OxError(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
ox::Error loadBgPalette(Context *ctx, int section, ox::FileAddress paletteAddr) noexcept {
|
ox::Error loadBgPalette(Context *ctx, int section, const ox::FileAddress &paletteAddr) noexcept {
|
||||||
GbaPaletteTarget target;
|
GbaPaletteTarget target;
|
||||||
target.palette = &MEM_BG_PALETTE[section];
|
target.palette = &MEM_BG_PALETTE[section];
|
||||||
oxRequire(palStat, ctx->rom->stat(paletteAddr));
|
oxRequire(palStat, ctx->rom->stat(paletteAddr));
|
||||||
oxRequire(pal, ctx->rom->directAccess(paletteAddr));
|
oxRequire(pal, ctx->rom->directAccess(paletteAddr));
|
||||||
oxReturnError(ox::readMC(pal, palStat.size, &target));
|
oxReturnError(ox::readMC(ox::bit_cast<char*>(pal), palStat.size, &target));
|
||||||
return OxError(0);
|
return OxError(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
ox::Error loadSpritePalette(Context *ctx, int section, ox::FileAddress paletteAddr) noexcept {
|
ox::Error loadSpritePalette(Context *ctx, int section, const ox::FileAddress &paletteAddr) noexcept {
|
||||||
GbaPaletteTarget target;
|
GbaPaletteTarget target;
|
||||||
target.palette = &MEM_SPRITE_PALETTE[section];
|
target.palette = &MEM_SPRITE_PALETTE[section];
|
||||||
oxRequire(palStat, ctx->rom->stat(paletteAddr));
|
oxRequire(palStat, ctx->rom->stat(paletteAddr));
|
||||||
oxRequire(pal, ctx->rom->directAccess(paletteAddr));
|
oxRequire(pal, ctx->rom->directAccess(paletteAddr));
|
||||||
oxReturnError(ox::readMC(pal, palStat.size, &target));
|
oxReturnError(ox::readMC(ox::bit_cast<char*>(pal), palStat.size, &target));
|
||||||
return OxError(0);
|
return OxError(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -99,12 +99,12 @@ ox::Error initConsole(Context *ctx) noexcept;
|
|||||||
/**
|
/**
|
||||||
* @param section describes which section of the selected TileSheetSpace to use (e.g. MEM_PALLETE_BG[section])
|
* @param section describes which section of the selected TileSheetSpace to use (e.g. MEM_PALLETE_BG[section])
|
||||||
*/
|
*/
|
||||||
ox::Error loadBgTileSheet(Context *ctx, int section, ox::FileAddress tilesheet, ox::FileAddress palette = nullptr) noexcept;
|
ox::Error loadBgTileSheet(Context *ctx, int section, const ox::FileAddress &tilesheet, const ox::FileAddress &palette = nullptr) noexcept;
|
||||||
|
|
||||||
ox::Error loadSpriteTileSheet(Context *ctx,
|
ox::Error loadSpriteTileSheet(Context *ctx,
|
||||||
int section,
|
int section,
|
||||||
ox::FileAddress tilesheetAddr,
|
const ox::FileAddress &tilesheetAddr,
|
||||||
ox::FileAddress paletteAddr) noexcept;
|
const ox::FileAddress &paletteAddr) noexcept;
|
||||||
|
|
||||||
void puts(Context *ctx, int column, int row, const char *str) noexcept;
|
void puts(Context *ctx, int column, int row, const char *str) noexcept;
|
||||||
|
|
||||||
|
@ -29,20 +29,17 @@ ox::Error initConsole(Context *ctx) noexcept {
|
|||||||
|
|
||||||
ox::Error loadSpriteTileSheet(Context*,
|
ox::Error loadSpriteTileSheet(Context*,
|
||||||
int,
|
int,
|
||||||
ox::FileAddress,
|
const ox::FileAddress&,
|
||||||
ox::FileAddress) noexcept {
|
const ox::FileAddress&) noexcept {
|
||||||
return OxError(0);
|
return OxError(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
ox::Error loadBgTileSheet(Context *ctx,
|
ox::Error loadBgTileSheet(Context *ctx,
|
||||||
int section,
|
int section,
|
||||||
ox::FileAddress tilesheetPath,
|
const ox::FileAddress &tilesheetPath,
|
||||||
ox::FileAddress palettePath) noexcept {
|
const ox::FileAddress &palettePath) noexcept {
|
||||||
oxRequire(tilesheet, readObj<NostalgiaGraphic>(ctx, tilesheetPath));
|
oxRequire(tilesheet, readObj<NostalgiaGraphic>(ctx, tilesheetPath));
|
||||||
if (!palettePath) {
|
oxRequire(palette, readObj<NostalgiaPalette>(ctx, palettePath ? palettePath : tilesheet.defaultPalette));
|
||||||
palettePath = tilesheet.defaultPalette;
|
|
||||||
}
|
|
||||||
oxRequire(palette, readObj<NostalgiaPalette>(ctx, palettePath));
|
|
||||||
const unsigned bytesPerTile = tilesheet.bpp == 8 ? 64 : 32;
|
const unsigned bytesPerTile = tilesheet.bpp == 8 ? 64 : 32;
|
||||||
const auto tiles = tilesheet.pixels.size() / bytesPerTile;
|
const auto tiles = tilesheet.pixels.size() / bytesPerTile;
|
||||||
constexpr int width = 8;
|
constexpr int width = 8;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user