commit e48aa7feed1197969e9d75df1164f5af1eeb5a35 Author: Lephenixnoir Date: Sat Aug 21 11:48:06 2021 +0200 initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2c4f84b --- /dev/null +++ b/.gitignore @@ -0,0 +1,13 @@ +# Build files +/build-fx +/build-cg +/*.g1a +/*.g3a + +# Python bytecode + __pycache__/ + +# Common IDE files +*.sublime-project +*.sublime-workspace +.vscode diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..458af89 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,41 @@ +# Configure with [fxsdk build-fx] or [fxsdk build-cg], which provide the +# toolchain file and module path of the fxSDK + +cmake_minimum_required(VERSION 3.15) +project(MyAddin) + +include(GenerateG1A) +include(GenerateG3A) +include(Fxconv) +find_package(Gint 2.1 REQUIRED) + +set(SOURCES + src/main.c + # ... +) +# Shared assets, fx-9860G-only assets and fx-CG-50-only assets +set(ASSETS + # ... +) +set(ASSETS_fx + assets-fx/example.png + # ... +) +set(ASSETS_cg + assets-cg/example.png + # ... +) + +fxconv_declare_assets(${ASSETS} ${ASSETS_fx} ${ASSETS_cg} WITH_METADATA) + +add_executable(myaddin ${SOURCES} ${ASSETS} ${ASSETS_${FXSDK_PLATFORM}}) +target_compile_options(myaddin PRIVATE -Wall -Wextra -Os) +target_link_libraries(myaddin Gint::Gint) + +if("${FXSDK_PLATFORM_LONG}" STREQUAL fx9860G) + generate_g1a(TARGET myaddin OUTPUT "MyAddin.g1a" + NAME "MyAddin" ICON assets-fx/icon.png) +elseif("${FXSDK_PLATFORM_LONG}" STREQUAL fxCG50) + generate_g3a(TARGET myaddin OUTPUT "MyAddin.g3a" + NAME "MyAddin" ICONS assets-cg/icon-uns.png assets-cg/icon-sel.png) +endif() diff --git a/README.md b/README.md new file mode 100644 index 0000000..86789c9 --- /dev/null +++ b/README.md @@ -0,0 +1,7 @@ +# Duet + +Maybe it's a game about a duet. + +Maybe it's a game coded by a duet. + +Maybe it's both. diff --git a/assets-cg/example.png b/assets-cg/example.png new file mode 100644 index 0000000..8826800 Binary files /dev/null and b/assets-cg/example.png differ diff --git a/assets-cg/fxconv-metadata.txt b/assets-cg/fxconv-metadata.txt new file mode 100644 index 0000000..d435d5f --- /dev/null +++ b/assets-cg/fxconv-metadata.txt @@ -0,0 +1,3 @@ +example.png: + type: bopti-image + name: img_example diff --git a/assets-cg/icon-sel.png b/assets-cg/icon-sel.png new file mode 100644 index 0000000..7137b50 Binary files /dev/null and b/assets-cg/icon-sel.png differ diff --git a/assets-cg/icon-uns.png b/assets-cg/icon-uns.png new file mode 100644 index 0000000..3c99f62 Binary files /dev/null and b/assets-cg/icon-uns.png differ diff --git a/src/duet.h b/src/duet.h new file mode 100644 index 0000000..e827d61 --- /dev/null +++ b/src/duet.h @@ -0,0 +1,24 @@ +#pragma once + +#include +#include + +#include +#include + +//--- +// Data structures +//--- + +typedef struct { + float w, h; /* px */ + float x, y; /* px */ + float vx, vy; /* px/s */ + float vr; /* rad/s */ +} rect_t; + +//--- +// Rendering +//--- + +void dcircle(int x, int y, int color); diff --git a/src/main.c b/src/main.c new file mode 100644 index 0000000..1a9e9b4 --- /dev/null +++ b/src/main.c @@ -0,0 +1,12 @@ +#include +#include + +int main(void) +{ + dclear(C_WHITE); + dtext(1, 1, C_BLACK, "Sample fxSDK add-in."); + dupdate(); + + getkey(); + return 1; +} diff --git a/src/render.c b/src/render.c new file mode 100644 index 0000000..7cedec0 --- /dev/null +++ b/src/render.c @@ -0,0 +1,3 @@ +void dcircle(int x, int y, int color) +{ +}