Vous n'êtes pas identifié.
qqn connait les routines pour éteindre et rebooter?
j'avait fait un reboot ds le temps dispo sur http://casio100.multimania.com mais j'ai oublié comment j'avait fait, tt ce que je me rappelle que c'etait une instruction dos sur turbo c
Hors ligne
demande à Whyp, paske ds systemexplore3.0, tu peux éteindre directement ac ON et rebooter ac CTRL+ALPHA+DEL
Hors ligne
Je ne dirais pas que c simple, mais c pas très compliqué :
POur eteindre tu ecris la valeur 8 dans le port 0x0C
Pour rebooter, tu saute a l'adresse F000:FFFF (en c faut faire un pointeur long... c chiant fais le en asm)
@+
Hors ligne
Allez, passe moi ta fonction C, bugbug, ds reboot y'a que un cfx. Est-ce qu'on fait:
long* pt=0xF000FFFF; :?:
ca fait plus d'un an et demi que je l'avait fait, je me rappelle juste avoir été chercher sur google une requete du genre "commande dos turbo c reboot"
je n'en sait pas plus, sinon pour avoir l'exe il exciste des utilitaires pour convertir le cfx en exe
Hors ligne
non.
Ca j'avoue, c pas evidant.
En C, il faut faire :
void (far * PtrReboot) (void); // Ceci est une variable pointeur
PtrReboot = MK_FP(0xFFFF,0x0000);
(*PtrReboot) (); //Et ça ça te fais rebooter
Tu remaqueras que je me suis tromper, c'etati FFFFh:0000h
@+
Hors ligne
On resume, je les mettrais dans casio2.h :
shutcalc(){ asm mov ax,0x8; asm out 0x0C,ax ;} rebootcalc(){ void (far * PtrReboot) (void); // Pointeur PtrReboot = MK_FP(0xFFFF,0x0000); (*PtrReboot) (); //Fait rebooter }
Si ya une fote (!!!) , repondez !!
Hors ligne
ouh la tu as oublie de multiplier la constante ax,0x8 * le mov as,bx
vilain
Hors ligne
Comment ça ?
Hors ligne
C vrai ça !!!!!! tssssss....
(C t une blague)
@+
Hors ligne
Zavé pas compris !!!!
Sinon, en compilant j'ai une erreur de convertien a cette ligne :
PtrReboot = MK_FP(0xFFFF,0x0000);
(ps:j'ai compilé en c++ avec borlandc++4.5)
il me error convertion (far*) en far*
j'ai pas compris
j'ai mis en en-tête la def de la ft : void far * MK_FP(?,?)
(ps: je suis au lycée et je m'en souvient pas trés bien !!!)
Hors ligne
en C avec turboC (scuse whyp g pris dans sysexpl)
void (far * PtrReboot) (void); PtrReboot = MK_FP(0xFFFF,0x0000); (*PtrReboot) ();
Hors ligne
dans les sources de sysexpl il y a les trois lignes que je viens de copier ci-dessus
Hors ligne