musique 1-bit

Pour annoncer une rencontre du troisième type entre individus présentant des caractéristiques communes.

Modérateurs : Papy.G, fneck, Carl

Avatar de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Concours de musique 1-bit

Message par yo_fr »

En compilant vite fais il y a les labels _bb _cc qui sont redéfinis plusieurs fois. (ainsi que _aa _ee _ff _rs1 _rs2 ...)

Le fichier music.asm je suppose que c'est le même que sur l'octode2016 original ?

Un org 4200 m'irait mieux car en 4000 j'ai le boot loader de la plaine arduino.

..et cela donne un son mélangé et presque reconnaissable. Je ferais un enregistre ce soir, là je suis encore au boulot !
main.asm.txt
(28.84 Kio) Téléchargé 99 fois
Dernière modification par yo_fr le 18 juil. 2016 17:30, modifié 1 fois.
Avatar de l’utilisateur
utz
Messages : 36
Inscription : 12 juil. 2016 14:10
Localisation : Amsterdam
Contact :

Re: Concours de musique 1-bit

Message par utz »

Oui, le fichier music.asm est le même que sur l'octode2016 original. Pas nécessaire de renommer les labels, il suffit d'utiliser l'option --alocal pour PASMO.

Edit: Oui, s'il te plaît faire un enregistrement. Il doit sonner presque exactement comme l'original. S'il y a des bruits étranges, je fait une erreur quelque part.
Avatar de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Concours de musique 1-bit

Message par yo_fr »

...ou moi dans le renommage des labels...

Source jointe ci dessus.
[EDIT] compilation de l'original avec l'option --local donne pareil.

jj
Avatar de l’utilisateur
utz
Messages : 36
Inscription : 12 juil. 2016 14:10
Localisation : Amsterdam
Contact :

Re: Concours de musique 1-bit

Message par utz »

Je viens le parcouru rapidement, semble correct pour moi. Mais en cas de doute, utilise ma version et --alocal ;) En fait, j'oublié moi-même, parce que normalement j'invoque PASMO avec un script, que je copie simplement d'un autre projet à chaque fois. :o Un gros inconvénient de PASMO est qu'il n'a pas des labels anonymes.

Edit: Edit: D'accord, je l'attends ton enregistrement, puis.
Avatar de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Concours de musique 1-bit

Message par yo_fr »

Voila le fichier créé (MP3)

JJ
Octode 18juillet.mp3.txt
(217.13 Kio) Téléchargé 106 fois
(Seule modif : org à 4200 , compilé avec--alocal )
Avatar de l’utilisateur
utz
Messages : 36
Inscription : 12 juil. 2016 14:10
Localisation : Amsterdam
Contact :

Re: Concours de musique 1-bit

Message par utz »

Aie! C'est terrible. Ok, je vais jeter un oeil demain.
Avatar de l’utilisateur
utz
Messages : 36
Inscription : 12 juil. 2016 14:10
Localisation : Amsterdam
Contact :

Re: Concours de musique 1-bit

Message par utz »

J'ai essayé d'installer VBHector 3.1. Mais cela ne fonctionne pas ( "not a valid Win32 application", WinXP, .NET 3.5). Est-ce 64-bit?

Edit: Maintenant, je vais essayer de mettre en œuvre un convertisseur bin2k7. Mais je pense que je ne comprends pas correctement comment le faire. Je l'ai mis en œuvre comme suit:

1) pilote: 00 00 03 00 00 00 00
2) bloc de data: ff, dest lo-byte, dest hi-byte, lon lo-byte, lon hi-byte, 00 00, data de binaire
3) bloc de fin: fd, pc lo-byte, pc hi-byte, 00 00 00 00

Cela va planter MESS. Quelle est l'erreur?
Avatar de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Concours de musique 1-bit

Message par yo_fr »

il me semble qu'il y a ue erreur : en 1er c'est la longueur du bloc de commande et ensuite les data du bloc de commande suivi des data :

Dans la source K7.vb j'ai écris:

'
' En fait les 5 premiers octets c'est la longueur des data de la TOL, ainsi que l'adresse :
' longueur BLOC = Data(Pointeur_octet + 0) 'usuellement une TOL fait 5 octets
' Adr0 = Data(Pointeur_octet + 1)
' Adr1 = Data(Pointeur_octet + 2)
' Lon0 = Data(Pointeur_octet + 3)
' Lon1 = Data(Pointeur_octet + 4)
' code_TOL = Data(Pointeur_octet + 5)

le bloc ff serait donc plutot:
bloc de data: 05, dest lo-byte, dest hi-byte, lon lo-byte, lon hi-byte, FF , long_bloc1, data de binaire (256maxi),long_bloc2, data de binaire (256maxi), ....long_blocN, data de binaire (256maxi),long_Dernierbloc, data de binaire (256maxi parexemple 10)

(par exemple pour un bloc FF de 1000 octets, il y aurait 3 blocs de 256 octets + 1 bloc de 232 octets => 3*256 + 232 = 1000,
La longueur de 1000 étant paramétrée sur 16 bits dans le bloc de commande !)

[EDIT]
pour continuer l'exemple :
on charge des données en 4200h sur 1000d octets :
05 00 42 E8 03 FF 00 (256 premiers octets) 00 (256 suivants) 00 (256 suivants) E8 (232 derniers)

suivi d'un bloc de fin :
05 00 00 00 42 FD 00

et ça doit être tout !

[/EDIT]

exemple de trame (toujours dans la source k7.vb) :
' ce qui donne, par exemple, en début de cassette FORMULE1 :
' 05 00 40 A0 09 FE 01 00 05 DB 5F 02 00 FF…
' => 3 blocs :
' Le premier avec L= 05, code FE (à la fin) : fait un remplissage de l’écran (4000 @ écran BR, 9A0 : taille écran BR) avec l'octet du
' bloc de données suivant :
' Le 2eme Bloc L=01 paramètre = 00 (1 octet de donnée :0) est l'octet à mettre dans l'écran réclamé par le bloc FE...

' Le troisième bloc : avec le code de données (FF à la fin) sur 5 octets : à l'adresse 5FDB longueur de 0002 octets qui sera suivi d'un
' bloc de data d'une longueur de 2 !... Si la longueur était plus grande (supérieur à 256 octets) il y aura alors plusieurs bloc
' de données de 256 puis le dernier avec le modulo nécessaire..


Il ne faut pas confondre les commandes tel que décrites dans monitrix et les octets que l'on trouve sur la K7, même si c'est très proche. Ci dessous l'analyse d'un fichier K7 complète (hormis les lignes 4000 à 8090 supprimées pour entrer dans le quota de 300ko) :
F1 - Copie.rar.txt
(278.47 Kio) Téléchargé 92 fois
Il s'agit d'un jeu en basse résolution et affichage sur l'écran d'une image d’accueil avant les datas du programme proprement dit.

On vois bien, par exemple que le bloc d’amorce n'existe pas sur le fichier cassette : il s'agit des cycles de synchro en début de bloc. Dans mes codes j'avais du les ajouter pour laisser le temps au Z80 de respirer car justement ils n'existent pas.

(ce qui est nécessaire dans les bloc de remplissage : si on demande de remplir l'ensemble de l'écran, par exemple pour l'effacer, il faut bien que le Z80 effectue cette commande avant de lire la suite, or la cassette continue de défiler et on rate les octets suivants. ceci dis tu n'a pas a en tenir compte pour créer un fichier K7, ça c'est dans l'émulateur...)
Avatar de l’utilisateur
utz
Messages : 36
Inscription : 12 juil. 2016 14:10
Localisation : Amsterdam
Contact :

Re: Concours de musique 1-bit

Message par utz »

Merci pour ton explication détaillée. Voilà, ça marche!
Je vais partager le convertisseur ce soir. Maintenant, je vais essayer de trouver l'erreur dans mon code de l'octode.
Avatar de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Concours de musique 1-bit

Message par yo_fr »

Parfait !

Le son dans MESS est il correcte ?
(c'est à dire comme dans mon enregistrement avec VBhector)
Avatar de l’utilisateur
utz
Messages : 36
Inscription : 12 juil. 2016 14:10
Localisation : Amsterdam
Contact :

Re: Concours de musique 1-bit

Message par utz »

Non, il est encore pire. Mais pour le débogage, je espère qu'il suffit.
En outre, il me reste une petite nuisance. L'auto-start ne fonctionne pas, après le chargement Hector revient à l'écran principal (pour que le réglage de PC ne prend effet). Je peux initialiser le code via Monitrix, cependant.
Avatar de l’utilisateur
utz
Messages : 36
Inscription : 12 juil. 2016 14:10
Localisation : Amsterdam
Contact :

Re: Concours de musique 1-bit

Message par utz »

Ah, tout ce travail juste pour trouver l'erreur la plus stupide de tous les temps.
La première instruction dans le code devrait être l'instruction "DI", et ce manque. Maintenant, dans MESS ça sonne encore très mal, mais cela peut être l'émulation. Pourrais-tu tester une fois de plus en VBHector, avec le "DI" manquant ajouté?
Avatar de l’utilisateur
farvardin
Messages : 436
Inscription : 27 déc. 2014 16:07
Contact :

Re: Concours de musique 1-bit

Message par farvardin »

J'ai essayé d'installer VBHector 3.1. Mais cela ne fonctionne pas ( "not a valid Win32 application", WinXP, .NET 3.5). Est-ce 64-bit?
@utz, j'ai essayé également d'utiliser vbhector avec wine, et c'est un binaire pour le framework .net, et en 64 bit:
file VB_Hector.exe
VB_Hector.exe: PE32+ executable (GUI) x86-64 Mono/.Net assembly, for MS Windows
Ça devrait fonctionner avec virtualbox, mais il faut une installation 64 bit évidemment.
Avatar de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Concours de musique 1-bit

Message par yo_fr »

...Je peux facilement le compiler en 32bits. Pour le framework je peux rien faire!
Avatar de l’utilisateur
yo_fr
Messages : 1336
Inscription : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: Concours de musique 1-bit

Message par yo_fr »

Effectivement le bug le plus court du monde !

Là ça sonne correcte !
Octode1907.mp3.txt
(223.13 Kio) Téléchargé 104 fois
Répondre