implement load_rom and unload_rom

This commit is contained in:
scawful
2024-08-06 22:23:43 -04:00
parent 88b87fc7cf
commit 38cbba79e2
3 changed files with 28 additions and 3 deletions

View File

@@ -1,15 +1,36 @@
#include "yaze.h"
#include "app/rom.h"
// TODO: Implement yaze_initialize
void yaze_initialize(void) {}
// TODO: Implement yaze_cleanup
void yaze_cleanup(void) {}
// TODO: Implement load_rom
Rom load_rom(const char* filename) {
yaze::app::Rom* internal_rom;
internal_rom = new yaze::app::Rom();
if (!internal_rom->LoadFromFile(filename).ok()) {
delete internal_rom;
Rom rom;
rom.impl = nullptr;
rom.filename = filename;
rom.data = nullptr;
rom.size = 0;
return rom;
}
Rom rom;
rom.impl = internal_rom;
rom.filename = filename;
rom.data = nullptr;
rom.data = internal_rom->data();
rom.size = internal_rom->size();
return rom;
}
void unload_rom(Rom rom) {
if (rom.impl) {
delete static_cast<yaze::app::Rom*>(rom.impl);
}
}