CPC Rulez
https://cpcrulez.fr/forum/

Dumps originaux
https://cpcrulez.fr/forum/viewtopic.php?f=8&t=135
Page 53 sur 54

Auteur :  dlfrsilver [ 22 Déc 2014, 13:16 ]
Sujet du message :  Re: Dumps originaux

Megachur a écrit :
@dlfrsilver : ces derniers échanges sont très constructifs -> j'espère qu'on va pouvoir trouver comment émuler cela proprement et de façon fiable !


J'espère aussi :) J'aimerais bien que le CPC soit entièrement compris de A à Z, afin que les auteurs d'émulateurs puisse émuler comme bon leur semble :)

Citer :
Comme cette spécificité hardware ne semble pas du tout documentée, je ne suis pas très sûr que les programmeurs des loaders incriminés l'ont fait volontairement mais plutôt qu'ils ont codés comme cela et que cela à marcher !


Pas documenté pour le commun des mortels. Amstrad devait surement filer des infos "confidentielles" liées au hardware, sinon autre solution, le mec qui a pondu la protection chez gremlin était calé en électronique :)

Citer :
surtout que dans les versions suivantes de ce loader (v2), cela n'existe plus visiblement !


Il existe plusieurs type de gremlin loader, la v1, la v2 et la v2.5.

Citer :
par contre, quelles sont les différences de loader dans la catégorie "Gremlin loader v1" ???


bonne question......

Citer :
en effet, pour rappel, Mickey Mouse (UK) (1988) [Original] [TAPE].cdt et Tour De Force (UK) (1987) [Original] [TAPE].cdt se chargent sans problème eux alors qu'il sont en "Gremlin loader" (v1???) !


Oui, et skate crazy est à mon avis une révision de la v1 d'origine.

Citer :
est-ce qu'on pourrait juste se faire un récap ensemble des jeux concernés afin qu'on analyse en détail si les codes sont les mêmes et voir les différences de code asm ?


Si tu veux désassembler les loaders, vas-y, moi je suis pas calé en ASM z80.

Auteur :  Lone [ 06 Jan 2015, 22:23 ]
Sujet du message :  Re: Dumps originaux

Bonjour,

Quelques nouvelles après d'intenses recherches, plus ou moins dispersés. Et un rafraichissement de mes souvenirs des réseaux éléctriques et autres lois de Kirchoff qui doivent dater de 20 ans au bas mots...

Bref, trève de balivernes, je me suis donc reposé sur deux faits précis, ammenés par deux personnes sans qui rien n'aurait été possible (merci a eux) :

1/ L'explication parfaitement claire de Gérald sur le fonctionnement de l'éléctronique
2/ Une géniale intuition de Philippe (breitztiger), qui a pris le wav de Denis (Footballer of the year 2), l'as inversé a l'aide d'un quelconque logiciel de traitement de son, et l'a donné à manger à son 464. Résultat : cette version passe aussi. Donc, quelque soit la "polarité", le wav passe.

Mon hypothèse était donc celle de mon intuition première : Le problème vient, non pas d'un quelconque inverseur, mais du mauvais traitement du wav par les émulateurs et les outils divers et variés.

Après bien des recherches et expérimentations, j'ai finalement réussi à compiler une version qui lance les deux versions des wav de Footballer of the year. Mieux, elle lance aussi Basile, et le tout sans bricolage de polarité.

Il ne reste que Skate crazy, mais le soucis vient de 3 bits erronés dans un block vers la 4e minutes (après la protection si je ne m'abuse - a chaque fois, un "0" est pris pour un "1"). Il faut sans doute polisher un peu le truc, mais malgré tout, je pense tenir un truc intéressant.

Si vous voulez tester l'affaire (ATTENTION ! C'est une version en cours de dev, donc il est FORT PROBABLE qu'elle ne soit pas exempte de bugs !) : Voir en PJ.

Auteur :  Lone [ 07 Jan 2015, 21:11 ]
Sujet du message :  Re: Dumps originaux

Au cas ou quelqu'un saurait transformer un csw en cdt, je mets en PJ les CSW construit à partir de ma lecture des wav.

La version 1.1 tourne sur CSW. Les deux sont issus du wav fournit par Denis il y a quelques temps de cela.

Auteur :  Subaru [ 07 Jan 2015, 21:26 ]
Sujet du message :  Re: Dumps originaux

Lone a écrit :
Au cas ou quelqu'un saurait transformer un csw en cdt, je mets en PJ les CSW construit à partir de ma lecture des wav.
...


Te suffit d'utiliser "samp2cdt" pour ça. Image

Pièce jointe :
samp2cdtGUI.zip

Auteur :  dlfrsilver [ 07 Jan 2015, 21:55 ]
Sujet du message :  Re: Dumps originaux

Lone a écrit :
Au cas ou quelqu'un saurait transformer un csw en cdt, je mets en PJ les CSW construit à partir de ma lecture des wav.

La version 1.1 tourne sur CSW. Les deux sont issus du wav fournit par Denis il y a quelques temps de cela.


Quand je teste le fichier CSW v1.1 sous CPCE, ça fonctionne en direct.

Quand je convertis le fichier CSW en CDT, le fichier qui en résulte ne fonctionne pas.

Si je prends mon fichier WAV d'origine, et que je le convertis en fichier CDT, ça marche.

Auteur :  Subaru [ 07 Jan 2015, 22:31 ]
Sujet du message :  Re: Dumps originaux

dlfrsilver a écrit :
Lone a écrit :
Au cas ou quelqu'un saurait transformer un csw en cdt, je mets en PJ les CSW construit à partir de ma lecture des wav.

La version 1.1 tourne sur CSW. Les deux sont issus du wav fournit par Denis il y a quelques temps de cela.


Quand je teste le fichier CSW v1.1 sous CPCE, ça fonctionne en direct.

Quand je convertis le fichier CSW en CDT, le fichier qui en résulte ne fonctionne pas.

Si je prends mon fichier WAV d'origine, et que je le convertis en fichier CDT, ça marche.


Chuis pas sure d'avoir tout capté là. :-|

Voudrais-tu dire que samp2cdt serait "foireux" au niveau de certaines conversions ?
:suprised:


Edit: En fait non. C'est les sources csw qui sont foireuses !

Désolée. Image

Auteur :  Subaru [ 07 Jan 2015, 23:26 ]
Sujet du message :  Re: Dumps originaux

Désolée du double post mais...

J'aimerais des précisions de la part de "notre expert dump".

Pour l'instant, chuis bloquée pour terminer le dump du 6-pack vol.3. (Courroie apparement trop dead pour refaire la dernière face. Je me prends plein de read error, alors que j'en avais pas avant.) :(

Mais ayant acquis le 6-pack vol.2 en orig K7, pourrais-tu me dire le pourquoi du comment le dump de cpc-p0wer est à foutre à la benne ? -> http://www.cpc-p0wer.com/index.php?page ... s&num=3634

Ou alors, comment faire un dump "acceptable", selon toi ? (Car sinon, je t'envoie la K7 pour que tu le fasses, toi.Image Image)

Auteur :  dlfrsilver [ 08 Jan 2015, 00:37 ]
Sujet du message :  Re: Dumps originaux

Subaru a écrit :
Désolée du double post mais...

J'aimerais des précisions de la part de "notre expert dump".

Pour l'instant, chuis bloquée pour terminer le dump du 6-pack vol.3. (Courroie apparement trop dead pour refaire la dernière face. Je me prends plein de read error, alors que j'en avais pas avant.) :(


Ton lecteur de cassette est soit encrassé (ou il est en train de crever si aucune autre cassette ne passe), soit ta cassette est en train de rendre l'ame.....

Citer :
Mais ayant acquis le 6-pack vol.2 en orig K7, pourrais-tu me dire le pourquoi du comment le dump de cpc-p0wer est à foutre à la benne ? -> http://www.cpc-p0wer.com/index.php?page ... s&num=3634


C'est une affaire délicate. Kukulcan part du principe que des blocs de 264 octets au lieu de 263 c'est pas propre. Le truc c'est que ça pose pas de souci à la lecture que ce soit sur un vrai CPC 464 qu'avec un émulateur......

Citer :
Ou alors, comment faire un dump "acceptable", selon toi ? (Car sinon, je t'envoie la K7 pour que tu le fasses, toi.Image Image)


Pour faire un dump acceptable, tu mets le niveau sonore de ton lecteur de K7 qui te permet de dumper à 50%, tu utilises goldwave, tu mets le niveau sonore aussi à 50%, et tu lances l'enregistrement (en 8 bits et pas en 16 sinon je hurle :kiss: )

si ton lecteur de K7 est bon, tu dois obtenir un signal propre et correct. Si ça crache de partout, matos trop vieux.....

Sinon tu me PM et je dumpe la cassette :) si ça peut te rendre service ^^ !

Auteur :  Subaru [ 08 Jan 2015, 01:22 ]
Sujet du message :  Re: Dumps originaux

Je dumpe depuis mon 464. Et si j'ai demandé la possibilité d'obtenir des courroies, pour 464, à TotO le mois derniers, c'est qu'il yavait une raison. ^^

Sinonn, j'ai pas goldwave. je dump via cpctape, comme je l'ai déjà mentionné.

PS: C'est quoi votre truc avec "charli" Image ??? J'ai vu que TotO avait ça aussi dans son avatar.

Edit: J'ai trouvé pourquoi.

Image

Auteur :  Lone [ 08 Jan 2015, 11:40 ]
Sujet du message :  Re: Dumps originaux

@Subaru : Merci pour le sam2cdt, je ne savais pas qu'on pouvait lui donner du csw à mouliner :)

Pour rappel, les différentes transformations que l'on voit sur les cassettes :

* WAV = Signal de la cassette. On en trouve deux versions :
- Le signal original, reconnaissable (via un logiciel d'édition) a ses formes plus ou moins sinusoidales.
- Le signal "traité", généré par cdt2wav, ou bien celui samplé depuis l'entrée PPI. Il s'agit cette fois-ci d'un signal carré.

* CSW : On stocke les intervalles entre les inversions. Déduit quasi immédiatement d'un signal carré, mais le passage du signal sinusoidal au csw nécessite un peu de traitement du signal

* CDT : Signal interprété (suivant les types de blocs). On devine ou se trouve le pilote, les datas, etc, et on stocke tout ceci sous un format différent.

J'ai donc fait les tests suivants :

- Mon fichier original, Basil.Wav, a été transformé en signal filtré (mon fameux filtre passe haut à 500hz).
Je génère un "basil_filtre.wav", qui passe sur Sugarbox, mais aussi sur CPCE. On pourrait le tester sur un vrai cpc, mais cela perdrait sans doute de son sens, et le résultat n'aurait que peu d'intérêt : Le filtre passe haut serait appliqué une seconde fois...

- Ce fichier, une fois converti en CDT via samp2cdt, ne passe plus nul part. Ce qui ne peut nous faire conclure qu'une seule chose : samp2cdt n'est pas suffisament précis dans ce cas.


Pour résumer concernant Basil :

Sur Sugarbox v0.24b5 :
- Le WAV original fonctionne
- Le CDT généré par samp2cdt ne marche pas
- Le CSW 1.1 généré fonctionne
- Le CSW 2.0 généré fonctionne
- Le CDT en drb généré par Sugarbox fonctionne
- Le CDT généré par samp2cdt ne fonctionne pas.


Sur CPCE, SANS l'inversion de polarité (que l'on considère dans notre hypothèse comme inutile) :

- Le WAV original ne fonctionne pas. (il ne fonctionne qu'avec le "truc" d'inverser la polarité)
- Le WAV "filtré" fonctionne.
- Le CDT créé à partir de ce wav ne fonctionne pas non plus sur CPCE.
- Le CSW généré par Sugarbox ne fonctionne pas (mais passe la protection).
- Le CDT en drb généré par Sugarbox ne fonctionne pas

Fait supplémentaire : le wav filtre fonctionne également avec l'option de polarité...

Les conclusions que l'on peut avoir :

- La conversion wav -> cdt pose problème manifestement : on passe d'un wav qui marche partout (le wav filtré) à un fichier qui ne fonctionne plus nul part.
- La conversion vers csw aussi. En regardant le code, je fais quelques arrondits que je pourrais améliorer. Je reteste et je vous redis.
- Une fois filtré 'plus ou moins like a cpc', le signal fonctionne dans toutes les polarités.

Auteur :  dlfrsilver [ 08 Jan 2015, 19:52 ]
Sujet du message :  Re: Dumps originaux

Lone a écrit :
@Subaru : Merci pour le sam2cdt, je ne savais pas qu'on pouvait lui donner du csw à mouliner :)

Pour rappel, les différentes transformations que l'on voit sur les cassettes :

* WAV = Signal de la cassette. On en trouve deux versions :
- Le signal original, reconnaissable (via un logiciel d'édition) a ses formes plus ou moins sinusoidales.
- Le signal "traité", généré par cdt2wav, ou bien celui samplé depuis l'entrée PPI. Il s'agit cette fois-ci d'un signal carré.

* CSW : On stocke les intervalles entre les inversions. Déduit quasi immédiatement d'un signal carré, mais le passage du signal sinusoidal au csw nécessite un peu de traitement du signal

* CDT : Signal interprété (suivant les types de blocs). On devine ou se trouve le pilote, les datas, etc, et on stocke tout ceci sous un format différent.

J'ai donc fait les tests suivants :

- Mon fichier original, Basil.Wav, a été transformé en signal filtré (mon fameux filtre passe haut à 500hz).
Je génère un "basil_filtre.wav", qui passe sur Sugarbox, mais aussi sur CPCE. On pourrait le tester sur un vrai cpc, mais cela perdrait sans doute de son sens, et le résultat n'aurait que peu d'intérêt : Le filtre passe haut serait appliqué une seconde fois...

- Ce fichier, une fois converti en CDT via samp2cdt, ne passe plus nul part. Ce qui ne peut nous faire conclure qu'une seule chose : samp2cdt n'est pas suffisament précis dans ce cas.


Pour résumer concernant Basil :

Sur Sugarbox v0.24b5 :
- Le WAV original fonctionne
- Le CDT généré par samp2cdt ne marche pas
- Le CSW 1.1 généré fonctionne
- Le CSW 2.0 généré fonctionne
- Le CDT en drb généré par Sugarbox fonctionne
- Le CDT généré par samp2cdt ne fonctionne pas.


Sur CPCE, SANS l'inversion de polarité (que l'on considère dans notre hypothèse comme inutile) :

- Le WAV original ne fonctionne pas. (il ne fonctionne qu'avec le "truc" d'inverser la polarité)
- Le WAV "filtré" fonctionne.
- Le CDT créé à partir de ce wav ne fonctionne pas non plus sur CPCE.
- Le CSW généré par Sugarbox ne fonctionne pas (mais passe la protection).
- Le CDT en drb généré par Sugarbox ne fonctionne pas

Fait supplémentaire : le wav filtre fonctionne également avec l'option de polarité...

Les conclusions que l'on peut avoir :

- La conversion wav -> cdt pose problème manifestement : on passe d'un wav qui marche partout (le wav filtré) à un fichier qui ne fonctionne plus nul part.
- La conversion vers csw aussi. En regardant le code, je fais quelques arrondits que je pourrais améliorer. Je reteste et je vous redis.
- Une fois filtré 'plus ou moins like a cpc', le signal fonctionne dans toutes les polarités.


En fait,

Quand je prends mon WAV d'origine, que je le traite avec samp2cdt, ça fonctionne sous CPCE avec la polarité.
Quand je prends ton CSW 1.1 crée depuis mon WAV original sous sugarbox, et que je veux en faire un fichier CDT final sous samp2cdt, ce dernier ne marche pas.

Je vais sortir mon 464 et voir ce que ça donne.

Auteur :  Lone [ 08 Jan 2015, 21:10 ]
Sujet du message :  Re: Dumps originaux

Te bile pas, vérifier la validité du csw n'est pas forcément utile : Il n'est pas parfait...

Si tu ajoutes à ces erreurs, celles provoquées par une reconversion en wav, on obtiendra une juxtaposition d'erreur et d'approximation qui ne permettrons pas beaucoup de conclusions.

En fait, les seules conclusions qu'un test sur vrai cpc permettent de faire, c'est :
- Le wav utilisé est-il bon
- Le wav regénéré est-il bon.

Aucune conclusion fiable ne peut être faite concernant un cdt ou un csw a ce niveau...

Du coup, on peut juste dire que le wav d'origine est bon....

Auteur :  Lone [ 10 Jan 2015, 00:28 ]
Sujet du message :  Re: Dumps originaux

En améliorant encore un peu l'algotrythme de traitement, je lance (toujours) Footbaler of the year II, Basil, et presque Skate crazy (un bit m'embête dans l'ensemble des 5 premières minutes, dans une des versions de mon algo)

Je soupçonne qu'il me manque encore un petit quelque chose au niveau du traitement, mais pour le moment, je sèche... Si les spécialistes de l'éléctronique peuvent se pencher sur la chose, notamment au niveau du niveau du signal de sortie de la cassette (je le soupconne très faible vu la dose d'amplification que l'on a derrière, mais je ne trouve pas d'info dessus). Ou encore la présence d'un quelconque filtre passe bas pour supprimer le bruit ?

Auteur :  hERMOL [ 10 Jan 2015, 09:07 ]
Sujet du message :  Re: Dumps originaux

En relation avec votre problème d’inversion de polarité , je viens tombé sur un magnéto qui possède justement une fonction inversion de phase/polarité.

Image

Auteur :  Gerald [ 10 Jan 2015, 10:04 ]
Sujet du message :  Re: Dumps originaux

Lone a écrit :
Je soupçonne qu'il me manque encore un petit quelque chose au niveau du traitement, mais pour le moment, je sèche... Si les spécialistes de l'éléctronique peuvent se pencher sur la chose, notamment au niveau du niveau du signal de sortie de la cassette (je le soupconne très faible vu la dose d'amplification que l'on a derrière, mais je ne trouve pas d'info dessus).
Le mieux serait de faire des mesures sur le CPC lui meme, au moins sur les deux derniers etages. Je verais ca lorsque j'aurais un CPC sous la main.
Lone a écrit :
Ou encore la présence d'un quelconque filtre passe bas pour supprimer le bruit ?
Il n'y a pas de filtre passe bas expicite, mais bien un filtrage passe bas implicite. Ce filtrage est dut aux limites des composants (transistor/ampli). Il faudrais eplucher les datasheet des amplis ou faire des simulations (et donc avoir un modele). Mais on peut aussi fixer une limite arbitraire de l'ordre de 5KHz.

Page 53 sur 54 Le fuseau horaire est UTC+1 heure
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/