|
|
IDENTIFICATION SERVEUR : 10.14.20.22 - CLIENT : 3.239.242.55 |
|
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: Mar 05 Jan 2016, 11:52 Sujet du message: Math Blaster! (Davidson, 1983) |
|
|
This is one of the first Davidson titles on 3.5". The program runs under ProDOS. Probably v1.
When one copies the disk, the block #776 is in error. This is the usual Davidson protection: a check of a bad block. If you have an original, you will have an error reading the block. If you have no pb reading it, then you have a copy and the program crashes.
How to crack
Launch Block.Warden
Edit file STARTUP (if is not a BASIC file but a binary executable encapsulated into a BASIC file)
At file offset $1C6E: 90 0C -> A9 27
Save the block
The disk is at http://www.brutaldeluxe.fr/crack/
Reboot and... enjoy,
LoGo
1/2016
The entry point. At $2400, we have the protection check:
Code: |
00/2491: 4C 94 24 JMP 2494
00/2494: 20 00 24 JSR 2400
00/2497: A0 FF LDY #FF
00/2499: 8C F4 03 STY 03F4
00/249C: A0 80 LDY #80
00/249E: 8C D6 00 STY 00D6
00/24A1: A0 FF LDY #FF
00/24A3: C4 FF CPY FF
00/24A5: F0 03 BEQ 24AA {+03}
00/24A7: 6C F2 03 JMP (03F2)
|
The protection code at $2400
Code: |
00/2400: 08 PHP Save all
00/2401: 48 PHA
00/2402: 98 TYA
00/2403: 48 PHA
00/2404: 8A TXA
00/2405: 48 PHA
00/2406: A5 F8 LDA F8
00/2408: 48 PHA
00/2409: A5 F9 LDA F9
00/240B: 48 PHA
00/240C: A5 FA LDA FA
00/240E: 48 PHA
00/240F: AD 30 BF LDA BF30 Get the drive
00/2412: 4A LSR
00/2413: 4A LSR
00/2414: 4A LSR
00/2415: 4A LSR
00/2416: 29 07 AND #07
00/2418: 09 C0 ORA #C0
00/241A: 85 F9 STA F9
00/241C: A9 00 LDA #00
00/241E: 85 F8 STA F8
00/2420: A0 01 LDY #01
00/2422: B1 F8 LDA (F8),Y
00/2424: C9 20 CMP #20
00/2426: D0 22 BNE 244A {+22}
00/2428: A0 03 LDY #03
00/242A: B1 F8 LDA (F8),Y
00/242C: D0 1C BNE 244A {+1C}
00/242E: A0 05 LDY #05
00/2430: B1 F8 LDA (F8),Y
00/2432: C9 03 CMP #03
00/2434: D0 14 BNE 244A {+14}
00/2436: A0 FF LDY #FF
00/2438: B1 F8 LDA (F8),Y
00/243A: D0 0E BNE 244A {+0E}
00/243C: A9 10 LDA #10 Block for 5.25"
00/243E: 8D 04 22 STA 2204
00/2441: A9 01 LDA #01
00/2443: 8D 05 22 STA 2205
00/2446: D0 0C BNE 2454 {+0C}
00/2448: F0 0A BEQ 2454 {+0A}
00/244A: A9 08 LDA #08 Block for 3.5"
00/244C: 8D 04 22 STA 2204
00/244F: A9 03 LDA #03
00/2451: 8D 05 22 STA 2205
00/2454: AD 30 BF LDA BF30
00/2457: 8D 01 22 STA 2201
00/245A: A9 03 LDA #03
00/245C: 8D 00 22 STA 2200
00/245F: A9 00 LDA #00
00/2461: 8D 02 22 STA 2202
00/2464: A9 20 LDA #20
00/2466: 8D 03 22 STA 2203
00/2469: 20 00 BF JSR BF00 Read
00/246C: 80 80
00/246D: 00 22 2200
00/246F: 90 0C BCC 247D {+0C} Branches on a copy
00/2471: 85 FA STA FA Saves the error code
00/2473: C9 27 CMP #27 Is it I/O err?
00/2475: D0 06 BNE 247D {+06}
00/2477: A9 FF LDA #FF Yes, we're good!
00/2479: 85 FF STA FF
00/247B: D0 04 BNE 2481 {+04}
00/247D: A9 00 LDA #00 No, a copy!
00/247F: 85 FF STA FF
00/2481: 68 PLA
00/2482: 85 FA STA FA
00/2484: 68 PLA
00/2485: 85 F9 STA F9
00/2487: 68 PLA
00/2488: 85 F8 STA F8
00/248A: 68 PLA
00/248B: AA TAX
00/248C: 68 PLA
00/248D: A8 TAY
00/248E: 68 PLA
00/248F: 28 PLP
00/2490: 60 RTS
|
|
|
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
|
|