Index du Forum
IDENTIFICATION SERVEUR : 10.0.97.129 - CLIENT : 3.80.177.176

 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 

Fantavision v1 IIgs (Broderbund, 1987)

 
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: 2949
Localisation: Le Chesnay, France

MessagePosté le: Sam 05 Mar 2016, 19:32    Sujet du message: Fantavision v1 IIgs (Broderbund, 1987) Répondre en citant

#798 - Magic for the Apple IIgs... Fantavision brings your world of make-believe vividly to life. Just say "Action" and you're in pictures.

Note that this is the crack for version 1, the first. The one that runs on ROM 01 machines only. Sorry!

Protection
The same and recurring track length check for tracks $20 and $21. This one resides in file FANTA.SYSTEM.

How to copy
Use ZZCopy or Photonix II to copy your disk then store your original disk in a dry and safe place.

Some sort of boot tracing
This time we will work directly from the FANTA.SYSTEM file. With The Flaming Bird Disassembler, we search for our usual pattern "C9 D5" (ie. compare the nibble read from disk with the value #$D5) and we find it in the first pages of the system file.
After analyzing the code, we find a push C327 on the stack before calling $2300.
At $2300, there is a jump to $268E and at $268E, we find the code we are used to now: the pattern 2101 and 2001 (for the tracks) and the comparison of X and Y for values within a range for each track (starting at $269D).
The only difference is that parameters are passed through a call to $2303. The six values are: 2 bytes for the buffer address, 2 bytes for the error routine, 1 byte for the track, and 1 byte for the side.
On return, X and Y contain the length of the track (X low, Y high)
What we will do is change the call and the six bytes and put the right values: the JSR will become a BIT and for the six values, we will clear the carry and put the right values in X and Y. That should do the trick.

How to crack
Launch Block.Warden and...
Code:

Prefix /FANTAVISION
Follow file FANTA.SYSTEM
At offset $68E: 20 03 23 00 10 F7 26 21 01 => 2C 03 23 EA 18 A2 00 A0 1E
At offset $6AB: 20 03 23 00 10 F7 26 20 01 => 2C 03 23 EA 18 A2 00 A0 20
Write the block


The disk image is 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: 2949
Localisation: Le Chesnay, France

MessagePosté le: Sam 05 Mar 2016, 19:33    Sujet du message: Répondre en citant

And some code

Code:

The call to the protection. Note the pushed value... Pulled at $216B
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
00/2121: FB                         XCE                                         
00/2122: A2FF                       LDX   #$FF                                 
00/2124: 9A                         TXS                                         
00/2125: 2000BF                     JSR   PRODOS8                               
00/2128: CC                         DB    $CC                                   
00/2129: 911F                       DA    $1F91                                 
00/212B: B064                       BCS   $2191                                 
00/212D: F427C3                     PEA   $C327           ; Push value         
00/2130: 200023                     JSR   $2300           ; Call protection     
00/2133: 2000BF                     JSR   PRODOS8                               
00/2136: C8                         DB    $C8                                   
00/2137: 731F                       DA    $1F73                                 
00/2139: B056                       BCS   $2191                                 
00/213B: AD781F                     LDA   $1F78                                 
00/213E: 8D851F                     STA   $1F85                                 
00/2141: 8D8A1F                     STA   $1F8A                                 
00/2144: 8D921F                     STA   $1F92                                 
00/2147: 2000BF                     JSR   PRODOS8                               
00/214A: D1                         DB    $D1                                   
00/214B: 841F                       DA    $1F84                                 
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS

The entry point of the protection
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
00/2300:                            MX    %11                                   
00/2300: 4C8E26                     JMP   $268E           ; Entry point         
00/2303: A906                       LDA   #$06                                 
00/2305: 206C24                     JSR   $246C                                 
00/2308: A005                       LDY   #$05                                 
00/230A: B1E0                       LDA   ($E0),Y                               
00/230C: 8D8F25                     STA   $258F                                 
00/230F: AA                         TAX                                         
00/2310: C8                         INY                                         
00/2311: B1E0                       LDA   ($E0),Y                               
00/2313: 8D9025                     STA   $2590                                 
00/2316: 203724                     JSR   $2437                                 
00/2319: 8D9125                     STA   $2591                                 
00/231C: A207                       LDX   #$07                                 
00/231E: 86E4                       STX   $E4                                   
00/2320: 203C23                     JSR   $233C                                 
00/2323: 9007                       BCC   $232C                                 
00/2325: A6E4                       LDX   $E4                                   
00/2327: CA                         DEX                                         
00/2328: D0F4                       BNE   $231E                                 
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS

The protection check routine
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
00/268E: 200323                     JSR   $2303           ; Read track         
00/2691: 0010                       DW    $1000           ; Buffer             
00/2693: F726                       DA    $26F7           ; Jump if error       
00/2695: 2101                       DW    $0121           ; Track / Side       
00/2697: B05E                       BCS   $26F7                                 
00/2699: 8600                       STX   $00             ; Check range         
00/269B: 8401                       STY   $01                                   
00/269D: E0B0                       CPX   #$B0                                 
00/269F: 98                         TYA                                         
00/26A0: E91D                       SBC   #$1D                                 
00/26A2: 9053                       BCC   $26F7                                 
00/26A4: E078                       CPX   #$78                                 
00/26A6: 98                         TYA                                         
00/26A7: E91E                       SBC   #$1E                                 
00/26A9: B04C                       BCS   $26F7                                 
00/26AB: 200323                     JSR   $2303           ; Read track         
00/26AE: 0010                       DW    $1000           ; Buffer             
00/26B0: F726                       DA    $26F7           ; Jump if error       
00/26B2: 2001                       DW    $0120           ; Track / Side       
00/26B4: B041                       BCS   $26F7                                 
00/26B6: E040                       CPX   #$40            ; Check again         
00/26B8: 98                         TYA                                         
00/26B9: E91F                       SBC   #$1F                                 
00/26BB: 903A                       BCC   $26F7                                 
00/26BD: E008                       CPX   #$08                                 
00/26BF: 98                         TYA                                         
00/26C0: E920                       SBC   #$20                                 
00/26C2: B033                       BCS   $26F7                                 
00/26C4: 38                         SEC                   ; We're good         
00/26C5: 8A                         TXA                   ; Calculate           
00/26C6: E500                       SBC   $00                                   
00/26C8: EB                         XBA                                         
00/26C9: 98                         TYA                                         
00/26CA: E501                       SBC   $01                                   
00/26CC: EB                         XBA                                         
00/26CD: 18                         CLC                                         
00/26CE: FB                         XCE                                         
00/26CF: C220                       REP   #$20                                 
00/26D1: 4A                         LSR                                         
00/26D2: 4A                         LSR                                         
00/26D3: 18                         CLC                                         
00/26D4: 693200                     ADC   #$0032                               
00/26D7: 4A                         LSR                                         
00/26D8: 4A                         LSR                                         
00/26D9: 18                         CLC                                         
00/26DA: 696700                     ADC   #$0067                               
00/26DD: 4A                         LSR                                         
00/26DE: 4A                         LSR                                         
00/26DF: 4A                         LSR                                         
00/26E0: 29FCFF                     AND   #$FFFC                               
00/26E3: EB                         XBA                                         
00/26E4: 38                         SEC                                         
00/26E5: E9000A                     SBC   #$0A00                               
00/26E8: 8303                       STA   $03,S                                 
00/26EA: EB                         XBA                                         
00/26EB: 0A                         ASL                                         
00/26EC: 0A                         ASL                                         
00/26ED: 096200                     ORA   #$0062                               
00/26F0: 0303                       ORA   $03,S                                 
00/26F2: 8303                       STA   $03,S                                 
00/26F4: 38                         SEC                   ; ...and return       
00/26F5: FB                         XCE                                         
00/26F6: 60                         RTS                                         
00/26F7: 9CF403                     STZ   PWREDUP         ; Crash!             
00/26FA: 78                         SEI                                         
00/26FB: DB                         STP                                         
00/26FC: 46414E5441                 ASC   'FANTAVISION'00                       
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: 2949
Localisation: Le Chesnay, France

MessagePosté le: Sam 05 Mar 2016, 19:34    Sujet du message: Répondre en citant

And the Block.Warden view. The bytes to change are enclosed with > and >, two times here!

Code:

Block: $002B (43)       Volume name: FANTAVISION     Friday      5-Mar-16  6:20
Prefix: /FANTAVISION/                                                           
Following: FANTA.SYSTEM, Type SYS, Rel block 4, Byte $00068E                   
(c) Q      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F            Edit mode
1988ZSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
    Z 000: 85 14 84 E5 8A 6A 6A 29 80 85 16 20 7B 00 B0 24   ...e.jj)... {.0$   
  b Z 010: A9 30 85 E8 C6 E8 F0 1F 20 72 00 B0 F7 A5 29 6A   )0.hFhp. r.0w%)j   
B y Z 020: 6A 6A 29 40 05 2B C5 14 D0 0D A5 2A D0 E6 A9 0C   jj)@.+E.P.%*Pf).   
L   Z 030: A0 0A D0 0A A9 32 2C A9 31 2C A9 30 38 60 85 EA    .P.)2,)1,)08`.j   
O G Z 040: 84 EB A9 00 85 E6 85 E7 A2 00 A0 F8 84 E9 E8 D0   .k)..f.g". x.ihP   
C l Z 050: 04 E6 E9 F0 E5 B2 EA 10 FC C9 D5 D0 F1 B2 EA 10   .fipe2j.|IUPq2j.   
K e Z 060: FC C9 AA D0 F4 B2 EA 10 FC C9 96 D0 EC 18 8A 69   |I*Pt2j.|I.Pl..i   
  n Z 070: 05 AA A5 E9 69 08 A8 18 8A 65 E6 85 E6 98 65 E7   .*%ii.(..ef.f.eg   
W   Z 080: 85 E7 C6 E5 D0 C2 A9 00 A6 E6 A4 E7 18 60>20 03   .gFePB).&f$g.` .   
A B Z 090: 23 00 10 F7 26 21 01<B0 5E 86 00 84 01 E0 B0 98   #..w&!.0^....`0.   
R r Z 0A0: E9 1D 90 53 E0 78 98 E9 1E B0 4C>20 03 23 00 10   i..S`x.i.0L .#..   
D e Z 0B0: F7 26 20 01<B0 41 E0 40 98 E9 1F 90 3A E0 08 98   w& .0A`@.i..:`..   
E d Z 0C0: E9 20 B0 33 38 8A E5 00 EB 98 E5 01 EB 18 FB C2   i 038.e.k.e.k.{B   
N o Z 0D0: 20 4A 4A 18 69 32 00 4A 4A 18 69 67 00 4A 4A 4A    JJ.i2.JJ.ig.JJJ   
  n Z 0E0: 29 FC FF EB 38 E9 00 0A 83 03 EB 0A 0A 09 62 00   )|k8i....k...b.   
    Z 0F0: 03 03 83 03 38 FB 60 9C F4 03 78 DB 46 41 4E 54   ....8{`.t.x[FANT   
                                                                               
Arrows move cursor, ESC for command mode, \ = flip, ^F = find (RTN to cancel), 
^S = search, ^X = cancel chg, TAB = toggle hex/ascii, A for hi bit.             
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