|
|
IDENTIFICATION SERVEUR : 10.14.20.76 - CLIENT : 3.221.159.255 |
|
Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
toinet Site Admin
Inscrit le: 15 Juin 2007 Messages: 3062 Localisation: Le Chesnay, France
|
Posté le: Jeu 30 Mai 2019, 9:36 Sujet du message: Aesop's Fables IIgs (Unicorn Software, 1986) |
|
|
#999 - Reading comprehension and language arts software. 12 stories for children ages 6-9. 1 or 2 players. Skills developed: reading, comprehension, spelling, vocabulary building, alphabetizing, rhyming, contractions, memory building, and computer literacy!
Disk structure
This is a standard 3.5" disk that can be copied with ZZCopy or Photonix II.
Protection type
This is the usual track length protection check on tracks $20 and $21, side 1 (there are both sides on a 3.5" disk: side 0 and side 1). If the length of the track is not within a known range, then we have a copy and the program quits to the launcher.
Searching for the protection
In 2016, I cracked Read and Rhyme and they share the same protection (see http://www.hackzapple.com/phpBB2/viewtopic.php?t=1077). The code is slightly different but I loaded the program AESOP.SYS16 in The Flaming Bird Disassembler and searched for E0 B0 (CPX #$B0) which verifies the track length. I got it in the at $7370. Then, it was a matter of stepping backwards to find the initial call to the protection. It is at $09EF and it stores the result at $1006. If the value is 0, we have an original disk, otherwise we have a copy.
How to crack
Code: | Insert a copy of the /AF.1 disk in your 3.5" drive. Launch Block.Warden
Prefix /AF.1
Follow file AESOP.SYS16
At offset $A38: 8D -> 9C
Write the block onto disk |
The disk images are available at http://www.brutaldeluxe.fr/crack/
Reboot and... enjoy,
LoGo
2/2019 |
|
Revenir en haut de page |
|
 |
toinet Site Admin
Inscrit le: 15 Juin 2007 Messages: 3062 Localisation: Le Chesnay, France
|
Posté le: Jeu 30 Mai 2019, 9:37 Sujet du message: |
|
|
The protection check
Code: | SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
01/734F: AA TAX
01/7350: A302 LDA $02,S
01/7352: 8304 STA $04,S
01/7354: A301 LDA $01,S
01/7356: EB XBA
01/7357: 8302 STA $02,S
01/7359: 68 PLA
01/735A: 8B PHB
01/735B: 08 PHP
01/735C: 4B PHK
01/735D: AB PLB
01/735E: 8A TXA
01/735F: 48 PHA
01/7360: 22CE7301 JSL $0173CE
01/7364: 68 PLA
01/7365: E230 SEP #$30
01/7367: A221 LDX #$21
01/7369: A001 LDY #$01
01/736B: 20AF73 JSR $73AF
01/736E: B03B BCS $73AB
01/7370: E0B0 CPX #$B0
01/7372: 98 TYA
01/7373: E91D SBC #$1D
01/7375: 902C BCC $73A3
01/7377: E078 CPX #$78
01/7379: 98 TYA
01/737A: E91E SBC #$1E
01/737C: B029 BCS $73A7
01/737E: A220 LDX #$20
01/7380: A001 LDY #$01
01/7382: 20AF73 JSR $73AF
01/7385: B024 BCS $73AB
01/7387: E040 CPX #$40
01/7389: 98 TYA
01/738A: E91F SBC #$1F
01/738C: 9015 BCC $73A3
01/738E: E008 CPX #$08
01/7390: 98 TYA
01/7391: E920 SBC #$20
01/7393: B012 BCS $73A7
01/7395: A900 LDA #$00
01/7397: 48 PHA
01/7398: 22727401 JSL $017472
01/739C: A900 LDA #$00
01/739E: EB XBA
01/739F: 68 PLA
01/73A0: 28 PLP
01/73A1: AB PLB
01/73A2: 6B RTL
01/73A3: A90A LDA #$0A
01/73A5: 80F0 BRA $7397
01/73A7: A914 LDA #$14
01/73A9: 80EC BRA $7397
01/73AB: A91E LDA #$1E
01/73AD: 80E8 BRA $7397
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS |
Calling the protection
Code: | SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
01/09DB: A504 LDA $04
01/09DD: 18 CLC
01/09DE: 690001 ADC #$0100
01/09E1: 8504 STA $04
01/09E3: 48 PHA
01/09E4: A21B022200 _FMStartUp
01/09EB: AD0810 LDA $1008
01/09EE: 48 PHA
01/09EF: 224F7301 JSL $01734F ; call protection che
01/09F3: 8D0610 STA $1006 ; store result
01/09F6: 18 CLC
01/09F7: 60 RTS
01/09F8: C230 REP #$30
01/09FA: A90100 LDA #$0001
01/09FD: 8D0010 STA $1000
01/0A00: 9C0210 STZ $1002
01/0A03: 9C6210 STZ $1062
01/0A06: 203180 JSR $8031
01/0A09: AD6410 LDA $1064
01/0A0C: 8D450E STA $0E45
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS |
The later check
Code: | SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
01/0B50: 20E90E JSR $0EE9
01/0B53: A90700 LDA #$0007
01/0B56: 8D6410 STA $1064
01/0B59: A90900 LDA #$0009
01/0B5C: 8D6810 STA $1068
01/0B5F: 208C7F JSR $7F8C
01/0B62: 9C6410 STZ $1064
01/0B65: 201580 JSR $8015
01/0B68: AD0610 LDA $1006 ; was prot OK?
01/0B6B: F01B BEQ $0B88 ; yes
01/0B6D: A9940E LDA #$0E94 ; no
01/0B70: 8D6410 STA $1064
01/0B73: A90100 LDA #^$0E94
01/0B76: 8D6610 STA $1066
01/0B79: A96400 LDA #$0064
01/0B7C: 8D6810 STA $1068
01/0B7F: 20DC7E JSR $7EDC
01/0B82: 20AC78 JSR $78AC
01/0B85: 4C330E JMP $0E33
01/0B88: A97E0E LDA #$0E7E
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
|
|
|
Revenir en haut de page |
|
 |
|
|
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
|
|