[MZ-700] Space Rally

Cette catégorie traite de développements récents pour nos vieilles machines, applications, jeux ou démos... Amis programmeurs, c'est ici que vous pourrez enfin devenir célèbres!

Modérateurs : Papy.G, fneck, Carl

Avatar de l’utilisateur
fneck
Site Admin
Messages : 17389
Inscription : 01 avr. 2007 12:03
Localisation : Drôme Provençale (26)
Contact :

Re: [MZ-700] Space Rally

Message par fneck »

C'est difficile de répondre positivement à ta demande, ça revient à censurer les propos d'un membre, sans motif de modération particulier et sans son accord. :?

Imagine la situation inverse, si je venais à supprimer tes messages à droite et à gauche. Du coup on ne serait plus sur un forum là.
Fabien https://www.system-cfg.com
Les bonnes pratiques de l'utilisateur du forum viewtopic.php?f=14&t=3
Avatar de l’utilisateur
Papy.G
Modérateur
Messages : 3044
Inscription : 10 juin 2014 13:40
Localisation : Haute-Garonne/Gers

Re: [MZ-700] Space Rally

Message par Papy.G »

On peut faire une divergence vers un autre sujet avec un lien, il faut pour cela qu'aucun post ne réponde au hors-sujet et au sujet initial en même temps, et même alors, c'est assez fastidieux. Si j'ai le temps, j'y regarderais. :wink:
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.
Avatar de l’utilisateur
Papy.G
Modérateur
Messages : 3044
Inscription : 10 juin 2014 13:40
Localisation : Haute-Garonne/Gers

Re: [MZ-700] Space Rally

Message par Papy.G »

Divergence faite, une intervention est malencontreusement passée à la trappe, il y était question du son métallique d'un jeu d'hélico sur PC, avec lien vers la vidéo. :oops:
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.
Avatar de l’utilisateur
hlide
Messages : 3456
Inscription : 29 nov. 2017 10:23

Re: [MZ-700] Space Rally

Message par hlide »

Merci Papy.G !
Zebulon
Messages : 2767
Inscription : 02 nov. 2020 14:03

Re: [MZ-700] Space Rally

Message par Zebulon »

C'était moi, il s'agissait de l'intro du jeu Gunship sur PC dont les effets sonores et la musique sont joués sur le buzzer du PC :



Le timbre est effectivement très métallique et certains passages semblent joués en sourdine. Mais je suppose que c'était déjà un exploit (comme les samples digitalisés que j'ai entendu récemment sur ZX spectrum).
Avatar de l’utilisateur
hlide
Messages : 3456
Inscription : 29 nov. 2017 10:23

Re: [MZ-700] Space Rally

Message par hlide »

Oui, j'imagine que jouer du PCM 1-bit sur un buzzer donne ce résultat métallique.

Concernant mes aventures "soniques", j'ai tenté plusieurs choses mais n'étant pas un musicien ou bruiteur, c'est un peu compliqué pour moi.

1) On peut faire du PWM intersectif, mais il faut viser une fréquence haute du style 15.7Hz pour (nous les vieux) ne pas entendre la fréquence porteuse. Problème, même si j'arrivais à faire via une interruption (un BLANK) tous les 15,7KHz, je n'aurais pas beaucoup de resource CPU et je ne pourrais pas obtenir un affichage optimal. A moins de générer le flux, il n'y aurait pas de place pour en stocker.

2) Je peux doubler artificiellement la fréquence avec des duties 0%, 50% et 100% mais ça ne vaut que pour du signal carré à une voie avec une amplitude figée à 0 ou 1.

3) Je peux jouer trois amplitudes (0, 0.5, 1) mais ça ne vaut que pour du signal carré à une voie (dont la fréquence ne peut pas être doublée). Ça reste très limité en terme d'enveloppe.

4) J'ai trouvé un moyen de sortir du son avec une enveloppe (volumique). Comme nous percevons en fait la force de la compression et de la dilatation, il n'est pas nécessaire d'avoir des états haut et bas figés à une valeur (genre 1 et 0). Jouer de l'amplitude (0, 0.5) ou (0.5, 1) donnera la même différence et donc le même son. Maintenant si je fais varier ces amplitudes à chaque changement d'état du signal carré, je peux créer un équivalent reproduisant une enveloppe sur un signal carré avec des amplitudes 1/N. Mais là encore, je pense que ça se limite à un signal carré à une voie car faire la somme des signaux carrés pourraient engendrer une succession de compressions probablement pas reproductible avec des amplitudes 1/N.

Concernant (4), si vous sortez un état haut de 1 et un état bas de 1/4, alors vous obtenez une différence amplitude de 3/4 (soit un volume au 3/4). Le volume s'obtient sur un signal carré par la formule suivante : |1/Ch - 1/Cb| où Ch est le diviseur de fréquence pour créer 1 pulsion haute de ~1MHz et Ch pulsions basses de même fréquence. Idem pour Cb. Vu la fréquence élevée de ~1MHz, Ch=1 et Cb=1/2 donnera 1/1 - 1/2 = 1/2 va avoir l'effet d'une division par deux du volume en alternant l'état haut et bas dans la période souhaitée.
Sans titre.png
Sans titre.png (88.33 Kio) Consulté 1363 fois
Répondre