home *** CD-ROM | disk | FTP | other *** search
/ hackzapple.com / www.hackzapple.com.tar / www.hackzapple.com / DISKII / DISKIITECH04A.HTM.orig < prev    next >
Text File  |  2010-10-06  |  12KB  |  224 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="DISK09"></A>
  22. <TABLE border="0" cellspacing="0" cellpadding="0" width="700">
  23. <TR> 
  24.     <TD WIDTH="200"> </TD> 
  25.     <TD WIDTH="100"> </TD> 
  26.     <TD WIDTH="200"></TD> 
  27.     <TD WIDTH="100"></TD> 
  28.     <TD WIDTH="100"></TD> 
  29. </TR>
  30.  
  31. <TR>     <TD COLSPAN="3" valign="TOP" > <img src="../THEMAS/M3/XDISK4A.PNG" BORDER=0></TD>  
  32.     <TD COLSPAN="2" > 
  33.     <CENTER>
  34.     <A HREF="DISKIITECH04.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="DISKIITECH07A.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. <TR> <TD COLSPAN="5" CLASS="TITRE3">Les champs magnΘtiques</TD></TR>
  42. <TR> <TD COLSPAN="5" HEIGHT="1" BGCOLOR="BLUE"></TD></TR>
  43. <TR>     <TD COLSPAN="5" CLASS="PARAG1">     
  44.     Au dΘpart le disque souple de la disquette contient des particules magnΘtiques, orientΘes dans n'importe quel sens. 
  45.     Ces particules sont sur la zone appellΘe OXYDE qui repose sur le disque souple lui-mΩme qui est en MYLAR. Cela donne
  46.     (en vue d'artiste car les couleurs ne sont lα que pour faire comprendre)
  47.     <BR><BR>
  48.     <BR><IMG SRC="TRANSITIONS0.PNG">
  49.     <BR><BR>
  50.     Le formattage de la disquette (outre le fait qu'il permet d'enregistrer des donnΘes servant au repΘrage des pistes 
  51.     et des secteurs) oriente ces particules magnΘtiques dans un sens ou un autre... bref met un peu d'ordre dans 
  52.     le souk gΘnΘral.
  53.     </TD>
  54. </TR>
  55.  
  56. <TR>     
  57.     <TD COLSPAN="2" >    
  58.     <BR><CENTER><IMG SRC="TRANSITIONS.PNG"></CENTER>
  59.     <BR><BR>
  60.     </TD>
  61.     <TD COLSPAN="3" CLASS="PARAG1"> 
  62.     <BR> 
  63.     L'enregistrement des 1 et des 0 se fait de faτon trΦs particuliΦre sur APPLE II α savoir que globalement un 1 est 
  64.     matΘrialisΘ par une inversion du champ magnΘtique et un 0 par l'absence de cette matΘrialisation.  
  65.     <BR><BR>
  66.     Le champ magnΘtique sur une piste est normalement parallΦle au sens de dΘplacement, et une inversion de champ 
  67.     lui est inverse (la rΘalitΘ est un peu plus complexe mais cela n'affecte pas la comprΘhension). 
  68.     <FONT COLOR="RED">Ces changements de champs magnΘtiques sont appelΘes transitions magnΘtiques</FONT> 
  69.     et ce sont elles qui sont α la base du systΦme qui permet de dΘterminer si on lit un bit 1 ou un bit 0.
  70.     <BR><BR>
  71.     Mais... lα o∙ tout se complique c'est lorsqu'on veut comprendre comment cela se passe.
  72.     <BR><BR>
  73.     </TD>
  74. </TR>
  75. <TR>     <TD COLSPAN="5" CLASS="PARAG1">     
  76.     Pour Θcrire un champ magnΘtique dans un sens ou dans un autre, il suffit d'inverser le courant qui traverse 
  77.     la bobine de la tΩte de lecture. Le schΘma ci-dessous vous montre ce qui se passe sur trois exemples consΘcutifs.
  78.     <BR><BR>
  79.     <IMG SRC="TRANSITIONS2.PNG">
  80.     <BR><BR>
  81.     Il faut bien comprendre que ECRITURE et LECTURE sont symΘtrique en ce qui concerne les signaux. Le schΘma ci-dessous
  82.     explique cette symΘtrie. Globalement, pour l'Θcriture on fait varier le courant dans la bobine de la tΩte de faτon α Θcrire 
  83.     les champs magnΘtiques et pour la lecture ce sont les  variations de ces champs magnΘtiques qui gΘnΘrent un courant 
  84.     induit dans la bobine de la tΩte de lecture.
  85.     <BR><BR>
  86.     <IMG SRC="TRANSITIONS1.PNG">
  87.     <BR><BR>
  88.     </TD>
  89. </TR>
  90. <TR>     <TD COLSPAN="5" CLASS="TITRE3"> <FONT COLOR="RED"><B>LE PRINCIPE DE FONCTIONNEMENT EN LECTURE</B></FONT></TD></TR>
  91. <TR>     <TD COLSPAN="5" CLASS="PARAG1"> 
  92.     1. Les variations des champs magnΘtiques prΘsents sur la disquette entraεnent un courant induit α travers 
  93.     la tΩte de lecture.
  94.     <BR><BR>
  95.     2. Ce courant est alors mis en forme, traitΘ et analysΘ par le MC3470 qui gΘnΘre un signal "pulse" selon le cas
  96.     <BR><BR>
  97.     3. Le "logic state sequencer" dΘfinit la valeur du bit α passer dans le registre de donnΘes lors du dΘroulement de son
  98.     code α travers l'enchaεnement des sΘquences. 
  99.     </TD>
  100. </TR>
  101. <TR>     <TD></TD><TD COLSPAN="4" CLASS="PARAG1"> 
  102.     Pour le 1 c'est relativement simple, dΦs lors qu'il y "pulse" on aura normalement un 1.  Mais pour le 0 ? 
  103.     Eh bien en fait le "logic state sequencer" est une machine α Θtat qui dΘtermine α un temps T qu'il y a un 0 dΦs 
  104.     lors qu'aprΦs un certain dΘlai entre le dernier "pulse" reτu et ce moment T, il n' a pas reτu un nouveau signal 
  105.     "pulse". Le point marquant la fin du dΘlai est appelΘ point de dΘcision. Il n'est pas le mΩme en DOS 3.2 
  106.     qu'en DOS 3.3. Tout savoir sur <A HREF="DISKIITECH07A.HTM">LE FONCTIONNEMENT DU SEQUENCER</A>
  107.     <BR><BR>
  108.     </TD>
  109. </TR>
  110. <TR>     <TD COLSPAN="5" CLASS="TITRE3R"> 
  111.      Pourquoi il n'est pas possible d'Θcrire plus de deux 0 de suite ?  
  112.     </TD>
  113. </TR>
  114. <TR>     <TD COLSPAN="5" CLASS="PARAG1"> 
  115.     <BR> 
  116.     En effet ce n'est pas tout α fait exact, vous pourriez parfaitement Θcrire $00 (0000.0000) sur la disquette puisqu'il suffit de
  117.     passer cette valeur au contr⌠leur comme s'il s'agissait d'un nibble valide... et il ne la refuserait pas car c'est 
  118.     au programme de contr⌠ler les valeurs valides ou non !    
  119.     <BR><BR>
  120.     Mais surtout vous ne pourriez pas la relire correctement pour plusieurs raisons :
  121.     <BR><BR>
  122.     1. De faτon gΘnΘrale vous ne sauriez jamais o∙ commence un nibble. En effet si la rΦgle du bit 7 α 1 n'Θtait pas imposΘe, vous
  123.     seriez incapable de faire la diffΘrence entre des bits 0 de nibbles valides et des bits 0 de synchronisation qui 
  124.     n'auraient d'ailleurs aucune signification. Le LSS est d'ailleurs programmΘ pour ne pas pouvoir lire les valeurs ne
  125.     commenτant pas par 1 (cf. l'explication dΘtaillΘe dans le HACKING CORNER de la rubrique
  126.      <A HREF="DISKIITECH07B.HTM">FONCTIONNEMENT EN DETAIL DU LSS POUR L'OPERATION "READ"</A>).
  127.     <BR><BR>
  128.     Alors admettons que vous n'Θcriviez que des nibbles supΘrieurs α $7F donc de $80 α $FF, et supposons que vous avez 
  129.     Θcrit des $80 (1000.0000)... il y a encore des problΦmes que nous allons voir en 2,3 et 4 ci-dessous.
  130.     <BR><BR>
  131.     2. Sans nier l'influence de la tempΘrature, de la vitesse du drive etc... qui font que l'on a des variations
  132.      magnΘtiques non souhaitΘes, la rΘpartition de l'oxyde magnΘtique n'est pas parfaite sur la disquette. 
  133.     Au niveau miscroscopique vous pourriez voir des amas plus ou moins Θpais ce qui entraεne des champs 
  134.     magnΘtiques d'intensitΘ variable, ce qui gΘnΘre des variations magnΘtiques, faibles certes, mais 
  135.     variations tout de mΩme qui constituent ce que l'on appelle du bruit et qui est normalement filtrΘ par 
  136.     le MC3470. 
  137.     <BR><BR>
  138.     3. Mais justement une particularitΘ du circuit Motorola MC3470 est de s'adapter aux niveaux des variations 
  139.     magnΘtiques. DΦs lors qu'il est trop longtemps sans recevoir de variations il s'adapte en augmentant sa sensibilitΘ...
  140.     et il dΘtecte alors les fameuses variations dΘcrites ci-avant... quand il ne les invente pas purement et simplement!
  141.     Il verrait des signaux lα o∙ il n'y a normalement rien α voir, et gΘnΘrerait α tort des "pulse" ! 
  142.     <BR><BR>
  143.     4. Et surtout vous perdriez votre base de temps qui s'appuie justement sur les inversions magnΘtiques... 
  144.     la vitesse des lecteurs serait critique. Si on tient compte de l'Alzheimer qui touche le circuit Motorola et qui est
  145.     expliquΘ en 2 et 3 ci-dessus vous comprendrez que cela devient trΦs vite α haut risque.
  146.     <BR><BR>
  147.     </TD>
  148. </TR>
  149.  
  150. <TR> <TD COLSPAN ="5" CLASS="TITRE3K"> <IMG SRC="../THEMAS/DIVERS/CRACK.BMP"> Hacking corner </TD></TR>
  151. <TR>     <TD COLSPAN="5" CLASS="PARAG1K"> 
  152.     <BR>
  153.     Apple a  fait le choix de limiter α deux 0 le nombre maximum de bits contigus pour un nibble. Mais ne vous 
  154.     faites pas d'illusions les Θditeurs de logiciels ont bien compris que cette limite est thΘorique malgrΘ les
  155.     rΘels risques de relecture impossible et certaines protections utilisent avec    un succΦs plus ou moins grand 
  156.     le fait d'Θcrire non 2 mais 3 zΘros contigus voire plus. 
  157.     <BR><BR>
  158.     La technique de dΘtection de la protection est alors :<BR>
  159.     <IMG SRC="../THEMAS/DIVERS/BULLET.GIF">soit une statistique d'erreurs<BR> 
  160.     <IMG SRC="../THEMAS/DIVERS/BULLET.GIF">soit une desynchronisation volontaire
  161.     <BR><BR>
  162.     En ce qui concerne la statistique d'erreurs cela part du principe que  votre programme de copie 
  163.     n'Θcrira pas autant de 0, il     fera un choix et au mieux considΘrera qu'il s'agit d'extra bits, au pire 
  164.     d'une zone recouvrement α la suite de plusieurs Θcritures.Quand bien mΩme votre programme supposerait qu'il s'agit 
  165.     d'extrabits, il n'en placerait en principe que 2 car c'est le nombre normal et α la relecture par la protection 
  166.     il n'y aurait jamais de variations dans la lecture 
  167.     (en clair on relirait toujours la mΩme chose sans erreurs) ce qui permettrait α la dite protection  de dΘterminer 
  168.     qu'il s'agit d'une copie. 
  169.     <BR><BR>
  170.     </TD>
  171. </TR>
  172.  
  173. <TR>     <TD COLSPAN="5" CLASS="PARAG1K" BGCOLOR="#204020"> 
  174.     Ce principe de protection consistant α dΘterminer si on a α faire α un original ou une copie en recherchant non pas 
  175.     une valeur prΘcise mais une erreur soit alΘatoire, soit systΘmatique se retrouve respectivement :<BR>
  176.     <IMG SRC="../THEMAS/DIVERS/BULLET2.GIF"> dans la technique des "weaks bits" utilisΘs sur les machines IBM (on lit ces weaks bits tant⌠t comme des 
  177.     1 tant⌠t comme des 0 et ce de faτon parfaitement alΘatoire) 
  178.     <BR>
  179.     <IMG SRC="../THEMAS/DIVERS/BULLET2.GIF"> et sur l'immonde et fantaisiste systΦme PROLOK avec son "trou" au laser qui lui doit absolument dΘtecter une erreur 
  180.     de lecture pour dΘterminer que c'est bien un original car il est impossible d'Θcrire sur la partie abimΘe de la 
  181.     disquette ... le fameux "trou". 
  182.     <BR><BR>
  183.     </TD>
  184. </TR>
  185.  
  186. <TR>     <TD COLSPAN="5" CLASS="PARAG1K"> 
  187.     En ce qui concerne la dΘsynchronisation volontaire, cela provient du fait que l'Θcriture de plusieurs 0 peut avoir 
  188.     pour objet de dΘsynchroniser la tΩte de lecture... car n'oubliez pas que vous pouvez lire  votre DATA REGISTER α tout
  189.     moment et en particulier en boucle infinie (Cf. BPL). Avec une dΘsynchronisation on se fonde sur le fait que 
  190.     seule la protection sait EXACTEMENT ce qu'elle doit trouver derriΦre la dΘsynchronisation en question ... pas 
  191.     le programme de copie !!! Cela rend souvent l'Θcriture fantaisiste (et pourtant les paramΘtrages sont parfois 
  192.     astucieux) dΦs que l'on utilise les 0 de prΘfΘrence aux 1 car il y a absence de signal donc recopie hasardeuse...
  193.     <BR><BR>
  194.     Autant le dire tout de suite la technique des extrabits est la plus redoutable protection contre les logiciels de copie
  195.     seul <A HREF="../ORG1/M2/PIRATE/EDD4PLUS.HTM">EDD IV Plus et sa carte</A> peuvent en venir α bout... parfois au bout
  196.     de grandes difficultΘs. C'est lα toute la diffΘrence entre "INCOPIABLE" et "NON PIRATABLE". Vous pouvez avoir une disquette 
  197.     "INCOPIABLE" mais il est IMPOSSIBLE d'avoir une disquette "NON PIRATABLE"!
  198.     </TD>
  199. </TR>
  200.  
  201.  
  202.  
  203. <TR> <TD COLSPAN="5" height="10"></TD>  </tr>
  204. <TR>    <TD COLSPAN="5" CLASS="PARAG1"> <CENTER> 
  205.     <A HREF="DISKIITECH04.HTM"> <img  src="../THEMAS/DIVERS/PRIOR1.PNG" BORDER=0></A>
  206.     <A HREF="DISKIITECH07A.HTM"> <img  src="../THEMAS/DIVERS/SUITE1.PNG" BORDER=0></A>
  207.     </CENTER>
  208.     </TD>
  209. </TR>
  210.  
  211. <TR> <TD COLSPAN="5" height="10"></TD>    </tr>
  212. <TR><TD COLSPAN="5"  ><HR color="BLUE"></td>
  213. </TR>
  214. <TR> 
  215.     <TD COLSPAN="5">  
  216.     <CENTER>
  217.     <A HREF="javascript:history.back()"> <IMG SRC="../THEMAS/DIVERS/JSBACK.PNG"></A> 
  218.     <A HREF="DISKIITECH.HTM" > <IMG SRC="../THEMAS/DIVERS/HOMESITE.PNG"></A>
  219.     </CENTER></TD>
  220. </TR>
  221. </TABLE></CENTER>
  222. </BODY>
  223. </HTML>
  224.