home *** CD-ROM | disk | FTP | other *** search
/ hackzapple.com / www.hackzapple.com.tar / www.hackzapple.com / DISKII / DISKIITECH06E.HTM.orig < prev    next >
Text File  |  2010-10-06  |  6KB  |  124 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.  
  22. <A NAME="DISK06"></A>
  23. <TABLE border="0" cellspacing="0" cellpadding="0" width="700">
  24. <TR>     <TD WIDTH="40"></TD> 
  25.     <TD WIDTH="120"></TD> 
  26.     <TD WIDTH="340"></TD>
  27.     <TD WIDTH="200"></TD> </TR>
  28.  
  29. <TR>     <TD COLSPAN="4" valign="TOP" > <img src="../THEMAS/M3/XDISK6E.PNG" BORDER=0></TD>  </TR>
  30. <TR> <TD COLSPAN="4" height="10"></TD>  </tr>
  31. <TR>    <TD COLSPAN="4" CLASS="PARAG1K"> 
  32.      Ce qui caractΘrise PRODOS, outre de nombreuses qualitΘs fonctionnelles, c'est sa rapiditΘ α lire les disquettes qui
  33.     n'est pas d√e α une simple modification de <A HREF="DISKIITECH03B.HTM">l'interleaving</A> mais bien α la faτon de lire les secteurs.
  34.     Il faut dire que les routines du DOS 3.3 sont courtes mais un peu laborieuses.
  35.     <BR><BR>
  36.     Une page mΘmoire Θcrite avec PRODOS ou avec le DOS 3.3 donnera STRICTEMENT LE MEME RESULTAT en ce qui concerne la
  37.     structure du secteur et les nibbles qui le compose... et pourtant, tout est si diffΘrent !
  38.     <BR><BR>
  39.     <IMG SRC="PRODOS1.PNG">
  40.     <BR><BR>
  41.     </TD>
  42. </TR>
  43. <TR> <TD COLSPAN="4" height="10"></TD>  </tr>
  44. <TR>    <TD COLSPAN="4" CLASS="TITRE1">PRENIBBILIZATION</TD></TR>
  45. <TR>    <TD COLSPAN="4" CLASS="PARAG1K"> 
  46.      La routine de prenibbilization de PRODOS ne fonctionne pas du tout comme celle du DOS 3.3. Avec PRODOS on n'utilise
  47.     pas deux buffers NBUF1 et NBUF2 mais un seul qui correspond α NBUF2 et regroupe les deux premiers bits (bit 0 et 1)
  48.     de chaque octet de donnΘes de la page mΘmoire α Θcrire, selon un ordre et un ordonnancement trΦs prΘcis. 
  49.     Sous Prodos c'est la page mΘmoire elle mΩme qui joue le r⌠le de NBUF1.
  50.     <BR><BR>
  51.     <IMG SRC="PNIB1C.PNG">
  52.     <BR><BR>
  53.     PRODOS ne place pas les bits 0 et 1 des valeurs de chaque adresse de la page mΘmoire par une opΘration de dΘcalage 
  54.     (avec LSR) comme le DOS 3.3 mais en utilisant trois tables (BIT.PAIR.LEFT, BIT.PAIR.MIDDLE et BIT.PAIR.RIGHT) selon 
  55.     qu'il veut placer les bits en colonne 1, 2 ou 3 qui correspondent respectivement aux bits 7 et 6, 5 et 4, 3 et 2.
  56.     <BR><BR>
  57.     Ces colonnes 1, 2 et 3 ne sont pas du tout dans la mΩme position sur le NBUF2 du DOS 3.3, elles sont positionnΘes 
  58.     plus α gauche de faτon α ce que les bits 0 et 1 de NBUF2 soient TOUJOURS α 00. De ce fait les colonnes 1, 2 et 3 utilisΘs
  59.     par le DOS 3.3 correspondent respectivement aux bits  5 et 4, 3 et 2, 1 et 0.
  60.     <BR><BR>
  61.     Dit autrement : <BR>
  62.     <IMG SRC="../THEMAS/DIVERS/BULLET.GIF">sous DOS 3.3  les valeurs de NBUF2 varient de $00 $ $3F (0011.1111), les bits 7 et 6 Θtant toujours α 0.<BR>
  63.     <IMG SRC="../THEMAS/DIVERS/BULLET.GIF">sous  PRODOS les valeurs de NBUF2 varient    de $00 α $FC (1111.1100), les bits 0 et 1 Θtant toujours α 0.
  64.     <BR><BR>
  65.     Par contre chaque octet de NBUF2, qu'il soit en DOS 3.3 ou en PRODOS contient bien les bits 0 et 1 des MEMES ADRESSES
  66.     DE LA PAGE MEMOIRE A CODER/DECODER.(A la nuance prΦs des deux groupes de 2 bits non utilisΘs sur le 1er octet... ce 
  67.     qui n'a strictement aucune importance)
  68.     <BR><BR>
  69.     <IMG SRC="PRODOS3.PNG">
  70.     <BR><BR>
  71.     Nota trΦs important : Si PRODOS remplit son buffer NBUF2 de faτon totalement diffΘrente du DOS 3.3 il n'en reste pas 
  72.     moins    qu'α ces valeurs correspondent donc des nibbles prΘcis qui sont Θcrits sur la disquette dans l'ordre identique 
  73.     α celui du DOS 3.3 (ordre dΘcroissant de NBUF2 en premier puis ordre croissant du buffer principal).
  74.     <BR><BR>
  75.     Si le DOS 3.3 lit un secteur de donnΘes qui a ΘtΘ Θcrit avec PRODOS,  il sera capable de faire la reconstitution de 
  76.     la  page mΘmoire initiale tout en utilisant des buffers NBUF1 et NBUF2 qui n'ont strictement rien α voir avec PRODOS. 
  77.     <BR><BR>
  78.     Ce sont les tables de translation diffΘrentes qui permettent ce petit miracle. Donc pour Ωtre plus clair  : les 
  79.     disquettes DOS 3.3 et PRODOS sont "compatibles" pour ce qui est du codage / dΘcodage des secteurs, ils donnent 
  80.     le mΩme rΘsultat en utilisant deux techniques de translation TOTALEMENT DIFFERENTES. 
  81.     <BR><BR>
  82.     <IMG SRC="PRODOS2B.PNG">
  83.     <BR><BR>
  84. </TD>
  85. </TR>
  86. <TR> <TD COLSPAN="4" height="10" ></TD>  </tr>
  87. <TR>    <TD COLSPAN="4" CLASS="TITRE1">ECRITURE</TD></TR>
  88. <TR>    <TD COLSPAN="4" CLASS="PARAG1K"> 
  89.      La table utilisΘe pour l'Θcriture des nibbles est la suivante :
  90.     <BR><BR>
  91.     <IMG SRC="PRODOS2A.PNG">
  92.     <BR><BR>
  93.     </TD>
  94. </TR>
  95.  
  96. <TR> <TD COLSPAN="4" height="10"></TD>  </tr>
  97. <TR>    <TD COLSPAN="4" CLASS="TITRE1">LECTURE ET POSTNIBBILIZATION</TD></TR>
  98. <TR>    <TD COLSPAN="4" CLASS="PARAG1K"> 
  99.      La lecture et la postnibbilization sont intΘgrΘes ce qui explique en grande partie la rapiditΘ de lecture. 
  100.     Par contre la table utilisΘe par PRODOS est totalement diffΘrente de celles du DOS 3.3 mΩme si le principe 
  101.     d'accΦs est le mΩme α savoir se servir de la valeur de nibble comme index pour trouver la valeur de la donnΘe
  102.     α placer dans un buffer (NBUF2 ou destination)
  103.     <BR><BR>
  104.     <IMG SRC="PRODOS2.PNG">
  105.     <BR><BR>
  106.     </TD>
  107. </TR>
  108.  
  109.  
  110. <TR> <TD COLSPAN="4" height="10" > </TD></tr>
  111. <TR><TD COLSPAN="4"  >
  112.     <HR color="BLUE"></td>
  113. </TR>
  114. <TR> 
  115.     <TD COLSPAN="4">  
  116.     <CENTER>
  117.     <A HREF="javascript:history.back()"> <IMG SRC="../THEMAS/DIVERS/JSBACK.PNG"></A> 
  118.     <A HREF="DISKIITECH.HTM" > <IMG SRC="../THEMAS/DIVERS/HOMESITE.PNG"></A>
  119.     </CENTER></TD>
  120. </TR>
  121. </TABLE></CENTER>
  122. </BODY>
  123. </HTML>
  124.