Jump to content



Photo
- - - - -

Can you help me make advanced input menu such as one in the picture


  • Please log in to reply
6 replies to this topic

#1 jetext

jetext

    Newbie

  • Members
  • Pip
  • 6 posts

Posted 23 December 2021 - 06:57 PM

Hi
 
If you look at the picture bellow you can see very beautiful input menu. there is drop down list that give you ability to select deferent options, check box, and organized boxes for entering value. the f1 to f6 function keys are redefined.
 
So, can you please help me?
 
thanks
 
 
img_20211223_220919_bbv.jpg


#2 HappyCalc

HappyCalc

    Casio Addict

  • Members
  • PipPipPip
  • 67 posts
  • Gender:Male
  • Location:Germany
  • Interests:Programming, On-Calc Programming(C.Basic), Gaming, Origami, Eating Chocolate

  • Calculators:
    fx-9860GII-2
    fx-CG50

Posted 09 January 2022 - 06:20 PM

In what programming language? Basic, C.Basic, C++, WSC, Python, or something else?



#3 jetext

jetext

    Newbie

  • Members
  • Pip
  • 6 posts

Posted 12 January 2022 - 10:16 AM

In what programming language? Basic, C.Basic, C++, WSC, Python, or something else?

 

Anything, but whichever takes up less memory space is preferred,

And what do you think this one made from?



#4 HappyCalc

HappyCalc

    Casio Addict

  • Members
  • PipPipPip
  • 67 posts
  • Gender:Male
  • Location:Germany
  • Interests:Programming, On-Calc Programming(C.Basic), Gaming, Origami, Eating Chocolate

  • Calculators:
    fx-9860GII-2
    fx-CG50

Posted 13 January 2022 - 07:07 PM

I think this Menu isn't made in Casio Basic, it is probably C/C++.

 

The programming language you choose really depends on the needs.

  • Writing an Add-In in C or C++ runs fast and allows for using functions and even creating a gui library, but takes up much space (20-500KB). You need to program it on your computer
  • Basic is very slow compared to anything else but runs on many calculators.
  • C.Basic is a rewrite of Basic by sentaro21 that has many advanced features to the original Basic. It also runs quite fast (only about 1/10 of C/C++ speed). It also runs on the fx-g9860 series and on cg-50. The big problem is that the interpreter takes up 500KB of memory, but the programs then only take 100B - 10KB
  • WSC/FVM is a C compiler/virtual machine that can run some simple C code.
  • Python is preinstalled on the cg-50 and fx-9860giii. There is also a version for the fx-9860gii, but that doesn't support graphic operations.
  • There are also other possibilities like Lua or MLC, but I didn't work much with them, so I couldn't help you much then.

 

If you want a fast and standalone application and have learned C programming, you could program it in C

Otherwise, since this is the Casio Basic subforum and C.Basic is fast and programs are easy to change when there is an error, I would recommend to use C.Basic.

The C.Basic topic:

https://community.ca...ge-1?hl=c.basic

-----

The following is just an introduction to how I would build a menu in C.Basic. I may show some code if you want.

 

1. If you just want a Grid based menu, it is simple:

    a)

       Draw the UI in a program like paint.net and export it to a 128x64 black/white .bmp (you'll need a plugin for paint.net)

       Place the Bitmap to your Storage Mem

       In C.Basic load the Bitmap to screen

    or b )

       Draw the UI directly in C.Basic

 

    Then save the screen to a 128x64 pixel buffer

    set x and y position to 0

    Loop:

       Draw the Buffer to screen

       Draw a Rectangle that inverts the item at x and y position(or underline it)

       Wait for User interaction ([LEFT][RIGHT] or F1-F6)

       When a change is made (Number/Text entered/selected), write it to the buffer

 

2. Creating a GUI where you can place Text/Checkboxes/Selections everywhere is far more complicated

       

Hope that gives you a short introduction, what to do.

HappyCalc :)


Edited by HappyCalc, 13 January 2022 - 07:09 PM.


#5 jetext

jetext

    Newbie

  • Members
  • Pip
  • 6 posts

Posted 16 January 2022 - 02:27 PM

Thanks again
 
I found some SDK future in casio 9860GII download page HERE. Can you tell me what is this SDK? Is it some programing language or something?

Pardon me for this trivial questions.

 

I think this Menu isn't made in Casio Basic, it is probably C/C++.

 

The programming language you choose really depends on the needs.

  • Writing an Add-In in C or C++ runs fast and allows for using functions and even creating a gui library, but takes up much space (20-500KB). You need to program it on your computer
  • Basic is very slow compared to anything else but runs on many calculators.
  • C.Basic is a rewrite of Basic by sentaro21 that has many advanced features to the original Basic. It also runs quite fast (only about 1/10 of C/C++ speed). It also runs on the fx-g9860 series and on cg-50. The big problem is that the interpreter takes up 500KB of memory, but the programs then only take 100B - 10KB
  • WSC/FVM is a C compiler/virtual machine that can run some simple C code.
  • Python is preinstalled on the cg-50 and fx-9860giii. There is also a version for the fx-9860gii, but that doesn't support graphic operations.
  • There are also other possibilities like Lua or MLC, but I didn't work much with them, so I couldn't help you much then.

 

If you want a fast and standalone application and have learned C programming, you could program it in C

Otherwise, since this is the Casio Basic subforum and C.Basic is fast and programs are easy to change when there is an error, I would recommend to use C.Basic.

The C.Basic topic:

https://community.ca...ge-1?hl=c.basic

-----

The following is just an introduction to how I would build a menu in C.Basic. I may show some code if you want.

 

1. If you just want a Grid based menu, it is simple:

    a)

       Draw the UI in a program like paint.net and export it to a 128x64 black/white .bmp (you'll need a plugin for paint.net)

       Place the Bitmap to your Storage Mem

       In C.Basic load the Bitmap to screen

    or b )

       Draw the UI directly in C.Basic

 

    Then save the screen to a 128x64 pixel buffer

    set x and y position to 0

    Loop:

       Draw the Buffer to screen

       Draw a Rectangle that inverts the item at x and y position(or underline it)

       Wait for User interaction ([LEFT][RIGHT] or F1-F6)

       When a change is made (Number/Text entered/selected), write it to the buffer

 

2. Creating a GUI where you can place Text/Checkboxes/Selections everywhere is far more complicated

       

Hope that gives you a short introduction, what to do.

HappyCalc :)



#6 HappyCalc

HappyCalc

    Casio Addict

  • Members
  • PipPipPip
  • 67 posts
  • Gender:Male
  • Location:Germany
  • Interests:Programming, On-Calc Programming(C.Basic), Gaming, Origami, Eating Chocolate

  • Calculators:
    fx-9860GII-2
    fx-CG50

Posted 17 January 2022 - 10:53 AM

That is the SDK for programming the calculator in C/C++. It works like normal C programming on the computer, but there are additional libraries for Display, File Access and Key Input. You may download the SDK docs from edu.casio.com or look at this tutorial about draw ing to the screen:
https://www.casiopei...php?f=20&t=1420

#7 jetext

jetext

    Newbie

  • Members
  • Pip
  • 6 posts

Posted 18 January 2022 - 07:54 AM

I write my first program with casio SDK. The very simple one that just print "hello" in screen.
Can you write me some code for building that menu in the first post of this topic? Any clue is appreciated


Thank in advance

 

 

That is the SDK for programming the calculator in C/C++. It works like normal C programming on the computer, but there are additional libraries for Display, File Access and Key Input. You may download the SDK docs from edu.casio.com or look at this tutorial about draw ing to the screen:
https://www.casiopei...php?f=20&t=1420




2 user(s) are reading this topic

0 members, 2 guests, 0 anonymous users