Salut les gens !
Je cherche à coder un moteur de mode 7 sur une plateforme un peu spéciale : la série 83+/84+ des calculatrices Texas Instruments (si si, elles sont programmables en ASM).
L'avantage, c'est que y'a aucune librairie à utiliser (pour les formes géométriques, le dessin toussa) et c'est beaucoup plus portable qu'un ordi quand on a 15 ans et qu'on est au lycée (c'est surtout pour ça que j'aime bien en fait ), mais l'inconvénient (entre autres) c'est qu'on est vite limité en terme de performances. Nous l'allons montrer tout à l'heure
Donc, je me suis mis en tête de faire du Mode 7. C'est à dire prendre une image et l'afficher avec un effet de perspective. Sur le fond ça a l'air fastoche, mais quand on sait que la plateforme supporte uniquement des nombres 16 bits (ou encore 8.8 fixed point), c'est tout de suite plus galère.
J'ai déjà trouvé des tutos, mais soit c'était des trucs axés GBA/SNES soit ils utilisaient des nombres hallucinants (enfin, hallucinants pour la calto, en fait c'est juste qu'ils dépassent 65535 ou 127.999).
La vraie question étant : est-ce que quelqu'un peut m'aider à réaliser ce moteur sachant que :
- La calto a un écran 96*64
- sin() et cos() prennent un angle entre -127 et 127 et renvoie une valeur entre -127 et 127
- On ne peut donc pas dépasser 65535 ou 127.999
- J'ai des built-in assez nombreuses : Pxl-On(), Pxl-Off(), Pxl-Test(), sin(), cos(), afficher une image ...
- Le processeur va à 6MHz
- Je ne cherche pas à optimiser quoi que ce soit ; tant pis si le moteur tourne à 1 FPS, je veux juste que l'image s'affiche correctement
Je sais que c'est compliqué, mais si quelqu'un pouvait m'aider, ça serait absolument sympathique
Partager