Posté le 10/01/2015 21:29
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 110 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 10/01/2015 22:07 | #
Pour les masochistes sous linux, vive la commande diff !
Coïncidence ? Je ne pense pas.
Citer : Posté le 11/01/2015 07:53 | #
Pour les masochistes sous linux, vive la commande diff !
Même réaction !
T'as utilisé le wrapper du SDK alors ? J'y avais pas pensé, à voir après si c'est viable. :3
Citer : Posté le 11/01/2015 15:19 | #
Après un petit désassemblage du wrapper, j'ai trouvé l'ordre dans lesquels sont mis toutes les infos :
Après, je ne suis pas un expert, j'vais essayer de comprendre un peu plus, mais c'est dur ><'
Voici Spassus2, mon jeu de combat spatial procédural abandonné, le NESSCASDK, mon SDK 'barebones' fait maison (C'est pour les maso uniquement) et CasioUsb, mon utilitaire de transfert d'addin pour Linux.
Citer : Posté le 11/01/2015 15:22 | #
Pourquoi tu regardes pas dans les sources du wrapper de Kristaba... y'a toutes les infos.
Voilà ma version modifiée.
0x000 8 "USBPower"
0x008 1 0xF3 (AddIn)
0x009 5 { 0x00,0x10,0x00,0x10,0x00 }
0x00E 1 @0x13 + 0x41
0x00F 1 0x01
0x010 4 filesize: uint, big endian
0x014 1 @0x13 + 0xB8
0x015 9 1 [Unsignificant]
0x01E 2 1 Number of objects (if MCS)
0x020 8 + Internal name `@APPNAME`
0x028 3 -
0x02B 1 1 Number of estrips
0x02C 4 -
0x030 10 + Version `01.23.4567`
0x03A 2 -
0x03C 14 + Date `yyyy.MMdd.hhmm`
0x04A 2 -
0x04C 68 1 30×17 icon.
0x090 80 1 eStrip 1
0x0E0 80 1 eStrip 2
0x130 80 1 eStrip 3
0x180 80 1 eStrip 4
0x1D0 4 -
0x1D4 8 + Program name
0x1DC 20 -
0x1F0 4 filesize: ulong, big endian
0x1F4 12 -
0x200 ... Addin code
{
uint8_t magic[8];
uint8_t addin_id;
uint8_t unknown1[5];
uint8_t control1;
uint8_t unknown2;
uint8_t filesize_uint[4];
uint8_t control2;
uint8_t custom_seq[11];
uint8_t internal[8];
uint8_t gap1[3];
uint8_t estrips;
uint8_t gap2[4];
uint8_t version[10];
uint8_t gap3[2];
uint8_t date[14];
uint8_t gap4[2];
uint8_t bitmap[68];
uint8_t estrip1[80];
uint8_t estrip2[80];
uint8_t estrip3[80];
uint8_t estrip4[80];
uint8_t gap5[4];
uint8_t name[8];
uint8_t gap6[20];
uint8_t filesize_ulong[4];
uint8_t gap7[12];
};
Citer : Posté le 11/01/2015 15:26 | #
Le problème est justement dans le wrapper: les addins produits ne peuvent pas démarrer sur l'émulateur, il y a donc un problème dans les infos (par exemple, ce bit insignifiant, il est p'têtre lié )
Voici Spassus2, mon jeu de combat spatial procédural abandonné, le NESSCASDK, mon SDK 'barebones' fait maison (C'est pour les maso uniquement) et CasioUsb, mon utilitaire de transfert d'addin pour Linux.
Citer : Posté le 11/01/2015 18:15 | #
C'est des octets
Mais sinon, j'ai bien essayé : j'ai copié/collé directement le header d'un add-in compilé par le SDK dans le même add-in compilé avec gcc.
Eh ben, même résultat. Conclusion que j'en ai tiré : pas en lien avec le header.
Citer : Posté le 11/01/2015 21:17 | #
J'ai essayé de même de corriger le wrapper (corriger par exemple le checksum), rien à faire. Je suppose que ça à voir avec les trucs comme l'initialize addin ou la variable qui traîne dans le code source par défaut.
Citer : Posté le 11/01/2015 22:18 | #
Peut-être que le make365addinheader.exe du sdk ne fait, au dépit de son nom, pas que le header...
Coïncidence ? Je ne pense pas.
Citer : Posté le 12/01/2015 10:08 | #
Faudrait jeter un coup d'oeil aux entry points de l'addin Casio et celui de GCC voir les différences. Je suppose que ça vient EB partie de là.
Citer : Posté le 12/01/2015 12:21 | #
J'ai vérifié avec vbindiff, les seules différences sont au début, je vous mets une screenshot :
Il n'y a pas d'autres différences entre les deux fichiers binaires
Coïncidence ? Je ne pense pas.
Citer : Posté le 12/01/2015 12:24 | #
Ls deux premiers octets différents sont le checksum si je me souviens bien. Même après avoir corrigé celui-ci l'ému refuse de le lancer.
Citer : Posté le 12/01/2015 12:35 | #
La plupart des données différentes sont celles des e-strips.
Citer : Posté le 12/01/2015 12:44 | #
Les six octets suivants font partie du numéro de version on dirait, et visiblement il n'est pas codé de la même manière (mais c'est sûrement insignifiant).
Les 4 à partir de 0x0047 sont dans la date, le premier g1a a été compilé à 14h25v et l'autre à 20h58. -> insignifiant
Les suivants font tous partie de l'icône ->insignifiant
Sauf les 4 derniers à partir de 0x90 qui sont dans "eStrip 1" -> aucune idée e ce que c'est...
Coïncidence ? Je ne pense pas.
Citer : Posté le 12/01/2015 12:45 | #
Un e-strip, c'est les données qui permettent de lancer l'app à partir d'une e-act, ce qui a d'ailleurs un effet sur les arguments de AddIn_main().
C'est comme "NOTES" par exemple...
Citer : Posté le 12/01/2015 13:33 | #
Un e-strip, c'est les données qui permettent de lancer l'app à partir d'une e-act, ce qui a d'ailleurs un effet sur les arguments de AddIn_main().
C'est comme "NOTES" par exemple...
Et il y a une possibilité que le "non support" des addins soit caché dedans ?
Ajouté le 12/01/2015 à 13:36 :
Ls deux premiers octets différents sont le checksum si je me souviens bien. Même après avoir corrigé celui-ci l'ému refuse de le lancer.
Quoi comme checksum, la somme toute simple de tous les octets ?
Coïncidence ? Je ne pense pas.
Citer : Posté le 12/01/2015 14:02 | #
Nan, je sais plus quoi mais c'est dans le chm où y'a les infos techniques des FX.
Citer : Posté le 12/01/2015 15:53 | #
Ok je chercherai !
Coïncidence ? Je ne pense pas.
Citer : Posté le 12/01/2015 16:06 | # | Fichier joint
Je l'aiiiii. C'est une version un peu vieillotte mais casiopeia est down alors...
Citer : Posté le 12/01/2015 18:55 | #
Je l'aiiiii. C'est une version un peu vieillotte mais casiopeia est down alors...
Toute la doc chm que j'ai pu trouver existe sur un site "perso" de SimLo...
Citer : Posté le 12/01/2015 19:00 | #
Il en a un? Première info de la journée.