Protection des jeux Thomson
Modérateur : Politburo
Mais non ce ne sont que des généralités pas très passionnantes, mais il faut commencer par là pour comprendre la suite Dans quelques jours çe sera beaucoup plus vivant quand on étudiera un cas concret. Mais tes encouragements me stimulent Merciyvesffr a écrit :Excellent !
Encore plus fort : les bits sont raccourcis
Pour empêcher la lecture par les routines standard, le changement de la structure des blocs est largement suffisant. Mais on peut faire encore mieux : modifier la période du signal enregistré sur la bande. Le procédé d'enregistrement des cassettes MO5 s'appelle MFM (Modified Frequency Modulation). Sous se terme barbare se cache un codage très simple, expliqué dans les FAQ de http://dcmo5.free.fr . Ce qu'il faut retenir, c'est qu'un bit 0 est représenté par un créneau long, et un bit 1 par deux créneaux courts. La largeur de ces créneaux est déterminée par des boucles de temporisation dans la routine d'écriture de la cassette. Le programme de lecture s'attend à retrouver des créneaux de même taille. S'il trouve n'importe quel autre signal ne correspondant pas à un créneau de bit 0 ou à 2 créneaux de bit 1, il considère que c'est un parasite et l'ignore. Si j'écris la cassette avec un programme spécial qui utilise des temporisations différentes, par exemple des créneaux 45% plus courts, la lecture standard ne trouvera pas un seul bit sur la cassette. C'est exactement comme quand on cherche à lire une cassette TO7 sur un MO5 : la bande défile jusqu'au bout et aucun programme n'est trouvé. Même pas un bit !
Daniel
- foolduplex
- Fonctionne à 1200 bauds
- Messages : 628
- Enregistré le : 02 oct. 2002 23:06
- Localisation : Lausanne, Suisse
- Contact :
Ce qui me fait penser a une chose. Ce type de technique etait courant dans ce qu'on appelle un Speedloader, soit un programme qui charge beaucoup plus vite les donnees depuis une k7 qu'avec la procedure standard. Un de mes amis (confrere du Bolo's Computer Museum) vient de realiser un petit tour de force en programmant un Speedloader 12 fois plus rapide que l'original pour Sinclair ZX81, ce qui fait dans les 3000 bauds. Et il pretend pouvoir faire encore mieux. Je n'ai jamais vu plus de 2400 bauds sur thomson, meme avec certains speedloaders (genre Cable), y'a-t-il plus rapide et quelle est la limite?
Fool
Fool
A chaque fois qu'Edouard écrit dans le forum, il me donne envie de m'intéresser à un nouveau sujet Et celui-là est passionnant quand on aime les réalités "physiques"foolduplex a écrit :Je n'ai jamais vu plus de 2400 bauds sur thomson, meme avec certains speedloaders (genre Cable), y'a-t-il plus rapide et quelle est la limite?
Plus de 2400 je n'ai jamais essayé. On peut dire que les cassettes enregistrées à cette vitesse sur MO6 sont déjà moins fiables que les 1200 bauds du MO5. Avec le même procédé, de bonnes bandes et un magnétophone neuf et bien réglé, on doit pouvoir certainement dépasser la barre des 3000, mais on n'évitera pas de temps en temps une erreur 53
Par contre, quand on voit l'évolution du débit sur les lignes téléphoniques, depuis le minitel jusqu'à l'ADSL, ça donne à penser qu'il y a sûrement des progrès à faire en jouant sur le procédé d'enregistrement des cassettes. Le débit de l'ADSL sur cassette MO5 Beau thème de recherche, mais pas pour les Nuls
Daniel
a ce propos, il y a un programme dans l'un des derniers TEO qui permet de lire, sur plateforme TO, une cassette enregistree au format MO5. Cela peut servir de bonne base pour comprendre le fonctionnement du codage cassette, et la facon d'ecrire une routine de loader.Daniel a écrit :C'est exactement comme quand on cherche à lire une cassette TO7 sur un MO5 : la bande défile jusqu'au bout et aucun programme n'est trouvé. Même pas un bit !
Daniel
Effectivement, ce programme est très intéressant. La disquette est le moyen idéal pour communiquer entre TO et MO, si on a un lecteur de disquette ! Mais à l'époque s'était un périphérique luxueux . La cassette était une solution. Il faut préciser que les cassettes MO5 ne peuvent pas être lues par un magnétophone TO7 (il serait trop long d'expliquer pourquoi ici). Donc ce programme nécessite de brancher un magnétophone MO5 sur TO7. Comme quoi les deux séries de machines peuvent faire bon ménage.Yoann a écrit :a ce propos, il y a un programme dans l'un des derniers TEO qui permet de lire, sur plateforme TO, une cassette enregistree au format MO5.
Dans l'autre sens, lire une cassette TO7 sur MO5 (avec un magnétophone TO7) est d'après moi théoriquement possible. A ma connaissance ça n'a jamais été fait. Avis aux amateurs aimant les nouveaux défis
Daniel
Gap inter-blocs
Les intervalles entre les blocs
Nous avons vu qu'un bloc standard contient au maximum 275 octets (en-tête 16, indicateur 2, longueur 1, type 1, données 254, checksum 1). Après sa lecture, il faut le traiter. Par exemple, pour un programme Basic en mode texte ASCII, chaque mot-clé du Basic est reconnu et remplacé par un code, chaque ligne Basic est stockée en mémoire, et le pointeur vers la ligne suivante est calculé. Ce traitement dure un certain temps, c'est pourquoi le bloc suivant sur la cassette ne peut pas être juste à la suite du précédent. L'intervalle entre les blocs (ou gap inter-blocs) est différent selon le type du fichier. Un fichier de type contenu mémoire a des gaps courts, car le stockage du bloc en mémoire est très rapide. Un programme Basic a des gaps plus longs, car le traitement est plus complexe.
On peut penser qu'en arrêtant le moteur du magnétophone à la fin d'un bloc, et en le redémarrant quand le traitement est terminé, on pourrait éviter le gap. Cette technique est parfois utilisée, mais l'inertie du moteur et du cabestan du magétophone ne permet pas d'enchaîner directement les blocs. Le temps d'arrêt et le temps de stabilisation de la vitesse au démarrage nécessitent dans ce cas un gap d'environ 1 seconde, on n'a donc pas intérêt à arrêter le moteur si le traitement dure moins longtemps.
Pendant le gap, il n'y a plus de signal sur la bande, et le programme de lecture se désynchronise. C'est ce qui rend nécessaire l'en-tête de bloc. Les 16 octets à 01 permettent de synchroniser à nouveau la lecture avant de lire les données du bloc suivant. Au total, avec le gap inter-blocs et les octets de synchronisation, l'enregistrement des données utiles peut représenter moins de la moitié du temps total. Si, comme certains programmes Loriciels, on utilise des blocs plus courts, le pourcentage de temps utile est encore plus défavorable. Ce qui les rend d'autant plus longs à charger.
Le son d'un programme MO5 sur cassette n'est pas très agréable à l'oreille. Sans être mélomane, on peut cependant percevoir toutes ces différences : blocs longs ou courts, gaps très réduits ou anormalement longs, arrêt et redémarrage du moteur, et surtout la mélodie très reconnaissable des blocs Infogrames dont la description va suivre...
Daniel
Nous avons vu qu'un bloc standard contient au maximum 275 octets (en-tête 16, indicateur 2, longueur 1, type 1, données 254, checksum 1). Après sa lecture, il faut le traiter. Par exemple, pour un programme Basic en mode texte ASCII, chaque mot-clé du Basic est reconnu et remplacé par un code, chaque ligne Basic est stockée en mémoire, et le pointeur vers la ligne suivante est calculé. Ce traitement dure un certain temps, c'est pourquoi le bloc suivant sur la cassette ne peut pas être juste à la suite du précédent. L'intervalle entre les blocs (ou gap inter-blocs) est différent selon le type du fichier. Un fichier de type contenu mémoire a des gaps courts, car le stockage du bloc en mémoire est très rapide. Un programme Basic a des gaps plus longs, car le traitement est plus complexe.
On peut penser qu'en arrêtant le moteur du magnétophone à la fin d'un bloc, et en le redémarrant quand le traitement est terminé, on pourrait éviter le gap. Cette technique est parfois utilisée, mais l'inertie du moteur et du cabestan du magétophone ne permet pas d'enchaîner directement les blocs. Le temps d'arrêt et le temps de stabilisation de la vitesse au démarrage nécessitent dans ce cas un gap d'environ 1 seconde, on n'a donc pas intérêt à arrêter le moteur si le traitement dure moins longtemps.
Pendant le gap, il n'y a plus de signal sur la bande, et le programme de lecture se désynchronise. C'est ce qui rend nécessaire l'en-tête de bloc. Les 16 octets à 01 permettent de synchroniser à nouveau la lecture avant de lire les données du bloc suivant. Au total, avec le gap inter-blocs et les octets de synchronisation, l'enregistrement des données utiles peut représenter moins de la moitié du temps total. Si, comme certains programmes Loriciels, on utilise des blocs plus courts, le pourcentage de temps utile est encore plus défavorable. Ce qui les rend d'autant plus longs à charger.
Le son d'un programme MO5 sur cassette n'est pas très agréable à l'oreille. Sans être mélomane, on peut cependant percevoir toutes ces différences : blocs longs ou courts, gaps très réduits ou anormalement longs, arrêt et redémarrage du moteur, et surtout la mélodie très reconnaissable des blocs Infogrames dont la description va suivre...
Daniel
- frodon69
- Fonctionne à 9600 bauds
- Messages : 3891
- Enregistré le : 29 sept. 2003 22:54
- Localisation : A l'ouest de Lyon
- Contact :
C'est au contraire très intéressant, meme si je suis un peu largué.... Faudrait que je me remette à mes machines quand j'aurai terminé mes travauxDaniel a écrit :PS: Arrêtez-moi si ce monologue vous fatigue . Et répondez s.v.p. à la question du premier post, sinon je vais avoir le plaisir de chercher moi-même la réponse
Continuez !!!
Frodon69
Frodon69
Je cherche un Amstrad Mega PC, faire offre.
Je cherche un Amstrad Mega PC, faire offre.
- frodon69
- Fonctionne à 9600 bauds
- Messages : 3891
- Enregistré le : 29 sept. 2003 22:54
- Localisation : A l'ouest de Lyon
- Contact :
A condition de bien choisir sa k7, j'ai fait l'erreur d'utiliser un fois une k7 au chrome, et tout les programmes me font une erreur div by0.Daniel a écrit :Il n'y a aucun moyen d'empêcher la copie audio (vraiment aucun, c'est sûr et certain). Elle est cependant limitée, car après la deuxième ou troisième copie la cassette n'est plus lisible, surtout avec les blocs Infogrames, comme on le verra plus tard.
Daniel
Snif, 4 jeux inutilisables....
Frodon69
Frodon69
Je cherche un Amstrad Mega PC, faire offre.
Je cherche un Amstrad Mega PC, faire offre.
Je ne poste plus dans ce forum (voir explications ici : viewtopic.php?t=5657&postdays=0&postorder=asc&start=39)frodon69 a écrit :Continuez !!!
Par contre, toutes les questions sur ce sujet sont les bienvenues dans le forum du site http://dcmoto.free.fr
Daniel
- frodon69
- Fonctionne à 9600 bauds
- Messages : 3891
- Enregistré le : 29 sept. 2003 22:54
- Localisation : A l'ouest de Lyon
- Contact :
c'est vraiment domage, pourquoi n'ignores tu pas complètement ceux qui te dérangent? En l'absence de réponse de ta part, ils se lasseront, qui qu'ils soient (je ne m'en melerai pas).
Il y en a beaucoup qui parlent peu mais qui apprécient les apports techniques que toi et d'autres font, des gens comme moi qui ont peu de temps, peu de bagage technique, mais qui apprécient leurs machines.
Courage!
Frodon69
Il y en a beaucoup qui parlent peu mais qui apprécient les apports techniques que toi et d'autres font, des gens comme moi qui ont peu de temps, peu de bagage technique, mais qui apprécient leurs machines.
Courage!
Frodon69
Frodon69
Je cherche un Amstrad Mega PC, faire offre.
Je cherche un Amstrad Mega PC, faire offre.
- frodon69
- Fonctionne à 9600 bauds
- Messages : 3891
- Enregistré le : 29 sept. 2003 22:54
- Localisation : A l'ouest de Lyon
- Contact :
Malheureusement je ne peuts y aller depuis mon boulot car il contient le mot "free"; ils sont parano avec leur websenceDaniel a écrit : Par contre, toutes les questions sur ce sujet sont les bienvenues dans le forum du site http://dcmoto.free.fr
Frodon69
Frodon69
Je cherche un Amstrad Mega PC, faire offre.
Je cherche un Amstrad Mega PC, faire offre.
- Fabrice Montupet
- Administrateur
- Messages : 11083
- Enregistré le : 17 mai 2002 11:39
- Localisation : Nevers - France