MPM : Mod add-ins Math+
Posté le 02/12/2024 12:36

MPM est un mod communautaire de la Math+ remettant le support des add-ins, développé par Planète Casio.
Version actuelle : bêta
Instruction d'utilisation
- Brancher la calculatrice en mode mise à jour de l'OS. Si vous utilisez une VM, attachez la calto à la VM.
- Lancer mpm-installer-1.0bw.exe depuis cmd. Un échange se fait.
- Quand l'installeur affiche "Communicating more..." la calto se reconnecte. (Si vous utilisez une VM, attachez la calto à la VM. J'utilise une fonction naïve pour la reconnexion donc vous avez genre 10 secondes.) Attendez une seconde et appuyez sur EXE pour continuer.
- Ensuite suivez les instructions sur la calto, en gros TOOLS puis SETTINGS et RESTART.
- Transférez mpm.bin dans la mémoire de stockage.
- Dans le menu principal, appuyez sur TOOLS pour accéder au menu des add-ins (inactif en mode examen).
État actuel du support (2025-02-19)
- Les add-ins compilés avec la branche dev de gint doivent marcher normalement.
- Les add-ins gint non recompilés marcheront mais le clavier sera en désordre et tout retour au menu / accès système de fichiers / autre syscall plantera.
- Les add-ins PrizmSDK ne marcheront pas parce qu'ils utilisent des syscalls partout (pas encore émulés)
- Tous les add-ins modifiés pour remplacer les syscalls par des adresses explicites si les syscalls ont le même code marcheront (... tant que y'a pas en plus des fonctionnalités spécifiques aux modèles dans l'appli).
Liste de préoccupations
- Compatibilité binaire :
Pas encore clair
Si on peut l'avoir, c'est super. Sinon, y'a un casse-tête à attendre pour traquer quels add-ins sont compatibles. L'absence de table de syscalls est le principal souci ici, ce qui peut peut-être se contourner avec un coup d'UBC pour intercepter les appels.
- Compatibilité de la disposition clavier :
Pire cas, en recompilant
Syscalls + GetKey() : les codes sont adaptés, certaines touches disparaissent, d'autres sont nouvelles.
gint sans recompiler : j'ai un trick en tête mais il vaut mieux imaginer que ça va donner des mauvais résultats.
gint en recompilant : la compatibilité sera assurée.
- Reste du matériel :
Quasiment garanti identique
Il faudrait qu'un truc très gros m'ait échappé.
- RAM étendue :
Probablement OK
Il y a de la mémoire après les 2 premiers Mo, pas sûr cependant de si l'utiliser interférera avec l'opération normale de l'OS.
- Récupérer 16 Mo de mémoire de stockage :
Pas clair
Il faut que ça marche en pratique et c'est dur d'écarter tous risques de brick. Et je sais pas comment faire techniquement parlant.
Post original
Cliquez pour enrouler
Comme annoncé pour le
Puzzle de l'Avent, un mod Math+ non-officiel est en cours de développement pour permettre d'écrire des add-ins sur la Math+.
Le mod n'est pas encore public du fait qu'il n'y a pas encore les sécurités nécessaires pour bien empêcher qu'on en abuse. Mais les questions techniques sont partiellement résolues et on commence à avoir une vue raisonnable de ce qu'on va pouvoir, ou pas, faire sur la Math+.
La préoccupation principale est
si les .g3a existants vont marcher tels quels, ou
compatibilité binaire. Ce serait le pied, mais c'est pas encore clair si on peut parce que la table des syscalls n'existe plus.
Par ce topic je souhaiterais savoir ce que la communauté voudrait voir dans un tel mod et discuter de la faisabilité technique. Y a-t-il des choses qui posaient problèmes sur la 90 que vous voudriez améliorer ? Des soucis attendus avec la Math+ que vous voulez voir adressés ? J'ai déjà quelques idées en tête, mais je vous laisse vous exprimer.
Fichier joint
Citer : Posté le 30/07/2025 18:05 | #
0x145E: 0xF9
0x75DF: 0x60
0x8583: 0x60
0x9749: 0x3B
0x977B: 0x1F
0x9789: 0x8D
0x9B15: 0xDC
0x9B67: 0x8D
0x9CEB: 0xE4
0x9DC1: 0x27
0x9F33: 0x21
0xA0CD: 0x6E
0xA25F: 0x90
0xA287: 0x81
0xA2B1: 0x81
0xA2F5: 0x96
0xA7F5: 0x23
0xABA1: 0x81
0xAC89: 0x79
0xAC97: 0x79
chat gpt found these
Citer : Posté le 30/07/2025 18:07 | #
... riiiight, so the first thing you'll notice is that these are just random numbers because ChatGPT doesn't know anything and especially not about CASIO calculator programming. There are no shortcuts to understanding what you're doing.
Citer : Posté le 30/07/2025 18:17 | #
oof how do i identify them ??
Citer : Posté le 30/07/2025 18:22 | #
You have to read the Prizoop/NESizm source code, go through the functions, figure out which ones belong to the emulator and which ones are syscalls. These syscalls are called in a very unique way that's easy to spot. Some of them will likely come from libfxcg.
Citer : Posté le 30/07/2025 18:34 | #
also the khicas links are not working brother
Citer : Posté le 30/07/2025 19:18 | #
bro?
Citer : Posté le 30/07/2025 19:22 | # |
Fichier joint
i found these (with help of gpt can u tell me if this is correct)
Citer : Posté le 30/07/2025 19:31 | #
BTW, GPT will not help for such a task, what we need is a complete list of syscalls used in the addin and then making the conversion table to be used by MPM to properly convert the calls for the new OS of the fxCG100 / Math+.
There is absolutely no chance to get proper information from GPT (or any other AI) cause this is not documented yet. So don't loose your time asking chat bots for help on this razor edge topic.
We just need time (and patience) to make the job as it should be done.
Citer : Posté le 30/07/2025 19:36 | #
man i tried to look at the source code and i dont understand shit
Citer : Posté le 30/07/2025 19:37 | #
s;y
BTW, GPT will not help for such a task, what we need is a complete list of syscalls used in the addin and then making the conversion table to be used by MPM to properly convert the calls for the new OS of the fxCG100 / Math+.
There is absolutely no chance to get proper information from GPT (or any other AI) cause this is not documented yet. So don't loose your time asking chat bots for help on this razor edge topic.
We just need time (and patience) to make the job as it should be done.
yo can u help me identify if u have some free time
Citer : Posté le 30/07/2025 19:38 | #
plus pls share khicas link which works this one just inst working for me or if u can share the files pls
Citer : Posté le 30/07/2025 20:21 | #
Hi,
- Planète Casio forums are not an instant messaging platform. While it can happen that some messages are short, you are writing messages that will be kept for years and years, as opposed to disposable instant messages for which no one cares if they disappear. Please take the time to actually think about the people who will read your messages.
- Up until now, you have tried delegating your thinking to ChatGPT and the community. You have already received several messages encouraging you to think by yourself, and I will add one to it. Planète Casio is about sharing knowledge and finding people and projects with similar interests. It is not a free labour platform. Please be respectful of this.
I know this was made hard by decades of platforms conditioning entire generations to instantaneity and short term thinking, but the reality is, the project you are talking about takes an effort in weeks if you know what you're doing, months if you don't. The community, and especially Lephenixnoir, is stretched thin with other projects and life in general. Either actually ask for resources and/or start researching what add-ins are / how to make them, or wait for someone to be interested in that project you've suggested.
Thanks.
(pretty sure KhiCas can be searched on the website BTW; there is a search bar on the top)
Mon blog
Citer : Posté le 31/07/2025 16:17 | #
Hi,
- Planète Casio forums are not an instant messaging platform. While it can happen that some messages are short, you are writing messages that will be kept for years and years, as opposed to disposable instant messages for which no one cares if they disappear. Please take the time to actually think about the people who will read your messages.
- Up until now, you have tried delegating your thinking to ChatGPT and the community. You have already received several messages encouraging you to think by yourself, and I will add one to it. Planète Casio is about sharing knowledge and finding people and projects with similar interests. It is not a free labour platform. Please be respectful of this.
I know this was made hard by decades of platforms conditioning entire generations to instantaneity and short term thinking, but the reality is, the project you are talking about takes an effort in weeks if you know what you're doing, months if you don't. The community, and especially Lephenixnoir, is stretched thin with other projects and life in general. Either actually ask for resources and/or start researching what add-ins are / how to make them, or wait for someone to be interested in that project you've suggested.
Thanks.
(pretty sure KhiCas can be searched on the website BTW; there is a search bar on the top)
um so to answer ur statement yea i agree but i was just a tad bit confused thats why i left the chat gpt question, cnat a lad just have a few questions and secondly i have tried opening the khicas link from like 3 different devices it just doesnt work. sorry for the inconvience
Citer : Posté le 31/07/2025 16:51 | #
As for KhiCAS, Parisse distributes it. On his website I can find this section which I assume is up-to-date: https://www-fourier.ujf-grenoble.fr/~parisse/casio/khicasio.html#sec4
Cake's message was a bit harsh, but he's right in the fact that if all of the steps above take us 5 or 6 messages to resolve, we'll still be here in a thousand posts and the emulators won't be ported yet. I'm genuinely excited about these emulators being ported. It's just that it'll take a bit of skill to do it, and while we're happy to help and guide you, I'm afraid no one here has the time to teach you all the small things from scratch.