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 - Projets de programmation


Index du Forum » Projets de programmation » MQ : Émulateur add-ins universel
Lephenixnoir En ligne Administrateur Points: 25166 Défis: 174 Message

MQ : Émulateur add-ins universel

Posté le 28/05/2025 20:22

Parmi les projets de 2025 il y a tout un plan pour préserver les contenus du site, notamment les vieux programmes. La base de programmes de Planète Casio n'est pas beaucoup maintenue et on ne traque pas vraiment ce qui est encore jouable ou pas.

Les projets d'émulateurs c'est pas nouveau, c.f. *, *, * et j'en oublie. Initialement je pensais repartir d'un existant, mais finalement j'en ai commencé un from scratch en voyant le cahier des charges :

  • Il faut pouvoir émuler à la fois les Graph mono et les Prizm et à la fois les SH3 et les SH4 ;
  • Il faut que ça puisse tourner sur le site donc compiler vers WebAssembly et optimiser raisonnablement (téléphones etc. ont pas des perfs de dingue) ;
  • Il faut émuler pas mal de trucs matériels, donc assez bas-niveau, pour bien couvrir les add-ins et potentiellement l'appli PRGM pour émuler les programmes Basic ;
  • Et si on fait tout ça ce serait criminel de pas s'en servir pour développer/debugger, ce pour quoi une GUI plus grosse que juste l'écran est nécessaire (et/ou gdb).

Les détails techniques, pour ceux que ça intéresse, c'est : pur C, tourne sur Azur par facilité (GUI en OpenGL avec ImGui + compile pour Linux et WebAssembly), le décodeur est un arbre de switch généré automatiquement et la mémoire est hiérarchique par blocs de 1 Mo, 4 ko, et 1 octet.

L'état actuel (Mai 2025) c'est : on peut faire tourner quelques add-ins sur CG, y'a des syscalls mais peu, y'a une partie du matériel émulé pour faire tourner gint ; en gros si vous prenez un add-in aléatoire ça va probablement pas marcher, mais pas loin.

Voici le dépôt et au passage à quoi ressemble l'interface : y'a tous les trucs techniques nécessaires pour debugger.

» Dépôt Git Lephenixnoir/mq «


J'ai pas encore de build pour le web sur lequel vous pouvez cliquer et tester tout de suite, mais vous pouvez compiler depuis le dépôt.

Voilà plus de nouvelles bientôt j'espère.

Fichier joint


Yannis300307 Hors ligne Membre Points: 318 Défis: 4 Message

Citer : Posté le 02/06/2025 16:16 | #


Il faudrait peut-être ajouter un mode activable qui réduit le nombre de cycles CPU ou le temps d'update de l'écran pour se rapprocher de la vitesse originale de la calculatrice pour les jeux qui n'utilisent pas de delta time.

Sinon, très impressionnant à ce que je vois sur les captures. L'UI est très clean, ça utilise quoi pour la faire ?
Développeur sur calculatrice mais qui, contre toutes attentes, prend des douches
Lephenixnoir En ligne Administrateur Points: 25166 Défis: 174 Message

Citer : Posté le 02/06/2025 16:22 | # | Fichier joint


L'UI utilise Dear ImGui avec quelques trucs custom notamment la barre de menu (ci-dessous), la fenêtre "Display" qui est dessinée direct en OpenGL avec zoom etc, et des widgets maison pas encore très élaborés mais ça vient


Mon graphe (28 Janvier): (MPM ; serial gint ; (Rogue Life || HH2) ; PythonExtra ; ? ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Drakalex007 En ligne Membre Points: 691 Défis: 0 Message

Citer : Posté le 04/06/2025 17:44 | # | Fichier joint


Je me suis amusé à tweaker le clavier virtuel de façon à pouvoir "slider" sur les touches, ce qui permet de profiter pleinement de l'expérience originale proposée par Fruit Ninja


Mb88 Hors ligne Rédacteur Points: 1254 Défis: 3 Message

Citer : Posté le 04/06/2025 18:11 | #


Est ce que t'as prévu d'ajouter une option pour émuler la persistance de l'écran pour pouvoir pleinement profiter des add-ins gint qui utilisent le moteur de gris ?

Sinon c'est super impressionnant
Tuper4 Hors ligne Membre Points: 1025 Défis: 26 Message

Citer : Posté le 06/06/2025 05:39 | #


Lephe' a écrit :
...et on ne traque pas vraiment ce qui est encore jouable ou pas.

J'avoue j'ai un peu zappé, mais avec les exams je ne peux pas trop faire grand chose en ce moment. Ma dernière épreuve étant mercredi pochain, jespére pouvoir continuer le "job".
Sinon, super émulateur. Et d'après la screenshot, on dirait qu'il supporte la mémoire (et les syscalls?) ce qui à l'aire top to be honest.
Un gros GG desus
Je fais que de confondre Noël et Halloween
Par ce que Oct 31= Dec 25

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 - 2025 | Il y a 140 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