home *** CD-ROM | disk | FTP | other *** search
/ hackzapple.com / www.hackzapple.com.tar / www.hackzapple.com / DISKII / DISKIITECH08.HTM.orig < prev    next >
Text File  |  2010-10-06  |  8KB  |  157 lines

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
  2. <HTML>
  3. <HEAD>
  4. <TITLE>HACK Z APPLE, Collection Apple II</TITLE>
  5.   <link rel="shortcut icon" type="image/x-icon" href="http://www.hackzapple.com/favicon.ico">
  6.   <meta http-equiv="imagetoolbar" content="no">
  7.   <meta name="author" content="JPL">
  8.  <meta name="KEYWORDS"    content="HACK Z APPLE, JPL, Cracking, Hacking, DISK II, DRIVES, DISQUETTES, Collection APPLE II, APPLE, Apple II, APPLE II Plus, 2+, Europlus, 2e, //e, enhanced, Platinium, Stealth,  Cortland, GS, IIGS, WOZ, IIGS WOZ, ROM 0, ROM 1, ROM 4, IIc, IIc Plus,Apple III, LISA, MAC XL, DARK VADOR, ITT 2020, APPLE BF,APPLE REV0, REVISION 0, RFI, NON RFI">
  9.   <meta name="TITLE"     content="Apple II standard">
  10.   <meta name="OWNER"     content="HACKZAPPLE.COM">
  11.   <meta name="SUBJECT"     content="Collection Apple II">
  12.   <meta name="REVISIT-AFTER"     content="10 DAYS">
  13.   <meta name="LANGUAGE" content="FR">
  14.   <meta name="ROBOTS"     content="All">   
  15. <link href="../BASIC.CSS" rel="stylesheet" type="text/css"> 
  16. </HEAD>
  17.  
  18. <BODY>
  19. <CENTER>
  20.  
  21. <A NAME="DISK08"></A>
  22. <TABLE border="0" cellspacing="0" cellpadding="0" width="700">
  23. <TR> 
  24.     <TD WIDTH="200"> </TD> 
  25.     <TD WIDTH="180"> </TD> 
  26.     <TD WIDTH="120"></TD> 
  27.     <TD WIDTH="10"></TD> 
  28.     <TD WIDTH="190"></TD> 
  29. </TR>
  30.  
  31. <TR>     <TD COLSPAN="4" valign="TOP" > <img src="../THEMAS/M3/XDISK8.PNG" BORDER=0></TD>  
  32.     <TD> 
  33.     <CENTER>
  34.     <A HREF="DISKIITECH07.HTM" > <img  src="../THEMAS/DIVERS/PRIOR1.PNG" BORDER=0></A>
  35.     <A HREF="DISKIITECH.HTM" > <img  src="../THEMAS/DIVERS/HOME1.PNG" BORDER=0></A>  
  36.     <A HREF="DISKIITECH09.HTM" ><img  src="../THEMAS/DIVERS/SUITE1.PNG" BORDER=0></A>
  37.     </CENTER>
  38.     </TD>
  39. </TR>
  40. <TR> <TD COLSPAN="5" HEIGHT="10"></TD></TR>
  41.  
  42. <TR> <TD COLSPAN ="5" CLASS="TITRE3">Description d'un BOOT normal</TD></TR>
  43. <TR> <TD COLSPAN ="5" HEIGHT="1" BGCOLOR="BLUE"></TD></TR>
  44. <TR> <TD COLSPAN="5" CLASS="PARAG1">
  45.     <BR>
  46.     Lorque l'APPLE II est allumΘ (avec une ROM AUTOSTART ce qui est le cas de toutes les machines 
  47.     α partir du II+), le programme en ROM cherche s'il y a un contr⌠leur de disquette dans les slots 
  48.     en partant de 7 vers 1 c'est pourquoi on rΘserve le 7 au disque dur et le 6 au contr⌠leur de 
  49.     disquette.
  50.     <BR><BR>
  51.     </TD>
  52. </TR>
  53. <TR> <TD COLSPAN="2" CLASS="PARAG1">
  54.     <IMG SRC="PROMP5P6.PNG">
  55.     </TD>
  56.     <TD COLSPAN="3" CLASS="PARAG1">
  57.     Si un tel contr⌠leur est trouvΘ alors la ROM lui passe le contr⌠le en exΘcutant le programme du dit
  58.     contr⌠leur qui se trouve en Cx00 sachant que x est le numΘro de slot (donc sur une machine tout α 
  59.     fait configurΘe en standard ce sera $C600)
  60.     <BR><BR>
  61.     Vous noterez qu'il y a deux PROM sur une carte contr⌠leur APPLE, le programme de bootstrap est stockΘ 
  62.     sur la PROM P5. Il est accessible aisΘment en allant sous le moniteur (CALL-151 suivi de RETURN) puis
  63.     en tapant C600.C700L (Θgalement suivi de RETURN). Pour la PROM P6 voir la rubrique relative au 
  64.     <A HREF="DISKIITECH07A.HTM">fonctionnement du Logic State Sequencer</A>.
  65.     </TD>
  66. </TR>
  67.  
  68. <TR> <TD COLSPAN ="5" CLASS="TITRE3K"> <IMG SRC="../THEMAS/DIVERS/CRACK.BMP"> LE TRACE DE BOOT (FRONT DOOR TECHNIQUE)</TD></TR>
  69. <TR> <TD COLSPAN ="5" HEIGHT="1" BGCOLOR="#40FF40"></TD></TR>
  70. <TR> <TD COLSPAN ="5" CLASS="PARAG1">
  71.     <BR>
  72.     Cette redoutable technique dΘcoule immΘdiatement de ce que l'on vient de voir : Quel que soit le programme
  73.     protΘgΘ il ne peut Ωtre chargΘ QUE SI son secteur 0 de la piste 0 est standard...
  74.     <BR><BR>
  75.     Partant de lα il suffit de changer quelques octets du programme de bootstrap pour ne charger que le secteur
  76.     0 en question et de suivre en pas α pas ce qui se passe. Changer la PROM ??? vous n'y pensez pas... 
  77.     donc comment faire ?!<BR>
  78.     Il suffit de dΘplacer le contenu de la ROM en mΘmoire en conservant l'alignement $x600. C'est α dire que
  79.     vous recopiez le contenu de la PROM en $8600, $9600 ou n'importe quelle adresse de type $x600. Pour ce faire
  80.     vous passez sous le moniteur (CALL-151) et tapez
  81.     <BR><BR>
  82.     <FONT COLOR="#40FF40"> 9600  < C600.C700M suivi de RETURN</FONT>
  83.     <BR><BR>
  84.     Vous observez en $96F8 le JMP $801 que vous remplacez par des BRK ($00) ou un JMP $9801 adresse α laquelle
  85.     vous prΘciserez soit des BRK soit un JMP $FF65 (retour moniteur) ce qui donne la modification suivante:
  86.     <BR><BR>
  87.     <FONT COLOR="#40FF40">96F8 : 4C 01 98 suivi de RETURN 
  88.     <BR><BR>
  89.     9801 : 4C 65 FF suivi de RETURN </FONT>
  90.     <BR><BR>
  91.     Puis aprΦs avoir insΘrΘ la disquette du programme dont vous ambitionnez de supprimer la protection, 
  92.     vous effectuez le lancement en manuel par la commande :
  93.     <BR><BR>
  94.     <FONT COLOR="#40FF40">9600G suivi de RETURN </FONT>
  95.     <BR><BR>
  96.     Magique, le drive se met en route comme s'il bootait normalement puis vous entendez un BIP et votre 
  97.     lecteur continue α tourner dans le vide. C'est fait vous avez ce que le programme devait charger en
  98.     $800. ArrΩtez le drive par la commande softswitch :
  99.     <BR><BR>
  100.     <FONT COLOR="#40FF40">C0E8 suivi de RETURN </FONT>
  101.     <BR><BR>
  102.     Ensuite vous regardez ce qu'il y a en $800, normalement vous avez le chiffre 1 qui correspond au nombre
  103.     de secteurs chargΘs par la "PROM" et votre dΘbut de programme s'Θtend alors de $801 α $8FF que vous pouvez
  104.     lire en assembleur par la commande .
  105.     <BR><BR>
  106.     <FONT COLOR="#40FF40">801L suivi de RETURN... autant que nΘcessaire jusqu'α la fin de ce qui est chargΘ </FONT>
  107.     <BR><BR>
  108.     <FONT COLOR="RED">ATTENTION si vous avez en $800 un autre chiffre cela signifie que la "PROM" a chargΘ autant de secteurs
  109.     que le prΘcise ce chiffre  et ils sont de $800 α $xxx sachant qu'un secteur est une page de mΘmoire 
  110.     de $FF octets. <BR>
  111.     Exemple : si vous avez un $03 votre boot est chargΘ de $800 α $AFF</FONT>
  112.     <BR><BR>
  113.     Ensuite le dΘsassemblage de ce premier chargement vous explique ce qui se passe. Vous dΘplacez alors 
  114.     celui-ci dans la zone mΘmoire ad hoc ($9800 dans notre exemple) et vous effectuez les points d'arrΩts 
  115.     adΘquats en positionnant des JMP $FF65 ou des BRK pour Ωtre s√r de garder la main avant les passages aux endroits 
  116.     critiques et vous relancez en tapant la commande
  117.     <BR><BR>
  118.     <FONT COLOR="#40FF40">9600G suivi de RETURN </FONT>
  119.     <BR><BR>
  120.     Eh oui ! on fait un reboot mais cette fois la "PROM" va certes recharger le premier bootstrap mais fera
  121.     la connexion sur $9801 au lieu de $801 et ce sera votre bootstrap modifiΘ qui pilotera la suite. 
  122.     En procΘdant ainsi de pas en pas vous obtenez tout le programme, que vous devez dΘsassembler 
  123.     pour comprendre ce qui se passe et rΘussir α ⌠ter la protection. 
  124.     <BR><BR>
  125.     Dans la pratique il est prΘfΘrable de sauvegarder les morceaux de programmes extraits au fur et 
  126.     α mesure de faτon α pouvoir α la fin reconstituer un fichier ou une disquette au format DOS 3.3.
  127.     Prenons un exemple de programme qui se charge sans faire de contr⌠le par la suite : <A HREF="../ORG1/MZ/CRACKING/EDD4.HTM">EDD 4 Plus</A>
  128.     <BR><BR>
  129.     Pourquoi EDD ? parce que c'est un programme de copie des protections... qui est protΘgΘ au prΘtexte 
  130.     qu'il sert d'entraεnement.
  131. </TD>
  132. </TR>
  133.  
  134.  
  135. <TR> <TD COLSPAN="5" height="10" ></TD> </tr>
  136. <TR>    <TD COLSPAN="5" CLASS="PARAG1"> <CENTER> 
  137.     <A HREF="DISKIITECH07.HTM"> <img  src="../THEMAS/DIVERS/PRIOR1.PNG" BORDER=0></A>
  138.     <A HREF="DISKIITECH09.HTM"> <img  src="../THEMAS/DIVERS/SUITE1.PNG" BORDER=0></A>
  139.     </CENTER>
  140.     </TD>
  141. </TR>
  142.  
  143.  
  144. <TR> <TD COLSPAN="5" height="10"></TD>  </tr>
  145. <TR><TD COLSPAN="5"  ><HR color="BLUE"></td>
  146. </TR>
  147. <TR> 
  148.     <TD COLSPAN="5">  
  149.     <CENTER>
  150.     <A HREF="javascript:history.back()"> <IMG SRC="../THEMAS/DIVERS/JSBACK.PNG"></A> 
  151.     <A HREF="DISKIITECH.HTM" > <IMG SRC="../THEMAS/DIVERS/HOMESITE.PNG"></A>
  152.     </CENTER></TD>
  153. </TR>
  154. </TABLE></CENTER>
  155. </BODY>
  156. </HTML>
  157.