Index du Forum
IDENTIFICATION SERVEUR : 10.0.97.1 - CLIENT : 54.224.166.141

 FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres   Groupes d'utilisateursGroupes d'utilisateurs   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

Deja Vu IIgs (Mindscape, 1988)

 
Poster un nouveau sujet   Répondre au sujet     Index du Forum -> PROTECTION MALEFIQUE
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
toinet
Site Admin


Inscrit le: 15 Juin 2007
Messages: 2945
Localisation: Le Chesnay, France

MessagePosté le: Lun 14 Mar 2016, 16:37    Sujet du message: Deja Vu IIgs (Mindscape, 1988) Répondre en citant

#807 - A nightmare comes true! "Well, kid, you really stepped in it this time!"

Protection type
The game comes on two 3.5" disks, one with the system disk and one with the program disk. The protection lies on the program disk where the program checks for nibbles in a smart way through the DInfo and Slot Arbiter calls, followed by the usual $C0EC softswitches use.

How to copy
Use ZZCopy or Photonix II to copy your two original disks that you then store in a dry and safe place.

Some sort of reverse engineering
When you launch the game, an alert window asks for the insertion of the original disk. It loops infinitely until you finally insert that disk.
The message is in file DEJAVU in segment 2 at offset $3D7B ("Please insert the original program disk.". The entry point of the display routine is at $3D53.
That address is called in another routine at $3AFB to which you pass #$80 in the accumulator.
If you search for that pattern in the code, you'll find numerous calls to $3AFB just after calls to $E755 followed by a comparison with flag $BEBB (value is fixed and is #$000F).
If you go at $E755 and list the code, you will find: memory request, nibble check and memory disposal. We are in the protection!
As there are numerous calls to $E755 and that the returned value is compared with $BEBB (remember, value is #$000F), we'll change the code at $E755 to: clear the carry, return #$000F in the accumulator and exit through a RTL because we are called with a JSL)

How to crack
Launch Block.Warden and
Code:

Prefix /DEJAVU
Follow file DEJAVU
At offset $DA8E: FB C2 30 0B => A9 0F 00 6B


The disk images are available at http://www.brutaldeluxe.fr/crack/

Reboot and... enjoy,

LoGo
3/2016
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
toinet
Site Admin


Inscrit le: 15 Juin 2007
Messages: 2945
Localisation: Le Chesnay, France

MessagePosté le: Lun 14 Mar 2016, 16:38    Sujet du message: Répondre en citant

And some code

Code:

The entry point of the protection
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
02/E755: 18                         CLC                   ; Protection         
02/E756: FB                         XCE                                         
02/E757: C230                       REP   #$30                                 
02/E759: 0B                         PHD                                         
02/E75A: 8B                         PHB                                         
02/E75B: DA                         PHX                                         
02/E75C: 5A                         PHY                                         
02/E75D: 20D9E9                     JSR   $E9D9           ; Get mem             
02/E760: 7A                         PLY                                         
02/E761: FA                         PLX                                         
02/E762: 22E1EA02                   JSL   $02EAE1         ; Init               
02/E766: B007                       BCS   $E76F                                 
02/E768: 2290E802                   JSL   $02E890         ; Do the rea         
02/E76C: 20D3EA                     JSR   $EAD3           ; Clear mem           
02/E76F: AB                         PLB                                         
02/E770: 2B                         PLD                                         
02/E771: 6B                         RTL                                         
02/E772: C230                       REP   #$30                                 
02/E774: 0B                         PHD                                         
02/E775: 68                         PLA                                         
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS

Where $3AFB asks for the original disk
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
02/3D53: 48                         PHA                   ; Display the alert   
02/3D54: F41500                     PEA   $0015           ; window for the     
02/3D57: F44600                     PEA   $0046           ; original disk       
02/3D5A: F40200                     PEA   ^$3D7B                               
02/3D5D: F47B3D                     PEA   $3D7B                                 
02/3D60: F40200                     PEA   ^$3D8D                               
02/3D63: F48D3D                     PEA   $3D8D                                 
02/3D66: F40200                     PEA   ^$3E6D                               
02/3D69: F46D3E                     PEA   $3E6D                                 
02/3D6C: F40200                     PEA   ^$C521                               
02/3D6F: F421C5                     PEA   $C521                                 
02/3D72: A201112200                 _TLMountVolume                             
02/3D79: 68                         PLA                                         
02/3D7A: 60                         RTS                                         
02/3D7B: 11506C6561                 STR   'Please insert the'                   
02/3D8D: 166F726967                 STR   'original program disk.'             
02/3DA4: A00100                     LDY   #$0001                               
02/3DA7: A904C2                     LDA   #$C204                               
02/3DAA: 85F2                       STA   $F2                                   
02/3DAC: A90200                     LDA   #^$C204                               
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS

One of the numerous protection check calls
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
02/05F8: 6D84BF                     ADC   $BF84                                 
02/05FB: 6D88BF                     ADC   $BF88                                 
02/05FE: 8DE0BE                     STA   $BEE0                                 
02/0601: F40200                     PEA   ^$C9DA                               
02/0604: F4DAC9                     PEA   $C9DA                                 
02/0607: 20A735                     JSR   $35A7                                 
02/060A: A2E2BF                     LDX   #$BFE2          ; Call protection     
02/060D: A00200                     LDY   #^$BFE2                               
02/0610: 2255E702                   JSL   $02E755                               
02/0614: CDBBBE                     CMP   $BEBB           ; Compare w/ref value
02/0617: F008                       BEQ   $0621                                 
02/0619: A98000                     LDA   #$0080          ; Insert original     
02/061C: 20FB3A                     JSR   $3AFB                                 
02/061F: 80E0                       BRA   $0601                                 
02/0621: 9C72BF                     STZ   $BF72           ; We're good!         
02/0624: 9C74BF                     STZ   $BF74                                 
02/0627: 2077AD                     JSR   $AD77                                 
02/062A: 202D1D                     JSR   $1D2D                                 
02/062D: 206D42                     JSR   $426D                                 
02/0630: 207516                     JSR   $1675                                 
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
toinet
Site Admin


Inscrit le: 15 Juin 2007
Messages: 2945
Localisation: Le Chesnay, France

MessagePosté le: Lun 14 Mar 2016, 16:38    Sujet du message: Répondre en citant

And the Block.Warden view:

Code:

Block: $0076 (118)      Volume name: DEJAVU          Saturday   13-Mar-16 11:05
Prefix: /DEJAVU/                                                               
Following: DEJAVU, Type S16, Rel block 110, Byte $00DA8E                       
(c) Q      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F            Edit mode
1988ZSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
    Z 000: DD DD DD DD DD DD DD DD DD DD DD DD DD DD DD DD   ]]]]]]]]]]]]]]]]   
  b Z 010: DD DD DD DD DD DD DD DD DD DD DD DD DD DD DD DD   ]]]]]]]]]]]]]]]]   
B y Z 020: DD DD DD DD DD DD DD DD DD DD DD DD DD DD DD DD   ]]]]]]]]]]]]]]]]   
L   Z 030: DD DD DD DD DD DD DD DD DD DD D6 00 00 D6 66 66   ]]]]]]]]]]V..Vff   
O G Z 040: 66 66 66 66 66 66 66 66 66 66 66 66 66 66 66 66   ffffffffffffffff   
C l Z 050: 66 66 66 66 66 66 66 66 66 66 66 66 66 66 66 66   ffffffffffffffff   
K e Z 060: 66 66 66 66 66 66 66 66 66 66 66 66 66 66 66 66   ffffffffffffffff   
  n Z 070: 66 66 66 66 66 66 66 66 66 66 66 66 66 66 66 66   ffffffffffffffff   
W   Z 080: 66 66 66 66 66 66 66 66 66 66 66 66 66 18>FB<C2   fffffffffffff.{B   
A B Z 090: 30 0B 8B DA 5A 20 D9 E9 7A FA 22 E1 EA 00 B0 07   0..ZZ Yizz"aj.0.   
R r Z 0A0: 22 90 E8 00 20 D3 EA AB 2B 6B C2 30 0B 68 18 69   ".h. Sj++kB0.h.i   
D e Z 0B0: 00 01 60 08 DA 5A C2 30 A2 00 00 A0 08 00 18 2A   ..`.ZZB0".. ...*   
E d Z 0C0: 2A 48 8A 2A AA 68 88 D0 F5 8A 29 FF 00 7A FA 28   *H.**h.Pu.).zz(   
N o Z 0D0: 60 C2 30 08 DA 5A E2 30 9C FE E7 A2 0F DD DE E7   `B0.ZZb0.~g".]^g   
  n Z 0E0: F0 05 CA 10 F8 80 28 8E FE E7 A2 0F EB DD EE E7   p.J.x.(.~g".k]ng   
    Z 0F0: F0 05 CA 10 F8 80 18 8A 0A 0A 0A 0A 18 6D FE E7   p.J.x........m~g   
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet     Index du Forum -> PROTECTION MALEFIQUE Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster 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 voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com