je découvre progressivement la scene demo CPC et les capacités de cette machine et j'ai quelques questions si vous voulez bien y répondre :
1: est ce qu'un switch de bank memoire est instantané, juste le temps de l'instruction z80 de switch ? ou faut il attendre un signal electronique precis, un element exterieur, pour lire la ram switchée ?
2: est il possible sur un 6128 (pas +) de faire de la 3D faces pleines en vbl, d'une taille raisonnable, et sans que ce soit pré-animé (pas du decompactage d'anims). le style cube en 3D avec lequel on peut interagir au clavier.
3: combien de temps machine prend une routine de replay de musique style format AYC ? en gros bien sur
4: est il viable et acceptable de jouer des modules format amiga, en 4 voies digitalisées mixées, sur un cpc 6128 ?
Moi d'abord ! C'est rare qd je peux répondre techniquement alors je le fais les autres completeront..
1: est ce qu'un switch de bank memoire est instantané, juste le temps de l'instruction z80 de switch ? ou faut il attendre un signal electronique precis, un element exterieur, pour lire la ram switchée ? Oui, c'est aussi rapide que ca.
2: est il possible sur un 6128 (pas +) de faire de la 3D faces pleines en vbl, d'une taille raisonnable, et sans que ce soit pré-animé (pas du decompactage d'anims). le style cube en 3D avec lequel on peut interagir au clavier. Oui c'est possible, du vrai temps réel face cachée, mais l'affichage est relatif à la puissance du Z80 (ou des compétences du programmeur ).
3: combien de temps machine prend une routine de replay de musique style format AYC ? en gros bien sur De 10-15 a 30-40 raster-lines à peu près. Après ca peut varier si la routine de replay introduit des strategies de compression etc..
4: est il viable et acceptable de jouer des modules format amiga, en 4 voies digitalisées mixées, sur un cpc 6128 ? Le CPC n'ayant que 3 voies, il y a forcement un channel qui est "mergé" avec un autre channel, ou bien retiré. Cela a déjà été fait avec un résultat acceptable. Malheureusement, cela prend tout le "temps machine" et peu de chose en parallele sont possible. Mais sur un Amstrad Plus, c'est différent par contre, Grim l'a demontré avec sa Sappy.
sur le point 3 : as tu un exemple de démo a me citer, avec de la 3D non précaculées et en vbl ? que je regarde ca.
sur le point 4, l'experience que j'ai du soundtrack (musique digitalisées sur plusieurs voies avec variation de frequence et de volume d'un sample par voie) c'est que je prenais les valeurs de chaque sample pour chaque voies (donc 4 octets pour 4 voies) puis j'utilisais une table de conversion de volume pour chaque octect/voie, puis j'ajoutais les 4 voies et je ne jouais que le resultat repartis sur le volume des 3 voies du YM est ce la technique utilisée sur CPC ? ou s'agit il simplement de 'digidrum' , sample 4 bits appliqué a chaque voies du Ym, donc 3 voies ?
sur le point 3 : as tu un exemple de démo a me citer, avec de la 3D non précaculées et en vbl ? que je regarde ca. Là comme ca, la derniere partie de la Ultimate Megademo de Face Hugger.
sur le point 4 Je suis pas assez balaize sur ca, je laisse les autres te répondre (Shap si tu nous lis ).
Pour ton point 4, en fait, c'est juste une bête table de conversion 8 bits-> 4 bits, une sorte de Digidrum ou appele le plutôt Sample, si tu préfères.
Pour jouer un Sample a une autre fréquence, il doit être, soit accélère, soit ralenti.
Pour info, il est plus "facile" (rapide) de jouer un sample sur Cpc plus car celui-ci ne prends aucun temps machine, compare au cpc old, dont le temps machine variera en fonction de la qualité d'échantillonnage.
Pour obtenir les fameux 15 kHz du Cpc Plus sur Old, c'est possible, mais ooouuppps, plus de temps machine pour faire autre chose (ou alors pendant l'affichage des fameuses RasterLines, ce qui ne nous laisse pas beaucoup de temps machine)
Par contre, on peut se contenter de sample a 8 kHz (ce que font la majorité des demos avec digidrums, sur cpc) ou bien a 4 kHz, au pire.
Shap ou Targhan t'en dirait surement un peu plus sur le sujet.
Concernant les demos 3D faces pleines, il y a aussi la demo d'Alien dans la Voyage 1993. (Ca ne nous rajeuni pas tout ça, non, non, non!)
a titre de retour d'experience perso, sur atari st, nous (quelques codeurs de demos qui faisaient du soundtrack) avions remarqué que la qualité est liée a la régularité du replay je m'explique : si tu joues ton sample a 15 KHZ, il faut vraiment jouer 1 octet de sample tous les 1/300eme de VBL, l'ideal etant en fait d'etre synchronisé precisement avec le cpu, et d'inserer l'eventuel code additionnel dans la routine de replay. si ton délai entre chaque octet varie (par exemple en jouant le soundtrack en interruption et en etant obligé de bloquer les interruptions a un moment dans ta vbl) la qualité est altérée a l'oreille
Inscription : 15 Oct 2007, 02:49 Message(s) : 402 Localisation : Les Sucres en Morceaux
2: est il possible sur un 6128 (pas +) de faire de la 3D faces pleines en vbl, d'une taille raisonnable, et sans que ce soit pré-animé (pas du decompactage d'anims). le style cube en 3D avec lequel on peut interagir au clavier. Je me permets de préciser : C'est "possible", tout dépend de ce qu'on entend par "taille raisonnable". A titre de comparaison, l'affichage brut d'un sprite sans considération de masquage ou autre sera d'environ 20% d'un fullscreen en 1 frame. Si tu ajoutes de l'effacement, du calcul 3D, du tracé de ligne au pixel, un test de touche et une musique, ça risque de considérablement réduire ces 20%, mais ça peut encore s'inscrire dans "une taille raisonnable" (mais c'est pas la taille qui compte, comme chacun sait). Après, faut savoir gruger (rotations sur un seul axe de formes compliquées dans "From Scratch" par exemple). Pour la Face Hugger, je parierais pas du fric que le cube est à 50Hz, mais il est rapide quand même (mais tout petit).
4: est il viable et acceptable de jouer des modules format amiga, en 4 voies digitalisées mixées, sur un cpc 6128 ? Les seules musiques 4 voies digit que j'ai pu entendre sur CPC étaient... laides et expérimentales. Ce que j'ai entendu de mieux est dans Orion Prime (désolé pour la pub). Targhan y mixe 3 canaux sur une seule voix à 18kHz je crois. C'est assez propre, mais il ne fait RIEN d'autre, et ça demande de savoir travailler les sons en amont. Sinon, un essai sympa dans la Landscape (demo = DemoIzArt) où il joue 2 canaux sample sur un canal, et utilise les 2 autres canaux en FM. Donc 4 en tout. Il est donc "possible" de jouer des modules Amiga, mais avec une qualité bien dégradée (2bits/canal, un temps machine à bloc et un reformatage complet du module, parce qu'un module de 80k en mémoire, ça le fait moyen )
Le seul exemple que je connaisse est d’Antoine il me semble, dans la 1ere part de la divine. Il joue 2 voies sur 2 canaux (2x3bits x stéréo). Mais la fréquence est tellement dégradée qu'on ne distingue les canaux que sur un ampli (les basses fréquences passent mal sur le speaker interne).
Après, si tu veux descendre en 4kHz, tu peux espère faire du 4 canaux pour la grosse caisse, mais oublie la musique
Pour le replay d'un module AMIGA (4 voies donc) il faut rejouer sur 2 canaux pour une question assez logique de symétrie sonore.
Le canal B est en effet couplé sur la A et le B (donc une partie du volume sur une de tes enceintes, et l'autre sur la seconde) donc pour avoir une répartition cohérente, il est préférable de coupler 2 voies/canal quitte à avoir une résolution plus faible par voie.
Donc restitution sur A et C mais pas sur B sinon tu aurais une/plusieurs voie(s) avec un volume inégal à celle(s) restituée(s) sur A ou C.
Pour corriger certaines erreurs lues plus haut, le fait de restituer un sample ne prend pas tout le temps machine, loin s'en faut (même à 15Khz).
Mais comme tu le disais toi même, ce qui compte c'est de restituer ton échantillon au bon moment pour obtenir la fréquence désirée.Disons simplement que dénué de DMA son, sur CPC ton code autre que musical devra être morcelé car lorsque tu restitues un sample, c'est le moment ou tu envois l'échantillon qui doit primer sur tout le reste.
Si tu a fais du ST, tu va devoir te passer de timer car sur CPC, rien pour indiquer la fréquence d'envoi de tes échantillons
Ensuite le problème du temps machine, ça dépend aussi de ce que tu veux gérer, si tu veux pouvoir contrôler la fréquence, ça nécessite un peu de calcul (en gros le même genre de calcul que pour générer un zoom), si tu veux implémenter le volume avec, la ça devient assez lourd en calculs.
Pour améliorer le rendu, la conversion 16/4bits est à soigner également, surtout dans le cas d'instruments riches en timbre, le simple fait de garder les bits de poids les plus significatifs n'est pas suffisant, quelques bricolages mathématiques sur l'échantillon d'origine au moment de la conversion sont à prévoir.
Si tu veux mélanger soundchip/sample (pour les batteries ou autre) il faut dans ce cas prévoir que ton player soundchip puisse être interrompu par l'envoi d'échantillons pour garder une précision correcte, à plus forte raison si tu utilise des fréquences hautes qui sont plus sensibles à la perte de précision en fréquence justement.
Pour info, il est plus "facile" (rapide) de jouer un sample sur Cpc plus car celui-ci ne prends aucun temps machine, compare au cpc old, dont le temps machine variera en fonction de la qualité d'échantillonnage.
Faux, ça ne varie pas selon la qualité d'échantillonnage mais selon la fréquence de restitution.
AsT a écrit :
Pour obtenir les fameux 15 kHz du Cpc Plus sur Old, c'est possible, mais ooouuppps, plus de temps machine pour faire autre chose (ou alors pendant l'affichage des fameuses RasterLines, ce qui ne nous laisse pas beaucoup de temps machine)
Faire du 15Khz sur CPC old ? aucun problème et ça ne prend pas tant de temps que ça, une valeur à envoyer par tranche de 64µs (1/312ème de VBL soit 15625Hz)
AsT a écrit :
Par contre, on peut se contenter de sample a 8 kHz (ce que font la majorité des demos avec digidrums, sur cpc) ou bien a 4 kHz, au pire.
Non, surtout pas 4Khz en restitution, même pour une batterie, ça donnera un résultat affreux.
Supersly a écrit :
(2bits/canal, un temps machine à bloc et un reformatage complet du module, parce qu'un module de 80k en mémoire, ça le fait moyen )
quand tu mets 2 voies 4 bits sur un canal ça passe tes voies à 3 bits pas à 2.
Inscription : 15 Oct 2007, 02:49 Message(s) : 402 Localisation : Les Sucres en Morceaux
shap a écrit :
quand tu mets 2 voies 4 bits sur un canal ça passe tes voies à 3 bits pas à 2.
Je parlais d'une restitution d'un mod (4 canaux) sur une seule voix. Donc ça réduite bien à 2bits. C'est un calcul : est-ce mieux de passer son temps à changer de canal (donc de registre) pour jouer sur 2 canaux, ou de perdre de la dynamique pour gagner en vitesse sur un seul canal. Ce que j'ai entendu jusqu'à aujourd'hui me fait admettre contre tout préjugé que la 2nde solution est la meilleure. Mais tant qu'on n'aura pas tout essayé (donc jamais) on n'aura pas la preuve
Après, tu peux aussi mixer 2 canaux pour un seul sample pour faire du 5bits mono (donc sur le speaker), mais j'ai rien entendu de convaincant pour le moment.
Par contre jouer les quatres voies sur un seul canal, effectivement ta résolution se casse la figure de très haut, et très honnêtement, il n'y a pas besoin d'essayer pour en avoir la preuve, la déperdition de signal serait trop importante, car les samples perdent en résolution, mais en plus, vu que tu joues un MOD, tu gère en général fréquence et volume, et cela est généralement fait de façon assez "trash" donc avant même d'additionner tu as déjà de lourdes pertes de signal sur la voie 4 bits, alors une fois passée en 2bits...
Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 35 invité(s)
Vous ne pouvez pas publier de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas insérer de pièces jointes dans ce forum