Logicielsmoto.com

Nous sommes le 28 Mar 2024, 12:34

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 46 messages ]  Aller à la page Précédente  1, 2, 3, 4  Suivante
Auteur Message
 Sujet du message: PAS DE REDITES
MessagePosté: 28 Fév 2016, 17:15 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
PAS DE REDITES

On a vu que le format du PLAY est de taille fixe à 14 octets. Quand on regarde un morceau, on voit que souvent 11 des 14 octets sont identiques. Typiquement une seule voix a changée. C'est un peu idiot ca: on répète des trucs qu'on a dit juste au dessus. Si on pouvait faire evoluer le PLAY pour que seules les voix changées soient indiquées, on gagnerait beaucoup de place. Or il se touve qu'on a 6 bits de dispo dans l'octet flag. Reservons alors 1 bit pour indiquer si l'on doit changer la voix correspondante:
Code:
[1 chg1 chg2 chg3 chg4 0 0 bruit]
On a ainsi une commande PLAY de longueur variable.

En supprimant les redites, le format a pas mal diminué. Il y a rarement plus de 2 voix qui changent à la fois. Le pattern passe alors d'une taille de 14 octets à 8 octets. On a gagné un facteur deux. La Toccata et Fugue ne fait plus que 12ko. Elle tient dans une banque ram. Super!
Code:
* Bach_Toccate_Fugue_BWV565.mid
zik
 fcb $82,$20,$80,$16,$56,$00,$00,$00,$00,$00,$00,$00,$00,$00
 fcb $ba,$20,$80,$13,$e7
 fdb SXM103-zik
 fcb $ba,$20,$00,$00,$00
 fcb $82,$10,$80,$13,$e7,$00,$00,$00,$00,$00,$00,$00,$00,$00
 fcb $ba,$10,$80,$11,$ba
 fcb $ba,$10,$80,$10,$bc
 fcb $ba,$10,$80,$0e,$e9
 fcb $ba,$20,$80,$0e,$14
 fcb $82,$20,$80,$0e,$e9,$00,$00,$00,$00,$00,$00,$00,$00,$00
 fdb SXM61-zik
 fdb SXM211-zik
 fdb SXM60-zik
 fdb SXM59-zik
 fdb SXM209-zik
 fcb $ba,$20,$80,$07,$0a
 fcb $82,$40,$80,$07,$74,$00,$00,$00,$00,$00,$00,$00,$00,$00
 fcb $ba,$e0,$00,$00,$00
 fcb $ba,$20,$80,$05,$91
 fcb $ba,$20,$80,$04,$f5
 fcb $82,$40,$80,$05,$91,$00,$00,$00,$00,$00,$00,$00,$00,$00
 ...
SXM0
 fdb SXM164-zik
 fdb SXM164-zik
 fdb SXM163-zik
 fdb SXM163-zik
 fdb 0
SXM1
 fdb SXM165-zik
 fdb SXM165-zik
 fdb SXM166-zik
 fdb SXM166-zik
 fdb 0
SXM2
 fdb SXM167-zik
 fdb SXM167-zik
 fdb SXM168-zik
 fdb SXM168-zik
 fdb 0
SXM3
 fcb $ba,$20,$80,$08,$dd
 fcb $ba,$20,$80,$0b,$ce
 fcb $ba,$20,$80,$08,$dd
 fdb SXM208-zik
 fcb $ba,$20,$80,$0b,$2b
 fcb $ba,$20,$80,$08,$5a
 fcb $ba,$20,$80,$05,$e3
 fcb $ba,$20,$80,$07,$74
 fcb $ba,$20,$80,$09,$f3
 fcb $ba,$20,$80,$07,$74
 fdb SXM180-zik
 fdb SXM233-zik
 fcb $ba,$40,$80,$0b,$ce
 fdb 0
SXM4
 fdb SXM260-zik
 fdb SXM196-zik
 fdb SXM260-zik
 fdb SXM173-zik
 fcb $ba,$40,$80,$16,$56
 fdb SXM189-zik
 fcb $ba,$40,$80,$16,$56
 fdb 0
...

_________________
Good morning, that's a nice Tnetennba


Dernière édition par Samuel Devulder le 28 Fév 2016, 18:05, édité 1 fois.

Haut
 Profil  
Répondre en citant le message  
MessagePosté: 28 Fév 2016, 17:19 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
IL N'Y A PAS TANT DE NOTES QUE CA...

Samuel Devulder a écrit:
La Toccata et Fugue ne fait plus que 12ko. Elle tient dans une banque ram. Super!

Oui super, mais ne pourrait t'on pas aller au delà ? Car quand on envoie le binaire de la toccata dans GZIP, il la compresse à 5ko.. soit encore un facteur 2. Hum.. où trouve t'il ce gain?

En fait, si on regarde les notes jouées, il n'y en a pas tant que ca. Il y a en général moins de 50 triplets (<seuil:1> <freq:2>) différents. On pourrait avantageusement remplacer ces triplets par un octet envoyant vers un table stockant ces triplets.

Si l'on fait ca, on gagne effectivement un facteur deux et la Toccata et Fugue pèse moins de 6ko. Je crois qu'on a là la représentation à peu près ultime. Elle a un taux similaire à LHA/GZIP tout en ne coutant pratiquement rien au niveau du CPU. J'en suis très content :love: C'est je crois un format inédit dans le monde du tracker.
Code:
* Bach_Toccate_Fugue_BWV565.mid (5935 octets)
zik
 fdb ptn ; pointeur sur début du pattern
* table des triplets de notes utilisées
 fcb $00,$00,$00
 fcb $80,$16,$56
 fcb $80,$13,$e7
 fcb $80,$11,$ba
 fcb $80,$10,$bc
 fcb $80,$0e,$e9
 fcb $80,$0e,$14
 fcb $80,$07,$0a
 fcb $80,$07,$74
 fcb $80,$05,$91
 fcb $80,$04,$f5
 fcb $80,$04,$6a
 fcb $80,$04,$28
 fcb $80,$03,$b6
 fcb $80,$03,$85
 fcb $80,$08,$5a
 fcb $80,$09,$f3
 fcb $80,$0b,$ce
 fcb $80,$09,$60
 fcb $80,$06,$3d
 fcb $80,$08,$dd
 fcb $80,$0b,$2b
 fcb $80,$17,$a5
 fcb $80,$06,$9f
 fcb $80,$05,$e3
 fcb $80,$05,$3f
 fcb $80,$0c,$83
 fcb $80,$19,$0e
 fcb $80,$0d,$47
 fcb $80,$02,$c8
 fcb $80,$04,$ac
 fcb $80,$07,$df
 fcb $80,$0f,$c6
 fcb $80,$03,$1a
 fcb $80,$03,$4b
 fcb $80,$02,$f1
 fcb $80,$03,$ef
 fcb $80,$15,$16
 fcb $80,$12,$c8
 fcb $80,$0a,$87
* debut des patterns
ptn
 fcb $82,$20,1,0,0,0
 fcb $ba,$20,2
 fdb QFS103-zik
 fcb $ba,$20,0
 fcb $82,$10,2,0,0,0
 fcb $ba,$10,3
 fcb $ba,$10,4
 fcb $ba,$10,5
 fcb $ba,$20,6
 fcb $82,$20,5,0,0,0
 fdb QFS61-zik
 fdb QFS211-zik
 fdb QFS60-zik
 fdb QFS59-zik
 fdb QFS209-zik
 fcb $ba,$20,7
 fcb $82,$40,8,0,0,0
 fcb $82,$e0,0,0,0,0
 fcb $ba,$20,9
 fcb $ba,$20,10
 fcb $82,$40,9,0,0,0
 fdb QFS59-zik

_________________
Good morning, that's a nice Tnetennba


Dernière édition par Samuel Devulder le 28 Fév 2016, 17:40, édité 1 fois.

Haut
 Profil  
Répondre en citant le message  
 Sujet du message: LA SUITE...
MessagePosté: 28 Fév 2016, 17:28 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
LA SUITE...

Pour finir, remarquons que les 3 bits du poids faible de la commande PLAY laissent place pour encoder 8 commandes dans le même format. On a déjà deux commandes réservées pour jouer 4voix ou 3voix+bruit, il ne reste que 6 commandes de libres. On peut dores et déjà en réserver une autre pour définir le tempo qui sera la vitesse à laquelle on joue les noires (voir plus haut). Restent 5 commandes possibles.

Je viens d'ajouter une commande TEXT pour envoyer des choses à la routine PUTC et ainsi faire du..ben voyez vous même avec le fichier joint. C'est vraiment de l'inédit :cool:
Fichier(s) joint(s):
Commentaire: ok pour la voiture.
disk.zip [60.42 Kio]
Téléchargé 702 fois

_________________
Good morning, that's a nice Tnetennba


Dernière édition par Samuel Devulder le 29 Fév 2016, 11:52, édité 1 fois.

Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: LA SUITE...
MessagePosté: 28 Fév 2016, 18:55 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1061
Localisation: France (24)
Samuel Devulder a écrit:
C'est vraiment de l'inédit :cool:
Absolument :good: Premier karaoké sur Thomson!
Pour ta "petite" explication, je lirai ça à tête reposée un peu plus tard ;)

_________________
Marche a suivre pour s'inscrire sur ce forum
Do not forget to contact one of the administrators to validate your registration.
Le site des démos de Puls
L'émulateur Teo


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 28 Fév 2016, 19:01 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1061
Localisation: France (24)
Pfiou! Tu utilises la routine d'affichage du Moniteur pour le texte ? Ça ne ralentit/saccade pas trop la musique ?

_________________
Marche a suivre pour s'inscrire sur ce forum
Do not forget to contact one of the administrators to validate your registration.
Le site des démos de Puls
L'émulateur Teo


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 28 Fév 2016, 19:34 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Oui l'explication je l'ai écrite à coté et l'ai séparée en gros paragraphes, un post par paragraphe au cas où il faudrait revenir dessus. C'est assez dense à lire au niveau des informations, donc tu fais bien de prendre ton temps.

C'est bien le PUTC du moniteur qui est appelé pour afficher du texte. Je me suis dit que ca allait prendre trop de temps, mais après expérimentations ca marche super bien. Il faut dire qu'on affiche 5-6 caractères maxi et que l'affichage ne se produit pas dans la routine qui produit le son, mais entre deux notes. Donc perdre quelques ms ne s'entend pas trop à ces moments là.

Maintenant je regrette de n'avoir pas plus de fichiers KAR(aoké) sur mon disk ;)

[EDIT] Stromae passe aussi très bien avec le mode couleur TO7/70
Fichier(s) joint(s):
alors_on_danse.MAP.png
alors_on_danse.MAP.png [ 5.47 Kio | Vu 18100 fois ]
Fichier(s) joint(s):
maxresdefault.MAP.png
maxresdefault.MAP.png [ 11.8 Kio | Vu 18100 fois ]
Fichier(s) joint(s):
6a011570821e68970b014e5f1f8046970c-640wi.MAP.png
6a011570821e68970b014e5f1f8046970c-640wi.MAP.png [ 7.71 Kio | Vu 18100 fois ]

J'ai bien envie d'utiliser tout ca pour faire un petit truc pour la ForeverParty.. T'en penses quoi?

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 29 Fév 2016, 01:02 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Même en mode 8 couleurs (TO7), il y a des trucs à faire.
Fichier(s) joint(s):
5534c2ff35704bb01bdbf46c.MAP.png
5534c2ff35704bb01bdbf46c.MAP.png [ 8.7 Kio | Vu 18100 fois ]
Fichier(s) joint(s):
1280x720-sNe.MAP.png
1280x720-sNe.MAP.png [ 9.81 Kio | Vu 18100 fois ]
Fichier(s) joint(s):
stromae-alors-on-danse-clip-40_2bjll_yzhk6.MAP.png
stromae-alors-on-danse-clip-40_2bjll_yzhk6.MAP.png [ 7.9 Kio | Vu 18100 fois ]

J'aime assez cette dernière image, mais j'ai du mal à faire un lien avec le thème de cette année =>Defender of the (belgium) crown ?

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 29 Fév 2016, 07:14 
Hors ligne

Inscription: 24 Juil 2010, 16:08
Messages: 454
Localisation: France
Il y a tout un article sur le site de la Forever sur les différentes interprétations possibles du thème:
http://forever-party.net/?p=626

Mais il n'est toujours pas obligatoire de rentrer dans le thème pour participer.
Avec tout ça on pourra bien ajouter une session Karaoke en plus des autres "crazy compos": http://forever-party.net/?p=703 http://forever-party.net/?p=714


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 29 Fév 2016, 09:56 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1061
Localisation: France (24)
Samuel Devulder a écrit:
J'ai bien envie d'utiliser tout ca pour faire un petit truc pour la ForeverParty.. T'en penses quoi?

Que du bien, surtout que tout est déjà fait, il ne te reste plus qu'à intégrer le gfx au karaoké.

Samuel Devulder a écrit:
Même en mode 8 couleurs (TO7), il y a des trucs à faire.
J'aime assez cette dernière image, mais j'ai du mal à faire un lien avec le thème de cette année =>Defender of the (belgium) crown ?

Bah... Avec un bon coup de marteau, ça devrait rentrer :lol:
De toute façon, c'est rappé pour la démo 1k :bah:

_________________
Marche a suivre pour s'inscrire sur ce forum
Do not forget to contact one of the administrators to validate your registration.
Le site des démos de Puls
L'émulateur Teo


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 29 Fév 2016, 12:04 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Je vais changer les paroles: "Maintenant on BUZZ", mais je me demande s'il ne faudrait pas faire nos propres paroles en anglais spécial 8 bit... "So now we BUZZ" :langue:

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 10 Avr 2016, 13:21 
Hors ligne

Inscription: 22 Mai 2009, 11:08
Messages: 68
Localisation: dijon
Bonjour samuel et bonjour tout le monde

je viens de lire tout cela avec passion !
mais le player prend il beaucoup de cycle ?
d'ou ma question est il possible de faire des effets avec ? en même temps ?
cela serait revolutionnaire pour de la démo teo

amiteolement

_________________
--- que dire ---


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 10 Avr 2016, 13:51 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Le player prend 100% du cpu. Le mieux que j'ai pu faire c'est de voler quelques 100cycles (0.1ms) entre deux changements de notes pour afficher du texte. Il est difficile de faire mieux. En effet le player tournant à 125µs, si on devait lui voler des cycles, ca devrait être inférieur à 1%, soit 1.2µs, or l'instruction minimale est de 2µs. Le moindre petit effet type changement de palette est de l'ordre de 20µs, donc largement au dessus. Bref on ne peut donc pas raisonnablement voler du temps dans la routine qui sort les notes. Ca s'entendrait trop.

C'est soit le son, soit l'animation, mais pas les deux ensemble hélas avec ce player :(

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 10 Avr 2016, 18:44 
Hors ligne

Inscription: 24 Juil 2010, 16:08
Messages: 454
Localisation: France
La solution potentielle pour un player qui occupe peu de temps machine c'est toujours le trombone dans les pins du port cassette pour reboucler la sortie du timer PIA sur l'entrée audio (c'est une idée de Sam, je crois bien?). Toujours personne n'a essayé ça?

Par contre, pas sur qu'on puisse jouer 4 voix avec ça et un temps machine faible. Du coup il faudrait plutot partir d'un player de ce genre: http://www.oldskool.org/pc/MONOTONE


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 10 Avr 2016, 19:59 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Oui j'ai eu cette idée, mais étant plus soft que hard j'ai fait un équivalent en mettant une interruption soft qui inverse le buzzer à la place. Ca donne le player employé dans HNY2013 et dans Rock-Fort. Hélas oui c'est du mono-voix, mais ca permet de faire des effets en parallèle (pleins de pixels en mouvement complexes dans HNY2013, et scroll + starfield mobile dans rock-fort).

Un truc que je n'ai jamais exploité c'est la synthèse vocale dont il parrait qu'on pourrait utiliser ses 3 oscillateurs indépendemment. Mais comme les émuls que j'utilise ne l'émulent pas, et que j'ai pas non plus de doc précise pour le bidouiller (car je ne veux pas faire des phonèmes), ben ca ne reste qu'à l'état d'idée.

Sans doute que le prochain truc que je ferais coté musique, c'est un truc qui me trotte dans la tête depuis un moment: pouvoir jouer une autre forme d'onde que des créneaux et avoir des instruments bien plus riches (256 échantillons par instruments). A terme j'aimerais pouvoir convertir automatiquement(car je ne sais pas composer) des chip-MODs amiga en truc pour thomson de sorte que le rendu sonnore soit très voisin.

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 10 Avr 2016, 20:12 
Hors ligne

Inscription: 24 Juil 2010, 16:08
Messages: 454
Localisation: France
Pour la synthèse vocale, on trouve les datasheets du composant utilisé (le MEA8000) assez facilement. On peut effectivement contrôler trois filtres et un oscillateur, mais pas très finement (l'ensemble des paramètres tient dans 4 ou 5 octets), donc c'est pas évident d'en faire de la musique (quoi que, la démonstration du synthétiseur chante "au clair de la lune").

J'ai essayé de l'utiliser dans deux de mes demos pour la Forever mais sans grand succès (à part pour faire des bruits bizarres).


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 46 messages ]  Aller à la page Précédente  1, 2, 3, 4  Suivante

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 35 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