Posté le 21/09/2015 19:52
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 88 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 21/09/2015 19:59 | #
Oulà, tu as bien du courage X)
A vrai dire, modifier l'OS de Casio à la j'en-ai-marre-de-vivre peut être très risqué. Je te déconseille donc de toucher à l'OS.
Cependant, il y a un projet d'OS alternatif, FixOS. http://www.planet-casio.com/Fr/forums/topic10104-14-Projet-FiXos-%28OS-pour-casio-fx-9860-Prizm%29.html et le repo http://lab.knightsofnii.com/groups/fixos-core-team
Je pense qu'il faut s'y connaitre en C voir C++ et en ASM. De plus, il faut connaitre un peu le fonctionnement d'un OS
Quel modification voudrait tu apporter à un OS?
Citer : Posté le 21/09/2015 20:04 | #
Oui il faut faire de l'asm (plus optimisé que le C et langage de bas niveau)
puis c'est transformé en Hexa
Bien du courage pour faire un OS ce n'est pas possible si tu n'as pas toutes les connaissances nécéssaires car le test sur machine sera une catastrophe (tu n'auras plus de machine) ...
Citer : Posté le 21/09/2015 20:06 | #
Alors, pour commencer, il faut savoir que 99% des OS sont codés en C, car ils ont besoin d'être non-seulement compilé, mais aussi de pouvoir accéder facilement aux ressources de bas niveau de la machine. Et le C est le langage qui est le plus adapté.
La seconde chose qu'il faut savoir, c'est que tu n'arrivera pas à comprendre l'OS de Casio, même décompilé. Ou alors t'es un génie et je veux bien que tu fasse une grosse doc dessus. Mais si t'as beaucoup de temps libre et d'excellentes connaissances en ASM, va-y !
La troisième, c'est que FiXos, le projet dont as parlé Intelligide au dessus est en cours de développement depuis environ 3 ans, et actuellement il gère à peine un terminal. D'ailleurs c'est un kernel et non un OS. Ok il respecte autant que possible la norme POSIX, mais quand, même, créer un OS de zéro demande beaucoup (énormément) de rigueur, de savoir faire, et de temps. Mais si tu souhaites en savoir plus, je te conseille l'excellent site osdev.org.
Dans tout les cas, commence par apprendre et maitriser le C, le fonctionnement d'un kernel, d'un OS, la doc des composants de la calculatrice, etc. Ensuite tu avisera.
Citer : Posté le 21/09/2015 20:14 | #
Bha niveau C/C++ je suis plutôt bon et pour ce qui est de l'ASM je suis en train de l'apprendre au cours de mon BTS Science du Numérique donc je pense que ça devrait le faire
Par contre j'avoue que niveau fonctionnement d'un os je ne m'y connait pas tellement.
Ce serait surtout des modifications d'interface:
- Modifier l'apparence du menu principal
- Ajouter une horloge (je pense que c'est possible grâce à l'horloge interne)
- Ajouter un écran de démarrage
- Ajouter quelques animations
Après c'est pas que j'en aurait vraiment une utilité, c'est juste me donner un petit challenge, explorer un nouveau domaine et avoir une calto un peu plus personnelle
Citer : Posté le 21/09/2015 20:23 | #
Pour l'horloge, cela nécessiterait de laisser un processeur tourner en continu, même en extinction et viderait vite les piles je pense.
En tout cas, si tu t'y lances, bonne chance.
Pong400
PierrePaCiseaux (CP400)
Les Triangles
Menu
ASCII
Nombres premiers
Citer : Posté le 21/09/2015 20:31 | #
Ce compteur est déjà présent dans l'OS de base
Quand on développe en C un Add-in, on peut récupérer le nombre de "Tick" qui se sont écoulé depuis la première mise en service de la calculatrice avec la fonction RTC_getTicks(), et ce nombre comprend aussi le nombre de Ticks écoulé penant l'extinction de la machine
Merci
Citer : Posté le 25/09/2015 20:46 | #
Pour l'horloge, cela nécessiterait de laisser un processeur tourner en continu, même en extinction et viderait vite les piles je pense.
En tout cas, si tu t'y lances, bonne chance.
Non pas du tout. Actuellement, il y a déjà ce petit processeur comme tu dis (qui consomme presque rien) qui tourne sur la calculatrice. A ton avis, comment fonctionne l'horloge de lephé ou encore Fourmizz de The Prog
Edit : Le mec qui poste sans regarder le dernier message
Sinon, tu as avancé sur tes recherches ?
Citer : Posté le 25/09/2015 20:47 | #
Enfin, entre y acceder dans un addin et y accéder en modifiant l'OS, c'est pas la même… Je suis même pas sur que SimLo soit capable de le faire
Citer : Posté le 25/09/2015 20:48 | #
C'est pas juste une adresse dans la mémoire
Citer : Posté le 25/09/2015 20:51 | #
L'horloge oui. Exécuter du code en modifiant l'OS, c'est une autre paire de manche. Parce que ce qu'il veut faire, c'est modifier le comportement de la fonction d'affichage du menu pour y incruster une horloge. Arriver à localiser précisément ce bout de code et le modifier en conséquence, c'est pas de la tarte.
Citer : Posté le 25/09/2015 20:54 | #
Oui bien sure. Quoi que le bandeau a déjà été modifié, donc ce n'est pas impossible
Après faut qu'il ai aussi des connaissance en ASM
Citer : Posté le 25/09/2015 20:56 | #
>_<
Le bandeau est modifié en statique. Faire un truc dynamique c'est limite impossible !
Faut savoir que le fichier de 1,5Mo décompilé fait environ 750k lignes. Bonne chance.
Citer : Posté le 25/09/2015 21:05 | #
Bah, tu cherches dans l'OS avec un logiciel de recherche type ctrl+f ( ), les endroits ou apparaissent l'adresse en question où est stocké le bandeau, à priori ça ne devrait intervenir qu'à l'affichage de ce dernier, tu modifies cette adresse là où c'est intéressant pour pointer vers une zone de la RAM à priori utilisée par personne, et ensuite tu fais un addin qui instaure un timer sur une fonctions chargée de remplir la nouvelle zone avec un bandeau qui contient l'heure, et tu ne dés-instaure jamais le timer (un peu en mode Program2) et en revenant au menu il sera toujours actif.
Voilà une méthode simple mais 100% fiable, fonctionnelle et sûre… (ou pas ! )
Citer : Posté le 25/09/2015 21:45 | #
Marchera pas : lancer une appli quelconque désinstalle les timers automatiquement. Prgm2 lance l'appli "Programs" directement, c'est pour cela que ça fonctionne. Du coup via un addin c'est mort, sauf si t'arrives à recréer intégralement un gestionnaire d'interruptions fiable à 100% et grâce auquel l'OS tourne sans soucis.
Citer : Posté le 26/09/2015 10:00 | #
Il faut aussi qu'après avoir modifier l'OS la taille soit toujours la même. Mais après ça dépend d'où tu prends ton horloge (ticks) je sais pas si ça vient du peripherical clock ou du bus clock mais je pense que c'est largement accessible dans un add-in mais moins facile dans un OS.
Sinon il reste qu'a désassembler à l'endroit de la rom à l'adresse 0x8001 2AB8 (2.04 SH4) et si tu désassembles à cet endroit et tu devrais certainement trouver ce que tu veux
Citer : Posté le 05/10/2015 10:47 | #
Ça faisait un bout de temps que je n'avais pas regardé le forum
Merci à tous pour vos réponses !
Je n'ai pas avancé d'un poil mais j'avais commencé à me documenter sur la création d'un OS avec le lien de Dark Storm, mais ça a l'air assez compliqué bien que je pense avoir les connaissances nécessaires
Il n'y a vraiment aucun moyen de "dé compiler" l'OS de base ou d'en trouver un déjà prêt sur internet ?
Car je voudrait seulement modifier quelques trucs sans pour autant recréer un OS au complet
Citer : Posté le 05/10/2015 16:29 | #
Ben tu peux toujours le désassembler, mais ça te donnera environ 750k lignes d'ASM…
Citer : Posté le 05/10/2015 16:33 | #
Si, on peut désassembler l'OS. Mais tu n'arriveras pas à modifier quoi que ce soit.
Voilà un paste de ce qu'on obtient (désassembleur maison) sur les 0x1000 premiers octets :
http://pastebin.com/VBCDrgwx
Citer : Posté le 05/10/2015 19:23 | #
C'est de l'ASM je suppose
Citer : Posté le 05/10/2015 19:30 | #
Oui, bien entendu.
Jamais vous n'aurez du C à partir de binaire.