From e957e1becc0faab16b9225fcecd5d7c8d51298f9 Mon Sep 17 00:00:00 2001 From: Slyvtt Date: Sun, 19 Feb 2023 21:48:15 +0100 Subject: [PATCH] initial commit --- .gitignore | 13 +++ CMakeLists.txt | 38 ++++++++ DispCap1.bmp | Bin 0 -> 2462454 bytes assets-cg/example.png | Bin 0 -> 3816 bytes assets-cg/fxconv-metadata.txt | 3 + assets-cg/icon-sel.png | Bin 0 -> 8388 bytes assets-cg/icon-uns.png | Bin 0 -> 4629 bytes assets-fx/example.png | Bin 0 -> 3569 bytes assets-fx/fxconv-metadata.txt | 3 + assets-fx/icon.png | Bin 0 -> 7429 bytes data.txt | 7 ++ src/main.c | 174 ++++++++++++++++++++++++++++++++++ 12 files changed, 238 insertions(+) create mode 100644 .gitignore create mode 100644 CMakeLists.txt create mode 100644 DispCap1.bmp create mode 100644 assets-cg/example.png create mode 100644 assets-cg/fxconv-metadata.txt create mode 100644 assets-cg/icon-sel.png create mode 100644 assets-cg/icon-uns.png create mode 100644 assets-fx/example.png create mode 100644 assets-fx/fxconv-metadata.txt create mode 100644 assets-fx/icon.png create mode 100644 data.txt create mode 100644 src/main.c diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..be51d83 --- /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..fb9de98 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,38 @@ +# 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.9 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 fxCG50) + generate_g3a(TARGET myaddin OUTPUT "Scanftst.g3a" + NAME "ScanfTst" ICONS assets-cg/icon-uns.png assets-cg/icon-sel.png) +endif() diff --git a/DispCap1.bmp b/DispCap1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..d98d9bfe57173e33ad17593a0768a77a003e8cdb GIT binary patch literal 2462454 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 z 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 R0uqpb1SB8<34Aw!{|CC7<7xl^ literal 0 HcmV?d00001 diff --git a/assets-cg/example.png b/assets-cg/example.png new file mode 100644 index 0000000000000000000000000000000000000000..8826800383eeae92dade9545feaeb68faf0720f2 GIT binary patch literal 3816 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 eRZ5JQiUR=bBzf^!G-(0=0000 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 ag#Q8hHNm}t`+-sb0000 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 LNkvXXu0mjfMjhGA literal 0 HcmV?d00001 diff --git a/assets-fx/example.png b/assets-fx/example.png new file mode 100644 index 0000000000000000000000000000000000000000..b26ba9ac37f37f0bbc06db263613c33184d47a12 GIT binary patch literal 3569 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 +#include +#include +#include +#include +#include + +char c; +char c1, c2; +char temp1, temp2; +int i1, i2; +float f1, f2; + +float sd; +float sf; +int n[9]; + +void operate( void ) +{ + + FILE* fichier = fopen( "data.txt", "r" ); + fscanf( fichier, "%c%n", &c, &n[0] ); + fscanf( fichier, "%d%n", &i1, &n[1] ); + fscanf( fichier, "%f%n", &f1, &n[2] ); + + /* + fscanf( fichier, "%c", &temp1 ); + fscanf( fichier, "%c", &c1 ); + fscanf( fichier, "%c", &temp2 ); + fscanf( fichier, "%c", &c2 ); + */ + + fscanf( fichier, "%c%n%c%n%c%n%c%n", &temp1, &n[3], &c1, &n[4], &temp2, &n[5], &c2, &n[6] ); + + fscanf( fichier, "%u%n", &i2, &n[7] ); + fscanf( fichier, "%g%n", &f2, &n[8] ); + fclose( fichier ); +} + + +int main(void) +{ + __printf_enable_fp(); + + dclear(C_WHITE); + dtext(1, 1, C_BLACK, "Sample fxSDK add-in."); + dupdate(); + + gint_world_switch( GINT_CALL( operate )); + + dprint( 1, 20, C_GREEN, "0/ FILE value : char : %c - n= %d ", c, n[0] ); + dprint( 1, 30, C_BLUE, "1/ FILE value : integer : %d - n= %d ", i1, n[1] ); + dprint( 1, 40, C_RED, "2/ FILE value : float : %f - n= %d ", f1, n[2] ); + dprint( 1, 50, C_GREEN, "3/ FILE value : char : %c - %c - n= %d ", temp1, c1, n[4] ); + dprint( 1, 60, C_GREEN, "4/ FILE value : char : %c - %c - n= %d ", temp2, c2, n[6] ); + dprint( 1, 70, C_BLUE, "5/ FILE value : integer : %d - n= %d ", i2, n[7] ); + dprint( 1, 80, C_RED, "6/ FILE value : float : %f - n= %d ", f2, n[8] ); + + + sscanf( "6789.123", "%f", &sf ); + sscanf( "-123456789.123456789", "%f", &sd ); + dprint( 1, 90, C_RED, "7/ STR value : float : %f ", sf ); + dprint( 1, 100, C_RED, "8/ STR value : float : %f ", sd ); + + char tab[10]={0}; + int n; + + sscanf( " AbCdEfgHiJkLmNoP", "%5c%n", &tab[0], &n ); + dprint( 1, 110, C_GREEN, "9/ STR value : char* : %s - n= %d", tab, n ); + + sscanf( " AbCdEfgHiJkLmNoP", " %5c%n", &tab[0], &n ); + dprint( 1, 120, C_GREEN, "10/ STR value : char* : %s n= %d", tab, n ); + + sscanf( " AbCdEfgHiJkLmNoP", "%% %10c%n", &tab[0], &n ); + dprint( 1, 130, C_GREEN, "11/ STR value : char* : %s n= %d", tab, n ); + + char str[30]; + sscanf( " AbCdEfgHiJkLmNoP", "%s%n", &str[0], &n ); + dprint( 1, 140, C_GREEN, "12/ STR value : char* : %s n= %d", str, n ); + + sscanf( " AbCdEfgHiJkLmNoP", " %s%n", &str[0], &n ); + dprint( 1, 150, C_GREEN, "12/ STR value : char* : %s n= %d", str, n ); + + sscanf( " AbCdEfgHiJkLmNoP", "%10s%n", &str[0], &n ); + dprint( 1, 160, C_GREEN, "13/ STR value : char* : %s n= %d", str, n ); + + sscanf( " AbCdEfgHiJkLmNoP", " %10s%n", &str[0], &n ); + dprint( 1, 170, C_GREEN, "14/ STR value : char* : %s n= %d", str, n ); + + + int val = 123; + char buf[100]; + sprintf(buf, "%p", (void*)&val); + dprint( 1, 180, C_BLACK,"15/ Original =%s\n", buf); + void *ptr; + sscanf(buf, "%p", &ptr); + dprint( 1, 190, C_BLACK,"16/ Read back=%p\n", ptr); + int *iPtr = ptr; + if (iPtr == &val) { + dprint( 1, 200, C_BLACK,"Pointers match\n"); + } + + char a; + short b; + unsigned int i; + int d; + + sscanf( "4294967295", "%u", &i ); + sscanf( "4294967295", "%hd", &b ); + sscanf( "4294967295", "%hhd", &a ); + dprint( 1, 210, C_BLUE, "17/ %d %d %u", a, b, i ); + + dupdate(); + + getkey(); + + dclear( C_WHITE); + + sscanf( "1234567890", "%u", &i ); + dprint( 1, 10, C_BLUE, "18/ full read : %u", i ); + + sscanf( "1234567890", "%1u", &i ); + dprint( 1, 20, C_BLUE, "19/ 1 char max read : %u", i ); + + sscanf( "1234567890", "%5u", &i ); + dprint( 1, 30, C_BLUE, "20/ 5 char max read : %u", i ); + + sscanf( "1234567890", "%20u", &i ); + dprint( 1, 40, C_BLUE, "21/ 20 char max read : %u", i ); + + sscanf( "-1234567890", "%d", &d ); + dprint( 1, 50, C_BLUE, "18/ full read : %d", d ); + + sscanf( "-1234567890", "%2d", &d ); + dprint( 1, 60, C_BLUE, "19/ 2 char max read : %d", d ); + + sscanf( "-1234567890", "%5d", &d ); + dprint( 1, 70, C_BLUE, "20/ 5 char max read : %d", d ); + + sscanf( "-1234567890", "%20d", &d ); + dprint( 1, 80, C_BLUE, "21/ 20 char max read : %d", d ); + + + float g; + + sscanf( "12345.67890", "%f", &g ); + dprint( 1, 100, C_RED, "18/ full read : %f", g ); + + sscanf( "12345.67890", "%1f", &g ); + dprint( 1, 110, C_RED, "19/ 1 char max read : %f", g ); + + sscanf( "12345.67890", "%5f", &g ); + dprint( 1, 120, C_RED, "20/ 5 char max read : %f", g ); + + sscanf( "12345.67890", "%20f", &g ); + dprint( 1, 130, C_RED, "21/ 20 char max read : %f", g ); + + sscanf( "-12345.67890", "%f", &g ); + dprint( 1, 140, C_RED, "18/ full read : %f", g ); + + sscanf( "-12345.67890", "%2f", &g ); + dprint( 1, 150, C_RED, "19/ 2 char max read : %f", g ); + + sscanf( "-12345.67890", "%5f", &g ); + dprint( 1, 160, C_RED, "20/ 5 char max read : %f", g ); + + sscanf( "-12345.67890", "%20f", &g ); + dprint( 1, 170, C_RED, "21/ 20 char max read : %f", g ); + + + dupdate(); + getkey(); + return 1; +}