[TRUC] Protection et déprotection sur les Thomsons :)

Des MO et des TO...

Modérateur : Politburo

Répondre
Avatar du membre
James
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 1087
Enregistré le : 10 sept. 2003 13:02
Localisation : Alsace - Terre - Fédération des planètes Unies
Contact :

[TRUC] Protection et déprotection sur les Thomsons :)

Message par James »

DÉPROTECTION DE PROGRAMMES BASIC
Un DRAPEAU : 0=faux lorsque le programme est listable.
255=&HFF (-1 vrai) quand il est protégé.

PROTECTION MO5 : DRAPEAU &H217F
L'exécution de LIST passe par l'adresse &H21FB située en RAM et
contenant un JUMP en &HC324. En mode direct on ignore le travail fait par
le BASIC à partir de cette adresse. Effectuer soit un RTS (retour de sous programme) soit un JUMP direct en &HEOE9.

taper NEW NEW
POKE &H21FB,57 POKE &H21FC,&HE0
POKE &H21FD,&HE9

charger le programme : LOAD "....." LOAD "....."
Le programme est listable, le modifier éventuellement, puis le
sauver, éviter de l'exécuter. Il est prudent de remettre le basic en place.
drapeau mis à zéro : POKE &H217F,0 POKE &H217F,0
restaurer le basic : POKE &H21FB,&H7E POKE &H217F,&HC3
POKE &H217F,&H24

Ces méthodes échouent sur certains programmes. Essayer de
déplomber avec un TO7, sinon manipulations style TO 9. On peut parfois
surmonter ainsi une IO error du magnétophone.

PROTECTION TO 7 : DRAPEAU &H61A2
On utilise le fait que l'ordre EXEC (RUN progemme binaire) n'est pas
protégé et que WEND n'est pas utilisé.
Taper: POKE &H6236,&HOF 'CLR
POKE &H6237,&HA2 '$61A2 direct
POKE &H6238,&H39 'RTS
puis charger le programme et taper; WEND (TO7) ou EXEC &H6236 (TO9).
Pour interdire la déprotection par EXEC 1216 écrire en première ligne :
1 IF PEEK(0)=32 THEN POKE &H61A2,255
PROTECTION TO 9 basic 128 : DRAPEAU &X6179
Valider les lignes suivantes :
LOAD" PROG"
OK
NEW
OK
BANK 1:FOR A=&HA005 TO &HAOFF:IF PEEK(A)=0 THEN ? HEX$(A) ELSE
NEXT
AOXX
OK
POKE &HA002,&HXX'XX Deux derniers octets de la valeur AOXX
Ces manipulations sont assez longues. Utiliser PROTECT que l'on
charge avant le programme protégé. Le text des calculs restant en
mémoire écran
10 INPUT"Nom du programme„;P$
20 PRINT"Valider les lignes suivantes :'
30 PRINT:PRINT"LOAD"CHR$(34)"P$"CHR$(34)
40 PRINT:PRINT"NEW
50 PRINT:PRINT"BANK 1: FOR A=&HA005 TO &HAOFF:IF PEEK(A)<32 THEN
PRINT HEX$(A) ELSE NEXT
60 PRINT"AOXX
70 PRINT:PRINT"POKE &HA002,&HXX'XX Deux derniers octets de la
valeur AOXX trouvée ci-dessus."
80 LOCATE O,CSRLIN-11
On retrouve la partie de programme située en banque 1. Travail
analogue dans les autres banques pour les programmes de plus de 16 k
(en utilisant la banque 1 pour la variante du programme PROTECT).

CQFD 8)
--------------> Recherche Atari 400/800, TO9+, Goupil
polemic
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 74
Enregistré le : 17 déc. 2004 16:05

Message par polemic »

pour deproteger un programme basic sur to, j'ai encore plus simple :

poke &h61b7,57
puis load "nomprog.bas"

le programme devient listable :p

magic !
si il n'y a pas de solution, c'est qu'il n'y a pas de probleme !
Avatar du membre
James
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 1087
Enregistré le : 10 sept. 2003 13:02
Localisation : Alsace - Terre - Fédération des planètes Unies
Contact :

Message par James »

rock'n'roll je dis :!: :!: :!:
--------------> Recherche Atari 400/800, TO9+, Goupil
Avatar du membre
chiss
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1656
Enregistré le : 08 déc. 2003 13:05
Localisation : Villars les dombes (01)

Message par chiss »

chapeau bas messieurs !!! :D :D
chiss=christophe
une passion ne doit pas être un fanatisme ! sauf pour mes enfants............... !
jasz
Désactivé
Messages : 796
Enregistré le : 12 déc. 2004 07:53
Localisation : Planete Zorg (31)

Re: [TRUC] Protection et déprotection sur les Thomsons :)

Message par jasz »

James a écrit :POKE &H21FB,57 POKE &H21FC,&HE0
POKE &H21FD,&HE9
Je ne comprends pas les deux derniers poke.

Si tu fais un poke 8699,57, c'est un rts à la place du jump (126). Donc les deux autres octets qui donnent l'adresse sont parfaitement inutile.

Ce poke permet d'éviter les messages d'erreur (toutes les erreurs) dont la fameuse error 61. Comme le dis James. Pour ne pas avoir de problèmes par la suite, car le programme n'est plus protégé par les erreurs et donc risque de bug, vaut mieux restaurer l'adresse 8699 avec sa valeur d'origine soit 126 aprés la déprotection et la sauvegarde du programme.

Il n'y a plus qu'a lire le programme déprotégé préalablement enregistré ;)
polemic
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 74
Enregistré le : 17 déc. 2004 16:05

Message par polemic »

il me semble que jasz a raison ...
bin vu !
si il n'y a pas de solution, c'est qu'il n'y a pas de probleme !
Avatar du membre
James
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 1087
Enregistré le : 10 sept. 2003 13:02
Localisation : Alsace - Terre - Fédération des planètes Unies
Contact :

Message par James »

surement 8)
--------------> Recherche Atari 400/800, TO9+, Goupil
Invité

Message par Invité »

pour casser la protection Basic sur TO7, charger le prog puis taper EXEC 1218.
Répondre

Retourner vers « Thomson »