diff --git a/.gitmodules b/.gitmodules index 3af4d02..d0454b4 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,15 +1,6 @@ [submodule "lib/N64ModernRuntime"] path = lib/N64ModernRuntime url = https://github.com/N64Recomp/N64ModernRuntime -[submodule "lib/RmlUi"] - path = lib/RmlUi - url = https://github.com/mikke89/RmlUi -[submodule "lib/freetype-windows-binaries"] - path = lib/freetype-windows-binaries - url = https://github.com/ubawurinna/freetype-windows-binaries/ -[submodule "lib/lunasvg"] - path = lib/lunasvg - url = https://github.com/sammycage/lunasvg [submodule "lib/rt64"] path = lib/rt64 url = https://github.com/rt64/rt64 @@ -19,3 +10,6 @@ [submodule "BanjoRecompSyms"] path = BanjoRecompSyms url = https://github.com/BanjoRecomp/BanjoRecompSyms +[submodule "lib/RecompFrontend"] + path = lib/RecompFrontend + url = https://github.com/N64Recomp/RecompFrontend diff --git a/CMakeLists.txt b/CMakeLists.txt index 9fde522..21a1efa 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -51,15 +51,7 @@ endif() add_subdirectory(${CMAKE_SOURCE_DIR}/lib/rt64 ${CMAKE_BINARY_DIR}/rt64) -# set(BUILD_SHARED_LIBS_SAVED "${BUILD_SHARED_LIBS}") set(BUILD_SHARED_LIBS OFF) -SET(LUNASVG_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE) -add_subdirectory(${CMAKE_SOURCE_DIR}/lib/lunasvg) -# set(BUILD_SHARED_LIBS "${BUILD_SHARED_LIBS_SAVED}") -SET(RMLUI_SVG_PLUGIN ON CACHE BOOL "" FORCE) -SET(RMLUI_TESTS_ENABLED OFF CACHE BOOL "" FORCE) -add_subdirectory(${CMAKE_SOURCE_DIR}/lib/RmlUi) -target_compile_definitions(rmlui_core PRIVATE LUNASVG_BUILD_STATIC) add_subdirectory(${CMAKE_SOURCE_DIR}/lib/N64ModernRuntime) @@ -149,14 +141,10 @@ add_executable(BanjoRecompiled) set (SOURCES ${CMAKE_SOURCE_DIR}/src/main/main.cpp - ${CMAKE_SOURCE_DIR}/src/main/support.cpp ${CMAKE_SOURCE_DIR}/src/main/register_overlays.cpp ${CMAKE_SOURCE_DIR}/src/main/register_patches.cpp - ${CMAKE_SOURCE_DIR}/src/main/rt64_render_context.cpp ${CMAKE_SOURCE_DIR}/src/main/theme.cpp - ${CMAKE_SOURCE_DIR}/src/game/input.cpp - ${CMAKE_SOURCE_DIR}/src/game/controls.cpp ${CMAKE_SOURCE_DIR}/src/game/config.cpp ${CMAKE_SOURCE_DIR}/src/game/debug.cpp ${CMAKE_SOURCE_DIR}/src/game/recomp_api.cpp @@ -164,61 +152,22 @@ set (SOURCES ${CMAKE_SOURCE_DIR}/src/game/recomp_data_api.cpp ${CMAKE_SOURCE_DIR}/src/game/rom_decompression.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_renderer.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_state.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_launcher.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_config.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_prompt.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_config_sub_menu.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_color_hack.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_rml_hacks.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_elements.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_mod_details_panel.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_mod_installer.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_mod_menu.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_api.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_api_events.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_api_images.cpp - ${CMAKE_SOURCE_DIR}/src/ui/ui_utils.cpp - ${CMAKE_SOURCE_DIR}/src/ui/util/hsv.cpp - ${CMAKE_SOURCE_DIR}/src/ui/core/ui_context.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_button.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_clickable.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_container.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_element.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_image.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_label.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_radio.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_scroll_container.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_slider.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_span.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_style.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_text_input.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_theme.cpp - ${CMAKE_SOURCE_DIR}/src/ui/elements/ui_toggle.cpp - ${CMAKE_SOURCE_DIR}/rsp/n_aspMain.cpp - - ${CMAKE_SOURCE_DIR}/lib/RmlUi/Backends/RmlUi_Platform_SDL.cpp ) -if (APPLE) - list(APPEND SOURCES ${CMAKE_SOURCE_DIR}/src/main/support_apple.mm) -endif() - target_include_directories(BanjoRecompiled PRIVATE ${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/lib/N64ModernRuntime/N64Recomp/include ${CMAKE_SOURCE_DIR}/lib/concurrentqueue - ${CMAKE_SOURCE_DIR}/lib/GamepadMotionHelpers - ${CMAKE_SOURCE_DIR}/lib/RmlUi/Include - ${CMAKE_SOURCE_DIR}/lib/RmlUi/Backends ${CMAKE_SOURCE_DIR}/lib/rt64/src/contrib ${CMAKE_SOURCE_DIR}/lib/rt64/src/contrib/hlslpp/include ${CMAKE_SOURCE_DIR}/lib/rt64/src/contrib/dxc/inc ${CMAKE_SOURCE_DIR}/lib/rt64/src ${CMAKE_SOURCE_DIR}/lib/rt64/src/rhi ${CMAKE_SOURCE_DIR}/lib/rt64/src/render + ${CMAKE_SOURCE_DIR}/lib/RecompFrontend/recompinput/include + ${CMAKE_SOURCE_DIR}/lib/RecompFrontend/recompui/include + ${CMAKE_SOURCE_DIR}/lib/RecompFrontend/recompui/src ${CMAKE_SOURCE_DIR}/lib/freetype-windows-binaries/include ${CMAKE_SOURCE_DIR}/lib/rt64/src/contrib/nativefiledialog-extended/src/include ${CMAKE_SOURCE_DIR}/lib/SlotMap @@ -285,7 +234,7 @@ if (WIN32) PROPERTIES LINK_FLAGS_DEBUG "/SUBSYSTEM:CONSOLE" LINK_FLAGS_RELEASE "/SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup" - LINK_FLAGS_RELWITHDEBINFO "/SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup" + LINK_FLAGS_RELWITHDEBINFO "/SUBSYSTEM:CONSOLE" # "/SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup" LINK_FLAGS_MINSIZEREL "/SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup" ) @@ -349,16 +298,20 @@ if (CMAKE_SYSTEM_NAME MATCHES "Linux") target_link_libraries(BanjoRecompiled PRIVATE "-latomic -static-libstdc++" ${CMAKE_DL_LIBS} Threads::Threads) endif() +set(RECOMP_FRONTEND_N64MODERNRUNTIME_PATH ${CMAKE_SOURCE_DIR}/lib/N64ModernRuntime) +set(RECOMP_FRONTEND_RT64_PATH ${CMAKE_SOURCE_DIR}/lib/rt64) + +add_subdirectory(${CMAKE_SOURCE_DIR}/lib/RecompFrontend) + target_link_libraries(BanjoRecompiled PRIVATE PatchesLib RecompiledFuncs + recompui + recompinput librecomp ultramodern rt64 - RmlUi::Core - RmlUi::Debugger nfd - lunasvg ) # TODO fix the rt64 CMake script so that this doesn't need to be duplicated here diff --git a/assets/LatoLatin-Bold.ttf b/assets/LatoLatin-Bold.ttf new file mode 100644 index 0000000..c598c24 Binary files /dev/null and b/assets/LatoLatin-Bold.ttf differ diff --git a/assets/LatoLatin-BoldItalic.ttf b/assets/LatoLatin-BoldItalic.ttf new file mode 100644 index 0000000..c1f225a Binary files /dev/null and b/assets/LatoLatin-BoldItalic.ttf differ diff --git a/assets/LatoLatin-Italic.ttf b/assets/LatoLatin-Italic.ttf new file mode 100644 index 0000000..c61fc07 Binary files /dev/null and b/assets/LatoLatin-Italic.ttf differ diff --git a/assets/LatoLatin-Regular.ttf b/assets/LatoLatin-Regular.ttf new file mode 100644 index 0000000..bcc5778 Binary files /dev/null and b/assets/LatoLatin-Regular.ttf differ diff --git a/assets/banjkazoobg.svg b/assets/banjkazoobg.svg new file mode 100644 index 0000000..1fffad2 --- /dev/null +++ b/assets/banjkazoobg.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/config_menu.rml b/assets/config_menu.rml deleted file mode 100644 index 8d582dc..0000000 --- a/assets/config_menu.rml +++ /dev/null @@ -1,136 +0,0 @@ - - - - - Inventory - - - - - - - - - - -
-
-
- - -
General
-
-
- -