Logicielsmoto.com

Nous sommes le 19 Mar 2024, 11:55

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 598 messages ]  Aller à la page Précédente  1 ... 14, 15, 16, 17, 18, 19, 20 ... 40  Suivante
Auteur Message
MessagePosté: 12 Oct 2021, 14:08 
Hors ligne

Inscription: 06 Juin 2004, 08:23
Messages: 464
Ce qui me fait penser à tout autre chose, est-ce que le mode 160x200x16 est le seul mode géré par le framework, ou bien toutes ces magnifiques fonctionnalités sont aussi disponibles pour les autres modes ? Et sur quelles machines ? Je pense justement à mon cher MO5 qui n'a que le mode 320x200x16 avec contrainte.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 12 Oct 2021, 14:14 
Hors ligne

Inscription: 21 Avr 2019, 21:48
Messages: 432
Localisation: Var
Ce qui pourrait être intéressant ce serait d'utiliser un chip comme le YM2608.
Il intègre en une seule puce :
- 6 pistes FM (4 opérateurs chacune)
- 3 pistes Square wave + white noise
- 1 piste ADPCM avec accès RAM/ROM externe => le chip est autonome pour la lecture de sample !
- 1 piste drum avec des samples en ROM (6 echantillons)

Il utilise un dac externe YM3016 qui est stéréo !
ça veut dire qu'on indique au YM2608 pour chaque piste si le son sort à droite ou à gauche.
Il faudra évidement une sortie jack sur la carte pour exploiter ça.

Du coup la puce contient tout ce dont on peut rêver et pas besoin de coller plusieurs cartes à l'arrière de nos machines.
En plus on gagne la lecture ADPCM en tâche de fond (avec une ram sur la carte son).
Le tout ne nécessite qu'une IRQ à 50hz pour envoyer les commandes au moment de la lecture.

Cette puce était utilisée sur les NEC PC-8801 (z80) à partir de 1987.
Pour moi on reste cohérent par rapport à l'époque.

Après il faut prendre en compte la dispo et le prix de ces puces, les trackers disponibles pour composer ...


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 12 Oct 2021, 14:34 
Hors ligne

Inscription: 06 Juin 2004, 08:23
Messages: 464
Il a l'air chouette, mais quel monstre physiquement parlant (DIL-64 !). On a une datasheet quelque part ?

Edit: par contre son son ne me fait pas tripper des masses ... Je trouve que même le SAA sonne mieux ! (totalement subjectif)


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 12 Oct 2021, 15:14 
Hors ligne

Inscription: 21 Avr 2019, 21:48
Messages: 432
Localisation: Var
Fool-DupleX a écrit:
Ce qui me fait penser à tout autre chose, est-ce que le mode 160x200x16 est le seul mode géré par le framework, ou bien toutes ces magnifiques fonctionnalités sont aussi disponibles pour les autres modes ? Et sur quelles machines ? Je pense justement à mon cher MO5 qui n'a que le mode 320x200x16 avec contrainte.


Pour le moment le moteur ne gère que le mode 160x200x16.
Mais il est tout à fait possible d'étendre ses fonctionnalités pour exploiter d'autres modes graphique.
Pour ça il faut :
- créer une variante du générateur de sprites compilés (environ 1 à 2 mois)
- créer des variantes de certaines routines asm (ce qui touche au positionnement écran) => qq jours, c'est la partie rapide a faire.

La où il y a plus d'impacts c'est que le plan d'adressage doit être différent (je n'ai jamais regardé d'autres machines que le TO8.
Or sur TO8 j'utilise à peu près tout ce que j'ai sous la main en même temps:
$0000-$3FFF page RAM/ROM (exécution du code des objets/sprites compilés)
$4000-$5FFF demi-page 0 (données de sauvegarde du fond écran avant ecriture des sprites, une demi page pour la page 2 une autre pour la page 3)
$6100-$9FFF page 1 (programme principal)
$A000-$DFFF page RAM (page 2 et page 3 pour permettre l'écriture des données vidéo en double buffering)

Bien sur on pourrait conserver un certain nombre de routines du moteur de jeu, mais il faudrait revoir l'organisation des données en mémoire ainsi que la partie de chargement des données, cette partie touche au générateur écrit en java qui organise les données en mémoire, construit les index des données et produit l'image disque. C'est un code assez conséquent et très spaghetti.
Pour le moment ce n'est pas géré et ce n'est pas prévu dans un avenir proche.
Mais si d'aventure je venais à réécrire (ou fx ?) le générateur Java (que j'appelle builder) pour avoir quelque chose de plus propre, ça pourrait être pris en compte.
Du coup merci pour la question !


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 12 Oct 2021, 15:19 
Hors ligne

Inscription: 21 Avr 2019, 21:48
Messages: 432
Localisation: Var
Fool-DupleX a écrit:
Il a l'air chouette, mais quel monstre physiquement parlant (DIL-64 !). On a une datasheet quelque part ?

Edit: par contre son son ne me fait pas tripper des masses ... Je trouve que même le SAA sonne mieux ! (totalement subjectif)


C'est ici (traduit du japonais) :
http://www.nemesis.hacking-cult.org/MegaDrive/Documentation/YM2608J%20Translated.PDF

Edit : je vais regarder le SAA que je ne connais pas du tout


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 12 Oct 2021, 16:11 
Hors ligne

Inscription: 06 Juin 2004, 08:23
Messages: 464
Citation:
ne gère que le mode 160x200x16.

Idéalement, il faudrait pouvoir gérer les modes 320x200x4 et 320x200x16 avec contrainte. Les autres modes sont anecdotiques.

Citation:
je n'ai jamais regardé d'autres machines que le TO8

Le TO8D et le TO9+ sont identiques, donc pas de souci de ce côté-là.

Les MO6 et MO5NR fonctionnent pratiquement de la même manière, sauf que les adresses ne sont pas les mêmes et qu'il n'y a que 128 Ko de RAM (on peut l'étendre avec la cartouche MEMO5).

Le TO9 possède les mêmes modes graphiques, mais pas la possibilité de reconfigurer l'adressage des pages de RAM, avec un grand maximum de 192 Ko de RAM.

Le MO5/MO5E et le TO7/70 n'ont que le mode 320x200x16 avec contrainte et respectivement un maximum de 96 et 112 Ko de RAM. Sur le MO5, on peut faire une extension comme sur MO6 pour étendre encore davantage la RAM.

Le TO7/T9000, je crois qu'il faut le garder vraiment pour la toute fin ... voire jamais.

Je te cache pas que c'est surtout le mode 320x200x16 avec contraintes qui m'intéresse (MO5) :-P


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 12 Oct 2021, 17:20 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1800
Localisation: Brest
A savoir que sur MO5 et TO7/70 il n'y a pas de double buffer et donc on verra le truc se redessiner à l'écran.

En outre sur TO7 (et peut-être MO5, je ne sais pas), la commutation des banques mémoire est plutôt lente, ce qui peut poser un soucis si on a besoin de pleins de banques pour les sprites, ce qui risque de se produire si on veut des sprites déplaçables au pixel près (il faut un sprite par décalage, donc 8 sprites au total.)

Enfin le mode avec contraintes est plutôt pénible au niveau des masques de couleurs: quelles couleurs conserver, quelles couleurs écraser (fond/forme) entre celles du sprites et celles du fond ? Sur ZX ils semblent avoir un algo qui marche pas trop mal (voir les dernières vidéos que j'ai posté.) Peut-être gardent-ils les couleurs majoritaires du fond et du sprite à la cartoon-maker? Mais ca me semble pas être le plus rapide des algorithmes. Peut-être font ils en sorte que la couleur du fond du sprite soit toujours substituable par celle du fond du décors. Hmm ils font de bon dessinateurs alors.

Mon dieu que les contraintes sont vraiment pénibles. Mais on peut ruser et utiliser le pseudo-mode de W_oo_D:
Image Image
avec lequel on peut faire de super beaux fonds d'écrans:
* viewtopic.php?p=5290#p5290
* viewtopic.php?f=3&t=383&p=5291#p5291

(dommage qu'il soit parti sur d'autres machines, la difficulté de produire de la musique sans CPU l'ayant plus ou moins bloqué.)

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 12 Oct 2021, 17:59 
Hors ligne

Inscription: 24 Juil 2010, 16:08
Messages: 454
Localisation: France
Sur ZX, souvent ils gardent les couleurs du sprite pour tout le bloc touché par le sprite. Ça fait une image qui "bave" un peu sur les couleurs autour, mais si le sprite utilise du noir, au fnial ça fait simplement une "ombre" autour du sprite (le décor est en partie remplacé par du noir et devient globalement plus sombre).

Et il y a souvent du noir dans les sprites parce que le ZX a des bits RGB pour chacune des deux couleurs du sprite, mais un seul bit d'intensité (sombre/clair) partagé entre les 2 couleurs. Utiliser du noir (qui sur ZX reste noir même quand le bit d'intensité est sur le mode "clair") est donc presque le seul moyen d'avoir du contraste dans le dessin du sprite.

Ça marche bien aussi parce que nos yeux n'ont pas de problème avec une résolution plus faible pour la couleur. En fait c'est aussi le cas dans la plupart des formats vidçeo (les formats modernes compressés mais même les formats analogiques comme le PAL ou NTSC): la luminosité est encodée avec pas mal de précision, et les couleurs, beaucoup moins.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 12 Oct 2021, 20:04 
Hors ligne

Inscription: 21 Avr 2019, 21:48
Messages: 432
Localisation: Var
Merci pour les infos ... effectivement ce n'est pas forcement simple, mais je vois qu'il y a des idées intéressantes !

En ce qui concerne le YM2608 il existe un tracker multiplateforme (win, linux, macos) qui m'a l'air pas mal du tout :
https://github.com/BambooTracker/Bamboo ... tag/v0.5.0

Deux compositions qui du même auteur avec le YM2608 (le premier sous BambooTracker):
Prenez un bon casque audio ... en particulier pour le premier morceau

phpBB [video]


phpBB [video]


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 13 Oct 2021, 08:15 
Hors ligne

Inscription: 06 Juin 2004, 08:23
Messages: 464
Il fonctionne, le lien vers la datasheet du ym ?


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 13 Oct 2021, 09:27 
Hors ligne

Inscription: 21 Avr 2019, 21:48
Messages: 432
Localisation: Var
Oui le lien fonctionne (en tout cas chez moi).

du coup je l'attache en pj :
Fichier(s) joint(s):
YM2608J Translated.part1.rar [256 Kio]
Téléchargé 140 fois

Fichier(s) joint(s):
YM2608J Translated.part2.rar [82.56 Kio]
Téléchargé 144 fois


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 13 Oct 2021, 09:35 
Hors ligne

Inscription: 21 Avr 2019, 21:48
Messages: 432
Localisation: Var
J'ai aussi trouvé un schéma de mise en œuvre :

Fichier(s) joint(s):
ym2608b_sch.png
ym2608b_sch.png [ 20.69 Kio | Vu 4593 fois ]


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 13 Oct 2021, 10:46 
Hors ligne

Inscription: 06 Juin 2004, 08:23
Messages: 464
ah, merci ... moi un j'ai un 404 not found on this server quand je clique le lien.

Décidément je n'y arrive pas. J'ai trop avalé de synthèse FM quand j'étais jeune, je ne la supporte plus, lol. Le premier morceau est écoutable, le deuxième me rappelle tellement la première Sound Blaster avec ses drums terriblement approximatifs.

Le schéma est bien, très propre, mais on est déjà sur du lourd comparé à un MO5, rien que la RAM dédiée. hmm. J'ai l'interface MIDI de Logimus, ca compte comme carte son :W ? Si vous voulez l'ajouter au framework, ca me plairait trop :tourne:


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 13 Oct 2021, 12:23 
Hors ligne

Inscription: 21 Avr 2019, 21:48
Messages: 432
Localisation: Var
Ah bah nous aussi ça nous plairait trop cette interface midi !!!

J'ai découvert son existence la semaine dernière quand je suis tombé sur ton zip (avec les scans de la doc et des schémas).
ça permettrai d'augmenter l'intérêt des cartes son, car avec un clavier branché en midi, ça transformerai notre Thomson en "instrument".
Evidement il faudra coder le soft qui va bien pour l'exploiter.
(A moins que tu pensais au pilotage d'un expandeur via le midi out ? on peut coder ça aussi)

Effectivement le YM2806 c'est du lourd, je le trouve assez attrayant en terme de possibilités, après est-ce réaliste et techniquement possible ? je ne sais pas.
Si tu n'est pas convaincu par la synthèse FM ... on va pas non plus te forcer la main :)
De notre coté le besoin c'est d'avoir une carte son finalisée et disponible pour pouvoir créer des jeux et démos et qu'on puisse exploiter via une IRQ à 50hz.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 13 Oct 2021, 12:45 
Hors ligne

Inscription: 06 Juin 2004, 08:23
Messages: 464
Citation:
A moins que tu pensais au pilotage d'un expandeur via le midi out ? on peut coder ça aussi

Oui, en fait je pensais plutôt à ça. Je l'ai moi-même reliée il y a fort longtemps à un Roland E-10, puis à une Korg X5D (qui reste, malgré sa réputation bas de gamme, un de mes synthétiseurs préférés). Cette interface est très facile à programmer, c'est un port série. Je dois avoir quelques bouts de code à deux balles quelque part qui préfiguraient un séquenceur sur TO7/70, mais je n'ai jamais concretisé la chose, hormis, si mes souvenirs sont bons, le chargement des sysex et quelques note on note off ...

Plutôt que de refaire une carte son dans l'immédiat, je me demande si je ne devrais pas plutôt refabriquer quelques interfaces MIDI, car c'était à l'époque un périphérique de grand luxe, rarissime pour ainsi dire. J'imagine que ca vous brancherait d'en avoir une ? Vous avez un clavier ou quelque chose pour aller avec ?

Et pour ce qui est de la carte son finalisée, je ne suis pas sûr d'avoir saisi quels sont les manques de celles de Dino, hormis le bruit en sortie. Personnellement, j'utiliserais des composants plus modernes pour la glue logic, mais pour le reste ? Ces chips sont bons et correspondent bien à l'époque.

Edit: ce zip, c'est celui de logicielsmoto ? J'avais fait ça quelque part en 2000 ou 2001 en espérant que ça serve à quelqu'un ... A voir les photos j'ai utilisé mon premier appareil photo numérique 300 KP (oui, oui KILO-pixels !), y'a eu du progrès depuis ... Ca ne me rajeunit pas ...


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 598 messages ]  Aller à la page Précédente  1 ... 14, 15, 16, 17, 18, 19, 20 ... 40  Suivante

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 9 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages
Vous ne pouvez pas joindre des fichiers

Rechercher:
Aller à:  
cron
Développé par phpBB® Forum Software © phpBB Group
Traduction par phpBB-fr.com