Menu   Welcome on Na-Prod.com
 

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.