Fichiers images de cassettes au format .lep

Tout ce qui concerne le logiciel original et sa sauvegarde avec entre autre la régénération des disquettes ou autres supports physiques.

Modérateurs : Carl, Papy.G, fneck

Daniel
Messages : 10695
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Fichiers images de cassettes au format .lep

Message par Daniel » 11 juin 2017 17:43

Non, mais ça serait facile à faire en partant des spécifications du fichier .lep

Voici un petit bout de code pour transformer le fichier .lep en .wav :

Code : Tout sélectionner

FILE *fwav;      //fichier .wav
FILE *flep;      //fichier .lep

//Conversion du fichier .lep en .wav //////////////////////////////////////////
void Makewav()
{
 int i, imax;
 int octet, sample;
 Display("");
 //ouverture du fichier .lep
 flep = fopen(inputfilename, "rb");
 if(flep == NULL)
 {
  Display("Erreur d'ouverture du fichier .lep");
  Display("Conversion abandonnée sur erreur.");
  return;
 }
 //controle de non existence du fichier .wav
 strcpy(outputfilename, inputfilename);
 for(i = strlen(outputfilename); i > 0; i--)
  if(outputfilename[i] == '.') {outputfilename[i] = 0; break;}
 strcat(outputfilename, ".wav");
 if((fwav = fopen(outputfilename, "rb")) != NULL)
 if(Prompt(1) != 0)
 {
  Display("Conversion abandonnée par l'utilisateur.");
  return;
 }
 if(fwav != NULL) fclose(fwav);
 //ouverture du fichier .lep
 if((fwav = fopen(outputfilename, "wb+")) == NULL)
 {
  Display("Erreur d'ouverture du fichier .wav");
  Display("Conversion abandonnée sur erreur.");
  return;
 }
 //conversion du fichier .lep
 Display("Debut de la conversion");
 Writewavheader();
 sample = 232;
 while((octet = fgetc(flep)) != EOF)
 {
  if(octet == 0) imax = 127;
  else
  {
   if(octet < 128) {sample = 232; imax = octet;}
   if(octet > 127) {sample = 24; imax = 256 - octet;}
  }
  imax *= UNITE * 441;  //nombre d'echantillons * 10000
  imax += 5000;         //pour l'arrondi a la valeur la plus proche
  imax /= 10000;        //nombre d'echantillons
  for(i = 0; i < imax; i++) fputc(sample, fwav);
 }
 //mise a jour de l'entete du fichier wav
 i = ftell(fwav) - 8;
 sprintf(string, "Longueur du fichier .wav : %i octets", i);
 Display(string);
 fseek(fwav, 4, SEEK_SET);
 fwrite (&i, 4, 1, fwav);
 i -= 37;
 fseek(fwav, 40, SEEK_SET);
 fwrite (&i, 4, 1, fwav);

 //affichage d'un message de fin
 Display("");
 Display("Conversion terminée sans erreur.");
}
Et la fonction de création de l'entête du fichier .wav :

Code : Tout sélectionner

// Ecriture de l'en-tete du fichier .wav///////////////////////////////////////
void Writewavheader()
{
 int i;
 char entete[44] =  //44100 Hz
 {0x52,0x49,0x46,0x46,0x00,0x00,0x00,0x00,0x57,0x41,0x56,0x45,0x66,0x6d,0x74,
  0x20,0x10,0x00,0x00,0x00,0x01,0x00,0x01,0x00,0x44,0xac,0x00,0x00,0x44,0xac,
  0x00,0x00,0x01,0x00,0x08,0x00,0x64,0x61,0x74,0x61,0x00,0x00,0x00,0x00};
 for(i = 0; i < sizeof(entete); i++) fputc(entete[i], fwav);
}
Daniel
L'obstacle augmente mon ardeur.

Avatar du membre
Falkor
Messages : 634
Enregistré le : 28 juin 2010 12:09
Localisation : Cluny, Saône et Loire

Re: Fichiers images de cassettes au format .lep

Message par Falkor » 12 juin 2017 08:00

Super merci ! Je prépare et je diffuse un petit utilitaire.

Daniel
Messages : 10695
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Fichiers images de cassettes au format .lep

Message par Daniel » 12 juin 2017 09:20

Dans le code il faut évidemment ajouter la déclaration et l'initialisation des noms de fichiers, et la fonction Display(char *).
Et surtout il manque cette définition :

Code : Tout sélectionner

#define UNITE 50    //unite de la duree en microsecondes
Daniel
L'obstacle augmente mon ardeur.

Avatar du membre
Falkor
Messages : 634
Enregistré le : 28 juin 2010 12:09
Localisation : Cluny, Saône et Loire

Re: Fichiers images de cassettes au format .lep

Message par Falkor » 12 juin 2017 12:12

Ok. Et "Prompt()" c'est quoi ?

Daniel
Messages : 10695
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Fichiers images de cassettes au format .lep

Message par Daniel » 12 juin 2017 22:01

La fonction Prompt() affiche un message pour signaler que le fichier à créer existe déjà. L'utilisateur peut répondre "Abandonner" ou "Continuer". Ce n'est pas très important, on peut systématiquement écraser le fichier s'il existe.
Daniel
L'obstacle augmente mon ardeur.

Avatar du membre
Carl
Modérateur
Messages : 10217
Enregistré le : 08 avr. 2007 13:21
Localisation : http://www.doledujura.fr
Contact :

Re: Fichiers images de cassettes au format .lep

Message par Carl » 12 juin 2017 23:00

la solution Arduino SDLEP est supérieur au Wav PC car dans un cas le remote est géré et pas dans l'autre...et je peux dire que la gestion remote est fort appréciable...voir indispensable.

Carl

Avatar du membre
Xavier_AL
Messages : 311
Enregistré le : 06 déc. 2017 20:30

Fichiers images de cassettes au format .lep

Message par Xavier_AL » 17 janv. 2018 20:15

Bonjour à tous,

Juste une question, existe-t-il un utilitaire pour restituer un wav à partir d'un fichier LEP ?
Je dois tester un fichier Zx81 en "fast-load", et le LEP me semble corrompu.

Ce fichier:
SNAKE.FL.zip
Fast-load ZX81 OTLA
(11.34 Kio) Téléchargé 24 fois
Merci d'avance.
Modifié en dernier par Xavier_AL le 19 janv. 2018 20:46, modifié 1 fois.

Avatar du membre
Falkor
Messages : 634
Enregistré le : 28 juin 2010 12:09
Localisation : Cluny, Saône et Loire

Re: SDLEP-READER - Le pcb...!

Message par Falkor » 18 janv. 2018 07:52

Xavier_AL a écrit :
17 janv. 2018 20:15
Juste une question, existe-t-il un utilitaire pour restituer un wav à partir d'un fichier LEP ?
Daniel m'avait donné un code permettant de le faire que je n'ai jamais finalisé (en terme d'interface).

Donne moi le LEP original et ton mail en MP, je t'envoie le fichier converti.

Avatar du membre
Xavier_AL
Messages : 311
Enregistré le : 06 déc. 2017 20:30

Fichiers images de cassettes au format .lep

Message par Xavier_AL » 18 janv. 2018 22:00

Salut Falkor,

L'objectif non avoué dans le message précédent était de créer un utilitaire en VB pour faire des conversions de fichiers "P" en fichiers "LEP"... pour simplifier et démocratiser l'utilisation du lecteur de Daniel... au moins pour cette machine... et aussi pour Carl, qui doit convertir tous les programmes ZX81 en wav avant de les convertir.
Donne moi le LEP original et ton mail en MP, je t'envoie le fichier converti.
Merci!
Mais vu que tu es un pro du VB, il serai plus simple pour toi que je t'envoie mes sources.
... ou que j'inclus le convertisseur LEP vers wav à mon outil.
:mrgreen:
... ou à ZxSpectape directement.

Pour le moment, tu peux télécharger le wav zippé dans le message précédent (obtenu dans le VB81 xur avec le mode d'enregistrement LOAD"*.FL").

Le boot-strap en mode normal fonctionne, mais c'est la partie "treeler" qui semble trop rapide pour le pitch de 0,2 ms des fichiers LEP...
Je te tiens au courant.
Xav.
Modifié en dernier par Xavier_AL le 19 janv. 2018 20:46, modifié 1 fois.

Avatar du membre
Falkor
Messages : 634
Enregistré le : 28 juin 2010 12:09
Localisation : Cluny, Saône et Loire

Re: SDLEP-READER - Le pcb...!

Message par Falkor » 19 janv. 2018 07:56

Heuuu.... J'ai dû mal à te suivre... :?
Xavier_AL a écrit :
18 janv. 2018 22:00
Juste une question, existe-t-il un utilitaire pour restituer un wav à partir d'un fichier LEP ?
Xavier_AL a écrit :
18 janv. 2018 22:00
Pour le moment, tu peux télécharger le wav zippé dans le message précédent (obtenu dans le VB81 xur avec le mode d'enregistrement LOAD"*.FL").
Tu me parles de convertir un LEP en WAV, puis tu parles de fichiers au format "P", puis tu proposes de télécharger un fichier WAV pour faire une conversion....?

Le "P", c'est un format d'enregistrement de cassettes pour le ZX81 ?

Les sources (en C) d'un convertisseur LEP->WAV m'ont été données par Daniel ici. J'ai juste commencé (mais pas terminé) la création d'une petite interface graphique.

Avatar du membre
Xavier_AL
Messages : 311
Enregistré le : 06 déc. 2017 20:30

Fichiers images de cassettes au format .lep

Message par Xavier_AL » 19 janv. 2018 10:03

Salut à tous,

Oui, pardon Falkor.

Ce message est placé dans un fil de discutions "hardware" et sa place serai plus à sa place dans le fil cité précédemment!
:oops:

@Fabien, peux-tu, s'il te plaie, déplacer ce groupe de messages vers le fil :
Fichiers images de cassettes au format .lep
Plus approprié pour des outils logiciels à propos de ce format.

Merci pour le déplacement de messages...
Tu me parles de convertir un LEP en WAV, puis tu parles de fichiers au format "P",
oui.
puis tu proposes de télécharger un fichier WAV pour faire une conversion....?
oui.
Le "P", c'est un format d'enregistrement de cassettes pour le ZX81 ?
oui.

Mais je ne savais pas que tu travaillais sur cet outil spécifique, désolé.
Je vais donc suspendre le projet. (http://dskcenter.free.fr/P2LEP/P2LEP.zip)

Pour info sur le projet:
Les programmes compilés sur VB5 et VB6, font appel à des DLL système indispensable à son bon fonctionnement.
Ces DLL en version 5 et 6, ne sont pas compatibles mais les OCX et autres fichiers de librairie objets le sont.
Il faut donc installer le kit de DLL présent sur la page Vb81 Xur ou sur http://dskcenter.free.fr.
Les ressources sont en VB5, mais sont compatible avec le VB6, mais pas forcement avec le VB.NET



Merci Falkor.
Modifié en dernier par Xavier_AL le 19 janv. 2018 21:08, modifié 4 fois.

Avatar du membre
Falkor
Messages : 634
Enregistré le : 28 juin 2010 12:09
Localisation : Cluny, Saône et Loire

Re: Fichiers images de cassettes au format .lep

Message par Falkor » 19 janv. 2018 10:27

Ahh ok toi tu voudrais convertir direct le "P" en LEP....

Tu as les specs du format ?

Avatar du membre
Carl
Modérateur
Messages : 10217
Enregistré le : 08 avr. 2007 13:21
Localisation : http://www.doledujura.fr
Contact :

Re: Fichiers images de cassettes au format .lep

Message par Carl » 19 janv. 2018 12:03

un outil qui permettrait de passer du format P vers LEP serait une bonne chose... :wink:
de mémoire le format P est également celui du Jupiter Ace...

Carl

Avatar du membre
Xavier_AL
Messages : 311
Enregistré le : 06 déc. 2017 20:30

Fichiers images de cassettes au format .lep

Message par Xavier_AL » 19 janv. 2018 20:40

Falkor a écrit :
19 janv. 2018 10:27
Ahh ok toi tu voudrais convertir direct le "P" en LEP....
Tu as les specs du format ?
Salut à tous,

@Falkor: Maintenant, oui! Merci pour la réorientation de ce fil. Mais, en regardant le code de Daniel, je suis parti sur une mauvaise piste... et le temps de conversion va être trop long en VB, il faut donc que j'optimise le code.

@Carl: Oui, dans le principe, c'est le même type de capture mémoire... sauf qu'en lieu et place du Basic, nous avons du Forth. Mais l'encodage 4/9 est le même.
Donc, il pourra servir pour les Jupiter Ace, le ZX80, les TS1000/1500, les Lambda 8300, les Power 3000, les Ringo, les TK85 et les ZX81.

Les fichiers sont effectivement au format "*.P", mais aussi "*.81".
Le format "P" et "81" sont identiques, mais le format "81" contient le nom du programme donné par le SAVE, alors que sur le format "P", le nom n'est pas sauvegardé, mais est vide.

Dans tous les cas, seul le protocole de sauvegarde commun à ces machines importe (4 beeps pour le bit "0" et 9 pour le bit "1").
Le contenu importe peu pour la retranscription des données...

Avatar du membre
Xavier_AL
Messages : 311
Enregistré le : 06 déc. 2017 20:30

Re: Fichiers images de cassettes au format .lep

Message par Xavier_AL » 20 janv. 2018 06:25

Salut,

C'est bon pour moi, enfin... pour le ZX81.
http://dskcenter.free.fr/P2LEP/

Image

(Reste la conversion des fichiers "P" vers les "LEP" en fast-load...)

Répondre