Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » Projet FiXos (OS pour casio fx-9860/Prizm)
KristabaHors ligneMembrePoints: 614 Défis: 22 Message

Projet FiXos (OS pour casio fx-9860/Prizm)

Posté le 07/11/2011 20:11

maj 14/11/2013 : un peu d'actualités
maj 03/03/2013 : mon (presque) dernier pavé
maj 06/03/2015 : Dépôts GitLab du projet.


Vu que le sujet d'OS unix-like pour nos chères G85 (fx-9860) et dérivées, ainsi que pour la Prizm (fx-cg20) fait réagir pas mal de gens, j'ouvre un topic pour en parler plus en détail
(début du sujet sur ce topic)

Déjà, quelques précisions, mes posts précédent étaient simplement des idées pour montrer l'utilité et ma vision d'un possible OS, je n'avais pas vraiment pour projet de le concrétiser dans l'immédiat. L'idéal serait de bosser là dessus conjointement avec des gars d'omnimaga, cemetech, et les autres communautés.
Ceci dit, j'ai déjà quelques idées dans la tête, donc autant les faire partager

(au passage, j'en profite pour répondre un peu aux posts de l'ancien topic)
DJ_Omnimaga : sur Casio on a jamais eu l'occasion de créer un OS tiers jusqu'à la fx-9860 (excepté la Graph100 mais c'était loin d'être le modèle le plus répandu), les processeurs étant non documentés. Depuis que tous les nouveaux modèles de Casio utilisent la même architecture plus ouverte, il est possible de créer un OS custom, mais si il n'y a toujours pas eu de projet d'OS c'est entre autre par ce que les addins permettaient déjà de faire des programmes sympa, et probablement aussi à cause du manque de "programmeurs systèmes" dans le monde Casio.

Vdragon.b: Oui, un OS est généralement codé en C (pas une obligation, mais Linux en est un bon exemple ouaip). Ceci dit, vaut mieux "bien coder", par ce que l'expérience permet de d'optimiser le code, d'utiliser des syntaxes très barbares -mais pratiques-, de comprendre la structure générale de l'OS. Après, si il s'agit de code hors-noyau (un petit utilitaire ou autre) bien entendu les performances sont moins critiques, donc si tu te sens tu pourras aider j'imagine.
Pour les grayscales et le multitâche c'est prévu dans mon idée perso effectivement.
(dans un premier temps, multitâche coopératif avant d'écrire un vrai ordonnanceur)

Pour le moment, les idées que j'ai pour le kernel :
- une fonction init pour initialiser le MMU, le cache, créer la pile kernel, initialiser les interruptions, charger le système de fichiers...
- un FS type FAT par exemple, serait potentiellement créé en tant que fichier du FS de Casio (pour permettre la cohabitation des deux systèmes, en évitant de se tapper le FS de Casio complètement en carton *siflotte*)
- système de virtual FS pour permettre une uniformité des API d'écriture de fichiers
- possibilité de lancer un programme binaire "pur" (binaire sans header G*A), un binaire G1A, ou un fichier ELF (ce dernier permettrait l'utilisation de techniques avancées)
- gestion des bibliothèques dynamiques (du .so si le format est pas trop lourd, custom sinon), dont Newlib (lib stdc) pour alléger les addins, profiter de fonctions spécifiques à chaque calculatrice...
- gestion du MMU en mode activé et pour environnement multiprocessus (basculement en monoprocessus si nécessaire pour assurer la retro-compatibilité G*A?)
- évidemment, les addins seraient lancés en mode 'user' pour assurer la sécurité du kernel
- syscalls utilisant l'instruction TRAPA de l'assembleur SH3 (interruption logicielle), pour basculer en mode protégé et accéder à l'espace noyau
- des drivers d'affichage dépendant du modèle de la calculatrice, permettant de gérer un mode "terminal" et un mode "graphique"

Si vous avez des questions, des choses à proposer, des contacts avec des gens intéressés ou quoi que ce soit n'hésitez pas.
Je ne sais toujours pas si je vais vraiment me lancer là dedans (c'est un gros projet encore une fois, peu de chances d'être fini un jour si y'a que moi dessus ), mais dans le pire des cas, les idées présentées serviront bien à quelqu'un, un de ces quatres



Pages : 1, 2, 3, 4, 5, 6, ... 10Suivante
dafpp
Statut : Invité

Citer : Posté le 05/10/2012 20:09 | #


Suite de l'histoire ?
EiyeronHors ligneAncien modérateurPoints: 5513 Défis: 57 Message

Citer : Posté le 05/10/2012 22:34 | #


Bah... j'ai pas de nouvelles de lui, la dernière fois remonte à juillet. Après... L'IUT a bouffé une grosse partie de son temps (et je le comprends)
dafpp
Statut : Invité

Citer : Posté le 06/10/2012 09:01 | #


Ah bon, je me souviens pas de ce genre de choses a l'IUT, mais apres je ne suis pas a la place des gens.
EiyeronHors ligneAncien modérateurPoints: 5513 Défis: 57 Message

Citer : Posté le 07/10/2012 20:46 | #


Quoi qu'il en soit, je vais ptet' lui demander une copie de ce qu'il avait déjà, c'est à dire un bootstrapper, qui permet de remplacer l'OS dans la RAM, c'est à dire jusqu'à reboot par bouton reset ou plus de piles.
SiapranHors ligneMembrePoints: 3248 Défis: 17 Message

Citer : Posté le 07/10/2012 22:42 | #


t'arrives à le contacter toi?
TotoyoHors ligneMembre d'honneurPoints: 15901 Défis: 101 Message
EiyeronHors ligneAncien modérateurPoints: 5513 Défis: 57 Message

Citer : Posté le 08/10/2012 20:19 | #


Bah, disons que parfois, j'ai sa présence sur msn...
KristabaHors ligneMembrePoints: 614 Défis: 22 Message

Citer : Posté le 08/10/2012 20:47 | #


Hop là, je passe en deux-deux, juste pour dire que je suis pas -tout à fait- mort.
En fait c'est pas tant l'IUT que IRL qui me bouffe du temps (encore que la 2ème année est bien lourde en projets de toutes sortes, ça va pas être aussi détente que l'an passé ).

Je peux potentiellement passer les sources, mais y'a pas des masses de choses, c'était surtout des notes, des connaissances glannées à droite et à gauche, bien plus que de la réalisation concrète (enfin ouai, le bootstrap marche, mais c'est presque du détail au fond).

Pour me contacter, je suis plus vraiment actif sur PC, mais je passe de temps à autre pour me tenir au courant
Préférez un petit mail (même si j'ai une facheuse tendance à oublier de répondre).

Voilà, fin du HS sur mon propre topic, et à la revoyure les jeunes!
Il était vraiment temps que je change cette signature...
EiyeronHors ligneAncien modérateurPoints: 5513 Défis: 57 Message

Citer : Posté le 08/10/2012 22:01 | #


TU peux me passer le peu de cours que tu as pour l'iut? J'ai l'impression d'avoir + ou - le même programme que toi
daffp
Statut : Invité

Citer : Posté le 09/10/2012 15:17 | #


Je peux avoir simplement ton adresse e-mail kristaba ?
LoulouxHors ligneAncien administrateurPoints: 7035 Défis: 61 Message

Citer : Posté le 09/10/2012 17:37 | #


Tu n'as qu'à fouiller dans la mailing-list, tu la connais bien.
SiapranHors ligneMembrePoints: 3248 Défis: 17 Message

Citer : Posté le 09/10/2012 19:00 | #


apply cold water to burn
EiyeronHors ligneAncien modérateurPoints: 5513 Défis: 57 Message

Citer : Posté le 09/10/2012 19:09 | #


Hu? Siap?
SiapranHors ligneMembrePoints: 3248 Défis: 17 Message

Citer : Posté le 09/10/2012 19:18 | #


Dafp a écrit :
Je peux avoir simplement ton adresse e-mail kristaba ?

Louloux a écrit :
Tu n'as qu'à fouiller dans la mailing-list, tu la connais bien.


apply cold water to the burn
DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 09/10/2012 19:23 | #


ta première phrase voulait dire : appliquer de l'eau pour brûler
je ne sais pas si on dis burn pour une brulure cependant...
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
Vdragon.bHors ligneMembrePoints: 1401 Défis: 0 Message

Citer : Posté le 09/10/2012 19:53 | #


hum... plutôt "appliquez de l'eau froide sur la brulûre"
ce serait une ironie de Siapran à Louloux?
there are many incredible things in the world...So,believe in yours dreams!
I own a graph 3575+.

DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 09/10/2012 19:54 | #


siapran a écrit :
apply cold water to burn

to burn veut bien dire pour bruler non?
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
LoulouxHors ligneAncien administrateurPoints: 7035 Défis: 61 Message

Citer : Posté le 09/10/2012 19:59 | #


Laissez tomber ce n'est pas en traduisant de l'anglais que vous comprendrez les allusions. J'ai juste joué d'une ironie noire contre Dafp, et Siapran s'est empressé d'ajouter que j'envoie de l'eau glaciale dans le feu, mais je l'assume.
DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 09/10/2012 20:01 | #


j'ai compris l'allusion (il a spammé tout le monde si j'ai bien compris) mais j'ai eu l'impression que siapran a fait une faute d'anglais lors de sa premiere phrase
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
SiapranHors ligneMembrePoints: 3248 Défis: 17 Message

Citer : Posté le 09/10/2012 20:39 | #


non non en fait gramaticalement les deux veulent dire la même chose (même si la première peut effectivement porter à confusion), et la première version est la nomination officielle du meme (d\'après les suggestions google)


et non c'était plutôt bien joué Louloux, je ne te critiquais pas (pour une fois)

bon maintenant stop au [HS] avant que Tatayoyo ne fasse encore des siennes

[/HS]
Pages : 1, 2, 3, 4, 5, 6, ... 10Suivante

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2019 | Il y a 43 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