|
|
FabriceFABS
Visiteur
|
Date : 12/09/2004 à 15h39
Voilà, je suis désireux de transferrer un max de progs sur cassette sur des disquettes 3P1/2 de 320Ko/Face.
Mais j'en ai pas mal qui sont protégés, et c un peu embêttant, car je n'ai aucune autre action que le simple transfert pour des raisons pratiques.
Exec 1216 marche qquefois mais pas toujours.
Il y aurait-il une soluce ?
Merci !
|
en haut - en bas |
|
|
|
Daniel
Visiteur
|
Date : 12/09/2004 à 18h08
Ce que tu veux faire est très compliqué.
Pour les programmes Basic simples (qui n'en chargent pas d'autres), pas de problème, ton exec 1216 fonctionne.
Pour les jeux plus complexes, même non protégés, tu auras des problèmes car souvent la version cassette n'est pas transposable sur disquette sans modifications. Tu peux espérer y arriver pour les programme Basic. Par contre s'il y a des programmes en langage machine c'est en général plus difficile.
Enfin, les jeux sur cassette bien protégés sont pratiquement impossibles à copier sur disquette. Tu n'arriveras même pas à lire les fichiers de la cassette avec les commandes Basic.
Le plus simple est alors de télécharger la version disquette du jeu au format .sap, et de la copier sur une disquette Thomson avec l'utilitaire saptools2 d'Eric Botcazou (site Nostalgies Thomsonistes).
Daniel
|
en haut - en bas |
|
|
|
FabriceFABS
Visiteur
|
Date : 12/09/2004 à 18h33
A vrai dire, c des progs qui sont issus de qqun à qui j'ai acheté un énorme ensomble thomson.
Sinon, il m'est arrivé de taper :
et d'obtenir :
Citation : | Protected Program (Ou ?PP Error) |
Donc apparement une double protection...
Non, à vrai dire, il s'agit surtout de soft d'éducation que je recense un peu pour mettre des K7 un peu de coté...
Voili voilu
|
en haut - en bas |
|
|
|
nouvelhermes
Visiteur
|
Date : 12/09/2004 à 19h42
Excuse moi, c'est peut-être une connerie, mais il y a très longtemps, je me souviens avoir utilisé la cartouche assmbleur pour faire de tels transferts (mais c'était sur MO5), si ça peut t'aider...
|
en haut - en bas |
|
|
|
FabriceFABS
Visiteur
|
Date : 12/09/2004 à 19h57
Tu sais, faut pas t'excuser, toutes les idées sont les bienvenues et justement je ne sais pas si la tienne est valable, mais ça me fais penser que je me demande si, une fois le programme chargé en mémoire via le basic, si on pouvais faire une sauvegarde des baques en langage machine justement par mais peut-être faut-il connaitre d'autres choses... et les adresses justement.
Mais ton idée n'est pas mauvaise, vraiment pas !
|
en haut - en bas |
|
|
|
Daniel
Visiteur
|
Date : 12/09/2004 à 21h38
Vous êtes partis tous les deux dans des délires pas possibles
Je ne sais pas ce que vous fumez, mais ça doit être nouveau
Relisez bien mon post, je crois avoir écrit l'essentiel.
Il est vrai qu'on peut protéger un programme par d'autres procédés que le système standard du Basic. Par exemple en créant des lignes de plus de 255 octets. L'exec 1216 n'enlèvera que la protection du Basic.
Le SAVEM peut effectivement permettre de récupérer en mémoire des morceaux ou même la totalité d'un programme en langage machine. Encore faut-il pouvoir revenir au Basic sans l'écraser. En général ce n'est pas possible quand le programme est protégé.
Daniel
|
en haut - en bas |
|
|
|
|
|
Daniel
Visiteur
|
Date : 13/09/2004 à 08h47
Pour revenir à la cartouche assembleur :
C'est vrai qu'elle peut être utile pour modifier un programme binaire protégé (comme dans certains jeux).
Mais les programmes éducatifs sont le plus souvent en Basic, et protégés uniquement par la protection standard du Basic. Le problème n'est pas de les déprotéger, mais de les modifier pour qu'ils tournent sur disquette.
Dans ces softs sur cassette, on trouve des RUN" et des LOADM" sans nom de fichier. Sur disquette le nom de fichier est obligatoire. Idem pour les ouvertures de fichiers en lecture.
Daniel
|
en haut - en bas |
|
|
|
FabriceFABS
Visiteur
|
Date : 13/09/2004 à 12h15
C vrai tu as raison, c un prog qui fait qques lignes (le premier chargé) avec ces instructions là.
Mais un simple permet d'identifier le nom du prog qui suit.
Un simple Citation : | 5 INPUT "Périphérique par défaut : ",A$:DEVICE A$ | au début de ce petit prog peut rédoudre bcp et même bien marcher, n'est-ce pas ?
|
en haut - en bas |
|
|
|
Daniel
Visiteur
|
Date : 13/09/2004 à 13h34
Tu as raison, ça peut marcher, mais pas dans tous les cas.
En particulier, un RUN"CASS:" marche bien.
Par contre, un RUN"0:" donnera toujours une erreur.
Il faut donc relire tout le programme pour vérifier tous les appels de programmes et ouvertures de fichiers.
Daniel
|
en haut - en bas |
|
|
|
FabriceFABS
Visiteur
|
Date : 21/09/2004 à 14h35
Une petite astuce bizarre que je viens de constater... :
Exec 1216 semble plutot bien marcher en Basic 1.0 alors que sous Basic 128, impossible (Protected Program)...
Etrange...
J'ai dailleurs remarqué qu'un PP empêchait la commande SAVEM aussi... Maline la machine
|
en haut - en bas |
|
|
|
Daniel
Visiteur
|
Date : 21/09/2004 à 15h46
Il y a une foule de solutions !
- Transférer le programme protégé sur PC et le déprotéger par l'utilitaire DCPROBAS (en téléchargement sur dcmoto)
- Faire un fichier .fd avec DCFDUTIL, le charger avec DCMOTO, aller dans le debugger, décocher la case "programme protégé", sauver le programme
- Sur TO7/70 ajouter une nouvelle instruction au Basic, pour remettre à zéro le bit de protection. Quand le programme protégé est chargé tu ne peux plus faire de POKE, par contre tu peux lancer ton instruction qui le déprotège. Une variante est de détourner une instruction Basic existante peu utilisée, c'est beaucoup plus simple que d'en créer une nouvelle.
- Tu peux aussi écrire un programme Basic TO7/70, équivalent à DCPROBAS, qui décrypte le fichier protégé en le lisant sur la disquette et le réécrit sous un autre nom.
J'arrête là, mais il y a certainement plusieurs dizaines d'autres solutions 
Daniel
|
en haut - en bas |
|
|
|
Daniel
Visiteur
|
Date : 21/09/2004 à 16h26
En Basic 128, le cryptage d'un programme Basic protégé est identique, par contre l'adresse de l'octet indiquant la protection est différente. C'est pourquoi dans le debugger de DCMOTO il y a deux cases différentes pour la protection des programmes : Basic 1 d'une part, Basic 128, 256 et 512 d'autre part.
Pareil pour l' EXEC 1216. L'organisation des "vecteurs Basic" en RAM est totalement différente. Je ne sais même pas s'il existe l'équivalent en Basic 128. De toutes façon, c'est une méthode pas très propre pour déprotéger un programme : si mes souvenirs sont exacts, après un exec 1216 les erreurs ne sont plus détectées. Il vaut mieux interrompre immédiatement le programme, sauver la version déprotégée, puis la recharger.
Daniel
|
en haut - en bas |
|
|
|
Daniel
Visiteur
|
Date : 21/09/2004 à 16h34
J'ai oublié de citer une méthode de déprotection géniale, inventée par mon ami Michele pour son Olivetti Prodest PC128. Elle marche très bien sur MO6 et MO5NR, et doit pouvoir se transposer facilement sur TO7/70. Elle est décrite en bas de la page mo6export
Daniel
|
en haut - en bas |
|
|
|
FabriceFABS
Visiteur
|
Date : 21/09/2004 à 23h00
Oui c vrai Daniel, le TO a desfois qques réactions bizarres après celà et j'ai pris l'habitude de faire comme tu as dis, car des choses étranges arrivent vites (platages, mauvaises lectures de DIR, ?SN Error pour un list ou dir, etc)
Sinon, pour Michèle, je ne connais pas la commande "BANK". Existe-elle bien sur TO ?
@++
FABS
|
en haut - en bas |
|
|
|
Daniel
Visiteur
|
Date : 22/09/2004 à 08h39
BANK existe en Basic 128, pas en Basic 1.
Daniel
|
en haut - en bas |
|
|
|
FabriceFABS
Visiteur
|
Date : 22/09/2004 à 10h40
Franchement, je découvre cette commade...
Quel est son but ? Comme Clear ?
FABS
|
en haut - en bas |
|
|
|
Daniel
Visiteur
|
Date : 22/09/2004 à 12h16
Pour comprendre l'instruction BANK, je conseille la lecture de la doc du Basic 128 ou 256 ou 512.
Je n'ai pas le manuel de la cartouche Basic 128, par contre le guide du MO6 et le Basic du TO9 sont en téléchargement sur le site dcmoto (dossier documentation). A part la taille mémoire, qui est différente, c'est à peu près le même fonctionnement sur TO7/70.
Daniel
|
en haut - en bas |
|
|