From 8ab8a4cd7a2ab6eabdc31ddb2b4c242a899bba4e Mon Sep 17 00:00:00 2001 From: Milang Date: Sat, 15 Feb 2020 13:41:50 +0100 Subject: [PATCH] add fx9860g emulator integrated to the folder clean LaunchUI() func (proper switch etc..) --- AddinInfo.txt | 12 +++++ MainIcon.bmp | Bin 0 -> 138 bytes SuperCbr.c | 77 ++++++++++++++++++++++++++++ SuperCbr.dlw | 112 +++++++++++++++++++++++++++++++++++++++++ SuperCbr.g1a | Bin 63784 -> 64008 bytes SuperCbr.g1w | 15 ++++++ eActivityIcon.bmp | Bin 0 -> 106 bytes include/levelchanger.h | 2 +- include/score.h | 10 ++-- src/bonus.c | 2 +- src/ennemi.c | 12 ++--- src/keyboard.c | 4 +- src/levelchanger.c | 95 ++++++++++++++++++++-------------- src/main.c | 2 +- src/score.c | 15 ++---- 15 files changed, 289 insertions(+), 69 deletions(-) create mode 100644 AddinInfo.txt create mode 100644 MainIcon.bmp create mode 100644 SuperCbr.c create mode 100644 SuperCbr.dlw create mode 100644 SuperCbr.g1w create mode 100644 eActivityIcon.bmp diff --git a/AddinInfo.txt b/AddinInfo.txt new file mode 100644 index 0000000..5f3c406 --- /dev/null +++ b/AddinInfo.txt @@ -0,0 +1,12 @@ +//------------------------------------------------------------------ +// Addin-Application header control file, created with the CASIO SDK +//------------------------------------------------------------------ +[OUTPUT] : "SUPERCBR.G1A" +[BINDATA] : "FXADDINror.bin" +[DISPNAME] : "SuperCbr" +[APPNAME] : "@SUPERCB" +[VERSION] : "01.00.0000" +[APL_ICON] : "MainIcon.bmp" +[MODULE_NUM] : 0 +[MOD1_TITLE] : "SuperCbr" +[MOD1_ICON] : "eActivityIcon.bmp" diff --git a/MainIcon.bmp b/MainIcon.bmp new file mode 100644 index 0000000000000000000000000000000000000000..3fe372c9c7b7586ed1cf1617a1d19826afba9aa7 GIT binary patch literal 138 zcmZ?r?P7ocJ0PV2#Bx9^48)8;2m(Gpe3%b{!2&?y|NsABX8r&Fe}F3g*t0+UqsXEN z#_IPK|EPv4{;>~#z`_#9z`}l?v4w$w$)(_(g^MSr=MmSJUM{YBUM?;tJdb#AFt8K= HF~~3g5xO7P literal 0 HcmV?d00001 diff --git a/SuperCbr.c b/SuperCbr.c new file mode 100644 index 0000000..1faaffd --- /dev/null +++ b/SuperCbr.c @@ -0,0 +1,77 @@ +/*****************************************************************/ +/* */ +/* CASIO fx-9860G SDK Library */ +/* */ +/* File name : [ProjectName].c */ +/* */ +/* Copyright (c) 2006 CASIO COMPUTER CO., LTD. */ +/* */ +/*****************************************************************/ +#include "fxlib.h" + + +//**************************************************************************** +// AddIn_main (Sample program main function) +// +// param : isAppli : 1 = This application is launched by MAIN MENU. +// : 0 = This application is launched by a strip in eACT application. +// +// OptionNum : Strip number (0~3) +// (This parameter is only used when isAppli parameter is 0.) +// +// retval : 1 = No error / 0 = Error +// +//**************************************************************************** +int AddIn_main(int isAppli, unsigned short OptionNum) +{ + unsigned int key; + + Bdisp_AllClr_DDVRAM(); + + locate(1,4); + Print((unsigned char*)"This application is"); + locate(1,5); + Print((unsigned char*)" sample Add-In."); + + while(1){ + GetKey(&key); + } + + return 1; +} + + + + +//**************************************************************************** +//************** **************** +//************** Notice! **************** +//************** **************** +//************** Please do not change the following source. **************** +//************** **************** +//**************************************************************************** + + +#pragma section _BR_Size +unsigned long BR_Size; +#pragma section + + +#pragma section _TOP + +//**************************************************************************** +// InitializeSystem +// +// param : isAppli : 1 = Application / 0 = eActivity +// OptionNum : Option Number (only eActivity) +// +// retval : 1 = No error / 0 = Error +// +//**************************************************************************** +int InitializeSystem(int isAppli, unsigned short OptionNum) +{ + return INIT_ADDIN_APPLICATION(isAppli, OptionNum); +} + +#pragma section + diff --git a/SuperCbr.dlw b/SuperCbr.dlw new file mode 100644 index 0000000..b15c362 --- /dev/null +++ b/SuperCbr.dlw @@ -0,0 +1,112 @@ +[DLSimWorkSpace] + +[_1] +Type=5 +Order=5 +Top=15 +Left=2235 +Height=4740 +Width=5565 +State=0 +Flags=00000020 +OptionA=0 + +[_2] +Type=1 +Order=4 +Top=15 +Left=7800 +Height=4740 +Width=5535 +State=0 +Flags=00000001 +OptionA=15 +OptionB=15 + +[_3] +Type=6 +Order=2 +Top=4740 +Left=7800 +Height=6390 +Width=5535 +State=0 +Flags=00000001 +OptionA=0 + +[_4] +Type=7 +Order=1 +Top=4740 +Left=2220 +Height=3165 +Width=5565 +State=0 +Flags=00000000 +OptionA=0 + +[_5] +Type=8 +Order=0 +Top=7905 +Left=2220 +Height=3225 +Width=5580 +State=0 +Flags=00000000 +OptionA=0 + +[_6] +Type=3 +Order=9 +Top=0 +Left=10788 +Height=6348 +Width=2232 +State=16 +Flags=00000000 +OptionA=0 + +[_7] +Type=2 +Order=8 +Top=6348 +Left=7800 +Height=3588 +Width=5220 +State=16 +Flags=00000000 +OptionA=0 + +[_8] +Type=17 +Order=3 +Top=15 +Left=-15 +Height=11115 +Width=2235 +State=0 +Flags=00000000 +OptionA=0 + +[_9] +Type=15 +Order=6 +Top=4740 +Left=2232 +Height=6348 +Width=5592 +State=16 +Flags=00000000 +OptionA=0 + +[_32] +Type=16 +Order=7 +Top=0 +Left=2208 +Height=4584 +Width=5592 +State=16 +Flags=00000020 +OptionA=0 diff --git a/SuperCbr.g1a b/SuperCbr.g1a index 7b6165856dece4bd4ee1e8666d50f4d5f589908f..bb02213146efa36089ddf76635cf66e3fd9f50ee 100644 GIT binary patch delta 7623 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 delta 7276 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 literal 0 HcmV?d00001 diff --git a/include/levelchanger.h b/include/levelchanger.h index c4db6a8..f54c2f4 100644 --- a/include/levelchanger.h +++ b/include/levelchanger.h @@ -1,6 +1,6 @@ #ifndef LEVEL_CHANGE_H #define LEVEL_CHANGE_H -void launch_ui(); +void LaunchUI(); #endif \ No newline at end of file diff --git a/include/score.h b/include/score.h index a5328a0..74447cc 100644 --- a/include/score.h +++ b/include/score.h @@ -16,10 +16,14 @@ void score_display(); void score_add_coin(); void new_level(); void new_game(); -int lifes_get(); -void lifes_lose(); -void lifes_add(); + int get_time_spent(); +/* Lifes Management */ + +int LifesGet(); +void LifesSet(int); +void LifesAdd(int); + #endif diff --git a/src/bonus.c b/src/bonus.c index f33d071..b64d0f0 100644 --- a/src/bonus.c +++ b/src/bonus.c @@ -74,7 +74,7 @@ void bonus_move() //+collision { bonus_set(BONUS_NONE,0,0); score_add(1000); - lifes_add(); + LifesAdd(1); } if (bonus.type==BONUS_STAR) { diff --git a/src/ennemi.c b/src/ennemi.c index 9e0ffd4..3de369d 100644 --- a/src/ennemi.c +++ b/src/ennemi.c @@ -4,19 +4,13 @@ #include "tile.h" #include "world.h" #include "score.h" +#include #include +#include +#include #include -static int sgn(int x) -{ - if (x==0) - return 0; - else if (x>0) - return 1; - return -1; -} - const int ennemi_widths [NOMBRE_ENNEMIS] = {0, 8, 8, 8, 8 , 8}; const int ennemi_heights[NOMBRE_ENNEMIS] = {0, 8, 12, 9, 12, 9}; diff --git a/src/keyboard.c b/src/keyboard.c index 9128ddb..389fb8c 100755 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -67,8 +67,6 @@ static int menu_pause() // 1 exit, 0 continue case KEY_MENU: return 1; - case KEY_OPTN: - choice=2; // fall through case KEY_EXE: if (choice==2) @@ -142,7 +140,7 @@ void mkb_update() if(e.key==KEY_DOWN) k=MK_DOWN; - if(e.key==KEY_ALPHA) + if(e.key==KEY_OPTN) k=MK_RUN; if(keydown(KEY_EXIT)) diff --git a/src/levelchanger.c b/src/levelchanger.c index 9173a34..818f430 100644 --- a/src/levelchanger.c +++ b/src/levelchanger.c @@ -19,7 +19,7 @@ static void levelchanger(int w) { - int play_level(int w, int l); + int play_level(int w, int l); // déclaration de la fonction codée plus bas extern image_t img_levelchanger; @@ -96,19 +96,19 @@ static void levelchanger(int w) get_lvl_id(w, i, lvl); dtext(53,28, lvl, C_WHITE, C_BLACK); - sprintf(lvl, "%d", lifes_get()); + sprintf(lvl, "%d", LifesGet()); dtext(65,54, lvl, C_WHITE, C_BLACK); dupdate(); sleep_ms(3,2000); int a=play_level(w, i); if (a==0) - lifes_lose(); + LifesAdd(-1); if (a==1) i++; if (a==-1) break; - if (lifes_get()==0) + if (LifesGet()==0) { extern image_t img_game_over; dimage(0,0,&img_game_over); @@ -128,7 +128,7 @@ static void levelchanger(int w) get_lvl_id(w, choice, lvl); dtext(53,28, lvl, C_WHITE, C_BLACK); - sprintf(lvl, "%d", lifes_get()); + sprintf(lvl, "%d", LifesGet()); dtext(65,54, lvl, C_WHITE, C_BLACK); dupdate(); sleep_ms(3,2000); @@ -161,17 +161,18 @@ static void levelchanger(int w) -void launch_ui() +void LaunchUI() // Main Menu { extern image_t img_mainmenu; const int xt=17,yt=9; - int choice_x=0, choice_y=0; + unsigned int choice_x=0, choice_y=0; while (1) { mkb_clear(); dimage(0,0,&img_mainmenu); + // Draw world images, but only unlocked ones //Show unlocked worlds extern image_t img_w1, img_w2, img_w3, img_w4, img_w5; @@ -193,44 +194,60 @@ void launch_ui() dimage(xt, yt, &img_w1); } + // invert color of selected world drect(xt+24*choice_x,yt+24*choice_y, xt+24*choice_x+20,yt+24*choice_y+20, C_INVERT); dupdate(); + //int key=getkey_opt(GETKEY_REP_ARROWS,0).key; - int key=mkb_getkey(); - if (key==KEY_UP && choice_y>0) - choice_y--; - if (key==KEY_LEFT && choice_x>0) - choice_x--; - if (key==KEY_DOWN && choice_y<1) - choice_y++; - if (key==KEY_RIGHT && choice_x<3) - choice_x++; - - if (key==KEY_EXE || key==KEY_SHIFT) + switch (mkb_getkey()) { - // Determine mode - if (choice_x==3 && choice_y==1) - break; - if (choice_x==2 && choice_y==1) - { - configmenu(); - } - if (choice_y*choice_x==0) - { - int world_chosen=0; - if (choice_y==1) - world_chosen=4; - else - world_chosen=choice_x; - if (world_chosen<=get_progress_status()) - levelchanger(world_chosen); - - } - } - - if (key==KEY_EXIT || key==KEY_MENU) + case KEY_UP: + if (choice_y) // >0 + choice_y--; break; + + case KEY_LEFT: + if (choice_x) // >0 + choice_x--; + break; + + case (KEY_DOWN): + if (!choice_y) // ==0 + choice_y++; + break; + + case (KEY_RIGHT): + if (choice_x!=3) // <3 + choice_x++; + break; + + case KEY_EXE: + // fall through + case KEY_SHIFT: + switch (4*choice_y+choice_x) + { + case 5: // No idea yet ! + break; + + case 6: + configmenu(); + break; + + case 7: + return; + + default: + if (4*choice_y+choice_x<=get_progress_status()) + levelchanger(4*choice_y+choice_x); + } + break; + + case KEY_EXIT: + // fall through + case KEY_MENU: + return; + } } } diff --git a/src/main.c b/src/main.c index 47aab6c..c2b76c2 100755 --- a/src/main.c +++ b/src/main.c @@ -30,7 +30,7 @@ int main(void) ll_set_panic(); //ll_set_level(LEVEL_QUIET); - launch_ui(); + LaunchUI(); return 1; } diff --git a/src/score.c b/src/score.c index 3cee747..b161374 100644 --- a/src/score.c +++ b/src/score.c @@ -128,17 +128,8 @@ int get_time_spent() -int lifes_get() -{ - return lifes; -} +int LifesGet() { return lifes; } -void lifes_lose() -{ - lifes --; -} +void LifesSet(int l) { lifes = l; } -void lifes_add() -{ - lifes ++; -} \ No newline at end of file +void LifesAdd(int l) { lifes += l; } \ No newline at end of file