π
<-

Bad Apple Graph 90+E, la démo enfin sur calculatrice couleur

Bad Apple Graph 90+E, la démo enfin sur calculatrice couleur

Unread postby critor » 22 Apr 2021, 13:56

Aujourd'hui nous allons parler de Touhou Bad Apple Demo, un phénomène mondial depuis le début des années 2010.

Tout commence en 1996 au Japon sur le microordinateur Nec PC-98 avec Touhou Project, une série de jeux vidéo shoot 'em up extrêmes. En effet il s'agit d'un sous-genre particulièrement difficile, le manic shooter, où la globalité de l'écran est souvent littéralement tapissée de projectiles.

La difficulté infernale n'empêche pas des qualités qui feront son énorme succès : un gameplay addictif, des visuels colorés, des personnages récurrents très typés mangas.

En 1998 sort le 4ème jeu de la série, Lotus Land Story, pour le moment toujours sur PC-98.

En 2007 la musique de fond de son 3ème niveau est remixée dans une version étendue par Masayoshi Minoshima, avec ajout de la voix de la chanteuse J-Pop Nomico.

En 2008, Nico Nico Douga publie un scénarimage d'une séquence animée mettant en jeu les personnages du monde Touhou et se voulant accompagner le remix.

En 2009 un groupe collaboratif conduit par Anira termine de mettre la chose en images. La séquence anime de façon extrêmement lisse des silhouettes en noir et blanc avec une esthétique manga-magical-girl.

Le succès est immédiat, mondial, et intéresse particulièrement la sphère des demo makers, la Touhou Bad Apple Demo était née. Les communautés de programmeurs rivalisent d'ingéniosité pour porter aussi fidèlement que possible la Bad Apple Demo sur nombre d'anciennes machines que l'on pensait incapables de jouer des vidéos.

L'affichage en noir et blanc rend en effet le défi hautement intéressant, permettant ici un bel éventail d'astuces techniques allégeant la complexité des algorithmes. Il n'y a que 2 couleurs, cela se prête a priori bien à une compression de chaque image en RLE 1 bit, mais en prime d'une image à la suivante il n'y a la plupart du temps qu'une large minorité de pixels qui changent de couleur, ce qui ouvre également la voie à des compressions au niveau de la vidéo.

C'est donc à qui combinera les meilleures astuces en fonction de la plateforme ciblée. On peut citer nombre d'exploits avec des portages :
  • pour microordinateurs remontant jusqu'au début des années 1980 : IBM 5150 (1981), Commodore 64 (1982), Atari STE (1985), ...
  • pour consoles de jeux jusqu'à la fin des années 1970 : Atari 2600 (1977), Vectrex (1982), Nintendo NES (1988), Sega Master System (1985), Sega Megadrive / Genesis (1988), ...
Dans les communautés de calculatrices, nous n'avons pas échappé au phénomène. Et quoi de mieux à l'époque qu'une calculatrice graphique pour jouer une animation monochrome ? ;)

Mais commençons par préciser de quoi nous parlons, et à distinguer les vraies démos des fausses démos.

Nous avons en effet eu droit à des vidéos converties pour des lecteurs disponibles sur calculatrices.

En 2014 诗诺比 sort FlmPlayer, un lecteur de vidéos .flm pour TI-89, TI-92 Plus et TI-Voyage 200. Ce lecteur a la particularité d'inclure en dur une vidéo d'exemple qui est justement Bad Apple.

Dans le monde Casio c'est dès 2011 pour le lecteur de vidéos .dvt sorti par diameter en février 2011, et justement accompagné d'un convertisseur de vidéos pour Windows.
Précisons que le lecteur n'est pas compatible avec les derniers modèles de génération USB Power Graphic 3 (ce qui exclut les Graph 35+E II et fx-9750/9860GIII), mais avec les seules anciennes générations que voici :
  • USB Power Graphic (processeur SH3 - Graph 35+USB Graph 75/85/95 fx-9750GII / fx-9860G/GII)
  • USB Power Graphic 2 (processeur SH4 - Graph 35+E/USB Graph 75/95 fx-9750/9860GII)

L'autre forme de fausse démo que nous excluons dans notre contexte d'aujourd'hui, ce sont les ROMs homebrew qui peuvent être jouées sur les émulateurs de consoles de jeux disponibles pour nos calculatrices.

Dans tous les cas le travail qu'il y a derrière est hautement conséquent et louable, mais ne rentre pas dans le moule d'aujourd'hui :
  • il n'y a pas d'effort d'optimisation spécifique à la démo Bad Apple dans le cas des convertisseurs de vidéo, tout est automatisé
  • dans ce même cas la piste audio est perdue puisque les formats inventés pour les lecteurs concernés ne gèrent pas le son
  • et dans le cas des émulateurs qui pour leur part ont parfois le son, il n'y a aucun effort spécifique au matériel de nos calculatrices en dehors de celui réalisé lors du développement de l'émulateur en question
Nous obtenons donc un résultat muet et/ou non optimal ; on peut certainement mieux faire. ;)

C'est en décembre 2013 que fb39ca4 sort la première véritable démo Bad Apple du monde des calculatrices Texas Instruments, prenant la forme d'une application .8xk de 1,4 Mo pour TI-83 Plus et TI-84 Plus monochromes.

Précisons qu'avec une telle taille, elle ne peut être installée que sur les modèles supérieurs offrant 1,5 Mo de mémoire d'archive : TI-83 Plus Silver Edition, TI-83 Plus.fr USB, TI-84 Plus Silver Edition et TI-84 Plus Pocket SE.

Codée en langage assembleur z80, la démo jouée en plein écran 96×64 pixels impressionne de par sa fluidité et surtout inclut cette fois-ci enfin le son ! :favorite:

Le son est produit sur le port mini-Jack 2.5 supprimé des modèles plus récents, et nécessite donc un adaptateur mini-Jack 2.5 mâle ↔ mini-Jack 3.5 femelle.

À noter qu'il ne s'agit pas de la version originale mais, comme tu pourras vérifier sur la vidéo ci-dessous, d'un réarrangement instrumental (style musique électronique MIDI) adapté aux capacités de la machine et particulièrement au fait que nous n'avons maintenant quasiment plus de place en mémoire :

En 2015 c'est maintenant ac100v qui reprend le flambeau, mais cette fois-ci sur la scène Casio, avec ici encore une démo Bad Apple avec son et image ! :D

Elle prend la forme d'une application .g1a qui ici encore n'est pas compatible avec les dernières calculatrices de génération USB Power Graphic 3 (Graph 35+E II et fx-9750/9860GIII), mais seulement avec les :
  • USB Power Graphic (processeur SH3 - Graph 35+USB Graph 75/85/95 fx-9750GII / fx-9860G/GII)
  • USB Power Graphic 2 (processeur SH4 - Graph 35+E/USB Graph 75/95 fx-9750/9860GII)
L'application ne fait que 6 Ko mais va en fait chercher ses données dans 2 fichiers externes à transférer :
  • un fichier .vid de 535 Ko pour l'animation
  • et un fichier .aud de 770 Ko pour le son
Taille totale comparable de 1,27 Mo ce qui occupe à nouveau une très grande partie de la mémoire de stockage.

L'écran est ici plus large que le format d'affichage de la démo, puisque faisant 128×64 pixels. La démo, ici codée en langage C, est en fait jouée en 85×64 pixels, laissant des bandes noires latérales n'ayant pas besoin d'être rafraichies, ce qui est justement une astuce d'optimisation.

Mais énorme surprise, ici nous avons droit à la piste audio originale grâce au même adaptateur ! :favorite:

Mais voici aujourd'hui Loieducode / Gooseling qui s'attaque enfin à une toute nouvelle dimension avec les calculatrices graphiques à écran couleur.

Il vient de nous partager le week-end dernier une application .g3a cette fois-ci dédiée à la Casio Graph 90+E ainsi qu'à son modèle international équivalent fx-CG50.

Sur Graph 90+E donc, nous avons un processeur SH4 accéléré 4 fois par rapport aux Casio monochromes ci-dessus. On passe en effet de 29,49 MHz à 117,96 Mhz.

Mais malgré ça, ne crois pas que ce soit une partie de plaisir. Passer sur un écran couleur est un formidable défi. En effet :
  • Il y a beaucoup plus de pixels à gérer, au lieu de 128×64 =8192 c'est ici 396×224 =88704 pixels surtout que Loieducode choisit de nous faire plaisir avec un affichage plein écran faisant fi de la bordure réservée au mode examen. Même en tenant compte du format de la vidéo, cela fait déjà dans les 12 fois plus de pixels à allumer.
  • De plus nous avons ici des pixels couleurs codés sur 16 bits, contre auparavant des pixels monochromes sur 1 bit. Même si l'on n'affiche qu'en noir et blanc, il n'en reste pas moins qu'il faudra ici mettre 16 bits à 1 ou 0 selon le cas, et non plus 1 seul bit comme précédemment. Bref, à nombre identique de pixels en plus nous avons 16 fois plus de données à faire passer !
Bilan, en théorie et sans même s'occuper du son, jouer Bad Apple sur toute la hauteur de l'écran Graph 90+E nécessite à un moment où un autre de faire passer dans les 175 fois plus de données que sur les Casio monochromes, et tout ça pour un processeur juste 4 fois plus rapide ! :o

Loieducode n'en réussit pas moins l'exploit de nous faire jouer une démo parfaitement fluide, bravo : :bj:

La démo est ici encore codée en langage C. Loieducode a bien sûr dû se montrer astucieux face à l'énorme difficulté du défi que nous venons de t'expliquer. Il génère ici la démo sur 64×56 pixels, pour l'afficher avec un grossissement de 4 sur 256×224 pixels, laissant donc ici une bande blanche à droite.

Pas de son pour le moment, mais espérons que des optimisations complémentaires ou différentes rendront un jour cela possible... ;)

Téléchargements :
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.9%
 
Posts: 41980
Images: 15847
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Bad Apple Graph 90+E, la démo enfin sur calculatrice cou

Unread postby M4x1m3 » 22 Apr 2021, 16:14

Image
"Regression testing"? What's that? If it compiles, it is good, if it boots up it is perfect.
User avatar
M4x1m3Programmeur
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 62.7%
 
Posts: 171
Images: 12
Joined: 13 Oct 2019, 21:10
Location: Bas-Rhin (67)
Gender: Male
Calculator(s):
MyCalcs profile
Class: M2 Informatique
Twitter: M4xi1m3
GitHub: M4xi1m3

Re: Bad Apple Graph 90+E, la démo enfin sur calculatrice cou

Unread postby critor » 22 Apr 2021, 16:17

Oui je sais ; le jour où tu la publieras comme appli Omega, si possible avec le son, je ne manquerai pas de l'annoncer avec grand plaisir dans un article dédié. :)

Il n'y avait strictement rien contre toi, juste déjà suffisamment de choses à faire rentrer dans cet article rien qu'avec les démos déjà sorties. :P
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.9%
 
Posts: 41980
Images: 15847
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Bad Apple Graph 90+E, la démo enfin sur calculatrice cou

Unread postby M4x1m3 » 22 Apr 2021, 16:25

Je suis en train de l'ajouter sur le repo d'app externes Omega, y aura pas le son, trop galère avec external (et de toute façon je patine dans la choucroute avec ça, merci jean-baptiste (il sait pourquoi))
Edit: C'est bon
Last edited by M4x1m3 on 22 Apr 2021, 16:41, edited 1 time in total.
Image
"Regression testing"? What's that? If it compiles, it is good, if it boots up it is perfect.
User avatar
M4x1m3Programmeur
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 62.7%
 
Posts: 171
Images: 12
Joined: 13 Oct 2019, 21:10
Location: Bas-Rhin (67)
Gender: Male
Calculator(s):
MyCalcs profile
Class: M2 Informatique
Twitter: M4xi1m3
GitHub: M4xi1m3

Re: Bad Apple Graph 90+E, la démo enfin sur calculatrice cou

Unread postby critor » 22 Apr 2021, 16:27

Ok, ben je ne manquerai pas de la mettre en avant avec la même visibilité dans une prochaine annonce. :)

Merci beaucoup à toi.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.9%
 
Posts: 41980
Images: 15847
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Bad Apple Graph 90+E, la démo enfin sur calculatrice cou

Unread postby Gooseling » 01 May 2021, 13:47

Petite info: je pense faire un lecteur de vidéos 256 couleurs pour la Graph 90+E un jour(j'en ai parlé sur Planete Casio) et un convertisseur frames -> video pour la bête.
Apres pour le son j'espère ajouter cette feature des que je peux(j'ai pas de convertisseur 2.5mm vers 3.5mm, et je pense que le port série est mort sur ma calc)
Nyohoho!
User avatar
Gooseling
Niveau 3: MH (Membre Habitué)
Niveau 3: MH (Membre Habitué)
Level up: 8%
 
Posts: 1
Joined: 17 Apr 2021, 18:25
Gender: Not specified
Calculator(s):
MyCalcs profile
YouTube: DevHONK
GitHub: DevHONK

Re: Bad Apple Graph 90+E, la démo enfin sur calculatrice cou

Unread postby critor » 01 May 2021, 13:53

Coucou. Merci pour ton passage sur ce fil. :)

Superbe projet que le son, ainsi que le lecteur vidéos.

N'hésite pas à nous tenir au courant, nous te mettrons ces formidables avancées en avant avec grand plaisir.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.9%
 
Posts: 41980
Images: 15847
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Bad Apple Graph 90+E, la démo enfin sur calculatrice cou

Unread postby critor » 02 May 2021, 08:27

Gooseling wrote:Petite info: je pense faire un lecteur de vidéos 256 couleurs pour la Graph 90+E un jour(j'en ai parlé sur Planete Casio) et un convertisseur frames -> video pour la bête.

Pour info, nous avons déjà un lecteur de vidéos MPEG-2 pour calculatrices couleur Casio :
archives_voir.php?id=43357

Mais à ma connaissance il ne fonctionne que sur les anciens modèles fx-CG10/20, et pas sur les derniers modèles Graph 90+E et fx-CG50.

Donc si tu nous sors quelque chose sur ces derniers modèles, ce sera une superbe avancée ! :D
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.9%
 
Posts: 41980
Images: 15847
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor


Return to News Casio

Who is online

Users browsing this forum: No registered users and 14 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1025 utilisateurs:
>988 invités
>29 membres
>8 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)