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 - Actualités


Index du Forum » Actualités » La Revue des Projets - 243
Slyvtt Hors ligne Maître du Puzzle Points: 2309 Défis: 17 Message

La Revue des Projets - 243

Posté le 10/12/2023 20:21

Bonjour à Toutes et Tous les Casionautes et Casiophiles,

Soyez les bienvenus sur la page de cette 243ème édition de votre Revue De Projets. Aujourd'hui au programme, pour changer de l'habitude, on va parler de projets qui ne sont pas des jeux, comme bien souvent, mais des outils de développement, des émulateurs et des librairies. Tout cela dans le but de coder et/ou tester des addins pour vos machines préférées.

Bref, encore un bien beau programme, sans oublier quelques annonces de fin de RDP...

Donc partons explorer tous ces projets sans plus attendre.


--------------------------------

Casio Dev Tools de Yannis300307


Casio Dev Tools est une extension pour Visual Studio Code (ie. vscode) qui a pour vocation de faciliter et d'automatiser à la fois l'installation de fxSDK et des librairies disponibles avec Giteapc, mais aussi l'utilisation d'outils de programmation d'add-ins pour calculatrices Casio.

Casio Dev Tools est actuellement compatible avec Windows (via WSL) et en natif Linux (Yannis300307 a testé sur Debian mais cela devrait fonctionner avec à peu près toutes les distributions utilisant apt telles que les dérivés d'Ubuntu).

L'outil se distingue par une petite icône sous forme d'une calculatrice sur le côté de Visual Studio Code dans la barre latérale, qui permet d'accéder à un menu avec l'ensemble des fonctionnalités disponibles :



A ce jour, l'extension Casio Dev Tool présente les fonctionnalités additionnelles suivantes pour vscode :
Installation automatique de GiteaPC
Installation automatique du FxSDK
Interface permettant de gérer (lister / installer / désinstaller) les bibliothèques GiteaPC
Interface permettant d'utiliser le FxSDK ( Compilation et création de nouveaux projets)
Configuration automatique du projet VS code
Lancement de l'émulateur de Circuit10 / Heath123 après la compilation
Transfert auto sur la calculatrice et lancement automatique avec Add-in Push (sur Linux uniquement)

Je précise que j'ai pu installer l'extension sur mon vscodium sous Ubuntu 20.04LTS sans soucis, donc Yannis300307 a fait du bon travail.

A n'en pas douter, cet outil va fortement aider les nouveaux arrivants sur le développement avec fxSDK/gint. Merci donc à lui pour cette jolie extension à vscode/vscodium qui saura certainement trouver des adeptes.

N'hésitez donc pas à tester par vous-même, et si vous rencontrez des bugs ou avez des interrogations, faites remonter à Yannis300307 qui saura très certainement vous apporter toutes les réponses ou le support nécessaire.


--------------------------------

Emulateur fx-9860 SH4 de Drakalex007


Bon, par où commencer ? Il y a tant de choses à dire sur le développement d'un émulateur ...

Donc notre ami Drakalex007 a décidé il y a un mois de s'attaquer à la réalisation d'un émulateur de Casio Monochrome basée sur un processeur Renesas SH4 (processeur qui équipe nos fxCG20/Graph 90+E/Graph 35+EII/fxCP400+E etc.). Drakalex007 se focalisant sur les machines un peu plus anciennes, à savoir les Graph 35+/75.

Après s'être documenté sur l'existant et avoir dépouillé la documentation du SH4, notre ami s'est donc lancé dans la folle aventure de coder son émulateur en repartant de zéro.

Compte tenu de l'ampleur du projet, je laisse Drakalex007 en parler pour résumer :

Drakalex007 a écrit :
Vous avez peut-être vu passer dans le forum mon projet du moment, qui est une tentative de créer un émulateur pour calculatrices monochromes SH4.
(Dans le futur, j'aimerais pouvoir supporter également les add-ins SH3 et 35+EII en parallèle.)

Le but ultime de ce projet serait de pouvoir tester tous les add-ins monochromes directement depuis planet-casio avant de les télécharger, et de proposer un environnement de développement en ligne pour la compilation, l’émulation et le debugging d'add-ins.

Grâce à la précieuse aide de Lephe et du forum, j'ai pu avancer très vite dans ce projet et publier la première version fonctionnelle directement testable en ligne : https://sh4.vercel.app/.

Cette démo comporte les jeux suivants qui marchent sans soucis : Jetpack Joyride, Gravity Duck, Fruit Ninja, 2048, Test Andropov, Orton and the Princess, Dead Labs et Hardest Game.
Il est aussi possible d'importer ses propres fichiers .G1A. S'ils sont SH4 et n'utilisent pas gint, il y a de grandes chances qu'ils marchent !
Finalement, si l'émulation est trop lente, il est possible d'augmenter le nombre d'instructions dans le slider en haut à droite.

La prochaine étape est désormais d'intégrer gint à l'émulateur, ce qui s'avère être une tâche tout aussi complexe.
Vous pouvez suivre l'avancement du projet sur le topic officiel, n’hésitez pas à me signaler les add-ins incompatibles ainsi que les erreurs rencontrées !
Le code source est également disponible sur Gitea : https://gitea.planet-casio.com/Drakalex007/fx9860-emulator-playground


Je me permets de rajouter deux captures d'écran de l'émulateur fonctionnant en version web et faisant tourner Gravity Duck :





C'est vraiment un excellent travail de la part de Drakalex007, nous espérons tous avoir bientôt une version standalone pour tester nos addins depuis notre PC.


--------------------------------

Box2D 2.4.1 sur fx-CG50 de SlyVTT


Ce projet vise à porter la librairie bien connue Box2D sur calculatrice fx-CGs et fx9860G. Box2D est une bibliothèque logicielle libre de moteur physique 2D écrite en C++ par Erin Catto. Box2D simule un système de corps rigides sur un plan. Physiquement, un corps rigide peut être simulé par un point (le centre de gravité) avec une position, un angle, une vitesse et une rotation, auquel on applique des forces (gravité, ...) et des impulsions (contacts, …).

Des contraintes peuvent exister entre ces corps, pour représenter une liaison (un pivot, un coulissement… éventuellement avec une résistance ou une force motrice) ou un contact temporaire. Afin de calculer les contacts entre ces corps, Box2D fournit un détecteur de collision. Chaque corps simulé peut avoir une forme, limité soit à un assemblage de cercles, de polygones convexes (triangle, rectangle…) ou de formes définies par l'utilisateur. En cas de collision on peut alors ajouter des contacts entre les corps et aussi préciser des frottements, une élasticité ... La forme d'un corps peut également servir à calculer la masse et le moment d'inertie du corps rigide.

Plus près de nos considérations usuelles, Box2D est ce qui permet de motoriser un certain nombre de jeux reposant sur de la physique de contact, de chute et de mécanisme. L'exemple le plus connu étant très certainement et de très loin le fameux Angry Birds.

Le portage de la librairie standard C++ par Lephé avec gint 2.9.0 nous permet d'avoir désormais toutes les fonctions nécessaires afin de porter ce genre de librairies sur Prizm et Monochrome. Voilà donc qui est fait pur Box2D. Plutôt que d'expliciter durant des heures ce qu'il est possible de faire avec cette librairie, voici une démo visuelle qui illustrera d'autant mieux :



La librairie est à la base créée pour fonctionner avec des ordinateurs puissants ayant un FPU (Float Processing Unit) qui n'est pas dispo sur nos machines. Le calcul des opérations avec des flottants étant "émulé" en soft sur la base de calculs sur des entiers, donc on a pas des performances hyper importantes. Concrêtement, cela fonctionne, mais met très vite la machine sur les genoux dès que les scènes à calculer deviennent complexes. Cela étant dit, pour des petits portages de jeux, ça doit faire le taf.

Le détail de l'utilisation est donné dans le fil dédié du forum, ainsi que l'accès à un addin de test/documentation.

N'hésitez pas à tester et faire remonter les questions et/ou bugs.


--------------------------------

Puzzle de l'Avent 2023 de Planète Casio
  • Le topic qui en parle : Le Puzzle de l'Avent 2023


  • N'oubliez pas non plus le magnifique concours du Puzzle de l'Avent 2023. Cette année, Lephé s'est encore arraché pour nous concocter de bien belles énigmes afin de récolter au fur et à mesure des jours les chères pièces du puzzle qui vous permettrons de reconstituer le pixel-art de 2023.



    Cette année, le thème est très industriel et tourne autours d'un style à la Factorio. Comme le précise Lephé:
    Lephé a écrit :
    On a un thème industriel cette année, où on va suivre les efforts et aventures d'une petite usine avec des préoccupations très calculatoires. Les graphismes sont 100% originaux et toute ressemblance avec n'importe quoi est entièrement fortuite.

    ... comme vous pouvez le constater sur cet exemple d'image illustrant le concours.


    Pensez donc à participer et démenez-vous pour remporter la Casio Graph 90+E donnée en lot pour le plus rapide à reconstituer le puzzle en entier.

    Les finishers seront tous affublés du grade de "Maître du Puzzle", récompense honorifique sur Planète Casio.

    Faites chauffer vos neurones ... et soyez malins ...


    --------------------------------


    Nous voici arrivés à la fin de cette 243ème édition de la Revue des Projets !
    Nous espérons que vous avez pris du plaisir à redécouvrir ou découvrir certains projets à travers cette longue revue. N'hésitez surtout pas à laisser vos commentaires, questions et autres remarques pertinentes.

    En ces temps d'achats de Noël, nous vous souhaitons de trouver tous les cadeaux pour gâter vos proches, de bons projets et vous disons à bientôt sur Planète Casio.

    Et surtout, faites nous part de vos créations avec un petit @RDP bien placé enfin de post !


    --------------------------------



    Depuis la dernière RdP, 10 programmes ont été postés :
    Deep Dive Color de ValidUser
    Tetris de RedCMD
    Gravity Guy Python de Lephenixnoir
    CC26_Demo de Slyvtt
    flappy text de Oika7
    CPBoy de Diddyholz
    SDL Tetris de Slyvtt
    2048 Texte de Fcalva
    Jeu de mémoire de Tuper4
    DemoFX de Slyvtt

    Lire la RdP précédente : La Revue des Projets - 242
    Besoin d'aide ? Une idée ? Un projet ? Un article !



Yannis300307 Hors ligne Membre Points: 279 Défis: 0 Message

Citer : Posté le 11/12/2023 16:28 | #


Mhhh... Il faudrait que je mette à jour les screens sur la page de CDT et que je finisse le polish...

Merci pour cette RDP !
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 !
Slyvtt Hors ligne Maître du Puzzle Points: 2309 Défis: 17 Message

Citer : Posté le 13/12/2023 14:12 | #


J'ai remarqué aussi que lorsque l'on demande le rafraichissement de la liste des librairies dispo sur la forge Gitea de PC, cette opération se fait en boucle au lieu d'une seule fois.

On pourrait sauver quelques ressources de ce côté là je pense.
There are only 10 types of people in the world: Those who understand binary, and those who don't ...
Yannis300307 Hors ligne Membre Points: 279 Défis: 0 Message

Citer : Posté le 13/12/2023 14:45 | #


Je vais aller voir ça et faire une issue. Mais je n'ai pas trop le temps de travailler sur CDT en ce moment donc ça pourrait quelque temps avant que ce soit fix vue le nombre d'issue qu'il y a à regler .

EDIT : Que veux tu dires par "se fait en boucle" et de quel partie parles-tu exactement ?
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 !
Slyvtt Hors ligne Maître du Puzzle Points: 2309 Défis: 17 Message

Citer : Posté le 14/12/2023 15:41 | #


J'ai une notification en bas à droite de vscode / codium qui "pop" régulièrement pour me dire qu'il réactualise la liste des librairies giteapc.
Il me semble que c'est lorsque je demande un rafraichissement de la liste avec le bouton loupe que ça commence.

Je regarderai mieux et essaierai de te faire une capture d'écran.
There are only 10 types of people in the world: Those who understand binary, and those who don't ...
Yannis300307 Hors ligne Membre Points: 279 Défis: 0 Message

Citer : Posté le 14/12/2023 17:32 | #


Tu es sous Linux ou Windows ?
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 !
Slyvtt Hors ligne Maître du Puzzle Points: 2309 Défis: 17 Message

Citer : Posté le 14/12/2023 18:11 | #


sous linux (ubuntu 20.04 LTS)
There are only 10 types of people in the world: Those who understand binary, and those who don't ...
Slyvtt Hors ligne Maître du Puzzle Points: 2309 Défis: 17 Message

Citer : Posté le 14/12/2023 18:19 | #


En fait il cherche à mettre à jour les headers :



Ceci se produit après avoir installé une lib.
There are only 10 types of people in the world: Those who understand binary, and those who don't ...
Eragon Hors ligne Gardien des bots Points: 436 Défis: 0 Message

Citer : Posté le 14/12/2023 18:33 | #


GG pour l'émulateur j'avais pas vu qu'il avait autant avancé.
Kirafi Hors ligne Membre Points: 2180 Défis: 10 Message

Citer : Posté le 15/12/2023 11:53 | #


Wow gros banger l'émulateur, j'avais déjà émis l'idée de faire un truc du genre, bravo ! Et merci pour l'inclusion du 2048 ça fait toujours plaisir qu'après toutes ces années mes programmes continuent de vivre .
iPod
Pour des parties rapides
Jusqu'où pourras-tu aller dans ce jeu "partie rapide" qu'est Dextris (élu Jeu Du Mois)
Pourras-tu survivre plus de 20 secondes dans ce fameux tunnel appelé Graviton
Rebondis entre les murs en évitant les piques dans SpikeBird
Pourras-tu éviter de te faire écraser dans FallBlocs (élu Jeu Du Mois)
Autres
Franchement ils valent le coups
Deviens l'amiral de la marine dans SeaRush (jeu concours) (élu Jeu Du Mois)
La version 2048 tactile amélioré au plus haut point : 2048 Delux !
Pars à la recherche des morceaux d'étoile dans Lumyce (élu Jeu Du Mois)
Lephenixnoir Hors ligne Administrateur Points: 24236 Défis: 170 Message

Citer : Posté le 15/12/2023 14:12 | #


Dis donc Sly c'est quoi ce gros tableau tout moche en plein milieu du code. :P
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Slyvtt Hors ligne Maître du Puzzle Points: 2309 Défis: 17 Message

Citer : Posté le 15/12/2023 14:15 | #


C'est le préload de la table de shift pour l'effet wormhole.
Sinon le calcul en temps réel prends 30s
Donc j'ai fait un pré-pré calcul sur PC et reinjecté dans le code G90+E.
Malin le Lapin
There are only 10 types of people in the world: Those who understand binary, and those who don't ...
Slyvtt Hors ligne Maître du Puzzle Points: 2309 Défis: 17 Message

Citer : Posté le 15/12/2023 14:19 | #


Je précise en plus que tu n'en vois qu'un tout petit morceau, le tableau fait 396*224 valeurs :P
There are only 10 types of people in the world: Those who understand binary, and those who don't ...

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 68 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