Voir le sujet pr�c�dent :: Voir le sujet suivant |
Auteur |
Message |
toinet
Inscrit le: 15 Juin 2007 Messages: 326 Localisation: Paris, France
|
Post� le: Jeu 11 Oct 2007, 21:20 Sujet du message: Skyfox (Electronic Arts, 1984) |
|
|
0 to mach-4 in 4 seconds. The skyfox: a machine you've got to fly to believe. Incredible speed and responsiveness. Powerful, deadly weapons. State-of-the-art radar warning and guidance systems.
An incredible game by Ray Tobey. The game is damn fast, it is a fantastic software!
PROTECTION TYPE
On a standard diskette, track 6 is not copyable. A nibble editor will display lots of $B4 nibbles in it. Another Track Arcing protection (c) EOA
DISK COPY
- Launch Locksmith 6.3 fast disk backup
- Copy the disk
REMOVE THE PROTECTION
Launch your favorite disk editor
Remove the first check routine
- T1/S6/2B: 01 03 79 07 01 0F F5 70 => 01 B8 71 07 01 0F 30 70
Remove the second check routine
- T2/S0/AA: A0 => 60
Your backup copy is now ready,
Toinet |
|
Revenir en haut de page |
|
![](templates/subSilver/images/spacer.gif) |
toinet
Inscrit le: 15 Juin 2007 Messages: 326 Localisation: Paris, France
|
Post� le: Jeu 11 Oct 2007, 21:28 Sujet du message: |
|
|
The first protection is our usual call to $A000. Refer to the crack of Seven Cities of Gold to know more about the protection and the m-code routines.
The original m-code code at $A92B is:
Code: | 01 03 79 => JSR6 $A000
07 01 => SBC #$4D
0F F5 70 => BNE $A9F6 |
The code at $A9F6 calls itself, it is an infinite loop...
We need to update the original m-code routine:
- the JSR6 $A000 will call a 6502 RTS
- the BNE $A9F6 will branch to the next opcode
Remember the EOR values used by the m-code routine?
- low byte is EOR #$03
- high byte is EOR #$D9
Update the JSR6 $A000
- we have a 6502 RTS at $A8BB,
- BB EOR #$03 => B8
- A8 EOR #$D9 => 71
Update the BNE $A9F6
- next instruction is at $A933
- 33 EOR #$03 => 30
- A9 EOR #$D9 => 70
Congratulations, you have the explanations of the first change in T1/S6/2B
toinet
Derni�re �dition par toinet le Jeu 11 Oct 2007, 21:45; �dit� 1 fois |
|
Revenir en haut de page |
|
![](templates/subSilver/images/spacer.gif) |
toinet
Inscrit le: 15 Juin 2007 Messages: 326 Localisation: Paris, France
|
Post� le: Jeu 11 Oct 2007, 21:45 Sujet du message: |
|
|
The second protection check arises when your Skyfox is on Mother Earth, not in the air!
With that check routine, the memory is cleared with $00 and a jump to $FA62 is performed, just like when you perform a reset. So, let's find where the reset vector redirects to:
- $03F2 : AA BF 1A => $BFAA
Bingo! We have our beloved check that is called twice in the game:
- on track A, sector 5
- on track 13, sector E
Let's change the routine by performing a RTS when it is called:
- T2/0/AA: A0 47 => 60 47
Reboot and... enjoy the game,
toinet |
|
Revenir en haut de page |
|
![](templates/subSilver/images/spacer.gif) |
|