Auteur Sujet: [WIP] DMD clock by F4brice  (Lu 26362 fois)

Hors ligne Arvester

  • Pratiquement VIP
  • *
  • Messages: 1400
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #80 le: Lundi 19 Décembre 2016, 11:57:11 am »
Plus sérieusement : les anims sont tellement belles que je trouve dommage de rajouter l'heure, ou alors trouver une animation pour chaque minute, genre des tambours de machine à sous, etc etc...
Lance-toi, ça ne fait que 720 animations d'une minute chacune à réaliser (à doubler pour un format 24h).
Mamecab Tetris / GameBoy Store Display / More to come... stay tuned !

Hors ligne f4brice

  • ✌(◕‿◕)✌ Donateur 2018
  • Arcade Kingmaster
  • *
  • Messages: 4052
  • « Matériel inconnu ? Touche à ton cul ! »
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #81 le: Lundi 19 Décembre 2016, 23:40:32 pm »
Oulaaaaa, il y en a qui se lachent ici...  ;D

J'ai (encore) modifié le logiciel pour plaire au plus grand nombre :

  • l'horloge dispose d'un arrière-plan et d'un avant-plan
  • l'horloge dispose de "composants" logiciels :
    • animation (lecture du début à la fin d'une animation)
    • heure (affichage de l'heure pendant une durée paramétrable)
    • date (affichage de la date pendant une durée paramétrable)
    • température (affichage de la température pendant une durée paramétrable)
    • logo (affichage d'un logo fixe pendant une durée paramétrable)
    • rien (affichage de la célèbre oeuvre "Néant" de Kundelitch, pour une durée paramétrable)
  • vous mettez le composant de votre choix sur le plan de votre choix
  • pour le moment, le composant "animation" ne peut pas être à la fois en arrière et en avant-plan, car je pense que ça n'a pas d'utilité

Exemple #1 :
  • arrière-plan : animation
  • avant-plan : heure, rien, date, rien, température, rien, logo, rien
=> on a en sur-impression par-dessus les animations : l'heure, la date, etc...
=> entre 2 affichages d'avant-plan, il y a une pause qui permet de profiter des animations

[youtube=600,450]lbah44mrkDI[/youtube]

Les animations ont été créées avec mame + avconv + gimp :
./mame64 bublbobl.zip -aviwrite bublbobl.avi
avconv -ss 00:00:17.0 -i bublbobl.avi -t 6 -an -vf format=rgb8,format=rgb24 -pix_fmt rgb24 bublbobl.gif
Ensuite, je crop le gif animé en 128x32 avec gimp.

Exemple #2 :
  • arrière-plan : animation, heure, animation, date, animation, température, animation, logo
  • avant-plan : rien
=> on a une animation, puis l'heure, puis une autre animation, etc...
=> l'avant-plan n'est pas utilisé, donc aucune sur-impression, on peut profiter des animations

Pour info, le logiciel fait à l'heure actuelle environ 27.000 lignes de code et 130 fichiers.  :D
Je dois encore écrire toute la partie "setup" et le contenu du serveur web intégré.
Je ne suis pas sûr de maintenir la fonction de serveur web, car il n'apporte pas grand chose par rapport au futur setup intégré. En plus, ça bouffe une quantité de RAM inouïe pour pas grand chose...

Pour le choix non-aléatoire des animations, il m'est difficile de réaliser un tri alphabétique des noms de fichiers, car ça m'oblige à tous les avoir en mémoire lors du tri et à maintenir ces noms en RAM en permanence.
S'il y a 500 fichiers, avec environ 32 octets par nom (c'est très peu), j'ai 16k de RAM rien que pour les noms.
Si on passe à 1.000 fichiers et 64 octets par nom (c'est plus réaliste), ça fait 63k de RAM de noms de fichiers, soit 50% de la RAM du processeur...
Je pense opter pour une solution plus facile : lecture d'un fichier texte présent sur la SD.
Dans ce fichier, 1 ligne = 1 nom de fichier animation ; le fichier est lu ligne par ligne et l'animation demandée est jouée.
Autre avantage, le fichier peut faire 50.000 lignes, ce n'est pas un problème, il n'est lu que ligne par ligne.
Pour générer le fichier, c'est très simple :
find anim -type f -name "*.dmd" | sort > anim.txt
Coté "production", ça restera de l'artisanal made in garage.
Je commanderai les divers composants/organes au fur et à mesure des intentions de commandes manifestées.
L'assemblage n'est vraiment pas long, c'est plus le délai de réception des composants/organes qui l'est.

Coté habillage, je ferai un essai avec du plexi. Ce sera une option avec supplément.
L'idée est d'avoir une plaque avant jolie (fumée ? translucide ? diffusante ?), et une plaque arrière technique qui va permettre l'assemblage mécanique.
Celui qui voudrait un cadre en bois le fera lui-même, car de toute façon il y a 9 chances sur 10 que celui qui soit livré ne plaise pas.  ;D


Hors ligne Alko

  • Addict
  • *
  • Messages: 393
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #82 le: Mardi 20 Décembre 2016, 00:37:03 am »
De biens belles avancées  ^-^

C'est possible d'avoir un exemple avec l'heure au second plan et l'anim au premier ?

Quand je vois l'anim "Insert coin de la vidéo" j'ai envie que l'heure soit décalée sur la gauche (pis bien centrée dans l'espace vide), c'est possible de paramétrer la position de l'heure (ou température, etc) en fonction de l'animation qui passe ? La taille de la fonte aussi ? (et tout ce qui peut être parametré en fait (la couleur si je me souviens bien))

premier plan / deuxieme plan / poistionTexte (l'heure, la température, etc) / taille texte / couleur texte
Anim1.gif, position(clock, posX, posY), tailleFonte, couleurFonte

Comme ça on cale l'heure bien où il faut sur chaque anim pour qu'elle s'intègre au mieux avec. Ça permet de profiter au mieux de l'anim et de pouvoir capter l'heure au passage.

Hors ligne olschool

  • ✌(◕‿◕)✌ Donateur 2018
  • Level Buster
  • *
  • Messages: 2526
  • Le JR's est Immortel
    • Voir le profil
    • Le JR's
[WIP] DMD clock by F4brice
« Réponse #83 le: Mardi 20 Décembre 2016, 09:00:01 am »





 :-)=  :-)=  :-)=  :-)=  :-)=  :-)=  :-)=
 :-*  :-*  :-*  :-*  :-*  :-* :-*   :-*


Commande ferme de 1 pour moi.
Tu m'a killé avec le bubble
 :D  :D  :D

 <:)  <:)  <:)  <:)  <:)  <:)  <:)  <:)  <:)  <:)  <:)  <:)  <:)  <:)
Winner's Don't Use Drug mais ça aide quand même pour finir Ghost & Goblins.


Recherche Bornes: Space  Invader/ Rolling Thunder/Dragon's Lair/Kung Fu Master et Karateka Champ et Lethal Enforcer.

Hors ligne _n3o_

  • Arcade Kingmaster
  • *
  • Messages: 4201
  • 。◕‿◕。 rollingg starttttt !
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #84 le: Mardi 20 Décembre 2016, 09:42:03 am »
La meme pour moi !! Bubble Bobble m'a fait faire l'ultime craquage !

Je trouve que là c'est vraiment top ^-^


Hors ligne Iro

  • Alias le Rouston Masqué
  • Staff
  • Dieu de l' Arcade
  • *****
  • Messages: 17420
  • Iro, chevalier Judaï
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #85 le: Mardi 20 Décembre 2016, 10:00:54 am »
Tu viens d'achever tout le monde avec cette possibilité de ripper Mame :D

Par contre, c'est dommage d'abandonné le serveur web. Car paramétrer à la souris/clavier, c'est quand même bien plus pratique que des boutons avance/recul/validation.
Et surtout l'horloge peut rester en place pour lors de quelques modifications

En tout cas, c'est super  ^-^
"Jet set 2, c'est avec Robert Garcia ?" Kaneda, Lapsus de sac Vol.1
Peter Shou Owner' Club

WIPs : Naomi - SEGA Rally - AB Cop - Lethal Enforcers - COMPUMI - Terminator 2 - Space Invaders - Artworks pour Boitiers K7 Naomi CF

LES TUTOS DE GAMO   

Hors ligne Alko

  • Addict
  • *
  • Messages: 393
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #86 le: Mardi 20 Décembre 2016, 12:02:18 pm »
Tu viens d'achever tout le monde avec cette possibilité de ripper Mame :D

Par contre, c'est dommage d'abandonné le serveur web. Car paramétrer à la souris/clavier, c'est quand même bien plus pratique que des boutons avance/recul/validation.
Et surtout l'horloge peut rester en place pour lors de quelques modifications

En tout cas, c'est super  ^-^

Si, j'ai bien compris on sort la carte mémoire et on travail le fichier pour les réglages. Un AR vers l'horloge pour gagner la moitié de mémoire c'est quand même pas trop cher payé.

Hors ligne spotting

  • Wax compliant !
  • Nouveau
  • *
  • Messages: 0
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #87 le: Mardi 20 Décembre 2016, 12:19:11 pm »
Il y a aussi la possibilité de configurer via le port IR..
 :-*

Hors ligne Little_Rabbit

  • Arcade Myth
  • *
  • Messages: 4660
  • The early 80's : the arcade golden age !!
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #88 le: Mardi 20 Décembre 2016, 13:43:43 pm »
Salut,

C'est génial toutes ces nouvelles possibilités !  ^-^

Là tu contentes tout le monde avec autant de paramètres et réglages disponibles !

Le principe d'une liste d'anim dans un fichier texte plutôt qu'un tri alphabétique est parfait. Je m'étais aussi fait la réflexion de l'espace occupé en mémoire pour cette liste triée... En plus, un tel fichier peut être un moyen aisé de préciser tel ou tel paramètre pour telle ou telle animation :).

Encore bravo !

A+

Recherche dédiées ou PCB originaux: Miss Pacman, Dig Dug, Galaga, Mappy, Asteroids, Battlezone, Missile Command, Tempest, Star Wars, Donkey Kong (+ Jr), Mario Bros, Moon Patrol, Defender, Joust, Frogger, Gyruss, Pooyan, Space Tactics, Zaxxon, etc. Flip : Xenon, Baby Pac Man, Gottlieb des années 80 (Spirit, Amazon Hunt, ...). Divers :  Ice Cold Beer
Trois fois rien quoi ! :D

Hors ligne f4brice

  • ✌(◕‿◕)✌ Donateur 2018
  • Arcade Kingmaster
  • *
  • Messages: 4052
  • « Matériel inconnu ? Touche à ton cul ! »
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #89 le: Mardi 20 Décembre 2016, 13:44:42 pm »
L'animation en 1er plan ne donnera pas grand chose chose car les gifs animés que j'ai ne définissent aucune zone transparente.

Pour positionner l'affichage de l'heure par rapport à l'animation, il faut rester un peu réaliste : les images animées ne sont pas "analysées" pour tenter de déterminer une zone où l'affichage de l'heure gênerait le moins.

Les fontes ont une taille définie au moment où la fonte est créée.
Pour changer de taille, il suffit de changer de fonte.

La modification des réglages se fera sans décrocher l'horloge du mur, grâce à la télécommande IR.
C'est pour ça que le serveur web me semble superflu, surtout qu'il a besoin de beaucoup de RAM et que je ne suis pas sûr d'être capable de réaliser ce qu'exige le client/navigateur (il peut demander qu'on lui transmette les données compressées, chose que je ne ferai pas).

Il ne devrait y avoit besoin d'accéder à l'horloge que pour la SD, pour ajouter/supprimer des animations.

Je ne suis pas satisfait de la conversion en gif de l'enregistrement vidéo fait par mame.
L'outil avconv a inventé des couleurs là où il ne fallait pas et a même fait du tramage.
Il faut que je regarde comment améliorer ça.  ;)

Hors ligne Alko

  • Addict
  • *
  • Messages: 393
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #90 le: Mardi 20 Décembre 2016, 15:05:50 pm »
L'animation en 1er plan ne donnera pas grand chose chose car les gifs animés que j'ai ne définissent aucune zone transparente.

Mais avec un gif avec un fond transparent ça fonctionnerait ?

Pour positionner l'affichage de l'heure par rapport à l'animation, il faut rester un peu réaliste : les images animées ne sont pas "analysées" pour tenter de déterminer une zone où l'affichage de l'heure gênerait le moins.
Je parlais de le faire à la mano (enfin à l'oeil) pour chaque anim.

Ici pour celle-ci :



On a 42 px pour l'horloge et 32 (+8 de marge à droite) pour l'anim.
Sur 128px de large moi l'horloge je la ferais se positionner à (128-(32+8)-42) / 2 = 23px -> au 24ème pixel en partant de la gauche.
Ça ferait 23px(transparent) 42px(heure) 23px(transparent) 40px(anim), ce qui pour moi est beaucoup mieux intégré.

Je serais même du genre à pousser encore plus loin à avoir la même anim mais avec un panneau vide (ou plein), et faire afficher l'heure dedans au moment où le panneau est de face (et la faire disparaitre quand il n'y est plus) avec une fonte de moitié de celle visible sur la vidéo, càd 4x5px + 1 d'espace, mais je sais pas si le rendu en mode lumineux est bien).


Les fontes ont une taille définie au moment où la fonte est créée.
Pour changer de taille, il suffit de changer de fonte.
Si c'est paramètrable par anim c'est cool.

Qui a dit perfectionniste ?  :P

Hors ligne Iro

  • Alias le Rouston Masqué
  • Staff
  • Dieu de l' Arcade
  • *****
  • Messages: 17420
  • Iro, chevalier Judaï
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #91 le: Mercredi 21 Décembre 2016, 09:53:00 am »
Si, j'ai bien compris on sort la carte mémoire et on travail le fichier pour les réglages. Un AR vers l'horloge pour gagner la moitié de mémoire c'est quand même pas trop cher payé.
Tous dépend où est placée ton horloge.

La modification des réglages se fera sans décrocher l'horloge du mur, grâce à la télécommande IR.
Alors il faudrait peut être limiter les réglages. Parce que régler le freeplay sur mon flipper est à chaque fois une plaie :D
J'ai l'impression qu'il sera possible de régler au petits oignons un cycle d'affichage. Alors avec 3 boutons, j'ai du mal a voir comment cela pourrait être ergonomique  :-\  :)

C'est tout aussi gourmand d'externaliser cette partie ? On fait la configuration en offline et on l'upload une fois finie
:)
« Modifié: Mercredi 21 Décembre 2016, 13:34:58 pm par Iro »
"Jet set 2, c'est avec Robert Garcia ?" Kaneda, Lapsus de sac Vol.1
Peter Shou Owner' Club

WIPs : Naomi - SEGA Rally - AB Cop - Lethal Enforcers - COMPUMI - Terminator 2 - Space Invaders - Artworks pour Boitiers K7 Naomi CF

LES TUTOS DE GAMO   

Hors ligne ian57

  • Game Cheater
  • *
  • Messages: 2280
  • Distributions Arcade pour Raspberry Pi
    • Voir le profil
    • Ma page Perso
[WIP] DMD clock by F4brice
« Réponse #92 le: Mercredi 21 Décembre 2016, 11:40:29 am »
Super cette horloge à base de matrice de LED ... je vais lire ce topic du début ;)

Bravo F4brice
"Après faut pas te flageller pour notre debilisme :D" Sushy18 à ian57








Hors ligne gottlieb

  • Beta Testeur
  • *
  • Messages: 2010
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #93 le: Mercredi 21 Décembre 2016, 20:54:11 pm »
 :o :o :o :o :o :o
 :-)= :-)= :-)= :-)= :-)= :-)= :-)=
F4brice  :-* :-* :-*
A la maison  ;)
bornes: racecab speed up Gaelco, table cocktail Taito SI part II ,cockpit Sega Space tactics, 1 borne Karateco, 3 bornes Jeutel, tactile megatouch et 1 mini borne enfant
flipper: silver slugger, pin bot, Whitewater,Indianapolis 500
Billard: superleague diplomat
dart: Lowen royaldarts ...
Jukebox jupiter mirage 120
Ma gaming room :-*

Hors ligne Sunn

  • ✌(◕‿◕)✌ Donateur 2018
  • Game Cheater
  • *
  • Messages: 2339
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #94 le: Mercredi 21 Décembre 2016, 22:01:26 pm »
F4brice, au prochain bgs je sens que beaucoup vont vouloir partager ta chambre... il va falloir être ouvert d'esprit   :P

Hors ligne Stek

  • Level Buster
  • *
  • Messages: 2589
  • PCB Hunter !
    • Voir le profil
[WIP] DMD clock by F4brice
« Réponse #95 le: Mercredi 21 Décembre 2016, 22:54:09 pm »
Ya pas que de l'esprit qu'il va falloir être ouvert  :-\


"Fun and nostalgia through gaming and beer is what we’re all about."