diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 504800c..a4cf254 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,67 +1,17 @@ -# Copyright (c) 2025 Dominic Masters +# Copyright (c) 2026 Dominic Masters # # This software is released under the MIT License. # https://opensource.org/licenses/MIT -# Required Libraries -if(NOT cglm_FOUND) - find_package(cglm REQUIRED) - target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PUBLIC cglm) -endif() +add_subdirectory(dusk) -if(NOT libzip_FOUND) - find_package(libzip REQUIRED) - target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PUBLIC zip) -endif() +if(DUSK_TARGET_SYSTEM STREQUAL "linux") + add_subdirectory(dusklinux) -if(NOT Lua_FOUND) - find_package(Lua REQUIRED) - if(Lua_FOUND AND NOT TARGET Lua::Lua) - add_library(Lua::Lua INTERFACE IMPORTED) - set_target_properties( - Lua::Lua - PROPERTIES - INTERFACE_INCLUDE_DIRECTORIES "${LUA_INCLUDE_DIR}" - INTERFACE_LINK_LIBRARIES "${LUA_LIBRARIES}" - ) - endif() - target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PUBLIC Lua::Lua) -endif() +elseif(DUSK_TARGET_SYSTEM STREQUAL "psp") + add_subdirectory(duskpsp) -# Includes -target_include_directories(${DUSK_LIBRARY_TARGET_NAME} - PUBLIC - ${CMAKE_CURRENT_LIST_DIR} -) - -# Main Binary Source -target_sources(${DUSK_BINARY_TARGET_NAME} - PUBLIC - main.c -) - -# Defs -dusk_env_to_h(duskdefs.env duskdefs.h) - -# Subdirs -add_subdirectory(assert) -add_subdirectory(asset) -add_subdirectory(debug) -add_subdirectory(display) -add_subdirectory(engine) -add_subdirectory(error) -add_subdirectory(event) -add_subdirectory(input) -add_subdirectory(item) -add_subdirectory(locale) -add_subdirectory(map) -add_subdirectory(scene) -add_subdirectory(script) -add_subdirectory(story) -add_subdirectory(time) -add_subdirectory(ui) -add_subdirectory(util) - -# if(DUSK_TARGET_SYSTEM STREQUAL "linux" OR DUSK_TARGET_SYSTEM STREQUAL "psp") -# add_subdirectory(thread) -# endif() \ No newline at end of file +elseif(DUSK_TARGET_SYSTEM STREQUAL "gamecube" OR DUSK_TARGET_SYSTEM STREQUAL "wii") + add_subdirectory(duskdolphin) + +endif() \ No newline at end of file diff --git a/src/debug/debug.c b/src/debug/debug.c deleted file mode 100644 index f856306..0000000 --- a/src/debug/debug.c +++ /dev/null @@ -1,37 +0,0 @@ -/** - * Copyright (c) 2025 Dominic Masters - * - * This software is released under the MIT License. - * https://opensource.org/licenses/MIT - */ - -#include "debug.h" - -#if PSP - #include "platform/psp.h" -#elif DOLPHIN - #include "platform/dolphin.h" -#endif - -void debugPrint(const char_t *message, ...) { - va_list args; - va_start(args, message); - vprintf(message, args); - va_end(args); - - #if PSP - debugPrintPSP(message, args); - #elif DOLPHIN - debugPrintDolphin(message, args); - #endif -} - -void debugFlush() { - #if PSP - // No buffering, so nothing to flush - #elif DOLPHIN - debugFlushDolphin(); - #else - fflush(stdout); - #endif -} \ No newline at end of file diff --git a/src/dusk/CMakeLists.txt b/src/dusk/CMakeLists.txt new file mode 100644 index 0000000..504800c --- /dev/null +++ b/src/dusk/CMakeLists.txt @@ -0,0 +1,67 @@ +# Copyright (c) 2025 Dominic Masters +# +# This software is released under the MIT License. +# https://opensource.org/licenses/MIT + +# Required Libraries +if(NOT cglm_FOUND) + find_package(cglm REQUIRED) + target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PUBLIC cglm) +endif() + +if(NOT libzip_FOUND) + find_package(libzip REQUIRED) + target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PUBLIC zip) +endif() + +if(NOT Lua_FOUND) + find_package(Lua REQUIRED) + if(Lua_FOUND AND NOT TARGET Lua::Lua) + add_library(Lua::Lua INTERFACE IMPORTED) + set_target_properties( + Lua::Lua + PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${LUA_INCLUDE_DIR}" + INTERFACE_LINK_LIBRARIES "${LUA_LIBRARIES}" + ) + endif() + target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PUBLIC Lua::Lua) +endif() + +# Includes +target_include_directories(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC + ${CMAKE_CURRENT_LIST_DIR} +) + +# Main Binary Source +target_sources(${DUSK_BINARY_TARGET_NAME} + PUBLIC + main.c +) + +# Defs +dusk_env_to_h(duskdefs.env duskdefs.h) + +# Subdirs +add_subdirectory(assert) +add_subdirectory(asset) +add_subdirectory(debug) +add_subdirectory(display) +add_subdirectory(engine) +add_subdirectory(error) +add_subdirectory(event) +add_subdirectory(input) +add_subdirectory(item) +add_subdirectory(locale) +add_subdirectory(map) +add_subdirectory(scene) +add_subdirectory(script) +add_subdirectory(story) +add_subdirectory(time) +add_subdirectory(ui) +add_subdirectory(util) + +# if(DUSK_TARGET_SYSTEM STREQUAL "linux" OR DUSK_TARGET_SYSTEM STREQUAL "psp") +# add_subdirectory(thread) +# endif() \ No newline at end of file diff --git a/src/assert/CMakeLists.txt b/src/dusk/assert/CMakeLists.txt similarity index 100% rename from src/assert/CMakeLists.txt rename to src/dusk/assert/CMakeLists.txt diff --git a/src/assert/assert.c b/src/dusk/assert/assert.c similarity index 100% rename from src/assert/assert.c rename to src/dusk/assert/assert.c diff --git a/src/assert/assert.h b/src/dusk/assert/assert.h similarity index 100% rename from src/assert/assert.h rename to src/dusk/assert/assert.h diff --git a/src/asset/CMakeLists.txt b/src/dusk/asset/CMakeLists.txt similarity index 100% rename from src/asset/CMakeLists.txt rename to src/dusk/asset/CMakeLists.txt diff --git a/src/asset/asset.c b/src/dusk/asset/asset.c similarity index 100% rename from src/asset/asset.c rename to src/dusk/asset/asset.c diff --git a/src/asset/asset.h b/src/dusk/asset/asset.h similarity index 100% rename from src/asset/asset.h rename to src/dusk/asset/asset.h diff --git a/src/asset/assettype.h b/src/dusk/asset/assettype.h similarity index 100% rename from src/asset/assettype.h rename to src/dusk/asset/assettype.h diff --git a/src/asset/type/CMakeLists.txt b/src/dusk/asset/type/CMakeLists.txt similarity index 100% rename from src/asset/type/CMakeLists.txt rename to src/dusk/asset/type/CMakeLists.txt diff --git a/src/asset/type/assetlanguage.c b/src/dusk/asset/type/assetlanguage.c similarity index 100% rename from src/asset/type/assetlanguage.c rename to src/dusk/asset/type/assetlanguage.c diff --git a/src/asset/type/assetlanguage.h b/src/dusk/asset/type/assetlanguage.h similarity index 100% rename from src/asset/type/assetlanguage.h rename to src/dusk/asset/type/assetlanguage.h diff --git a/src/asset/type/assetmap.c b/src/dusk/asset/type/assetmap.c similarity index 100% rename from src/asset/type/assetmap.c rename to src/dusk/asset/type/assetmap.c diff --git a/src/asset/type/assetmap.h b/src/dusk/asset/type/assetmap.h similarity index 100% rename from src/asset/type/assetmap.h rename to src/dusk/asset/type/assetmap.h diff --git a/src/asset/type/assetmapchunk.c b/src/dusk/asset/type/assetmapchunk.c similarity index 100% rename from src/asset/type/assetmapchunk.c rename to src/dusk/asset/type/assetmapchunk.c diff --git a/src/asset/type/assetmapchunk.h b/src/dusk/asset/type/assetmapchunk.h similarity index 100% rename from src/asset/type/assetmapchunk.h rename to src/dusk/asset/type/assetmapchunk.h diff --git a/src/asset/type/assetpalette.c b/src/dusk/asset/type/assetpalette.c similarity index 100% rename from src/asset/type/assetpalette.c rename to src/dusk/asset/type/assetpalette.c diff --git a/src/asset/type/assetpalette.h b/src/dusk/asset/type/assetpalette.h similarity index 100% rename from src/asset/type/assetpalette.h rename to src/dusk/asset/type/assetpalette.h diff --git a/src/asset/type/assetscript.c b/src/dusk/asset/type/assetscript.c similarity index 100% rename from src/asset/type/assetscript.c rename to src/dusk/asset/type/assetscript.c diff --git a/src/asset/type/assetscript.h b/src/dusk/asset/type/assetscript.h similarity index 100% rename from src/asset/type/assetscript.h rename to src/dusk/asset/type/assetscript.h diff --git a/src/asset/type/assettexture.c b/src/dusk/asset/type/assettexture.c similarity index 100% rename from src/asset/type/assettexture.c rename to src/dusk/asset/type/assettexture.c diff --git a/src/asset/type/assettexture.h b/src/dusk/asset/type/assettexture.h similarity index 100% rename from src/asset/type/assettexture.h rename to src/dusk/asset/type/assettexture.h diff --git a/src/asset/type/assettileset.c b/src/dusk/asset/type/assettileset.c similarity index 100% rename from src/asset/type/assettileset.c rename to src/dusk/asset/type/assettileset.c diff --git a/src/asset/type/assettileset.h b/src/dusk/asset/type/assettileset.h similarity index 100% rename from src/asset/type/assettileset.h rename to src/dusk/asset/type/assettileset.h diff --git a/src/dusk/debug/CMakeLists.txt b/src/dusk/debug/CMakeLists.txt new file mode 100644 index 0000000..57c6ef0 --- /dev/null +++ b/src/dusk/debug/CMakeLists.txt @@ -0,0 +1,9 @@ +# Copyright (c) 2025 Dominic Masters +# +# This software is released under the MIT License. +# https://opensource.org/licenses/MIT + +# Sources +target_sources(${DUSK_LIBRARY_TARGET_NAME} + PUBLIC +) \ No newline at end of file diff --git a/src/debug/debug.h b/src/dusk/debug/debug.h similarity index 100% rename from src/debug/debug.h rename to src/dusk/debug/debug.h diff --git a/src/debug/platform/CMakeLists.txt b/src/dusk/debug/platform/CMakeLists.txt similarity index 100% rename from src/debug/platform/CMakeLists.txt rename to src/dusk/debug/platform/CMakeLists.txt diff --git a/src/debug/platform/dolphin.c b/src/dusk/debug/platform/dolphin.c similarity index 100% rename from src/debug/platform/dolphin.c rename to src/dusk/debug/platform/dolphin.c diff --git a/src/debug/platform/dolphin.h b/src/dusk/debug/platform/dolphin.h similarity index 100% rename from src/debug/platform/dolphin.h rename to src/dusk/debug/platform/dolphin.h diff --git a/src/debug/platform/psp.c b/src/dusk/debug/platform/psp.c similarity index 100% rename from src/debug/platform/psp.c rename to src/dusk/debug/platform/psp.c diff --git a/src/debug/platform/psp.h b/src/dusk/debug/platform/psp.h similarity index 100% rename from src/debug/platform/psp.h rename to src/dusk/debug/platform/psp.h diff --git a/src/display/CMakeLists.txt b/src/dusk/display/CMakeLists.txt similarity index 100% rename from src/display/CMakeLists.txt rename to src/dusk/display/CMakeLists.txt diff --git a/src/display/camera/CMakeLists.txt b/src/dusk/display/camera/CMakeLists.txt similarity index 100% rename from src/display/camera/CMakeLists.txt rename to src/dusk/display/camera/CMakeLists.txt diff --git a/src/display/camera/camera.c b/src/dusk/display/camera/camera.c similarity index 100% rename from src/display/camera/camera.c rename to src/dusk/display/camera/camera.c diff --git a/src/display/camera/camera.h b/src/dusk/display/camera/camera.h similarity index 100% rename from src/display/camera/camera.h rename to src/dusk/display/camera/camera.h diff --git a/src/display/color.csv b/src/dusk/display/color.csv similarity index 100% rename from src/display/color.csv rename to src/dusk/display/color.csv diff --git a/src/display/display.c b/src/dusk/display/display.c similarity index 100% rename from src/display/display.c rename to src/dusk/display/display.c diff --git a/src/display/display.h b/src/dusk/display/display.h similarity index 100% rename from src/display/display.h rename to src/dusk/display/display.h diff --git a/src/display/displaydefs.h b/src/dusk/display/displaydefs.h similarity index 100% rename from src/display/displaydefs.h rename to src/dusk/display/displaydefs.h diff --git a/src/display/framebuffer.c b/src/dusk/display/framebuffer.c similarity index 100% rename from src/display/framebuffer.c rename to src/dusk/display/framebuffer.c diff --git a/src/display/framebuffer.h b/src/dusk/display/framebuffer.h similarity index 100% rename from src/display/framebuffer.h rename to src/dusk/display/framebuffer.h diff --git a/src/display/mesh/CMakeLists.txt b/src/dusk/display/mesh/CMakeLists.txt similarity index 100% rename from src/display/mesh/CMakeLists.txt rename to src/dusk/display/mesh/CMakeLists.txt diff --git a/src/display/mesh/mesh.c b/src/dusk/display/mesh/mesh.c similarity index 100% rename from src/display/mesh/mesh.c rename to src/dusk/display/mesh/mesh.c diff --git a/src/display/mesh/mesh.h b/src/dusk/display/mesh/mesh.h similarity index 100% rename from src/display/mesh/mesh.h rename to src/dusk/display/mesh/mesh.h diff --git a/src/display/mesh/quad.c b/src/dusk/display/mesh/quad.c similarity index 100% rename from src/display/mesh/quad.c rename to src/dusk/display/mesh/quad.c diff --git a/src/display/mesh/quad.h b/src/dusk/display/mesh/quad.h similarity index 100% rename from src/display/mesh/quad.h rename to src/dusk/display/mesh/quad.h diff --git a/src/display/platform/CMakeLists.txt b/src/dusk/display/platform/CMakeLists.txt similarity index 100% rename from src/display/platform/CMakeLists.txt rename to src/dusk/display/platform/CMakeLists.txt diff --git a/src/display/platform/dolphin.c b/src/dusk/display/platform/dolphin.c similarity index 100% rename from src/display/platform/dolphin.c rename to src/dusk/display/platform/dolphin.c diff --git a/src/display/platform/dolphin.h b/src/dusk/display/platform/dolphin.h similarity index 100% rename from src/display/platform/dolphin.h rename to src/dusk/display/platform/dolphin.h diff --git a/src/display/platform/psp.c b/src/dusk/display/platform/psp.c similarity index 100% rename from src/display/platform/psp.c rename to src/dusk/display/platform/psp.c diff --git a/src/display/platform/psp.h b/src/dusk/display/platform/psp.h similarity index 100% rename from src/display/platform/psp.h rename to src/dusk/display/platform/psp.h diff --git a/src/display/platform/sdl2.c b/src/dusk/display/platform/sdl2.c similarity index 100% rename from src/display/platform/sdl2.c rename to src/dusk/display/platform/sdl2.c diff --git a/src/display/platform/sdl2.h b/src/dusk/display/platform/sdl2.h similarity index 100% rename from src/display/platform/sdl2.h rename to src/dusk/display/platform/sdl2.h diff --git a/src/display/screen.c b/src/dusk/display/screen.c similarity index 100% rename from src/display/screen.c rename to src/dusk/display/screen.c diff --git a/src/display/screen.h b/src/dusk/display/screen.h similarity index 100% rename from src/display/screen.h rename to src/dusk/display/screen.h diff --git a/src/display/spritebatch.c b/src/dusk/display/spritebatch.c similarity index 100% rename from src/display/spritebatch.c rename to src/dusk/display/spritebatch.c diff --git a/src/display/spritebatch.h b/src/dusk/display/spritebatch.h similarity index 100% rename from src/display/spritebatch.h rename to src/dusk/display/spritebatch.h diff --git a/src/display/text.c b/src/dusk/display/text.c similarity index 100% rename from src/display/text.c rename to src/dusk/display/text.c diff --git a/src/display/text.h b/src/dusk/display/text.h similarity index 100% rename from src/display/text.h rename to src/dusk/display/text.h diff --git a/src/display/texture/CMakeLists.txt b/src/dusk/display/texture/CMakeLists.txt similarity index 100% rename from src/display/texture/CMakeLists.txt rename to src/dusk/display/texture/CMakeLists.txt diff --git a/src/display/texture/palette.c b/src/dusk/display/texture/palette.c similarity index 100% rename from src/display/texture/palette.c rename to src/dusk/display/texture/palette.c diff --git a/src/display/texture/palette.h b/src/dusk/display/texture/palette.h similarity index 100% rename from src/display/texture/palette.h rename to src/dusk/display/texture/palette.h diff --git a/src/display/texture/palettetexture.c b/src/dusk/display/texture/palettetexture.c similarity index 100% rename from src/display/texture/palettetexture.c rename to src/dusk/display/texture/palettetexture.c diff --git a/src/display/texture/palettetexture.h b/src/dusk/display/texture/palettetexture.h similarity index 100% rename from src/display/texture/palettetexture.h rename to src/dusk/display/texture/palettetexture.h diff --git a/src/display/texture/texture.c b/src/dusk/display/texture/texture.c similarity index 100% rename from src/display/texture/texture.c rename to src/dusk/display/texture/texture.c diff --git a/src/display/texture/texture.h b/src/dusk/display/texture/texture.h similarity index 100% rename from src/display/texture/texture.h rename to src/dusk/display/texture/texture.h diff --git a/src/display/texture/tileset.c b/src/dusk/display/texture/tileset.c similarity index 100% rename from src/display/texture/tileset.c rename to src/dusk/display/texture/tileset.c diff --git a/src/display/texture/tileset.h b/src/dusk/display/texture/tileset.h similarity index 100% rename from src/display/texture/tileset.h rename to src/dusk/display/texture/tileset.h diff --git a/src/dusk.h b/src/dusk/dusk.h similarity index 95% rename from src/dusk.h rename to src/dusk/dusk.h index 3739db9..a810cd9 100644 --- a/src/dusk.h +++ b/src/dusk/dusk.h @@ -22,6 +22,8 @@ #include #include +#include "duskplatform.h" + #if PSP #include "duskpsp.h" #elif DOLPHIN diff --git a/src/duskdefs.env b/src/dusk/duskdefs.env similarity index 100% rename from src/duskdefs.env rename to src/dusk/duskdefs.env diff --git a/src/engine/CMakeLists.txt b/src/dusk/engine/CMakeLists.txt similarity index 100% rename from src/engine/CMakeLists.txt rename to src/dusk/engine/CMakeLists.txt diff --git a/src/engine/engine.c b/src/dusk/engine/engine.c similarity index 100% rename from src/engine/engine.c rename to src/dusk/engine/engine.c diff --git a/src/engine/engine.h b/src/dusk/engine/engine.h similarity index 100% rename from src/engine/engine.h rename to src/dusk/engine/engine.h diff --git a/src/error/CMakeLists.txt b/src/dusk/error/CMakeLists.txt similarity index 100% rename from src/error/CMakeLists.txt rename to src/dusk/error/CMakeLists.txt diff --git a/src/error/error.c b/src/dusk/error/error.c similarity index 100% rename from src/error/error.c rename to src/dusk/error/error.c diff --git a/src/error/error.h b/src/dusk/error/error.h similarity index 100% rename from src/error/error.h rename to src/dusk/error/error.h diff --git a/src/event/CMakeLists.txt b/src/dusk/event/CMakeLists.txt similarity index 100% rename from src/event/CMakeLists.txt rename to src/dusk/event/CMakeLists.txt diff --git a/src/event/event.c b/src/dusk/event/event.c similarity index 100% rename from src/event/event.c rename to src/dusk/event/event.c diff --git a/src/event/event.h b/src/dusk/event/event.h similarity index 100% rename from src/event/event.h rename to src/dusk/event/event.h diff --git a/src/event/eventcallback.h b/src/dusk/event/eventcallback.h similarity index 100% rename from src/event/eventcallback.h rename to src/dusk/event/eventcallback.h diff --git a/src/event/eventuser.h b/src/dusk/event/eventuser.h similarity index 100% rename from src/event/eventuser.h rename to src/dusk/event/eventuser.h diff --git a/src/input/CMakeLists.txt b/src/dusk/input/CMakeLists.txt similarity index 100% rename from src/input/CMakeLists.txt rename to src/dusk/input/CMakeLists.txt diff --git a/src/input/input.c b/src/dusk/input/input.c similarity index 100% rename from src/input/input.c rename to src/dusk/input/input.c diff --git a/src/input/input.csv b/src/dusk/input/input.csv similarity index 100% rename from src/input/input.csv rename to src/dusk/input/input.csv diff --git a/src/input/input.h b/src/dusk/input/input.h similarity index 100% rename from src/input/input.h rename to src/dusk/input/input.h diff --git a/src/input/inputaction.c b/src/dusk/input/inputaction.c similarity index 100% rename from src/input/inputaction.c rename to src/dusk/input/inputaction.c diff --git a/src/input/inputaction.h b/src/dusk/input/inputaction.h similarity index 100% rename from src/input/inputaction.h rename to src/dusk/input/inputaction.h diff --git a/src/input/inputbutton.c b/src/dusk/input/inputbutton.c similarity index 100% rename from src/input/inputbutton.c rename to src/dusk/input/inputbutton.c diff --git a/src/input/inputbutton.h b/src/dusk/input/inputbutton.h similarity index 100% rename from src/input/inputbutton.h rename to src/dusk/input/inputbutton.h diff --git a/src/item/CMakeLists.txt b/src/dusk/item/CMakeLists.txt similarity index 100% rename from src/item/CMakeLists.txt rename to src/dusk/item/CMakeLists.txt diff --git a/src/item/backpack.c b/src/dusk/item/backpack.c similarity index 100% rename from src/item/backpack.c rename to src/dusk/item/backpack.c diff --git a/src/item/backpack.h b/src/dusk/item/backpack.h similarity index 100% rename from src/item/backpack.h rename to src/dusk/item/backpack.h diff --git a/src/item/inventory.c b/src/dusk/item/inventory.c similarity index 100% rename from src/item/inventory.c rename to src/dusk/item/inventory.c diff --git a/src/item/inventory.h b/src/dusk/item/inventory.h similarity index 100% rename from src/item/inventory.h rename to src/dusk/item/inventory.h diff --git a/src/item/item.csv b/src/dusk/item/item.csv similarity index 100% rename from src/item/item.csv rename to src/dusk/item/item.csv diff --git a/src/locale/CMakeLists.txt b/src/dusk/locale/CMakeLists.txt similarity index 100% rename from src/locale/CMakeLists.txt rename to src/dusk/locale/CMakeLists.txt diff --git a/src/locale/locale.h b/src/dusk/locale/locale.h similarity index 100% rename from src/locale/locale.h rename to src/dusk/locale/locale.h diff --git a/src/locale/localeinfo.h b/src/dusk/locale/localeinfo.h similarity index 100% rename from src/locale/localeinfo.h rename to src/dusk/locale/localeinfo.h diff --git a/src/locale/localemanager.c b/src/dusk/locale/localemanager.c similarity index 100% rename from src/locale/localemanager.c rename to src/dusk/locale/localemanager.c diff --git a/src/locale/localemanager.h b/src/dusk/locale/localemanager.h similarity index 100% rename from src/locale/localemanager.h rename to src/dusk/locale/localemanager.h diff --git a/src/main.c b/src/dusk/main.c similarity index 100% rename from src/main.c rename to src/dusk/main.c diff --git a/src/map/CMakeLists.txt b/src/dusk/map/CMakeLists.txt similarity index 100% rename from src/map/CMakeLists.txt rename to src/dusk/map/CMakeLists.txt diff --git a/src/map/map.c b/src/dusk/map/map.c similarity index 100% rename from src/map/map.c rename to src/dusk/map/map.c diff --git a/src/map/map.h b/src/dusk/map/map.h similarity index 100% rename from src/map/map.h rename to src/dusk/map/map.h diff --git a/src/map/mapchunk.c b/src/dusk/map/mapchunk.c similarity index 100% rename from src/map/mapchunk.c rename to src/dusk/map/mapchunk.c diff --git a/src/map/mapchunk.h b/src/dusk/map/mapchunk.h similarity index 100% rename from src/map/mapchunk.h rename to src/dusk/map/mapchunk.h diff --git a/src/map/maptile.c b/src/dusk/map/maptile.c similarity index 100% rename from src/map/maptile.c rename to src/dusk/map/maptile.c diff --git a/src/map/maptile.h b/src/dusk/map/maptile.h similarity index 100% rename from src/map/maptile.h rename to src/dusk/map/maptile.h diff --git a/src/map/worldpos.c b/src/dusk/map/worldpos.c similarity index 100% rename from src/map/worldpos.c rename to src/dusk/map/worldpos.c diff --git a/src/map/worldpos.h b/src/dusk/map/worldpos.h similarity index 100% rename from src/map/worldpos.h rename to src/dusk/map/worldpos.h diff --git a/src/null.c b/src/dusk/null.c similarity index 100% rename from src/null.c rename to src/dusk/null.c diff --git a/src/scene/CMakeLists.txt b/src/dusk/scene/CMakeLists.txt similarity index 100% rename from src/scene/CMakeLists.txt rename to src/dusk/scene/CMakeLists.txt diff --git a/src/scene/scene.c b/src/dusk/scene/scene.c similarity index 100% rename from src/scene/scene.c rename to src/dusk/scene/scene.c diff --git a/src/scene/scene.h b/src/dusk/scene/scene.h similarity index 100% rename from src/scene/scene.h rename to src/dusk/scene/scene.h diff --git a/src/script/CMakeLists.txt b/src/dusk/script/CMakeLists.txt similarity index 100% rename from src/script/CMakeLists.txt rename to src/dusk/script/CMakeLists.txt diff --git a/src/script/module/CMakeLists.txt b/src/dusk/script/module/CMakeLists.txt similarity index 100% rename from src/script/module/CMakeLists.txt rename to src/dusk/script/module/CMakeLists.txt diff --git a/src/script/module/display/CMakeLists.txt b/src/dusk/script/module/display/CMakeLists.txt similarity index 100% rename from src/script/module/display/CMakeLists.txt rename to src/dusk/script/module/display/CMakeLists.txt diff --git a/src/script/module/display/modulecamera.c b/src/dusk/script/module/display/modulecamera.c similarity index 100% rename from src/script/module/display/modulecamera.c rename to src/dusk/script/module/display/modulecamera.c diff --git a/src/script/module/display/modulecamera.h b/src/dusk/script/module/display/modulecamera.h similarity index 100% rename from src/script/module/display/modulecamera.h rename to src/dusk/script/module/display/modulecamera.h diff --git a/src/script/module/display/modulecolor.c b/src/dusk/script/module/display/modulecolor.c similarity index 100% rename from src/script/module/display/modulecolor.c rename to src/dusk/script/module/display/modulecolor.c diff --git a/src/script/module/display/modulecolor.h b/src/dusk/script/module/display/modulecolor.h similarity index 100% rename from src/script/module/display/modulecolor.h rename to src/dusk/script/module/display/modulecolor.h diff --git a/src/script/module/display/moduleglm.c b/src/dusk/script/module/display/moduleglm.c similarity index 100% rename from src/script/module/display/moduleglm.c rename to src/dusk/script/module/display/moduleglm.c diff --git a/src/script/module/display/moduleglm.h b/src/dusk/script/module/display/moduleglm.h similarity index 100% rename from src/script/module/display/moduleglm.h rename to src/dusk/script/module/display/moduleglm.h diff --git a/src/script/module/display/modulescreen.c b/src/dusk/script/module/display/modulescreen.c similarity index 100% rename from src/script/module/display/modulescreen.c rename to src/dusk/script/module/display/modulescreen.c diff --git a/src/script/module/display/modulescreen.h b/src/dusk/script/module/display/modulescreen.h similarity index 100% rename from src/script/module/display/modulescreen.h rename to src/dusk/script/module/display/modulescreen.h diff --git a/src/script/module/display/modulespritebatch.c b/src/dusk/script/module/display/modulespritebatch.c similarity index 100% rename from src/script/module/display/modulespritebatch.c rename to src/dusk/script/module/display/modulespritebatch.c diff --git a/src/script/module/display/modulespritebatch.h b/src/dusk/script/module/display/modulespritebatch.h similarity index 100% rename from src/script/module/display/modulespritebatch.h rename to src/dusk/script/module/display/modulespritebatch.h diff --git a/src/script/module/display/moduletext.c b/src/dusk/script/module/display/moduletext.c similarity index 100% rename from src/script/module/display/moduletext.c rename to src/dusk/script/module/display/moduletext.c diff --git a/src/script/module/display/moduletext.h b/src/dusk/script/module/display/moduletext.h similarity index 100% rename from src/script/module/display/moduletext.h rename to src/dusk/script/module/display/moduletext.h diff --git a/src/script/module/display/moduletexture.c b/src/dusk/script/module/display/moduletexture.c similarity index 100% rename from src/script/module/display/moduletexture.c rename to src/dusk/script/module/display/moduletexture.c diff --git a/src/script/module/display/moduletexture.h b/src/dusk/script/module/display/moduletexture.h similarity index 100% rename from src/script/module/display/moduletexture.h rename to src/dusk/script/module/display/moduletexture.h diff --git a/src/script/module/display/moduletileset.c b/src/dusk/script/module/display/moduletileset.c similarity index 100% rename from src/script/module/display/moduletileset.c rename to src/dusk/script/module/display/moduletileset.c diff --git a/src/script/module/display/moduletileset.h b/src/dusk/script/module/display/moduletileset.h similarity index 100% rename from src/script/module/display/moduletileset.h rename to src/dusk/script/module/display/moduletileset.h diff --git a/src/script/module/event/CMakeLists.txt b/src/dusk/script/module/event/CMakeLists.txt similarity index 100% rename from src/script/module/event/CMakeLists.txt rename to src/dusk/script/module/event/CMakeLists.txt diff --git a/src/script/module/event/moduleevent.c b/src/dusk/script/module/event/moduleevent.c similarity index 100% rename from src/script/module/event/moduleevent.c rename to src/dusk/script/module/event/moduleevent.c diff --git a/src/script/module/event/moduleevent.h b/src/dusk/script/module/event/moduleevent.h similarity index 100% rename from src/script/module/event/moduleevent.h rename to src/dusk/script/module/event/moduleevent.h diff --git a/src/script/module/input/CMakeLists.txt b/src/dusk/script/module/input/CMakeLists.txt similarity index 100% rename from src/script/module/input/CMakeLists.txt rename to src/dusk/script/module/input/CMakeLists.txt diff --git a/src/script/module/input/moduleinput.c b/src/dusk/script/module/input/moduleinput.c similarity index 100% rename from src/script/module/input/moduleinput.c rename to src/dusk/script/module/input/moduleinput.c diff --git a/src/script/module/input/moduleinput.h b/src/dusk/script/module/input/moduleinput.h similarity index 100% rename from src/script/module/input/moduleinput.h rename to src/dusk/script/module/input/moduleinput.h diff --git a/src/script/module/item/CMakeLists.txt b/src/dusk/script/module/item/CMakeLists.txt similarity index 100% rename from src/script/module/item/CMakeLists.txt rename to src/dusk/script/module/item/CMakeLists.txt diff --git a/src/script/module/item/moduleitem.c b/src/dusk/script/module/item/moduleitem.c similarity index 100% rename from src/script/module/item/moduleitem.c rename to src/dusk/script/module/item/moduleitem.c diff --git a/src/script/module/item/moduleitem.h b/src/dusk/script/module/item/moduleitem.h similarity index 100% rename from src/script/module/item/moduleitem.h rename to src/dusk/script/module/item/moduleitem.h diff --git a/src/script/module/locale/CMakeLists.txt b/src/dusk/script/module/locale/CMakeLists.txt similarity index 100% rename from src/script/module/locale/CMakeLists.txt rename to src/dusk/script/module/locale/CMakeLists.txt diff --git a/src/script/module/locale/modulelocale.c b/src/dusk/script/module/locale/modulelocale.c similarity index 100% rename from src/script/module/locale/modulelocale.c rename to src/dusk/script/module/locale/modulelocale.c diff --git a/src/script/module/locale/modulelocale.h b/src/dusk/script/module/locale/modulelocale.h similarity index 100% rename from src/script/module/locale/modulelocale.h rename to src/dusk/script/module/locale/modulelocale.h diff --git a/src/script/module/map/CMakeLists.txt b/src/dusk/script/module/map/CMakeLists.txt similarity index 100% rename from src/script/module/map/CMakeLists.txt rename to src/dusk/script/module/map/CMakeLists.txt diff --git a/src/script/module/map/modulemap.c b/src/dusk/script/module/map/modulemap.c similarity index 100% rename from src/script/module/map/modulemap.c rename to src/dusk/script/module/map/modulemap.c diff --git a/src/script/module/map/modulemap.h b/src/dusk/script/module/map/modulemap.h similarity index 100% rename from src/script/module/map/modulemap.h rename to src/dusk/script/module/map/modulemap.h diff --git a/src/script/module/moduleplatform.h b/src/dusk/script/module/moduleplatform.h similarity index 100% rename from src/script/module/moduleplatform.h rename to src/dusk/script/module/moduleplatform.h diff --git a/src/script/module/scene/CMakeLists.txt b/src/dusk/script/module/scene/CMakeLists.txt similarity index 100% rename from src/script/module/scene/CMakeLists.txt rename to src/dusk/script/module/scene/CMakeLists.txt diff --git a/src/script/module/scene/modulescene.c b/src/dusk/script/module/scene/modulescene.c similarity index 100% rename from src/script/module/scene/modulescene.c rename to src/dusk/script/module/scene/modulescene.c diff --git a/src/script/module/scene/modulescene.h b/src/dusk/script/module/scene/modulescene.h similarity index 100% rename from src/script/module/scene/modulescene.h rename to src/dusk/script/module/scene/modulescene.h diff --git a/src/script/module/story/CMakeLists.txt b/src/dusk/script/module/story/CMakeLists.txt similarity index 100% rename from src/script/module/story/CMakeLists.txt rename to src/dusk/script/module/story/CMakeLists.txt diff --git a/src/script/module/story/modulestoryflag.c b/src/dusk/script/module/story/modulestoryflag.c similarity index 100% rename from src/script/module/story/modulestoryflag.c rename to src/dusk/script/module/story/modulestoryflag.c diff --git a/src/script/module/story/modulestoryflag.h b/src/dusk/script/module/story/modulestoryflag.h similarity index 100% rename from src/script/module/story/modulestoryflag.h rename to src/dusk/script/module/story/modulestoryflag.h diff --git a/src/script/module/system/CMakeLists.txt b/src/dusk/script/module/system/CMakeLists.txt similarity index 100% rename from src/script/module/system/CMakeLists.txt rename to src/dusk/script/module/system/CMakeLists.txt diff --git a/src/script/module/system/modulesystem.c b/src/dusk/script/module/system/modulesystem.c similarity index 100% rename from src/script/module/system/modulesystem.c rename to src/dusk/script/module/system/modulesystem.c diff --git a/src/script/module/system/modulesystem.h b/src/dusk/script/module/system/modulesystem.h similarity index 100% rename from src/script/module/system/modulesystem.h rename to src/dusk/script/module/system/modulesystem.h diff --git a/src/script/module/time/CMakeLists.txt b/src/dusk/script/module/time/CMakeLists.txt similarity index 100% rename from src/script/module/time/CMakeLists.txt rename to src/dusk/script/module/time/CMakeLists.txt diff --git a/src/script/module/time/moduletime.c b/src/dusk/script/module/time/moduletime.c similarity index 100% rename from src/script/module/time/moduletime.c rename to src/dusk/script/module/time/moduletime.c diff --git a/src/script/module/time/moduletime.h b/src/dusk/script/module/time/moduletime.h similarity index 100% rename from src/script/module/time/moduletime.h rename to src/dusk/script/module/time/moduletime.h diff --git a/src/script/module/ui/CMakeLists.txt b/src/dusk/script/module/ui/CMakeLists.txt similarity index 100% rename from src/script/module/ui/CMakeLists.txt rename to src/dusk/script/module/ui/CMakeLists.txt diff --git a/src/script/module/ui/moduleui.c b/src/dusk/script/module/ui/moduleui.c similarity index 100% rename from src/script/module/ui/moduleui.c rename to src/dusk/script/module/ui/moduleui.c diff --git a/src/script/module/ui/moduleui.h b/src/dusk/script/module/ui/moduleui.h similarity index 100% rename from src/script/module/ui/moduleui.h rename to src/dusk/script/module/ui/moduleui.h diff --git a/src/script/scriptcontext.c b/src/dusk/script/scriptcontext.c similarity index 100% rename from src/script/scriptcontext.c rename to src/dusk/script/scriptcontext.c diff --git a/src/script/scriptcontext.h b/src/dusk/script/scriptcontext.h similarity index 100% rename from src/script/scriptcontext.h rename to src/dusk/script/scriptcontext.h diff --git a/src/script/scriptmanager.c b/src/dusk/script/scriptmanager.c similarity index 100% rename from src/script/scriptmanager.c rename to src/dusk/script/scriptmanager.c diff --git a/src/script/scriptmanager.h b/src/dusk/script/scriptmanager.h similarity index 100% rename from src/script/scriptmanager.h rename to src/dusk/script/scriptmanager.h diff --git a/src/script/scriptmodule.c b/src/dusk/script/scriptmodule.c similarity index 100% rename from src/script/scriptmodule.c rename to src/dusk/script/scriptmodule.c diff --git a/src/script/scriptmodule.h b/src/dusk/script/scriptmodule.h similarity index 100% rename from src/script/scriptmodule.h rename to src/dusk/script/scriptmodule.h diff --git a/src/script/scriptvalue.h b/src/dusk/script/scriptvalue.h similarity index 100% rename from src/script/scriptvalue.h rename to src/dusk/script/scriptvalue.h diff --git a/src/story/CMakeLists.txt b/src/dusk/story/CMakeLists.txt similarity index 100% rename from src/story/CMakeLists.txt rename to src/dusk/story/CMakeLists.txt diff --git a/src/story/storyflag.c b/src/dusk/story/storyflag.c similarity index 100% rename from src/story/storyflag.c rename to src/dusk/story/storyflag.c diff --git a/src/story/storyflag.csv b/src/dusk/story/storyflag.csv similarity index 100% rename from src/story/storyflag.csv rename to src/dusk/story/storyflag.csv diff --git a/src/story/storyflag.h b/src/dusk/story/storyflag.h similarity index 100% rename from src/story/storyflag.h rename to src/dusk/story/storyflag.h diff --git a/src/story/storyflagdefs.h b/src/dusk/story/storyflagdefs.h similarity index 100% rename from src/story/storyflagdefs.h rename to src/dusk/story/storyflagdefs.h diff --git a/src/thread/CMakeLists.txt b/src/dusk/thread/CMakeLists.txt similarity index 100% rename from src/thread/CMakeLists.txt rename to src/dusk/thread/CMakeLists.txt diff --git a/src/thread/thread.c b/src/dusk/thread/thread.c similarity index 100% rename from src/thread/thread.c rename to src/dusk/thread/thread.c diff --git a/src/thread/thread.h b/src/dusk/thread/thread.h similarity index 100% rename from src/thread/thread.h rename to src/dusk/thread/thread.h diff --git a/src/thread/threadmutex.c b/src/dusk/thread/threadmutex.c similarity index 100% rename from src/thread/threadmutex.c rename to src/dusk/thread/threadmutex.c diff --git a/src/thread/threadmutex.h b/src/dusk/thread/threadmutex.h similarity index 100% rename from src/thread/threadmutex.h rename to src/dusk/thread/threadmutex.h diff --git a/src/time/CMakeLists.txt b/src/dusk/time/CMakeLists.txt similarity index 100% rename from src/time/CMakeLists.txt rename to src/dusk/time/CMakeLists.txt diff --git a/src/time/time.c b/src/dusk/time/time.c similarity index 100% rename from src/time/time.c rename to src/dusk/time/time.c diff --git a/src/time/time.h b/src/dusk/time/time.h similarity index 100% rename from src/time/time.h rename to src/dusk/time/time.h diff --git a/src/ui/CMakeLists.txt b/src/dusk/ui/CMakeLists.txt similarity index 100% rename from src/ui/CMakeLists.txt rename to src/dusk/ui/CMakeLists.txt diff --git a/src/ui/ui.c b/src/dusk/ui/ui.c similarity index 100% rename from src/ui/ui.c rename to src/dusk/ui/ui.c diff --git a/src/ui/ui.h b/src/dusk/ui/ui.h similarity index 100% rename from src/ui/ui.h rename to src/dusk/ui/ui.h diff --git a/src/util/CMakeLists.txt b/src/dusk/util/CMakeLists.txt similarity index 100% rename from src/util/CMakeLists.txt rename to src/dusk/util/CMakeLists.txt diff --git a/src/util/array.c b/src/dusk/util/array.c similarity index 100% rename from src/util/array.c rename to src/dusk/util/array.c diff --git a/src/util/array.h b/src/dusk/util/array.h similarity index 100% rename from src/util/array.h rename to src/dusk/util/array.h diff --git a/src/util/endian.c b/src/dusk/util/endian.c similarity index 100% rename from src/util/endian.c rename to src/dusk/util/endian.c diff --git a/src/util/endian.h b/src/dusk/util/endian.h similarity index 100% rename from src/util/endian.h rename to src/dusk/util/endian.h diff --git a/src/util/math.c b/src/dusk/util/math.c similarity index 100% rename from src/util/math.c rename to src/dusk/util/math.c diff --git a/src/util/math.h b/src/dusk/util/math.h similarity index 100% rename from src/util/math.h rename to src/dusk/util/math.h diff --git a/src/util/memory.c b/src/dusk/util/memory.c similarity index 100% rename from src/util/memory.c rename to src/dusk/util/memory.c diff --git a/src/util/memory.h b/src/dusk/util/memory.h similarity index 100% rename from src/util/memory.h rename to src/dusk/util/memory.h diff --git a/src/util/sort.c b/src/dusk/util/sort.c similarity index 100% rename from src/util/sort.c rename to src/dusk/util/sort.c diff --git a/src/util/sort.h b/src/dusk/util/sort.h similarity index 100% rename from src/util/sort.h rename to src/dusk/util/sort.h diff --git a/src/util/string.c b/src/dusk/util/string.c similarity index 100% rename from src/util/string.c rename to src/dusk/util/string.c diff --git a/src/util/string.h b/src/dusk/util/string.h similarity index 100% rename from src/util/string.h rename to src/dusk/util/string.h diff --git a/src/duskdolphin/CMakeLists.txt b/src/duskdolphin/CMakeLists.txt new file mode 100644 index 0000000..4e1b430 --- /dev/null +++ b/src/duskdolphin/CMakeLists.txt @@ -0,0 +1,4 @@ +# Copyright (c) 2026 Dominic Masters +# +# This software is released under the MIT License. +# https://opensource.org/licenses/MIT diff --git a/src/duskdolphin.h b/src/duskdolphin/duskplatform.h similarity index 100% rename from src/duskdolphin.h rename to src/duskdolphin/duskplatform.h diff --git a/src/dusklinux/CMakeLists.txt b/src/dusklinux/CMakeLists.txt new file mode 100644 index 0000000..b3f0dba --- /dev/null +++ b/src/dusklinux/CMakeLists.txt @@ -0,0 +1,7 @@ +# Copyright (c) 2026 Dominic Masters +# +# This software is released under the MIT License. +# https://opensource.org/licenses/MIT + +# Subdirs +add_subdirectory(debug) \ No newline at end of file diff --git a/src/debug/CMakeLists.txt b/src/dusklinux/debug/CMakeLists.txt similarity index 87% rename from src/debug/CMakeLists.txt rename to src/dusklinux/debug/CMakeLists.txt index 2b0f4b7..a01ae13 100644 --- a/src/debug/CMakeLists.txt +++ b/src/dusklinux/debug/CMakeLists.txt @@ -7,6 +7,4 @@ target_sources(${DUSK_LIBRARY_TARGET_NAME} PUBLIC debug.c -) - -add_subdirectory(platform) \ No newline at end of file +) \ No newline at end of file diff --git a/src/dusklinux/debug/debug.c b/src/dusklinux/debug/debug.c new file mode 100644 index 0000000..e92aa45 --- /dev/null +++ b/src/dusklinux/debug/debug.c @@ -0,0 +1,19 @@ +/** + * Copyright (c) 2025 Dominic Masters + * + * This software is released under the MIT License. + * https://opensource.org/licenses/MIT + */ + +#include "debug/debug.h" + +void debugPrint(const char_t *message, ...) { + va_list args; + va_start(args, message); + vprintf(message, args); + va_end(args); +} + +void debugFlush() { + fflush(stdout); +} \ No newline at end of file diff --git a/src/dusklinux/duskplatform.h b/src/dusklinux/duskplatform.h new file mode 100644 index 0000000..2b65475 --- /dev/null +++ b/src/dusklinux/duskplatform.h @@ -0,0 +1,8 @@ +/** + * Copyright (c) 2026 Dominic Masters + * + * This software is released under the MIT License. + * https://opensource.org/licenses/MIT + */ + +#pragma once diff --git a/src/duskpsp/CMakeLists.txt b/src/duskpsp/CMakeLists.txt new file mode 100644 index 0000000..e69de29 diff --git a/src/duskpsp.h b/src/duskpsp/duskplatform.h similarity index 100% rename from src/duskpsp.h rename to src/duskpsp/duskplatform.h