Index du Forum
IDENTIFICATION SERVEUR : 51.83.8.59 - CLIENT : 18.232.51.247

 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 

The golden spike (National Geo Society, 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: 3020
Localisation: Le Chesnay, France

MessagePosté le: Mer 27 Juil 2011, 21:04    Sujet du message: The golden spike (National Geo Society, 1987) Répondre en citant

The GOLDEN SPIKE is a multimedia courseware adventure in history and geography for students in grades five through nine. Using the construction of the first transcontinental railroad as its theme, the GOLDEN SPIKE contains a wealth of historical and geographical information.


Only side 1 of both disks has the second on-disk protection.


PROTECTION TYPE
It is a final header change on a ProDOS 8 double-sided diskette. They are defined as:
- D5 AA 96 / DE DE
- D5 AA AD / DE AA

There is also another on-disk protection which is stored in a system file. See code after.


REMOVE THE PROTECTION (THE FIRST)
- Launch Advanced Demuffin 1.4
- Press P to pass boot
- Go to the monitor
- B99B: DE
- B942: 38
- Press Ctrl-Y
- Insert original disk in drive 1, a blank diskette in drive 2
- Copy using the standard settings.
- Redo the process for side 2


REMOVE THE PROTECTION (THE SECOND)
- Launch Disk Fixer 4
- Press 'O'ptions, set disk format to ProDOS
- Press 'D' to display the directory of drive 2 (the one where you have the copy of The golden spike, side 1)
- Select PRODOS and follow the file to block 2.
- At offset $E8, replace "CONFIG" with "SYSTEM"
- Save the sector back to disk

Reboot and enjoy!

Antoine
7/2011
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: 3020
Localisation: Le Chesnay, France

MessagePosté le: Mer 27 Juil 2011, 21:06    Sujet du message: Répondre en citant

THE OPTIONS MENU OF DISK FIXER 4

Code:

--------- INPUT/OUTPUT CONTROL ---------
                                       
ADRESS FIELD MARK  : D5-AA-96 (D5-AA-96)
ADRESS FIELD EPILOG: DE-AA-EB (DE-AA-EB)
DATA FIELD MARK    : D5-AA-AD (D5-AA-AD)
DATA FIELD EPILOG  : DE-AA-EB (DE-AA-EB)
CHECKSUM ENABLED   : YES      (YES)     
NUMBER OF TRACKS   : $24      ($23)     
                                       
DOS TYPE           : PRODOS   (DOS3.3) 
                                       
 +--------- SECTOR NUMBERING ---------+
 !$00: $00 $02 $04 $06 $08 $0A $0C $0E!
 !$08: $01 $03 $05 $07 $09 $0B $0D $0F!
 +------------- NIBBLES: -------------+
 !$00: 96  97  9A  9B  9D  9E  9F  A6 !
 !$08: A7  AB  AC  AD  AE  AF  B2  B3 !
 !$10: B4  B5  B6  B7  B9  BA  BB  BC !
 !$18: BD  BE  BF  CB  CD  CE  CF  D3 !
 !$20: D6  D7  D9  DA  DB  DC  DD  DE !
 !$28: DF  E5  E6  E7  E9  EA  EB  EC !
 !$30: ED  EE  EF  F2  F3  F4  F5  F6 !
 !$38: F7  F9  FA  FB  FC  FD  FE  FF !
 +------------------------------------+



THE DIRECTORY OF SIDE 1

Code:

------------ DIRECTORY MODE ------------
NAME IS  /UPA                           
$00:$0E  WORKPIC.P                     
$01:$0E  CHART3.P                       
$03:$04  BASIC.SYSTEM                   
$05:$0E  PRODOS                         
$19:$0E  STARTUP                       
$09:$0E  STARTUP1                       
$0A:$02  STARTUP2                       
$0A:$08  STARTUP3                       
$0B:$04  MAP2                           
$0C:$06  PIC3                           
$0D:$0A  SETUP.0                       
$0D:$0C  MOVER2.OBJ.0                   
$0E:$00  AUXG                           
$0D:$06  GPDR.0                         
$0F:$0C  VIGPNT                         
$10:$0C  MOUSE                         
$1E:$0A  MAP1                           
$11:$0A  VARIABLES                     
$12:$02  TOTAL1                         
$16:$06  TUTOR                         
$11:$00  SPIKE147                       
-----------------PRODOS-----------------
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: 3020
Localisation: Le Chesnay, France

MessagePosté le: Mer 27 Juil 2011, 21:10    Sujet du message: Répondre en citant

THE PRODOS CHANGE (PROTECTION #2)
The boot at $0801 searches for a ProDOS file on the root directory. It launches it.
After some inits, ProDOS normally launches the first *.SYSTEM file in the root directory.

The funny change in this ProDOS system file is to launch the first *.CONFIG system file (on the disk, there is only one: MEMORY.CONFIG) and that file contains the check of an on-disk protection.

Our idea is to write back the original pattern searched (SYSTEM) instead of the modified one (CONFIG)


Code:

-------------- DISK EDIT ---------------
TRACK $06/SECTOR $02/VOLUME $FE/BYTE $E8
----------------------------------------
$80: CD A2 A0 C6 C9 CC C5 A0    M" FILE
$88: A0 AA AA A0 AA AA A0 A0     ** ** 
$90: D3 D9 D3 D4 C5 CD A0 D0    SYSTEM P
$98: D2 CF C7 D2 C1 CD A0 D4    ROGRAM T
$A0: CF CF A0 CC C1 D2 C7 C5    OO LARGE
$A8: A0 A0 AA AA AA AA A0 D5      **** U
$B0: CE C1 C2 CC C5 A0 D4 CF    NABLE TO
$B8: A0 CC CF C1 C4 A0 D8 AE     LOAD X.
$C0: D3 D9 D3 D4 C5 CD A0 AA    SYSTEM *
$C8: AA AA AA AA AA AA AA AA    ********
$D0: AA 00 03 80 02 00 14 01    *@C.B@TA
$D8: 02 01 00 00 00 04 01 00    BA@@@DA@
$E0: 20 00 00 00 00 01 00 AE     @@@@A@.
$E8:>C3<CF CE C6 C9 C7 8D 08    CONFIG.H
$F0: C0 B5 42 8D 09 C0 95 42    @5B.I@.B
$F8: CA 10 F3 A9 28 38 8D 08    JP3)(8.H
----------------------------------------
BUFFER 0/SLOT 6/DRIVE 2/MASK OFF/NORMAL
PRODOS:PRODOS                       /$02
----------------------------------------
COMMAND :                               



And the change is...
Code:

-------------- DISK EDIT ---------------
TRACK $06/SECTOR $02/VOLUME $FE/BYTE $EE
----------------------------------------
$80: CD A2 A0 C6 C9 CC C5 A0    M" FILE
$88: A0 AA AA A0 AA AA A0 A0     ** ** 
$90: D3 D9 D3 D4 C5 CD A0 D0    SYSTEM P
$98: D2 CF C7 D2 C1 CD A0 D4    ROGRAM T
$A0: CF CF A0 CC C1 D2 C7 C5    OO LARGE
$A8: A0 A0 AA AA AA AA A0 D5      **** U
$B0: CE C1 C2 CC C5 A0 D4 CF    NABLE TO
$B8: A0 CC CF C1 C4 A0 D8 AE     LOAD X.
$C0: D3 D9 D3 D4 C5 CD A0 AA    SYSTEM *
$C8: AA AA AA AA AA AA AA AA    ********
$D0: AA 00 03 80 02 00 14 01    *@C.B@TA
$D8: 02 01 00 00 00 04 01 00    BA@@@DA@
$E0: 20 00 00 00 00 01 00 AE     @@@@A@.
$E8: D3 D9 D3 D4 C5 CD>8D<08    SYSTEM.H
$F0: C0 B5 42 8D 09 C0 95 42    @5B.I@.B
$F8: CA 10 F3 A9 28 38 8D 08    JP3)(8.H
----------------------------------------
BUFFER 0/SLOT 6/DRIVE 2/MASK OFF/NORMAL
PRODOS:PRODOS                       /$02
----------------------------------------
COMMAND :                               


That's all, there.
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: 3020
Localisation: Le Chesnay, France

MessagePosté le: Mer 27 Juil 2011, 21:12    Sujet du message: Répondre en citant

THE MEMORY.CONFIG FILE
This is where the check is. I won't tell a lot about it right now. I would like you to comment on the check performed by the protection...

Code:

*
* The Golden Spike
* MEMORY.CONFIG
*
* © 1987, National Geographic Society
* (k) 2011, LoGo
*

         TYP   SYS
         ORG   $002000
         MX    %11

*

PWREDUP EQU $03F4
PRODOS8 EQU $BF00
KBDSTROBE EQU $C010

*

L2000    JSR   L2120
         NOP
         NOP

         LDA   #$00
         STA   $04
         STA   $27F4
         STA   $27EB

         LDA   #$27
         LDY   #$E8
         JSR   $27B5

         LDA   #$00
         STA   $48

         LDA   $C089,X
         LDA   $C08E,X
L2020    JSR   $2944
         LDA   $2D
         CMP   $04
         BNE   L2020

L2029    LDA   $C08E,X
L202C    LDA   $C08C,X
         BPL   L202C
         CMP   #$FF
         BNE   L2029
         LDY   #$00
L2037    INY
         LDA   $C08E,X
L203B    LDA   $C08C,X
         BPL   L203B
         CMP   #$D5
         BNE   L2037
         CPY   #$07
         BNE   L2000
         INC   $04
         LDA   #$10
         CMP   $04
         BNE   L2020

L2050    LDA   #$00
         STA   $04
L2054    JSR   $2944
         LDA   $2D
         CMP   $04
         BNE   L2054

L205D    LDA   $C08C,X
         BPL   L205D
         CMP   #$AA
         BNE   L205D
L2066    LDA   $C08C,X
         BPL   L2066
         CMP   #$EB
         BNE   L205D

L206F    LDA   $C08C,X
         BPL   L206F
         CMP   #$FF
         BNE   L206F

         LDY   #$00
L207A    INY
         LDA   $C08E,X
L207E    LDA   $C08C,X
         BPL   L207E
         CMP   #$D5
         BNE   L207A
         CPY   #$10
         BNE   L2050

         INC   $04
         LDA   #$0A
         JSR   L2100

         LDA   #$04
         CMP   $04
         BNE   L209C
         INC   $04
         BNE   L2054

L209C    LDA   #$0F
         CMP   $04
         BNE   L205D
L20A2    JSR   $2944
         LDA   $2D
         CMP   #$0F
         BNE   L20A2
         JSR   $28DC

         LDY   #$00
L20B0    INY
         LDA   $C08E,X
L20B4    LDA   $C08C,X
         BPL   L20B4
         CMP   #$A5
         BNE   L20B0
         CPY   #$2B
         BNE   L20A2

         LDY   #$00
L20C3    INY
         LDA   $C08E,X
L20C7    LDA   $C08C,X
         BPL   L20C7
         CMP   #$D5
         BNE   L20C3
         CPY   #$5D
         BNE   L20A2
         LDY   #$00
         NOP
         JMP   L20F3

*

L20DA    LDA   #$20
         STA   $0478
         LDA   #$40
         STA   $047E
         LDA   #$23
         STA   $27EC
         LDY   #$00
         TYA
L20EC    STA   $BA00,Y
         INY
         BNE   L20EC
         RTS

*

L20F3    LDA   L2500,Y
         STA   L1F00,Y
         INY
         BNE   L20F3
         JMP   L1F00

*

         NOP
L2100    SEC
L2101    PHA
L2102    SBC   #$01
         BNE   L2102
         PLA
         SBC   #$01
         BNE   L2101
         RTS

         HEX   E7D9F9EEF6F4ABFFBEACA6B4EAD3F4B2
         HEX   F3BBEED9

L2120    JSR   L20DA
         STA   PWREDUP
         RTS

*
         HEX   PLENTY_OF_GARBAGE_REMOVED
*

L2500    =     *   

         ORG   $001F00

L1F00    JSR   PRODOS8
         DB    $CC
         DA    $1F80
         JSR   PRODOS8
         DB    $C8
         DA    $1F82
         JSR   PRODOS8
         DB    $CA
         DA    $1F88
         JSR   PRODOS8
         DB    $CC
         DA    $1F90
         LDY   L1F40
         STY   $0280
L1F1E    LDA   L1F40,Y
         STA   $0280,Y
         DEY
         BNE   L1F1E
         LDA   KBDSTROBE
         JMP   L2000

L1F40    STR   'BASIC.SYSTEM'

L1F80    DB    $01
         DB    $00
L1F82    DB    $03
         DA    L1F40
         DA    $8000
L1F87    DB    $01
         DB    $04
         DB    $01
         DA    $2000
         DW    $FFFF
         DW    $0000
L1F90    DB    $01
         DB    $00

   …
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
blk



Inscrit le: 05 Sep 2007
Messages: 114
Localisation: Zimbabwé

MessagePosté le: Mer 27 Juil 2011, 23:57    Sujet du message: Répondre en citant

Nice !
Cool
I dislike prodos very beaucoup much... and therefore, I avoid it un max... so that's toujours interresting to keep an eye on these cracks.
_________________
hin hin ^^
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé
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