Posté le 19/06/2014 16:51
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 81 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements
Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd
Citer : Posté le 19/06/2014 17:58 | #
On ne lit jamais des images comme ça en C. Tu veux vraiment lire la Picture ou juste afficher une image ?
Citer : Posté le 19/06/2014 17:59 | #
J'aimerais pouvoir lire la picture, l'afficher, la modifier et l'enregistrer (en d'autre terme faire un paint qui pourrait servir à des jeux en basic)
Citer : Posté le 19/06/2014 18:00 | #
Alors lis la doc de fxlib. Tu y trouveras de quoi ouvrir un fichier de la mémoire principale (Bfile_OpenMainMemory()), et de quoi le modifier (il faut le supprimer d'abord).
Pour l'édition, c'est indépendant.
Le seul problème reste le header de 20 octets.
Citer : Posté le 19/06/2014 18:02 | #
Oui, j'ai vu qu'il y avait la fonction OpenMainMemory (je l'ai déjà marqué dans le post du topic ) mais je ne sais pas quel nom utilisé pour ouvrir l'image. Après, je me débrouillerai bien pour gérer le header
Citer : Posté le 19/06/2014 18:03 | #
Et bien...
Par exemple. Je ne suis plus sûr du chemin exact, mais comme d'habitude ça doit être marqué quelque part dans la doc.
Citer : Posté le 19/06/2014 18:06 | #
Et bien...
Comme d'habitude ça doit être marqué quelque part dans la doc.
Ok. Merci. Je vais essayer ça de suite.
Je te jure que j'ai cherché
Citer : Posté le 19/06/2014 18:08 | #
Il y a un moment où il faut apprendre à lire.
You do not need to specify the folder.
Donc :
Citer : Posté le 19/06/2014 18:10 | #
Il y a un moment où il faut apprendre à lire.
You do not need to specify the folder.
Oui, ça je l'ai lu, mais je ne pensais pas que le nom était simplement PICTURE1 (et ça c'est pas marqué dans la doc )
Citer : Posté le 07/06/2020 01:44 | #
This is LoadPictureMCS(), which gets the address of the Pict in C.Basic.
char * MCS_LoadPICT( char *pictname, int *length ) {
TDirectoryItem *item;
int tmp[4];
int i,r;
char flags_0;
int data_ptr;
int data_length;
r = MCS_SearchDirectoryItem( (unsigned char *)"main", (unsigned char *)pictname, &flags_0, (TDirectoryItem *)&tmp, &data_ptr, & data_length );
if ( r != 0 ) return NULL;
*length = data_length;
return (char*)data_ptr-0x4C;
}
void SetPICTname( int pictNo, char *pictname ){
unsigned char c,d;
c=pictNo/10+'0';
d=pictNo%10+'0'; if ( c=='0' ) { c=d; d=0; }
pictname[0]='P';
pictname[1]='I';
pictname[2]='C';
pictname[3]='T';
pictname[4]= c;
pictname[5]= d;
pictname[6]='\0';
pictname[7]='\0';
}
char * LoadPictureMCS( int pictNo, int *length ){
char pictname[32];
char *pict;
SetPICTname( pictNo, pictname );
return pict = MCS_LoadPICT( pictname, &(*length) );
}
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Citer : Posté le 07/06/2020 09:17 | #
Thank you for sharing this code. I'm not surprised you have to use syscalls for that. fxlib's main memory functions are kinda hard to use.
Citer : Posté le 07/06/2020 17:23 | #
(Sorry, I can't speak English very well. )
Veni, vidi, mais pas encore vinci le code...
Je n'ai qu'une vague idée de la notion de syscall, et le code est, pour moi, ... carrément obscur.
Alors si un super membre pourrait m'éclairer sur ce sujet, ce serait avec joie
Je ne demande que quelques commentaires du code ci-dessus et une définition assez précise des syscalls et de leur utilisation en C...
Je ne pourrais revenir avant samedi prochain, vous avez donc tout le temps de me fignoler une réponse assez complète, pour que je n'aie plus de question à poser à ce sujet.
Si vous le faites, je vous dis merci d'avance et à samedi !
Citer : Posté le 07/06/2020 17:44 | #
En gros... les syscalls (ici) c'est des fonctions dans l'OS. Comme les fonctions de fxlib ; en fait beaucoup de fonctions de fxlib sont juste des syscalls déguisés.
Concernant la mémoire principale, les syscalls sont beaucoup plus riches que Bfile et permettent de faire marcher toute l'histoire. Ils sont documentés dans les notes de SimLo, ici et ici (MCS est le nom donné à la mémoire principale).
C'est assez abrupt et honnêtement si tu n'as pas une bonne expérience du C je m'attends pas à ce que tu comprennes les détails. Mais ça t'empêchera pas de faire marcher ton add-in.
Citer : Posté le 07/06/2020 18:15 | #
J'ai de quoi me documenter, là, merci Lephé !
Citer : Posté le 07/06/2020 18:16 | #
Bon courage
Citer : Posté le 07/06/2020 18:18 | #
Merci ! J'en aurais besoin, effectivement !