Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » ./&emulateur graph 85/35+E/35+EII open source
Inikiwi Hors ligne Membre Points: 522 Défis: 8 Message

./&emulateur graph 85/35+E/35+EII open source

Posté le 17/10/2021 15:14

salut! en ce moment je me demande si ca serait bien de coder un emulateur open source de calculatrice ou on sélectionne le modèle a émuler et on donne l'os flashé et ça émule!
ça serait génial au lieu d'utiliser un émulateur propriétaire payant et ou d'utiliser wine qui ne fonctionne pas sur linux

a ce que je sais:
-le processeur des calculatrices sont des SH4 ou chaque instruction fait 2 octets
-l’écran est un TKxxx
-64k de mémoire principale
-3Mo de stokage


Eragon En ligne Gardien des bots Points: 422 Défis: 0 Message

Citer : Posté le 17/10/2021 15:24 | #


Tu peut regarder du côté de qemu il supporte l'architecture sh4, il suffirait de lui donner une définition de «board» pour avoir un modèle de calculatrice.

«Il suffirait™»
Lephenixnoir Hors ligne Administrateur Points: 24058 Défis: 169 Message

Citer : Posté le 17/10/2021 15:25 | #


Il suffirait oui... peu importe l'approche c'est très difficile. Voir AHelper/qemu pour un début de tentative existant, perso je me suis jamais penché dessus.
Mon graphe (16 Jan): (PythonExtra ; fxsdk#11 ; gint#27 ; (Rogue Life || HH2) ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Redoste Hors ligne Membre Points: 47 Défis: 0 Message

Citer : Posté le 18/10/2021 23:23 | #


Perso je me suis déjà penché dessus, et c'est vraiment pas gagné.

Je poste pas souvent ici mais j'ai vu ce thread qui a attiré mon attention car j'ai déjà essayé de faire un émulateur fx-CG50 (enfin il avait pour but d'être le plus générique possible pour pouvoir être facilement adapté vers d'autres caltos SH4) après mes tentatives désespérées de faire un debugger potable pour l'émulateur officiel.

J'ai essayé aussi bien avec QEMU qu'un truc full custom.

Pour QEMU (d'ailleurs j'avais même pas trouvé le repo que Lephe a linké alors que j'avais fait beaucoup de recherche avant ), le truc c'est que la code base est immense, rajouter une board avec juste une sortie série ça peut se faire, mais si tu veux rajouter des I/O plus complexes (comme un écran et un clavier) c'est tous de suite beaucoup plus difficile car tu vas te perdre dans un truc qui (de base en tout cas (il me semble)) était fait pour émuler des PCs, donc avec des tonnes de devices utilisant plein de bus et de protocoles différents. En plus l'implémentation SH4 ne semblait pas complète, ça fait plus de 6 mois que j'avais essayé donc je ne me souviens plus de ce qui semblait manquer, mais en tout cas c'est loin d'être l'architecture la plus utilisée / maintenue de QEMU.

Après cet échec j'ai essayé de faire un truc full custom, ça me semble pas impossible mais c'est très lent, répétitif et lassant, donc j'ai fini par abandonner. J'avais écrit un script python (dont je suis plutôt fier en vrai, je le garde sous le coude si j'ai d'autres projets d'émulateurs) pour m'aider à automatiser l'écriture des différentes instructions du CPU, malgré ça j'ai du en faire moins d'un dixième. Ajouté à ça tous les registres mal / peu documentés du MPU : c'est très vite énervant. On jongle entre doc des différents MPUs similaires, décompilation de l'émulateur officiel et spéculations complètes quant à l'utilité de certains.

Pour finir sur une note plus positive je pense que ça devrait être possible, il faut juste plusieurs personnes qui ont la force mentale de traverser tous ça. En plus un émulateur du genre serait probablement plus rapide et plus fidèle que l'officiel (enfin il aurait une vraie utilité quoi) mais ça risque de ne jamais arriver.
Lephenixnoir Hors ligne Administrateur Points: 24058 Défis: 169 Message

Citer : Posté le 19/10/2021 06:24 | #


Merci beaucoup pour ces détails, je pense que tu touches beaucoup de points justes.

Je nuancerai juste le dernier point : c'est pas dit que ce soit plus rapide que l'émulateur officiel, qui est quand même pas mal optimisé.
Mon graphe (16 Jan): (PythonExtra ; fxsdk#11 ; gint#27 ; (Rogue Life || HH2) ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Inikiwi Hors ligne Membre Points: 522 Défis: 8 Message

Citer : Posté le 04/11/2021 12:16 | #


c'est pas une question d'optimisation, c'est aussi un émulateur multiplate-forme et libre
Yannis300307 En ligne Membre Points: 250 Défis: 0 Message

Citer : Posté le 19/11/2022 10:44 | #


Si ce post est toujours d'actualité, il faudrait rajouter la graph 90 + e. Ce serait vraiment cool de pouvoir coder des plugins vscode par ex pour pouvoir lacer le programme directement. Je me demandais aussi ce qu'était https://gitea.planet-casio.com/IniKiwi/nemu.

Merci !
WOW ! Mais qu'est-ce-que je vois ??!! Une extension VS Code qui permet de simplifier le développement sur calculatrices ??!! C'est ici : Casio Dev Tools. C'est incroyable ! C'est prodigieux !
Inikiwi Hors ligne Membre Points: 522 Défis: 8 Message

Citer : Posté le 19/11/2022 11:57 | #


c'est ça mais il va falloir que je reprenne que les bases et le refaire au propre et tout restructurer. (la gestion lecture/écriture est horrible)
pour l'instant je n'ai pas le temps ou très peu. je travaille sur un projet perso en java.
je ne serais pas contre un peu d'aide.
Yannis300307 En ligne Membre Points: 250 Défis: 0 Message

Citer : Posté le 19/11/2022 12:00 | #


Je soutient à 100 % ce projet ! Ca rendrais le dev sur casio beaucoup plus simple
WOW ! Mais qu'est-ce-que je vois ??!! Une extension VS Code qui permet de simplifier le développement sur calculatrices ??!! C'est ici : Casio Dev Tools. C'est incroyable ! C'est prodigieux !
Drakalex007 Hors ligne Membre Points: 687 Défis: 0 Message

Citer : Posté le 06/11/2023 19:56 | #


Je tombe sur ce topic après m'être posé la même question.

A ce jour les seuls émulateurs disponibles sont ceux officiels ?

Est-ce que ca simplifierait la tâche de se concentrer uniquement sur l'émulation et l'exécution d'add-ins (pas de menu principal ou d'apps officielles) ?

Et au passage, c'est légal de créer un tel émulateur et de le rendre open source vis-a-vis de Casio ?
Lephenixnoir Hors ligne Administrateur Points: 24058 Défis: 169 Message

Citer : Posté le 06/11/2023 19:57 | #


Se concentrer sur les add-ins est la seule option, car en effet en permettant l'émulation de l'OS on empiéterait sur le territoire de CASIO, probablement légalement.

Sinon, on sait faire, circuit10 a un émulateur raisonnable pour Graph 90+E (mais il n'est pas publié proprement), et on pourrait le faire pour mono aussi, comme l'a démontré Inikiwi même s'il n'est pas allé au bout.

En termes de produits finis, il n'y a encore que les officiels, mais j'ai un plan en tête d'en intégrer à Planète Casio pour permettre de jouer aux vieux jeux.
Mon graphe (16 Jan): (PythonExtra ; fxsdk#11 ; gint#27 ; (Rogue Life || HH2) ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Drakalex007 Hors ligne Membre Points: 687 Défis: 0 Message

Citer : Posté le 06/11/2023 20:23 | #


Oui je vois, merci pour ta réponse.
Je ne connaissais pas l’émulateur de circuit10, très intéressant comme repo!

J'aurai bien aimé m'atteler à un tel projet mais je n'ai malheureusement pas les connaissances nécessaires pour du si bas niveau (je n'ai actuellement pas la moindre idée du point de départ ou des étapes nécessaires pour réaliser un projet comme celui ci).

Ceci dit je serai assez curieux d'en apprendre davantage, tu connaîtrais des topics/ressources intéressantes autour de ce sujet ?

Lephenixnoir a écrit :
mais j'ai un plan en tête d'en intégrer à Planète Casio pour permettre de jouer aux vieux jeux.

Tu veux dire directement depuis le navigateur ?
Lephenixnoir Hors ligne Administrateur Points: 24058 Défis: 169 Message

Citer : Posté le 06/11/2023 22:36 | #


Aïe, j'ai pas vraiment de ressources non... j'ai un peu tendance à faire les trucs dans ma tête, désolé. >_>

Tu veux dire directement depuis le navigateur ?

Je pense oui, c'est pas très dur (celui de circuit10 le supporte d'ailleurs)
Mon graphe (16 Jan): (PythonExtra ; fxsdk#11 ; gint#27 ; (Rogue Life || HH2) ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Inikiwi Hors ligne Membre Points: 522 Défis: 8 Message

Citer : Posté le 07/11/2023 13:58 | #


Haha j'avais testé les jeux de draka sur mon émulateur pendant son dev, ils sont dur a émuler .
Inikiwi Hors ligne Membre Points: 522 Défis: 8 Message

Citer : Posté le 07/11/2023 13:59 | #


Si tu veut voir mon émulateur, le code est sur le gitea, le code est facile à lire et bien structuré.
Drakalex007 Hors ligne Membre Points: 687 Défis: 0 Message

Citer : Posté le 07/11/2023 17:50 | #


Effectivement merci!

Quel est le stade d'avancement de ton émulateur, il peut faire marcher certains add-ins?
Qu'est-ce qui est déjà en place/qui marche et qu'est-ce qu'il reste à faire?
Inikiwi Hors ligne Membre Points: 522 Défis: 8 Message

Citer : Posté le 07/11/2023 20:56 | #


il peux démarrer des addins sh4 codé avec le sdk de casio. malheureusement j'étais bloqué sur l’implémentation de l'input du clavier donc on est bloqué au menu principal.
Fcalva Hors ligne Membre Points: 444 Défis: 8 Message

Citer : Posté le 07/11/2023 20:59 | #


Reprendre l'émulateur de Circuit10/Heath123 serait probablement mieux, vu qu'il est déja entièrement fonctionel pour ce qui appelle pas l'OS
Pc master race - Apréciateur de Noctua moyen
Caltos : G90+E, FX-92+ (x2)

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 42 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