add yaze_flags, implement yaze_init, yaze_cleanup

This commit is contained in:
scawful
2024-08-08 21:21:24 -04:00
parent bda251767c
commit 8a2477dd1f
3 changed files with 22 additions and 7 deletions

View File

@@ -5,7 +5,8 @@
namespace yaze_test {
TEST(YazeCLibTest, InitializeAndCleanup) {
yaze_initialize();
yaze_flags flags;
yaze_init(&flags);
yaze_cleanup();
}

View File

@@ -2,11 +2,23 @@
#include "app/rom.h"
// TODO: Implement yaze_initialize
void yaze_initialize(void) {}
void yaze_init(yaze_flags* flags) {
if (flags == nullptr) {
return;
}
// TODO: Implement yaze_cleanup
void yaze_cleanup(void) {}
if (flags->rom_filename == nullptr) {
return;
}
flags->rom = yaze_load_rom(flags->rom_filename);
}
void yaze_cleanup(yaze_flags* flags) {
if (flags->rom) {
yaze_unload_rom(flags->rom);
}
}
z3_rom* yaze_load_rom(const char* filename) {
yaze::app::Rom* internal_rom;

View File

@@ -11,9 +11,11 @@ extern "C" {
#include "base/snes_color.h"
#include "base/sprite.h"
void yaze_initialize(void);
typedef struct yaze_flags yaze_flags;
void yaze_cleanup(void);
void yaze_init(yaze_flags*);
void yaze_cleanup(yaze_flags*);
typedef struct z3_rom z3_rom;
struct z3_rom {