Portage des add-ins Prizm sur Graph 90
Posté le 30/04/2018 20:45
Vous le savez peut-être déjà : la compatibilité entre Prizm et Graph 90 est extrêmement grande. À part l'adresse de la VRAM qui change, un add-in lambda peut se porter juste en changeant l'icône.
La Graph 90 est un marché très prometteur et on doit faire le maximum pour créer une base de programmes à partir de quasiment rien. Porter des add-ins Prizm est une solution efficace pour obtenir des jeux de bonne qualité.
Pour les add-ins sans source, Nemhardy travail sur un
G90 Compatibility Tool qui travaillerait sur les binaires. C'est pas un problème facile mais ça aiderait beaucoup !
D'ici là on planifie d'en porter, soyons optimistes, le maximum. Ce topic nous servira à les recenser et à partager quelques notions de portage, si d'autres veulent aider.
Add-ins en attente de portage
Je n'ai pas encore cherché les éventuelles sources en-dehors de Planète Casio.
Sur Planète Casio
-
Falldown Colors de Dodormeur
(pas de sources)
-
CGDoom de Martin Poupe (
sources)
(difficile)
-
Open Jazz Jackrabbit de ProgrammerNerd
(pas de sources)
-
Bust-A-Move d'Eiyeron
(difficile)
-
TetriZM de KermMartian
(pas de sources)
-
CGSnake d'Eiyeron
-
Obliterate de KermMartian
(pas de sources)
-
Life Game CG-20 de Smashmaster
(pas de sources)
-
Eigenmath de Gbl08ma
(difficile)
-
ColorLib de Lancelot
Sur TI-Planet, Omnimaga, Cemetech, CodeWalrus, Casiopeia...
- On doit pouvoir porter Utilities de Glb08ma
- Vous pouvez oublier Insight.
...
Add-ins extérieurs déjà portés ou dont l'auteur envisage un portage :
-
2048 de Balping (
sources)
-
Othello de Balping (
sources)
-
Snake de Balping (
sources)
Add-ins dont un port est disponible
-
CubeField de PierrotLL
-
GravityDuck de PierrotLL
-
Sudoku Solver de Lancelot (
#152820)
-
Flappy Bird Color de Lancelot (
#152830)
-
Sonic de Smashmaster (
#152837)
-
Démineur WinXP de Smashmaster (
#152859)
-
MetaBall de Lancelot (
#152860)
Infos pour les portages
Grosso modo il n'y a quelques points cruciaux. On pourra étendre la liste si des problèmes se posent.
- La VRAM est systématiquement hardcodée à
0xa8000000. Utilisez le syscall
0x1e6 à la place.
- Il faut refaire les icônes... (c'est une partie non négligeable du travail)
- La fréquence des horloges est double donc il y aura peut-être des
Sleep() ou des timers à ajuster.
- Déplacez les fonctions écrites en assembleur dans des fichiers assembleur. GCC n'apprécier pas sinon.
Je maintiendrai le plus possible ce topic à jour selon les portages. Au boulot ! o/
Citer : Posté le 30/04/2018 20:46 | #
Hésites pas à linker le projet de G90 Compatibility Tool
Mon blog ⋅ Mes autres projets
Citer : Posté le 30/04/2018 20:58 | # | Fichier joint
Done, merci !
Je commence avec le premier add-in porté : Sudoku Solver de Lancelot !
Lien de téléchargement : https://www.planet-casio.com/files/commentaires/Sudoku-56216-0.g3a
Citer : Posté le 30/04/2018 21:03 | #
Il y encore les bords noirs sur les côté ou l'écran est complet ?
Citer : Posté le 30/04/2018 21:04 | #
Juste en passant, ce topic sur TiP peut certainement aider à établir une liste intéressante.
Et typiquement TetriZM et Obliterate ont étés mis à jour par KermM, même s'il n'en donne toujours pas les sources… Donc on peut les mettre à jour sur PC je pense !
Citer : Posté le 30/04/2018 21:06 | #
Ah non, rien à faire, ceux-là restent des add-ins Prizm normaux. J'ai réussi à contourner les bords noirs avec gint, mais AFAIK personne ne s'est jamais amusé à faire ça avant. Il faut dire que les gens sont d'habitude, et à raison, assez frileux avec cette machine. Ce que je fais c'est un peu de la folie... x)
Donc nope, ça reste les add-ins d'origine.
Aha, c'est pas mal ça Nemhardy ! Inutile de porter des choses déjà portées en effet. Ça va être un peu la chasse aux ports, donc si vous en croisez, signalez-les !
Citer : Posté le 30/04/2018 21:18 | # | Fichier joint
Voilà de quoi designer des icônes : (en PJ)
En gros je m'y prends comme ça, si vous manquez d'inspiration :
1. Dessiner l'image principale sur le calque [Icon]
2. Dupliquer [Icon] en [Icon shadow], le désaturer, le descendre de deux pixels et passer à 30% d'opacité
3. Pour créer l'icône non sélectionnée, afficher [BG (uns)], [Dithering (uns)], [Layer (uns)], [Icon shadow] et [Icon]
4. Pour créer l'icône sélectionnée, afficher [BG (sel)], [Dithering (sel)], [Layer (sel)], [Icon shadow] et [Icon]
5. Une fois l'add-in créé, j'utilise le projecteur pour recopier le texte dans [BG (uns) (text)] pour mettre dans mes messages, comme au-dessus avec Sudoku Solver.
Exportez bien en PNG pour que mkg3a ne vous sorte pas une icône noire avec un seul pixel cyan !
Ajouté le 30/04/2018 à 21:19 :
Ah, j'ai oublié de le préciser : je suggère de laisser le fond gris tel qu'il est pour ces portages.
Citer : Posté le 30/04/2018 21:55 | # | Fichier joint
Suite des réjouissances donc, je viens juste de porter Flappy Bird Color de Lancelot !
Lien de téléchargement : https://www.planet-casio.com/files/commentaires/FlappyBird-56217-0.g3a
Citer : Posté le 30/04/2018 22:00 | #
Nice, bien joué !
Utilities fonctionne également déjà sur G90+, à l'exception de quelques fonctionnalités (typiquement le changement de couleur des touches de fonction), mais ça reste totalement utilisable en l'état je pense.
Citer : Posté le 30/04/2018 22:18 | #
Merci pour ton travail Lephenixnoir.
Pour FlappyBird, y a-t-il une différence fonctionnelle avec la version portée par Nemhardy l'année dernière ?
https://tiplanet.org/forum/viewtopic.php?t=19835
Citer : Posté le 30/04/2018 22:24 | # | Fichier joint
Pas de différence significative, par contre la vitesse du jeu est raisonnable. J'ai désactivé l'overclock ; la Graph 90 va plus vite que la Prizm overclockée semble-t-il, donc c'est un peu plus rapide que l'original d'après Nemhardy, mais c'est jouable.
Citer : Posté le 30/04/2018 22:26 | #
+ une icone style G90 qui en jette carrément plus !
Citer : Posté le 30/04/2018 22:26 | #
Oui, merci. L'ancien portage était beaucoup trop rapide...
Citer : Posté le 30/04/2018 22:42 | # | Fichier joint
Je parachève cette soirée en portant Sonic de Smashmaster !
Lien de téléchargement : https://www.planet-casio.com/files/commentaires/Sonic-56218-0.g3a
Citer : Posté le 01/05/2018 14:19 | #
Pour agrandir un peu la liste :
- 2048 (sources)
- Othello (sources)
- Snake (sources)
J'ai regardé rapidement, 2048 se répare en 10 minutes montre en main, c'est juste qu'il utilise des fonctions de la libfxcg qui hardcodent l'adresse de la VRAM, et je pense que c'est exactement le même problème pour les deux autres programmes, vu que c'est le même auteur ; en gros il faut juste redéfinir VRAM_CopySprite et fillArea, et ça devrait tourner. Le soucis c'est que je n'arrive toujours pas à faire les icônes, donc je peux pas vraiment faire quelque chose de propre. x)
Ajouté le 01/05/2018 à 15:20 :
(En fait j'ai envoyé un mail à Balpin, vu qu'il a l'air toujours actif lui expliquant les problèmes et comment les régler s'il le souhaite, on verra ce qu'il en dit et avisera ensuite. )
Citer : Posté le 01/05/2018 15:44 | # | Fichier joint
Voilà des icônes, si elles te vont...
L'archive est en pièce jointe.
Citer : Posté le 03/05/2018 18:53 | # | Fichier joint
Je continue ma série avec Démineur WinXP de Smashmaster !
Lien de téléchargement : https://www.planet-casio.com/files/commentaires/Demineur-56230-0.g3a
Citer : Posté le 03/05/2018 19:35 | # | Fichier joint
Comme ça coûtait pas cher, j'ai aussi porté Metaball de Lancelot. J'ai pris la deuxième version, dans les commentaires (celle avec les propriétés de liquide) inspirée d'Eiyeron. J'ai changé quelques paramètres, mais ça reste lent, donc overclock recommandé avec Ptune3.
Lien de téléchargement : https://www.planet-casio.com/files/commentaires/Metaball-56232-0.g3a
Citer : Posté le 06/05/2018 18:39 | #
@Lephenixnoir
J'ai une question sur ton portage du Démineur WinXP :
https://www.planet-casio.com/Fr/forums/topic15127-1-Portage,des,add,ins,Prizm,sur,Graph,90.html#152859
En fait, il me semblait qu'il marchait déjà sur Graph 90+E :
https://tiplanet.org/forum/viewtopic.php?t=19868#p215610
Donc tu as changé des trucs ? Ou j'ai raté quelque chose ?
Merci à toi.
Citer : Posté le 06/05/2018 18:54 | #
Essentiellement, j'ai changé l'icône et je l'ai compilé avec ma version de GCC. Il y avait quelques subtilités si je me souviens bien. Une partie du code ne passait pas « toute seule » ; on peut le voir comme une partie pas super bien programmée et dont le comportement était changeant selon les optimisations.
J'admets le manquement de ne pas être présent sur TI-Planet et d'avoir ainsi raté l'information originale. Il va falloir que je corrige ça...
Citer : Posté le 06/05/2018 19:05 | #
Merci pour ta réponse.
Sinon pour Metaball, j'ai téléchargé ta version :
https://www.planet-casio.com/Fr/forums/topic15127-1-Portage,des,add,ins,Prizm,sur,Graph,90.html#152860
Elle affiche bien cette fois-ci, mais par contre les touches F1-F3 documentées ne semblent pas marcher du tout :
https://www.planet-casio.com/Fr/programmes/voir_un_programme_casio.php?showid=2344&page=1
C'est normal ?