Rat Connection (F) (1987) (464 only) (Basic v1.0) [Original] [TAPE].cdt : reset après le message votre programme se charge !
Rat Connection (F) (1987) (464 only) (Basic v1.0) [Original] [TAPE]-BLOC11.cdt : idem -> reset après le message votre programme se charge !
En CDT : on se retrouve donc avec la même protection qui marche dans le cas de Marmelade mais pas dans celui de Rat Connection ! Alors que les deux waves fonctionnent sans pb !
Rat Connection (F) (1987) (464 only) (Basic v1.0) [Original] [TAPE].cdt : reset après le message votre programme se charge !
Rat Connection (F) (1987) (464 only) (Basic v1.0) [Original] [TAPE]-BLOC11.cdt : idem -> reset après le message votre programme se charge !
C'est normal, vous avez un problème avec le support des pauses dans vos émulateurs !
Les deux possibilités pour les pauses :
1) BLOC 11 : défini une pause d'une durée déterminée XXXXXms
2) Les BLOCs DATA peuvent avoir une pause d'une durée déterminée tout à leur fin !
C'est ce cas numéro 2 que vous ne supportez pas correctement. C'est pour ça que la protection reset.
J'ai expliqué ça 2 pages en arrière.
Explication technique : -----------------------
Les BLOCs DATA peuvent avoir une pause d'une durée déterminée tout à leur fin !
Comme ce n'est pas supporté, c'est comme si y avait 0ms en taille de pause.
La pause après les blocs du loader servent de 'timer' (durée nécessaire au décryptage). si la pause est trop courte ou pas supportée, le décryptage n'a pas le temps de se faire, et le CPC reset de facto.
et une fois que la clé de protection est lue, le 2ème timer se met en place, toujours par le biais d'une pause, mais qui a la forme d'un BLOC type 11 (le format CDT ne permet pas de mettre une durée de pause en début de bloc). si cette pause est absente ou pas assez longue, le CPC cherche trop tot à lire la suite, résultat, reset !
Citer :
En CDT : on se retrouve donc avec la même protection qui marche dans le cas de Marmelade mais pas dans celui de Rat Connection ! Alors que les deux waves fonctionnent sans pb !
On sait que les WAV fonctionnent puisque je les ai testés avant de les mettre en ligne !!
Le CDT de Rat Connection ne passe pas parce à cause de ce problème de pause. Et je vais te dire, le pire c'est que vous ne vous êtes même pas rendu compte que comme cette partie du CDT vous ne l'émulez pas correctement, forcément quand vous convertissez les CDTs en WAV, si je ne prends que Sugarbox, le WAV converti n'est plus conforme à l'original !
y a plus de pause après le dernier bloc du loader, et la clé est directement incorporé au gros bloc.
Et ça c'est le signe que l'implémentation est erronée, pour faire une bonne conversion en WAV d'un CDT, il faut que le support de ceux-ci soit 100% correct ! Et ce n'est pas le cas.
Regarde Megachur, je reposte pour la deuxième fois les graphs,
le premier tiré du WAV généré depuis le CDT sous sugarbox par thomas. le second tiré du WAV original (sa représentation exacte !)
Y a pas un truc qui te choque ?
PS : j'aimerais avoir accès à une version de test de ton émulateur JAVA, histoire de voir comme ça tourne C'est possible ?
Vous n’êtes pas autorisé(e) à consulter les fichiers insérés à ce message.
_________________ SPS Community Expert (SPS CE) / SPS France
j'ai ouvert les cdts puis généré le wave (44100 Hz) et lu le wave avec mon émulateur
Marmelade (F) (1987) (464 only) (Basic v1.0) [Original] [TAPE]_tapir.wav :inscription de "code chargé" puis blocage du loading !
pour Rat Connection (F) (1987) (464 only) (Basic v1.0) [Original] [TAPE]_tapir.wav:idem qu'avec le cdt !
pour l'émulateur en javascript, on peut le considèrer en béta donc oui -> je t'envoie un mp !
il y a donc forcément des différences entre les waves originaux et les waves générés à partir du cdt...en terme de timming !!! Je les ai posté ci-dessous si quelqu'un peut regarder cela en détail ?
Vous n’êtes pas autorisé(e) à consulter les fichiers insérés à ce message.
j'ai ouvert les cdts puis généré le wave (44100 Hz) et lu le wave avec mon émulateur
Marmelade (F) (1987) (464 only) (Basic v1.0) [Original] [TAPE]_tapir.wav :inscription de "code chargé" puis blocage du loading !
pour Rat Connection (F) (1987) (464 only) (Basic v1.0) [Original] [TAPE]_tapir.wav:idem qu'avec le cdt !
pour l'émulateur en javascript, on peut le considèrer en béta donc oui -> je t'envoie un mp !
il y a donc forcément des différences entre les waves originaux et les waves générés à partir du cdt...en terme de timming !!! Je les ai posté ci-dessous si quelqu'un peut regarder cela en détail ?
Je parlais de la possibilité de Tapir de pouvoir jouer directement un CDT SANS CONVERSION EN WAV !
Mais pour ça il faut posséder un vrai CPC 464 ! c'est votre problème à toi et à Thomas, vous n'avez pas le point d'appui du vrai hardware. Quand je tombe sur des jeux avec des protections aussi chiantes, j'utilise automatiquement mon CPC 464 (voir 464+ si le jeu marche dessus).
Mhhh... en même temps les jeux MBC n'ayant jamais été dumpé avant que je ne le fasse, c'est pas vraiment étonnant qu'il puisse y avoir des problèmes.
Ce qui est sur, c'est que les CDTs crée par César étant bons, CDT2WAV fait une conversion correcte en WAV, exactement identique à mon dump des cassettes originales, qui fonctionnent sous sugarbox et chez toi.
Merci pour ta version de test
_________________ SPS Community Expert (SPS CE) / SPS France
Inscription : 12 Juin 2008, 20:29 Message(s) : 1726
Bon, un simple cat montre un "read error b" sur le wav converti avec TAPIR !
également sur le cdt !
alors qu'avec le wave original je n'ai pas ce "read error b" !
Sinon, j'ai trouvé le début d'un piste pour Rat Connection (F) (1987) (464 only) (Basic v1.0) [Original] [TAPE].cdt :
concernant l'ID 12 - Pure tone, c'est exprimé en T-STATE ! cf http://www.worldofspectrum.org/TZXformat.html#PURETONE en le mettant en T-STATE spectrum, le loader ne reset plus avec la cdt ! mais après ce bloc, le loader s'arrête et je pense donc qu'il manque encore quelque chose !
J'envoie les pauses tel que mises dans les CDTs (elles sont en miliseconds), est-ce quelqu'un peut contrôler avec les waves si on a bien les mêmes durées ?
Inscription : 29 Août 2007, 12:04 Message(s) : 2009 Localisation : seine et marne 77
J'ai testé ton émulateur, et manifestement y a un truc qui tourne pas rond. Quand je lance le CDT d'un des deux jeux MBC, j'en ai un qui bloque au bout de 2 blocs chargés, et l'autre qui reset comme un grand.
Comme je le disais, je ne suis pas sur que les pauses soient correctement gérées dedans.
Je vais voir avec César dès qu'il a un moment de libre pour faire avancer le schmilblick.
_________________ SPS Community Expert (SPS CE) / SPS France
Inscription : 12 Juin 2008, 20:29 Message(s) : 1726
dlfrsilver a écrit :
J'ai testé ton émulateur, et manifestement y a un truc qui tourne pas rond. Quand je lance le CDT d'un des deux jeux MBC, j'en ai un qui bloque au bout de 2 blocs chargés, et l'autre qui reset comme un grand.
Comme je le disais, je ne suis pas sur que les pauses soient correctement gérées dedans.
Je vais voir avec César dès qu'il a un moment de libre pour faire avancer le schmilblick.
Je t'ai renvoyé une version ce matin car j'avais laissé un test sur l'id 12 dans le décodage de la CDT !
The 'current pulse level' after playing the blocks ID 10,11,12,13,14 or 19 is the opposite of the last pulse level played, so that a subsequent pulse will produce an edge.
J'ai, à mon avis, dans le cas du CDT de "Rat Connection", clairement quelque chose dans le décodage du CDT qui n'est pas bon entre l'ID12 et l'ID14 qui s'enchaînent après la pause ! OU Et je ne m'explique pas pourquoi le wave généré avec Tapir à partir du CDT ne marche pas alors que le wave original si !
donc mon analyse penche plutôt pour un problème sur ce CDT ! Mais dans ce cas, pourquoi le hardware du cpc464 accepte la wave faite par tapir à partir de ce cdt !?
Code :
Je vais voir avec César dès qu'il a un moment de libre pour faire avancer le schmilblick.
Oui, tout aide 'expertise' sera la bienvenue !!!
J'ai essayé d'autres CDT avec Pure Tone et Pure data block, aucun ne pose problème !!!
Par contre, en regardant en détail, je n'ai pas encore trouvé de CDT qui a cet enchainement comme pour Rat Connection (F) (1987) (464 only) (Basic v1.0) [Original] [TAPE].cdt :
ID 12 - Pure Tone Pause ID 14 - Pure Data
Même
on a plutôt :
Type SpeedLock : ..Pure Tone ..Sequence Of pulses ...etc Pure Data block
ex : 3D Stunt Rider (UK) (1985) [Original] [TAPE].cdt
ou Pure Tone Pause ID11 - Turbo Data !
ex : Enlightment - Druid II (UK) (1988) [Original] [TAPE].cdt
ou comme avec la même protection que Rat Connection, l'autre cdt -> Marmelade (F) (1987) (464 only) (Basic v1.0) [Original] [TAPE].cdt
Bonne nouvelle : En investiguant sur ce cdt récalcitrant et en modifiant / optimisant mon code -> maintenant, la seul autre protection K7 qui ne fonctionnait pas 'Gremlin loader 2' passe ! ex : Footballer Of The Year 2 (UK) (1989) [Original] [TAPE].cdt ou Les Gremlins (UK) (Face 2A) (1988) (5. Basil The Great Mouse Detective) [Original] [TAPE] [COMPILATION].cdt
il faut que j'effectue d'autres tests de non régression sur toutes les autres protections, mais c'est super d'avoir pu avancer sur ce sujet aussi !
Pour ce fameux rat connection, il faudrait pouvoir faire le test suivant :
- enregistrer en wav la sortie du Pc vers le cpc - idéalement ce que voit la tête de lecture du 464 : s'il est à peu près sûr que tapir sort un signal carré, le passage par la carte son et la conversion analogique va déjà le modifier - mieux : enregistrer "à la JMD" la pin du ppi lors de la lecture.
En comparant les trois enregistrement (wav de tapir, entrée 464, ppi) on pourra voir la modification du signal faite par les différents composant, et voir si ça se remet à marcher à un moment sur nos ému ( au niveau de la pin ppi c'est a peu près garanti...)
Bon évidemment, ça demande sans doute pas mal de matos tout ça....
Ce qu'on sait avec assurance, c'est que notre gros point noir est l'émulation de l'électronique d'entrée de la cassette. Au mieux on y colle un ou deux filtres, et on voit en lisant les wav que l'on y est pas encore ( nombreux sont ceux qui bloquent sur ému et pas sur 464, et on a même l'inverse)
Inscription : 29 Août 2007, 12:04 Message(s) : 2009 Localisation : seine et marne 77
Lone a écrit :
Pour ce fameux rat connection, il faudrait pouvoir faire le test suivant :
- enregistrer en wav la sortie du Pc vers le cpc - idéalement ce que voit la tête de lecture du 464 : s'il est à peu près sûr que tapir sort un signal carré, le passage par la carte son et la conversion analogique va déjà le modifier - mieux : enregistrer "à la JMD" la pin du ppi lors de la lecture.
Citer :
enregistrer en WAV la sortie du PC vers le CPC ? C'est ce que je fais systématiquement quand je dumpe des logiciels avec des protections complexes ou à la con.
J'ai avec Goldwave le signal tel qu'il est enregistré sur la cassette. Le problème c'est qu'en dehors de mon 464, aucun outil et émulateur ne sait lire le signal tel quel (sans compter que les 2 K7 étaient franchement pas en bon état..... c'est pas des K7 de bonne facture...).
Enregistrer le signal au niveau du PPI ? Les outils ont clairement du mal à le traiter. Samp2cdt fait des problèmes, les dumps de JMD ne sont pas tous facile à traiter loin de là.
Citer :
En comparant les trois enregistrement (wav de tapir, entrée 464, ppi) on pourra voir la modification du signal faite par les différents composant, et voir si ça se remet à marcher à un moment sur nos ému ( au niveau de la pin ppi c'est a peu près garanti...)
Oui mais le but c'est de pouvoir générer au final des CDTs qui utilisent les timings originaux, avec les longueurs de pauses originales, sur les émulateurs autant que sur 464.....
Citer :
Bon évidemment, ça demande sans doute pas mal de matos tout ça....
J'ai le matos déjà pour tout ça.
Citer :
Ce qu'on sait avec assurance, c'est que notre gros point noir est l'émulation de l'électronique d'entrée de la cassette. Au mieux on y colle un ou deux filtres, et on voit en lisant les wav que l'on y est pas encore ( nombreux sont ceux qui bloquent sur ému et pas sur 464, et on a même l'inverse)
Il y a des problèmes d'émulation c'est certain
_________________ SPS Community Expert (SPS CE) / SPS France
Ah ben super, si tu peux nous faire ces dumps ça serait bien.
Notamment le signal en sortie du pc (après traitement de la carte son, bien sur)
Quand tu dis "J'ai avec Goldwave le signal tel qu'il est enregistré sur la cassette. Le problème c'est qu'en dehors de mon 464, aucun outil et émulateur ne sait lire le signal tel quel (sans compter que les 2 K7 étaient franchement pas en bon état..... c'est pas des K7 de bonne facture...).", de quel type de fichier disposes-tu ? Peux tu nous le mettre à disposition ?
Inscription : 29 Août 2007, 12:04 Message(s) : 2009 Localisation : seine et marne 77
je n'ai plus les cassettes en main, je vais voir si j'ai encore sur mon disque dur les WAV originaux des cassettes (inexploitables).
Mon lecteur de cassette Sony TCM-939 (haut de gamme) lit les cassettes telle qu'elles sont écrites.
Et les signaux diffèrent suivant les jeux. par exemple, sur les jeux français, le signal ressemble à des dents de requins bien nettes :
/\/\/\/\/\/\/\/\\/\/\/\/\/\
et sur les jeux à protection spéciale, comme les jeux opéra soft, le signal ressemble à des dents de scie égoïne.
/I_/I_/I_/I_/I_/I_/I_/I_/I_
mais ce ne sont pas les seuls. Et j'ai appris qu'il ne faut pas se baser sur la forme du dit signal. Il arrive fréquemment que la cassette ne soit plus trop lisible, et qu'il faille utiliser un outil du nom de CSW (pas celui de césar).
celui-ci permet de corriger le signal qui est abîmé, ou affaissé par endroit (sans parler des parasites....).
(contrairement aux disquettes, sur cassette on peut rattraper le coup, mais le dump brut tiré de la cassette est très souvent inutilisable en l'état).
_________________ SPS Community Expert (SPS CE) / SPS France
Oui mais concretement, il s'agit d'un fichier informatique ? C'est un signal samplé ?
Enfin en l'occurence, ce qui nous intéresse c'est autre chose (vu que le travail de récupération que tu as fait a donné des wav exploitables par les émulateurs) : Il s'agit de resampler ce qui sort de ton pc en direction du 464, généré par Tapir ou autre. Ca, ça serait vraiment intéressant.
Inscription : 29 Août 2007, 12:04 Message(s) : 2009 Localisation : seine et marne 77
Lone a écrit :
Oui mais concretement, il s'agit d'un fichier informatique ? C'est un signal samplé ?
Enfin en l'occurence, ce qui nous intéresse c'est autre chose (vu que le travail de récupération que tu as fait a donné des wav exploitables par les émulateurs) : Il s'agit de resampler ce qui sort de ton pc en direction du 464, généré par Tapir ou autre. Ca, ça serait vraiment intéressant.
oui il s'agit d'un fichier WAV. ce dernier contient le signal analogique de la cassette originale enregistré.
tu veux dire mettre en écoute via goldwave ma sortie son quand je vais jouer le CDT par tapir en direction de mon CPC 464 ?
_________________ SPS Community Expert (SPS CE) / SPS France
Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 41 invité(s)
Vous ne pouvez pas publier de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas insérer de pièces jointes dans ce forum