Ŀ
                          Ŀ                             
              Ĵ H P A T C H . T X T Ŀ                
Ĵ                       
                               Version 1.00                  
                                                             
                 DOCUMENTATION SUR LE FILE PATCHER HPatch  
                  
                    par Christophe AVOINNE, Janvier 96       
               


Ŀ
                                                                              
   0 - Contenu                                                                
   I - Introduction                                                           
  II - Utilisation                                                            
 III - Conclusion                                                             
                                                                              



 0 - Contenu: Ŀ
                                                                              
      HPatch.TXT   Ce fichier                                                
      HPatch.ASM   Fichier-source du  huge files patcher  HPatch           
      HPatch.COM   Fichier-excutable du  huge files patcher  HPatch       
                                                                              



 I  Introduction: Ŀ
                                                                              
    HPatch est un utilitaire qui inclut des parties de fichiers dans un autre 
  fichier.  Cela permet,  par exemple,   un programme excutable de contenir 
  en son flanc des donnes brutes, telles que des images, des sons, etc. sans 
  avoir  les traiter dans le source  ( i.e, sans avoir  les " transformer " 
  pour pouvoir les inclure dans le source ).                                  
                                                                              



 II  Utilisation: Ŀ
                                                                              
    HPatch s'utilise comme un " post-processeur ":  l'inclusion  devant avoir 
  lieu aprs l'assemblage et l'dition des liens, i.e quand un excutable est 
  obtenu.  Il  n'est  pas  ncessaire  que  le  fichier    modifier  soit un 
  excutable,  et  peut donc tre n'importe quel fichier contenant des " mar- 
  queurs " - ou signatures - qui informent sur le nom du fichier o se trouve 
  le bloc  inclure, sur la position et la taille de ce dernier.  L'inclusion 
  du bloc se fait  partir de l'endroit o se trouve le marqueur: il est donc 
  important de reserver de l'espace suffisant juste aprs le marqueur dans le 
  fichier    modifier  en  sorte  que  HPatch  puisse  y  recopier  le bloc. 
  Le marqueur sera effac par le bloc.                                        
                                                                              
    Enfin,  sachez  que n'importe quel bloc  inclure peut galement contenir 
  en son sein des " marqueurs "  :  ceux-l seront aussi traits. Prenez donc 
  garde de ne pas crer des situations  risque  o  votre  fichier  pourrait 
  prendre des  allures  pantagruliques! ( a fait toujours drle de voir son 
  disque dur de 2 Go afficher dj complet! )                                 
                                                                              
    Syntaxe d'utilisation de HPatch:                                          
                                                                              
  HPatch [chemin]nom du fichier   patcher [.extension]                     
   o le fichier   patcher   est le fichier  modifier contenant le ou les 
   marqueurs "HPatch " suivi du nom du fichier  inclure partiellement: aprs 
   le nom du fichier,  un  double-mot  indique    partir  de  quelle adresse 
   logique du fichier commence le bloc  inclure  dans le fichier  modifier; 
   un autre-double mot  vient  la suite  pour  indiquer  le  nombre  d'octet 
    recopier.  Le chemin  et  l'extension  sont  facultatifs.  Par ailleurs, 
   si l'extension est omise,  .exe  est prise par dfaut.                   
                                                                              
   Voici un exemple de source contenant deux marqueurs:                       
                                                                              
 DATA        SEGMENT USE32                                                    
             ...                                                              
 palette     DB  "HPatch d:\img\papillon.img",0   ; fichier contenant le bloc 
             DD  0                                ; position du bloc  copier 
             DD  768                              ; longueur du bloc  copier 
             DB  768 - ($ - OFFSET palette) DUP(?); rserve de la place...    
             ...                                                              
 LNG         EQU 640*480                          ; taille de l'image         
 picture     DB  "HPatch d:\img\papillon.img",0   ; fichier contenant le bloc 
             DD  768                              ; position du bloc  copier 
             DD  LNG                              ; longueur du bloc  copier 
             DB  LNG - ($ - OFFSET picture) DUP(?); rserve de la place...    
             ...                                                              
 DATA        ENDS                                                             
                                                                              



 III  Conclusion: Ŀ
                                                                              
  Pour ceux qui croit reconnatre RPatch en HPatch:                           
                                                                              
    Bien qu'il  ait  t  entirement recod par moi, il n'en reste pas moins 
  inspir de RPatch de Rixed. C'est donc  lui que l'on doit la "philosophie" 
  de HPatch.  Cependant, j'ai volontairement dpouill HPatch des options que 
  RPatch offrait normalement et ajoutai ce qui manquait le plus : la possibi- 
  lit d'inclure un bloc de plus de 64 Ko  la demande d'un seul marqueur!    
                                                                              
    HPatch, comme son illustre prdcesseur - RPatch, est entirement cod en 
  100% pur porc-assembleur, voil qui devrait ravir Jean-Pierre Koffe... :)   
  et toujours comme son prdcesseur,  il est totalement gratuit et librement 
  diffusable.                                                                 
                                                                              

