/** * Copyright (c) 2025 Dominic Masters * * This software is released under the MIT License. * https://opensource.org/licenses/MIT */ #include "engine.h" #include "util/memory.h" #include "time/time.h" #include "console/console.h" #include "display/display.h" #include "asset/assetmanager.h" #include "rpg/rpg.h" engine_t ENGINE; asset_t *testAsset; errorret_t engineInit(void) { memoryZero(&ENGINE, sizeof(engine_t)); ENGINE.running = true; // Init systems. Order is important. timeInit(); consoleInit(); errorChain(assetManagerInit()); errorChain(displayInit()); rpgInit(); errorChain(assetManagerGetAsset("entities.dpi", &testAsset)); errorOk(); } errorret_t engineUpdate(void) { timeUpdate(); consoleUpdate(); assetManagerUpdate(); errorChain(displayUpdate()); errorOk(); } errorret_t engineDispose(void) { errorChain(displayDispose()); assetManagerDispose(); consoleDispose(); errorOk(); }