Deux nouvelles routines musicales pour ZX Spectrum 48K

Tous les Sinclair. Du Mk14 au QL

Modérateur : Politburo

Répondre
utz
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 34
Inscription : 20 mai 2014 13:09
Contact :

Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par utz » 13 août 2014 01:42

Deux nouvelles routines pour le beeper. Oui, je suis un 1-bit fanatique ;)

#1 - anteater

télécharger
exemple sonore (enregistrée à partir de 48K avec EQ minimal appliqué)

Features:
- 1 canal signal carré, 1 canal PWM wave
- 3 sons de batterie
- désaccorder manuellement
- réglage de tempo de commande pour chaque ligne
- taille de la routine: 266 octets

J'ai écrit la routine entière en une seule journée. Le nom "anteater" est une référence au jeu Ant Attack, qui fut probablement le premier jeu à utiliser la synthèse d'entrelacement d'impulsion sur le Speccy.


#2 - ntropic

télécharger
exemple sonore

Features:
- 2 canaux signal carré, 1 canal pseudo bruit blanc
- 1 grosse caisse
- désaccorder manuellement
- réglage de tempo de commande pour chaque ligne
- taille de la routine: 176 octets

Ntropic est actuellement la seule routine de 1 bit qui peut jouer un bruit blanc ainsi que les canaux d'ondes. J'ai l'écrit déjà en Janvier, mais il y avait quelques bugs critiques qui ont maintenant été résolus.

Les téléchargements comprennent un convertisseur XM, pour composer pratique dans un éditeur tel que Milkytracker. Vous aurez besoin de Perl à l'utiliser. Pour la compilation, vous devez pasmo, ou d'adapter la source à l'assembleur de votre choix.

Avatar de l’utilisateur
Ythunder
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 6125
Inscription : 09 août 2008 17:46
Localisation : 03

Re: Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par Ythunder » 13 août 2014 09:39

Pas mal du tout, bravo
Je suis CHARLIE
Tell me boy, do you have a room, in your heart, for the Computer boom...

Avatar de l’utilisateur
JayBLOOD
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 986
Inscription : 27 août 2011 19:43
Localisation : 49

Re: Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par JayBLOOD » 13 août 2014 20:24

Bravo à toi! Et merci pour le partage. :)

Jay

farvardin
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 694
Inscription : 18 mai 2009 00:06
Contact :

Re: Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par farvardin » 21 août 2014 21:04

je suis scotché sur ces sons, et les compos sont excellentes également ! Comme pour la routine pour Sharp PC1403, un gros bravo.

Je ne possède pas de zx spectrum, mais j'imagine que ça doit être possible de l'utiliser avec un émulateur. J'ai donc modifié le fichier music.xm, j'ai ensuite converti le fichier avec le script perl puis compilé avec pasmo. Tout semble fonctionner à ce niveau, par contre je ne sais pas quoi faire dans l'émulateur : faut-il lire le loader.tap, le fichier anteat.tap en premier ? Une fois dans l'émulateur (j'utilise spectemu-x11) j'ai essayé de taper "j", pour écrire LOAD "", mais l'écran devient blanc, pas de son. Est-ce qu'il y a autre chose à faire ?

[edit: j'ai trouvé, avec un autre émulateur (fuse) ça lit la musique directement depuis le .tap !]

Accessoirement, ça serait possible de convertir la musique en .ay ?

utz
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 34
Inscription : 20 mai 2014 13:09
Contact :

Re: Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par utz » 21 août 2014 23:45

Merci, guys!

@farvardin: Oui, fuse est un bon émulateur, je l'utilise aussi. Tu pouvez ajouter une ligne comme ça au compile.sh pour exécuter le .tap automatiquement:

Code : Tout sélectionner

fuse-sdl --no-confirm-actions -m 48 -t ntropic.tap
Accessoirement, ça serait possible de convertir la musique en .ay ?
En théorie, oui. Tu pourriez probablement utiliser AYMakeR pour la convertir. Mais je n'ai pas essayé, donc je ne sais pas comment cela fonctionne exactement.

farvardin
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 694
Inscription : 18 mai 2009 00:06
Contact :

Re: Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par farvardin » 24 août 2014 23:28

Voici une petite musique que j'ai réalisée avec cette routine :

- version .ogg : https://dl.dropboxusercontent.com/u/620 ... _kraft.ogg

- Version .tap : https://dl.dropboxusercontent.com/u/620 ... _Kraft.tap

J'aime bien l'idée de composer avec milkytracker, qui reste assez convivial, puis d'exporter le fichier .xm vers une image pour sinclair spectrum, c'est simple et efficace (avec un makefile j'ai juste à taper "make all" et ça compile tout puis ouvre le fichier dans l'émulateur fuse). Ça change de klystrack et goat tracker.

Par contre attention apparemment milkytracker a un bug un peu gênant, si on ouvre par exemple le fichier music.xm et qu'on sauvegarde ensuite, en fait ça ne sauvegarde pas forcément sur le fichier qu'on vient d'ouvrir, mais vers un fichier du même nom dans un dossier précédemment utilisé lors de la dernière sauvegarde depuis ce logiciel. Si bien que je n'avais pas retrouvé une musique que j'avais créée (je pensais l'avoir placée par erreur dans un autre dossier), ça ouvrait toujours le fichier music.xm d'origine, et lorsque j'ai essayé de sauvegarder un nouvel essai, ça m'a écrasé ma création :cry:

bon, toujours est-il que je fais attention maintenant, et merci utz pour ces nouveaux outils de création musicale... (je n'ai pas encore trop utilisé ntropic mais ça ne saurait tarder)

Pour les fichiers .ay j'ai lu le lien, mais ça semble difficile d'automatiser cela. Il faudrait pouvoir extrait un fichier .bin qui décrit les routines, et les inclure dans un fichier .ini

Pour exporter les musiques en .wav, je présume qu'il n'y a pas non plus moyen de faire cela automatiquement ? Je me suis contenté d'ouvrir un outil d'enregistrement (audacity), d'enregistrer, de lire le .tap, de nettoyer un peu...

utz
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 34
Inscription : 20 mai 2014 13:09
Contact :

Re: Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par utz » 27 août 2014 16:34

Ah, bon!

Par ailleurs, il y avait des updates. Les convertisseurs de xm ont été améliorées, de sorte qu'il n'est plus nécessaire d'optimiser manuellement. En outre, quelques bugs dans ntropic ont été corrigés. S'il vous plaît re-télécharger à partir de la même adresse.

En ce qui concerne le bug dans Milkytracker .... hmmm, ça ne devrait pas arriver. Quelle version utilisez-vous?

La conversion de .ay ... en théorie, il devrait être possible d'automatiser elle. On sait que l'adresse d'initialisation est normalement $8000, et la durée peut être déterminée par l'assemblage de .bin lieu de .tap. Mais comme je l'ai dit, je n'ai pas regardé en elle, donc je ne sais pas pour sûr. Si vous compris les détails, je pourrais essayer d'ajouter conversion .ay aux convertisseurs.

Exportation en wav, je le fais de la même façon, sauf que j'enregistre habituellement de hardware avec un peu d'EQ.

utz
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 34
Inscription : 20 mai 2014 13:09
Contact :

Re: Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par utz » 02 sept. 2014 12:32

#3 rawp

Caractéristiques:
- 2 canaux de tonalité + charleston interrompre
- 16 formes d'ondes différentes + échantillonné grosse caisse
- Glissando
- Par réglage de tempo de la ligne
- Désaccorder manuellement

télécharger (convertisseur XM inclus)
exemple sonore

Il y avait quelques bugs dans la version antérieure des convertisseurs anteater et ntropic. Ils ont été corrigés, s'il vous plaît re-télécharger.

farvardin
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 694
Inscription : 18 mai 2009 00:06
Contact :

Re: Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par farvardin » 04 sept. 2014 23:52

wow, quel travail impressionnant ! Non seulement ça ne doit pas être évident de programmer ça en assembleur, mais en plus fournir une base de travail qui sonne de façon similaire avec des wav dans milkytracker, franchement ça dépasse l'entendement !

Très sympa les sons de ce rawp... Ça fonctionne bien chez moi, je vais essayer de composer un petit quelque chose avec.

Par contre avec les 2 nouvelles version de anteater et ntropic, ça me donner des erreurs lors de la conversion avec les scripts perl.

(linux, avec perl 5, version 18, subversion 2 (v5.18.2) built for x86_64-linux-gnu-thread-multi)

Code : Tout sélectionner

Global symbol "$temp2" requires explicit package name at ./xm2ntropic.pl line 201.
Global symbol "$temp2" requires explicit package name at ./xm2ntropic.pl line 202.
Global symbol "$temp2" requires explicit package name at ./xm2ntropic.pl line 202.
Global symbol "$temp2" requires explicit package name at ./xm2ntropic.pl line 203.
Global symbol "$temp2" requires explicit package name at ./xm2ntropic.pl line 204.
Execution of ./xm2ntropic.pl aborted due to compilation errors.
et c'est pire pour anteater :

Code : Tout sélectionner

Scalar found where operator expected at xm2ant.pl line 124, near "$temp2 $mx"
        (Missing operator before $mx?)
syntax error at xm2ant.pl line 124, near "$temp2 $mx"
Global symbol "$mx" requires explicit package name at xm2ant.pl line 124.
Global symbol "$jx" requires explicit package name at xm2ant.pl line 124.
Global symbol "$nx" requires explicit package name at xm2ant.pl line 124.
Global symbol "$jx" requires explicit package name at xm2ant.pl line 135.
Global symbol "$jx" requires explicit package name at xm2ant.pl line 136.
/.../
Global symbol "$rows" requires explicit package name at xm2ant.pl line 279.
Global symbol "$rows" requires explicit package name at xm2ant.pl line 279.
Global symbol "$rows" requires explicit package name at xm2ant.pl line 281.
Global symbol "$rows" requires explicit package name at xm2ant.pl line 281.
Execution of xm2ant.pl aborted due to compilation errors.
Je n'avais pas ces problèmes avec les versions précédentes de ces scripts. Et pas de soucis avec le convertisseur de rawp.

Sinon pour le bug avec MilkyTracker (ça garde le dossier précédent comme dossier courant, même si on charge un morceau dans un autre répertoire depuis la ligne de commande ("milkytracker fichier.xm")), j'ai la version 0.90.85, ça semble être la dernière. Je testerai sur d'autres systèmes.

utz
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 34
Inscription : 20 mai 2014 13:09
Contact :

Re: Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par utz » 05 sept. 2014 15:33

Désolé, je me suis cassé des trucs tout en fixant un autre bug. Devrait être tout bon maintenant. Merci de me laisser savoir.

Concernant Milkytracker, la dernière version est 0.90.86, mais je ne pense pas qu'ils ont changé ce comportement dans cette version. :|

farvardin
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 694
Inscription : 18 mai 2009 00:06
Contact :

Re: Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par farvardin » 06 sept. 2014 00:34

oui, ça marche très bien maintenant, merci pour ces corrections. Par contre sur mon morceau avec anteater, je n'entends pas vraiment la différence entre avant et après...

D'autre part, sur l'exemple music.xm de ntropic, ce n'est pas le même morceau que ntropictest.mp3, est-ce normal ?

Pour le moment je m'amuse bien à composer le futur hit de l'hiver avec ntropic... :)


utz
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 34
Inscription : 20 mai 2014 13:09
Contact :

Re: Deux nouvelles routines musicales pour ZX Spectrum 48K

Message par utz » 07 sept. 2014 12:31

Yay, très bon. Félicitations pour la première chanson ntropic pas fait par l'auteur de la routine. 8)
farvardin a écrit :Par contre sur mon morceau avec anteater, je n'entends pas vraiment la différence entre avant et après...
Oui, c'est exact. Son ne doit pas être changé. Le bug ne concerne que le compilateur.
farvardin a écrit :D'autre part, sur l'exemple music.xm de ntropic, ce n'est pas le même morceau que ntropictest.mp3, est-ce normal ?
Oui, cette chanson a été faite avec une ancienne version de cette routine. Celui-ci a été joyeusement PUSHer et POPer dans la mémoire contenu, ce qui n'est pas une bonne idée si on veut garder pitch et du timing stable.

Btw peut-être vous voulez nous rejoindre sur le forum 1-bit?

Répondre

Revenir vers « Sinclair »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 3 invités