Casio2.h Lib
Nouvelle Version 2.01 Corrigée !
Cette librairies Permet de
Programmer sur casio Afx/2 avec une puissance
de travail exceptionnelle !
Par exemple, gerer le date, l'heure, programmer en Multi-Buffering, Rebooter la
calculatrice, l'eteindre, Changer le Contraste, ...
Telecharger
Casio2b-dist.exe - Ver 2.01 - 42ko - ICI
Documentation :
Casio2.h Ver 2.01 Readme
C/C++ Library for Casio Algebra Fx 2
Casio2.h peut être
utilisé avec un compilateur C ou C++ comme :
Turbo C 2 / Turbo C++ 3 / Borland C++
Les fonctions graphiques et de date ont etées corrigées depuis la
version 2.00.
! Attention, cette librairie ne gère que le
mode courant et non les modes Gris et Inlines !
Il peut facilement être intégré dans un projet C ou C++.**
Note : Pour un projet C++,le compilateur risque d'afficher des Warning, ils ne
sont pas importants.
Au moindre probleme, n'hesitez pas a m'ecrire à superna@ifrance.com.
I. Pour l'intégrer dans votre Projet
Premierement copiez (ou decompressez) le fichier casio2.h
dans le repertoire Include
(qui contient les fichiers *.h
normalement a la racine de votre compilateur)
Au début de votre projet, inserez la ligne :
#include <casio2.h>
! Si vous faites un Jeux/Programe/Librairie/SDK..
utilisant cette librairie,
je demande mon nom dans les remerciements et l'indication de l'utilisation de
cette Librairie !
II. Resumé des fonctions de Casio2.h
1.Fonctions Graphiques
Les fonctions graphiques necessites des parametres dont le parametre page qui
definit le buffer video a utiliser. La page principale est "0" et vous
pouvez utiliser les pages jusqu'a "4" normalement.
Pour les fonctions de pixel X varie entre
0 et 127 et Y entre 0 et 63 .
setPix(x,y,page,couleur)
Met un pixel de la couleur au coordonnées x et y sur la page.
couleur varie entre 0 et1.
setPix(0,0,0,1);
setbPix(X, Y, page)
Met un pixel noir au coordonnées x et y sur la page
setbPix(0,0,0);
setwPix(x,y,page)
Met un pixel blanc aux coordonnées x et y sur la page
setwPix(0,0,0);
invpixel(x,y,page)
Inverse un pixel aux coordonnées x et y sur la page
invpixel(0,0,0);
tstpixel(x,y,page)
Retourne la valeur du pixel eux coordonnées x et y sur la page entre 0
et 1.
short couleur;
couleur=tstpixel(0,0,0);
clearpage(page)
Efface la page
clearpage(0);
int getpage()
Retourne le numéro de page affiché a l'écran
short page;
page=getpage();
int shootpage(page)
Met la page dans une prise d'écran HCOPY de la calculatrice.
Fait une prise d'écran.
Vous devrez prealablement créer une prise d'ecran Hcopy1
*.
shootpage(0);
setpage(page)
Affiche a l'écran la page
setpage(0);
hline2(x1,x2,y,page)
Trace une ligne horizontale du point (x1,y) jusqu'au point (x2,y) sur la page.
Y ne varie pas.
hline2(0,127,32);
vline2(y1,y2,x,page)
Trace une droite verticale de point (x,y1) jusqu'au point (x,y2) sur la page.
X ne varie pas
vline2(0,63,63);
rect(x1,y1,x2,y2,page,state)
Trace un rectangle non rempli ABCD avec A(x1,y1) B(x2,y1) C(x2,y2) D(x1,y2) sur
la page de la couleur state
State varie entre 0 et 1.
rect(5,5,120,60,0,1);
fillRect(x1,y1,x2,y2,page,state)
Trace un rectangle rempli ABCD de la couleur state avec A(x1,y1) B(x2,y1) C(x2,y2)
D(x1,y2) sur la page
State varie entre 0 et 1.
fillrect(5,5,120,60,0,1);
invRect(x1,y1,x2,y2,page)
Inverse un rectangle rempli ABCD avec A(x1,y1) B(x2,y1) C(x2,y2) D(x1,y2) sur
la page
invRect(5,5,120,60,0,1);
invpage(page)
Inverse les pixel de la page complete
invpage(0);
copypage(source,target)
Copie la page source a la page target
copypage(0,1);
2. Fonctions Utiles
waitkey()
Attends l'appui d'une touche et retourne le numéro de la touche
waitkey();
waitakey(k)
Attends l'appui de la touche numero k
waitakey(K_EXE);
locate(x,y,st)
Affiche des caracteres a l'ecran (!Seulement des caracteres!) aux coordonnées
x et y
locate(1,1,"Hello World !") // Bon
locate(1,1,"X = %i",x) // Pas Bon
locate(1,1,i) // Bon seulement si i est de type char et est un tableau
wait(t)
Attends t temps
le temps n'est pas defini
wait(100);
getkey()
Retourne la derniere touche préssée
short touche;
touche=getkey();
shutcalc()
Met la calculatrice en veille
equivaut a faire [SHIFT] et [AC/ON]
shutcalc();
rebootcalc()
Redemare la calculatrice
Equivaut a faire RESEt dans le dos de la Calculatrice
rebootcalc();
contplus()
Augmente le constraste de l'écran
contplus();
contless()
Diminue le contraste de l'écran
contless();
get_time(what)
Renvoie soit l'Heure, les minute ou les secondes.
What=1 : Heures
What=2 : Minutes
What=3 : Secondes
Note : Ceci est l'heure réelle de la calculatrice
time=get_time(1);
set_time(what,time)
Configure l'Heure ou les minutes et remet les secondes a zero
What=1 : Heures
What=2 : Minutes
Time doit être compris entre 0 et 59 compris
set_time(2,30);
get_date(what,jours)
Retourne la date réelle de la caculatrice en plusieurs parties:
What=0 : Jours
What=1 : Mois
What=2 : Année
What=3 : Jour dans la Semaine
Le jour de la semaine est : 0:Lundi a 6:Dimanche
jours permet d'indiquer un nombre de jours depuis le 1/1/2000
et de le retourner en date, laissez le a 0 si inutilisé
Retourne le jour de la calculatrice :
get_date(0,0);
set_date(year, month, days)
Configure la date réelle de la calculatrice avec :
year : l'année (superieure a 2000)
month : le mois de l'année
days : les jours du mois
Elle retourne le nombre de jours depuis 1/1/2000 de la date demandée.
Note : cette fonction gére les années bisextiles
Regle sur le 22/10/2004 :
set_date(2004,10,22);
3. Fonction Speciale
disp_bmp(BMPTabType
BmpTab,page)
Affiche a l'ecran le bmp convertit en C avec Bmp2C sur la page
(disponible dans CDK)
disp_bmp(ECRAN,0);
III.Constantes de Touches
Les voici en Vrac, elles sont toutes compatibles avec la fonction Waitkey();
mais seules les constantes suivies "*"
sont compatible avec Getkey();
|
Touche
|
Constante
|
X2*
|
K_X2
|
|
F1*
|
K_F1
|
( *
|
K_CRH_G
|
|
F2*
|
K_F2
|
) *
|
K_CRH_D
|
|
F3*
|
K_F3
|
, *
|
K_VIRG
|
|
F4*
|
K_F4
|
-> *
|
K_FLECHE
|
|
F5*
|
K_F5
|
7
|
K_7
|
|
F6*
|
K_F6
|
8
|
K_8
|
|
SHIFT*
|
K_SHIFT
|
9
|
K_9
|
|
CTRL*
|
K_CTRL
|
DEL*
|
K_DEL
|
| OPTN* |
K_OPTN |
AC/On |
K_ACon |
| Gauche* |
K_GAUCHE |
4 |
K_4 |
| Droite* |
K_DROITE |
5 |
K_5 |
| Haut* |
K_HAUT |
6 |
K_6 |
| Bas* |
K_BAS |
x |
K_FOIS |
| ALPHA* |
K_ALPHA |
/ |
K_DIVIS |
| VARS* |
K_VARS |
1 |
K_1 |
| ^ |
K_PUISS |
2 |
K_2 |
| ESC* |
K_ESC |
3 |
K_3 |
| X,ø,T |
K_X |
+ |
K_PLUS |
| Log |
K_LOG |
- |
K_MOINS |
| Ln* |
K_LN |
0 |
K_0 (Zero) |
| sin* |
K_SIN |
. |
K_POINT |
| cos* |
K_COS |
x10* |
K_EXP |
| tan* |
K_TAN |
(-)* |
K_TIRET |
|
a+b/c*
|
K_DC
|
EXE*
|
K_EXE
|
* Pour mettre en memoire un HCOPY1
Il faut dans le menu Link :
Faire [CTRL] puis [F4]
Dans le parametre, choisir "Mem"
Ensuite faire [CTRL] puis [F6]
Pour transferer le screnshot fait avec Shootpage(page), aller dans le menu Link,
faire [F1] choisir "Hcopy"
Preparer Fa123 ou CasioCom a la reception puis faire [F6]
** Vous pouvez aussi voir le fonctionnement des fonctions dans la source en
C appelée chrcas2.c qui
montre l'utilisation des fonctions.
Cette source est livrée avec casio2.h.
Je remercie :
Whyp, 2072, BradN, Y@SS, Niff, Bugbug, Libthium, Duobab,
Roeoender, Julien, Casiomax, Casioworld et les autres pour leur soutien et leur
competence.