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

!!! SORTIE PUBLIQUE DE CSW2CDT CE WEEK-END !!!
https://cpcrulez.fr/forum/viewtopic.php?f=7&t=5918
Page 1 sur 1

Auteur :  dlfrsilver [ 31 Mars 2017, 18:40 ]
Sujet du message :  !!! SORTIE PUBLIQUE DE CSW2CDT CE WEEK-END !!!

Bonjour,

Après discussion avec César, et au vu du nombre de personnes demandeuses d'avoir accès au nouvel outil de traitement de cassettes, je reviendrais poster ici l'adresse du mini-site que César va mettre en place pour la sortie du logiciel.

Il est à noter qu'en dehors de systèmes d'encodage à problème (3 en tout), tout les encodages connus sont supportés, y compris l'intégralité des speedlocks cassettes.

Je m'occuperais personnellement du support sur le logiciel. Toute question, problème non lié à la programmation de l'outil devra m'être remonté sur mon adresse hotmail.fr ou bien mon adresse gmail.

J'y répondrais en journée ou en soirée, suivant dispo.

A demain (ou dimanche dans le pire des cas).

Denis

Auteur :  dlfrsilver [ 01 Avr 2017, 18:27 ]
Sujet du message :  Re: !!! SORTIE PUBLIQUE DE CSW2CDT CE WEEK-END !!!

http://cngsoft.no-ip.org/csw2cdt.htm

La suite d'outil CSW2CDT est un groupe de trois programmes dont le but principal est l'encodage de cassettes informatique utilisées dans le sinclair ZX spectrum et dans la famille Amstrad CPC during l'époque d'or des jeux vidéos européens (1982-1994), lorsque les cassettes étaient la méthode de distribution la plus populaire pour les logiciels commerciaux :

CSW0 est un programme en ligne de commande qui lit les sample audio WAV et écrit des samples compressés CSW V1.

CSW2CDT est un programme en ligne de commande qui lit des samples compressés CSW1 V1 et écrit des images cassette CDT/TZX.

CSW2CDT-UI est un programme piloté par boite de dialogue dont l'interface utilisateur simplifie l'utilisation des deux premiers outils.

La procédure générale est divisée en plusieurs étapes:

La cassette doit être digitalisée en WAV audio non compressé dont la qualité doit être d'au moins 22050 Hz. Le Mono et 8 bits sont préférés à la stéréo et aux 16 bits.

Le WAV resultant doit être injecté dans CSW0, qui mesurera les dents/vagues carrées et produira un fichier CSW V1 file. des flags optionnels peuvent être utilisés pour effectuer un filtrage band-pass sur le signal.

Ce fichier CSW V1 sera alors passé à CSW2CDT, dont la tâche est de scanner les blocks de données qui sont à l'intérieur et de construire une image CDT/TZX. A nouveau, des flags optionnels permettent un traitement de plus en plus complexe des contenus.

L'image CDT/TZX a en dernier lieu besoin d'être testée dans un émulateur capable de le rejouer, par exemple CPCE ou Winape, mais aussi Caprice Forever ou Sugarbox.

CSW2CDT-UI facilite la procédure parce que son interface utilisateur est plus confortable (mais moins flexible) que la ligne de commande: choisir le sample, générer le fichier CSW V1, et encoder le fichier CDT/TZX peut être effectué en poussant des boutons et en choisissant des options. Elle permet également la procédure inverse, c'est à dire de rejouer les images CDT/TZX en fichier CSW V1 et en fichier WAV audio avec quelques clics de souris.

------------------------------------------------

Voilà, l'outil est sorti après 2 années de développement et des tests avec son manuel en français et en anglais.

Je m'occupe du support du soft, contactez-moi ici ou via ma boite mail monpseudo@gmail.com

voilà, enjoy, et faites des retours !!!

Auteur :  dlfrsilver [ 02 Avr 2017, 20:18 ]
Sujet du message :  Re: !!! SORTIE PUBLIQUE DE CSW2CDT CE WEEK-END !!!

Suite aux premiers retours que l'on m'a fait, je tiens à préciser ceci :

* LISEZ LE PUTAIN DE MANUEL ! *

J'ai eu des retours de gens qui ont essayé l'outil sans prendre la peine de lire son manuel d'utilisation.

Tout est marqué dedans, les informations les plus importantes pour filtrer les fichiers WAV entre autre.....

Dans ma grande mansuétude, et pour les handicapés de la ligne de commande voilà un petit mode action rapide :

CSW0 -f 300 2700 NOMDUFICHIER.WAV NOMDUFICHIER.CSW (note -f 300 2700 n'est qu'un exemple !)

CSW2CDT --NOMDELENCODEUR NOMDUFICHIER.CSW NOMDUFICHIER.CDT

Voilà pour le filrage et la génération d'un CDT.

Je déconseille personnellement l'utilisation de l'outil en ligne de commande, pour la simple et bonne raison que celle-ci n'apporte aucun visuel sur ce qui est fait, et ça prend plus de temps par dessus le marche, alors que l'interface utilisateur permet de tout faire sur un même écran, mettre les données de filtrage, choisir son encodeur, mettre un flag particulier (-5 par exemple qui permet d'obtenir des blocs propres quand les blocs font 264 (ou plus) octets au lieu 263, et ainsi de suite).

* NOTE IMPORTANTE *

Ne contactez ni César ni moi même pour demander un affinage du décodage. On a passé 2 années (et demi) à tester les routines sur un millier de cassette, et il s'est avéré qu'un décodage trop "fin" casse le scanner qui passe en revue les blocs, la frontière devenant trop mince entre ce qui est de la donnée et du bruit.

Donc si un dump en ayant essayé plusieurs commandes de filtrage différentes (j'en ai mis suffisamment dans le manuel !), ne passe toujours pas l'encodage, ne nous contactez pas, c'est que vos paramètres d'enregistrement voir de réglage de volume sur votre lecteur de cassette sont incorrects !

Donc merci par avance de réviser vos paramètres ! Il est du ressort des utilisateurs de s'assurer que leurs réglages sont bons. Nous n'irons pas casser le programme parce que vous avez la flemme. Sortez-vous les doigts, et en contrepartie on vous aidera.

Auteur :  dlfrsilver [ 03 Avr 2017, 00:24 ]
Sujet du message :  Re: !!! SORTIE PUBLIQUE DE CSW2CDT CE WEEK-END !!!

Par rapport aux nouveaux retours que j'ai pu avoir concernant CSW2CDT, j'aimerais apporter quelques éclaircissements concernant CSW2CDT autant par rapport aux outils faisant "à peu près" la même chose.

Question 1 : Qu'est-ce qu'apporte CSW2CDT de plus par rapport à ses hum... concurrents ?

Réponse : C'est de loin l'outil le plus complet, le plus testé et le stable, disposant du plus d'options, et surtout il est doté d'une mécanique qui respecte les bases les plus élémentaires autant d'un point de vue des données, que du point de vue des constantes que sont les pilot/tone/Bit0/Bit1/Pulses, etc....

Samp2cdt :

* Encode des timings qui n'existent pas, et qui ne correspondent pas à ce que contient la bande magnétique enregistrée sur la cassette.

C'est la première raison, et elle est suffisante pour ne pas ou plus s'en servir. Ensuite, il faut savoir que chaque cassette commerciale a ses propres timings.

* Encode des constantes/timings qui sont figées. Hors chaque cassette a les sienne propre.

En encodant les CDTs avec des constantes fixes, on ne peut pas avoir des CDTs propres, ce qui rend cet outil impropre à la préservation.

Par ailleurs, comme les constantes sont merdeuses, et comme en plus les anciens outils de réversion sont buggés, les résultats de chaque réversion en WAV sont totalement aléatoires, et ne fonctionnent pas sur un vrai CPC.

* Le support des speedlocks dans Samp2cdt est une cruelle plaisanterie. (plein d'autres choses aussi, mais les speedlocks sont le cas le plus flagrant).

En gros comme les timings/constantes sont fausses dès le départ, et qu'en plus l'outil ne sait pas encoder les speedlock correctement puisqu'il ne reconnait pas leur mécanique interne, non seulement la réversion en WAV s'avèrera totalement aléatoire et bien souvent non fontionnelle, mais en plus certains speedlock ne fonctionneront carrément.

* n'utilise pas la bonne méthode pour déterminer la version du speedlock concerné

En effet, contrairement à ce qu'on avait en information il y a des années en arrière, il s'avère qu'en fait le Dr Aubrey-Jones a programmé les versions z80 du speedlock parallèlement. Il a d'abord commencé sur ZX spectrum, tout en alternant avec l'Amstrad CPC. Ce qui fait que par exemple, le speedlock v1 n'existe pas sur amstrad CPC.

On a donc :

Sur Zx Spectrum les speedlock v0,1,3,5,7, et sur Amstrad CPC les speedlock v2,4,6, soit seulement 3 révisions différentes.

le numéro de version qu'on trouve dans un jeu protégé par speedlock n'apporte aucune information valable. En effet, un speedlock v5.5 cassette peut avoir le même fonctionnement interne et encodage qu'un speedlock v2 par exemple.

Puisque le CPC est notre machine de prédilection, voyons comment déterminer suivant le jeu le type de speedlock exact utilisé :

Speedlock V.2 CPC

Titres :
---------
1985: Highway Encounter;
1986: Alien Highway, Batman, Donkey Kong, Mercenary;
1987: Arkanoid, Head over Heels

Type de pilote :
--------------------
complexe : quatre short tones différents (cinq dans Mercenary), séparateurs à 2-bordures et SYNC à 2-Bordures

Vitesse :
-----------
Environ 2000 Bauds

Longueur de l'ID :
----------------------
5

Flux d'octets :
-----------------
simple: pas de séparateurs internes

Speedlock V.4 CPC

Titres :
---------
1986: Tarzan;
1987: Combat School, Gryzor, Renegade, Wizball;
1988: Guerrilla War, Renegade II: Target Renegade

Type de pilote :
-------------------
complexe: quatre short tones différents, séparateurs à 2-bordures et SYNC à 2-bordures

Vitesse :
-----------
environ 2000

Longueur de l'ID :
----------------------
5

Flux d'octets :
-----------------
complexe: séparateurs internes à 42-bordures

Speedlock V.6 CPC

Titres :
---------
1988: Arkanoid II: Revenge of Doh, Operation Wolf;

De manière générale, toutes les cassettes Speedlock sorties sur CPC après 1988

Type de pilote :
-------------------
complexe: quatre short tones différents, séparateurs à 2-bordures et SYNC à 2-bordures

Vitesse :
-----------
environ 1600 bauds

Longueur de l'ID :
----------------------
5

Flux d'octets :
-----------------
complexe: séparateurs internes à 42-bordures


Voilà ce que Samp2cdt et Ubercassette sont incapables de gérer et d'encoder correctement. chacun de ces 2 outils gèrent soit de manière générique (la pire des méthodes), soit en utilisant des constantes fixes.

La dernière différence tient au fait que Samp2cdt principalement gère des protections comme la protection Cassys comme une protection à part entière, alors qu'elle n'est en fait qu'une sous branche des blocs Amstrad CPC custom (constantes non standard). Les bits du trailer sont en général au nombre de 8 sur la plupart des cassettes, hors sur la protection Cassys, les bits du trailer doivent être au nombre de 16. A noter également même si c'est un peu hors sujet que la protection gremlin 1 qui équipe Basil détective privé requiert que les blocs de données n'aient que 2 bit dans la partie trailer.

Question 2) Quels sont les nouveaux encodages que permet CSW2CDT, et quelle différence avec Samp2cdt ?

Réponse : Samp2cdt ne sait pas différencier la protection Alkatraz de la protection Hexagon, sachant que la première est la grande soeur de la seconde.

Ces deux protections tout en étant très stables, n'ont pas de CRC externe pour les données. En effet, le CRC est enterré sous l'encryptage, de ce fait il est impossible de savoir si la somme des données est bonne sans décrypter totalement le logiciel concerné. (la version disquette de la protection hexagon utilise d'ailleurs le même principe point de vue CRC).

Pour cette raison, il est nécessaire de faire un bon dump, et ensuite de le poker pour dérouler le jeu en entier afin de vérifier que tout les blocs soient bons.

Question 3) Mais et Ubercassette qu'est-ce qu'il vaut vraiment ?

Réponse : Ben comment dire euh..... Bon d'accord, il a un bon point pour lui : il fournit des logs conséquents. Mais son IA n'est clairement pas au niveau de celle de CSW2CDT, et il se prend les pieds dans le tapis dès qu'on sort des système d'encodage standard. Et ce n'est pas juste limité au CPC, c'est aussi valable pour le zx spectrum ou encore les autres plateformes qu'il supporte.

Par essence, l'aspect générique de cet outil va à l'encontre de ce qui constitue les systèmes de protection, pour qu'une d'elles soit supportée, il faut programmer dans l'outil déjà de quelle façon la reconnaitre, et puis ensuite comprendre très exactement son fonctionnement pour pouvoir l'encoder.

Tout ce qui est custom étant l'opposé absolu du générique.....

Auteur :  Megachur [ 03 Avr 2017, 06:04 ]
Sujet du message :  Re: !!! SORTIE PUBLIQUE DE CSW2CDT CE WEEK-END !!!

Salut !

J'ai trois questions au sujet de ce nouvel outil :

1) Va-t-on avoir le support des formats 'exotiques' comme les jeux MBC ?
2) Pourquoi avoir fait un outil qui détecte un pattern connu "Known methods" plutôt qu'un outil qui analyse le signal ? Cela ne semble pas très différents des autres outils que tu as décrit sur ce point... à la justesse prêt de l'encodage des méthodes connues... bien sûr, où je pense que le travail de César est de très grande qualité.
3) Comment sont fait les tests sur un vrai CPC pour savoir si l'encodage est bon ? la doc parle uniquement de test sur émulateurs type WinAPE et CPCE !

Bravo encore pour ce superbe boulot qui j'espère permettra une meilleure justesse dans la préservation des waves des K7 CPCiennes :JC_doubleup: :laposte: :thankyou: :bravo: !

Auteur :  dlfrsilver [ 03 Avr 2017, 09:39 ]
Sujet du message :  Re: !!! SORTIE PUBLIQUE DE CSW2CDT CE WEEK-END !!!

Megachur a écrit :
Salut !

J'ai trois questions au sujet de ce nouvel outil :

1) Va-t-on avoir le support des formats 'exotiques' comme les jeux MBC ?


réponse de César : 1.- MBC est effectivement parmi les formats experimentaux; et en toute honnêteté, il n'est utilisé que pour 2 jeux, une approche ad-hoc pourrait être meilleure.

Citer :
2) Pourquoi avoir fait un outil qui détecte un pattern connu "Known methods" plutôt qu'un outil qui analyse le signal ? Cela ne semble pas très différents des autres outils que tu as décrit sur ce point... à la justesse prêt de l'encodage des méthodes connues... bien sûr, où je pense que le travail de César est de très grande qualité.


réponse de César : 2.- Les encodages peuvent être trop différents et il n'y a aucun moyen de créer un système vraiment générique qui puisse dire de façon magique ce qui est signaux et ce qui est du bruit.

Je complète en disant ceci : il est impossible compte tenu de la diversité des encodages utilisés sur les cassettes d'utiliser un système générique. ça ne peut pas fonctionner.

Le problème est le même avec les disquettes, il est impossible d'utiliser un système générique pour préserver les disquettes. chaque format doit être analysé et compris, ceci afin d'éviter toute erreur qui ne se révelerait pas à l'oeil. D'autant que le but d'une protection c'est quand même de fourvoyer la personne qui cherche à la copier ou à la répliquer.

Citer :
3) Comment sont fait les tests sur un vrai CPC pour savoir si l'encodage est bon ? la doc parle uniquement de test sur émulateurs type WinAPE et CPCE !


réponse de César : 3.- J'ai simplement mentionné les émulateurs pour permettre de tester facilement, quiconque voulant utiliser un vrai CPC peut le faire.

Les différentes protections ont toutes été désossées et reprises de zéro pour pouvoir être supportées correctement. Contrairement à tout les autres outils existants, CSW2CDT est le seul qui procède à l'extraction et l'injection des constantes de la cassette d'origine dans le CDT final.

Je te conseille de lire le manuel, tout est expliqué dedans en détail.

CSW2CDT a été testé, affiné et ajusté par rapport à 1000 dump cassette originaux, et je me suis chargé personnellement de tester la réversion de chaque CDT généré au format WAV sur mon 464 et 464+. J'ai pu entre autre comparer à l'oreille la justesse du son entre le dump original et le WAV master regénéré.

De plus, j'ai mis dans la nature des archives de WAV master regénérés à disposition de personnes anglaises qui cherchaient des jeux en WAV ultra léger sur facebook.

je leur ai demandé de me faire un retour, afin de savoir si il y avait le moindre problème. Tous m'ont fait des retours 100% bon, tout les logiciels réversés se chargent exactement comme une cassette originale sans échec, y compris les nouveaux formats supportés.

Nous avons passé 2 années à mettre au point ce logiciel, de 2015 à Mars 2017, et ce n'est pas pour rien. Mais voilà, l'attente et le travail de longue haleine paient !

C'est le premier outil pour l'Amstrad CPC qui ne soit pas buggé et incomplet dans son fonctionnement, ni générique.

Le seul principal "défaut" façon de parler de la suite d'outil de CSW2CDT, est sa sensibilité au bruit des WAV dumpés. Je m'explique :

On s'est aperçu avec César qu'il fallait faire un choix entre la distinction à faire entre ce qui est de la donnée, et ce qui est du bruit.

Je vais être honnête, et César ne me contredira pas : nombre de personnes ne savent pas paramétrer correctement leur système pour dumper les cassettes.

Y compris nos amis espagnols qui par exemple, utilisent le port d'entrée microphone de leur matériel pour enregister des cassettes, alors qu'on sait que cette prise n'est absolument pas faite pour ça. Samp2cdt le permettait, cette période est révolue !

Samp2cdt ou d'autres vieux outils étaient plus permissif sur le bruit, mais ne font pas de détection de format, et ne sont absolument pas flexible.

Maintenant pour faire de bons dumps, il va falloir paramétrer correctement son matos et l'outil d'enregistrement. CSW2CDT sanctionnera systèmatiquement les dumps pourris.

Mais j'ai vu d'autres dumps ou le niveau de bruit même en utilisant le port d'entrée Line-in (le seul port fait pour ça).

Citer :
Bravo encore pour ce superbe boulot qui j'espère permettra une meilleure justesse dans la préservation des waves des K7 CPCiennes :JC_doubleup: :laposte: :thankyou: :bravo: !


Merci, ça fait plaisir, on se dit qu'on a pas travaillé 2 ans pour rien :)

Auteur :  hERMOL [ 14 Avr 2017, 22:57 ]
Sujet du message :  Re: !!! SORTIE PUBLIQUE DE CSW2CDT CE WEEK-END !!!

CNGSOFT vient de mettre en ligne un nouveau CSW2CDT
Citer :
20170409: third public version: improved pilot and SYNC detection, added Spectrum version of Hexagon encoding.

Auteur :  hERMOL [ 21 Avr 2017, 04:24 ]
Sujet du message :  Re: !!! SORTIE PUBLIQUE DE CSW2CDT CE WEEK-END !!!

Citer :
20170419: fourth public version: antivirus gave bogus warnings about CSW2CDT-UI.EXE, so it's no longer trimmed with STRIP.

url: http://cngsoft.no-ip.org/csw2cdt.htm

Auteur :  dlfrsilver [ 02 Mai 2017, 08:19 ]
Sujet du message :  Re: !!! SORTIE PUBLIQUE DE CSW2CDT CE WEEK-END !!!

Une petite update qui intéressera surement :

via l'interface utilisateur, quand vous choisissez le commutateur pour un encodage particulier, ajoutez dans le masque de saisie en bas de l'interface -t 80 -5 et cliquez sur 'encode'.

cette commande permet de passer les cassettes les plus sales apparemment de façon fluide d'après un retour qu'on a eu avec césar :)

testez, et dites-moi ce que ça donne chez vous :)

Auteur :  Princesse Mariana [ 04 Mars 2024, 08:42 ]
Sujet du message :  Re: !!! SORTIE PUBLIQUE DE CSW2CDT CE WEEK-END !!!

Citer :
20240224: first public version: The list of double-hyphen encodings is "amstrad", "alkatraz", "bleepload1", "bleepload2", "carsoncity", "cassys", "ehservices", "frankbruno", "gremlin1", "gremlin2", "hexagon", "kansas", "keytone", "maubeuge", "microkey", "operasoft", "poliload", "puffyssaga", "ricochet", "spectrum", "specvar0", "specvar1", "specvar2", "speedlock0", "speedlock1", "speedlock2", "speedlock3", "speedlock4", "speedlock5", "speedlock6", "speedlock7", "unilode" and "zydroload"..

url/src: http://cngsoft.no-ip.org/csw2cdt.htm ;linked:
cpcrulez: https://cpcrulez.fr/emulateurs_UTIL-CDT-CSW2CDT.htm

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