home *** CD-ROM | disk | FTP | other *** search
/ The Best of Mecomp Multimedia 2 / MECOMP-CD-II.iso / amiga / tools / libs / xfd / developper / include / c / libraries / xfdmaster.h
Encoding:
C/C++ Source or Header  |  1998-03-01  |  19.1 KB  |  483 lines

  1. #ifndef LIBRARIES_XFDMASTER_H
  2. #define LIBRARIES_XFDMASTER_H
  3.  
  4. /*
  5. **    $VER: xfdmaster.h 38.2 (21.1.98)
  6. **
  7. **    Copyright © 1994-98 by Georg Hörmann
  8. **    Fixed 24.11.97 by Dirk Stöcker.
  9. **    All Rights Reserved.
  10. */
  11.  
  12. #ifndef EXEC_LIBRARIES_H
  13. #include <exec/libraries.h>
  14. #endif
  15.  
  16. /*********************
  17. *                    *
  18. *    Library Base    *
  19. *                    *
  20. *********************/
  21.  
  22. struct xfdMasterBase {
  23.   struct Library LibNode;
  24.   ULONG            xfdm_SegList;      /* PRIVATE! */
  25.   struct DosLibrary *    xfdm_DosBase;      /* May be used for I/O etc. */
  26.   struct xfdSlave *    xfdm_FirstSlave;   /* List of available slaves */
  27.   struct xfdForeman *    xfdm_FirstForeman; /* PRIVATE! */
  28.   ULONG            xfdm_MinBufferSize;/* (V36) Min. BufSize for xfdRecogBuffer() */
  29.   ULONG            xfdm_MinLinkerSize;/* (V36) Min. BufSize for xfdRecogLinker() */
  30.   struct ExecLibrary *    xfdm_ExecBase;     /* (V38.2) Cached for fast access */
  31. };
  32.  
  33. #define XFDM_VERSION    38        /* for OpenLibrary() */
  34. #define XFDM_NAME    "xfdmaster.library"
  35.  
  36. /***************************
  37. *                          *
  38. *    Object Types (V36)    *
  39. *                          *
  40. ***************************/
  41.  
  42. #define XFDOBJ_BUFFERINFO    1    /* xfdBufferInfo structure */
  43. #define XFDOBJ_SEGMENTINFO    2    /* xfdSegmentInfo structure */
  44. #define XFDOBJ_LINKERINFO    3    /* xfdLinkerInfo structure */
  45. #define XFDOBJ_SCANNODE        4    /* (V37) xfdScanNode structure */
  46. #define XFDOBJ_SCANHOOK        5    /* (V37) xfdScanHook structure */
  47. #define XFDOBJ_MAX        5    /* PRIVATE! */
  48.  
  49. /********************
  50. *                   *
  51. *    Buffer Info    *
  52. *                   *
  53. ********************/
  54.  
  55. struct xfdBufferInfo {
  56.   APTR           xfdbi_SourceBuffer;      /* Pointer to source buffer */
  57.   ULONG           xfdbi_SourceBufLen;      /* Length of source buffer */
  58.   struct xfdSlave *xfdbi_Slave;          /* PRIVATE! */
  59.   STRPTR       xfdbi_PackerName;      /* Name of recognized packer */
  60.   UWORD           xfdbi_PackerFlags;      /* Flags for recognized packer */
  61.   UWORD           xfdbi_Error;          /* Error return code */
  62.   APTR           xfdbi_TargetBuffer;      /* Pointer to target buffer */
  63.   ULONG           xfdbi_TargetBufMemType;/* Memtype of target buffer */
  64.   ULONG           xfdbi_TargetBufLen;      /* Full length of buffer */
  65.   ULONG           xfdbi_TargetBufSaveLen;/* Used length of buffer */
  66.   ULONG           xfdbi_DecrAddress;      /* Address to load decrunched file */
  67.   ULONG           xfdbi_JmpAddress;      /* Address to jump in file */
  68.   APTR           xfdbi_Special;      /* Special decrunch info (eg. password) */
  69.   UWORD           xfdbi_Flags;          /* (V37) Flags to influence recog/decr */
  70.   UWORD           xfdbi_Reserved0;      /* (V38) PRIVATE! */
  71.   ULONG           xfdbi_MinTargetLen;      /* (V38) Required length of target buffer */
  72.   ULONG           xfdbi_FinalTargetLen;  /* (V38) Final length of decrunched file */
  73.   APTR           xfdbi_UserTargetBuf;      /* (V38) Target buffer allocated by user */
  74.   ULONG           xfdbi_UserTargetBufLen;/* (V38) Target buffer length */
  75. };
  76.  
  77. #define xfdbi_MaxSpecialLen xfdbi_Error    /* Max. length of special info */
  78.  
  79. /*********************
  80. *                    *
  81. *    Segment Info    *
  82. *                    *
  83. *********************/
  84.  
  85. struct xfdSegmentInfo {
  86.   ULONG           xfdsi_SegList;    /* BPTR to segment list */
  87.   struct xfdSlave *xfdsi_Slave;        /* PRIVATE! */
  88.   STRPTR       xfdsi_PackerName;    /* Name of recognized packer */
  89.   UWORD           xfdsi_PackerFlags;    /* Flags for recognized packer */
  90.   UWORD           xfdsi_Error;        /* Error return code */
  91.   APTR           xfdsi_Special;    /* Special decrunch info (eg. password) */
  92.   UWORD           xfdsi_RelMode;    /* (V34) Relocation mode */
  93.   UWORD           xfdsi_Flags;        /* (V37) Flags to influence recog/decr */
  94. };
  95.  
  96. #define xfdsi_MaxSpecialLen xfdsi_Error    /* Max. length of special info */
  97.  
  98. /**************************
  99. *                         *
  100. *    Linker Info (V36)    *
  101. *                         *
  102. **************************/
  103.  
  104. struct xfdLinkerInfo {
  105.     APTR    xfdli_Buffer;        /* Pointer to buffer */
  106.     ULONG    xfdli_BufLen;        /* Length of buffer */
  107.     STRPTR    xfdli_LinkerName;    /* Name of recognized linker */
  108.     APTR    xfdli_Unlink;        /* PRIVATE! */
  109.     UWORD    xfdli_Reserved;        /* Set to NULL */
  110.     UWORD    xfdli_Error;        /* Error return code */
  111.     ULONG    xfdli_Hunk1;        /* PRIVATE! */
  112.     ULONG    xfdli_Hunk2;        /* PRIVATE! */
  113.     ULONG    xfdli_Amount1;        /* PRIVATE! */
  114.     ULONG    xfdli_Amount2;        /* PRIVATE! */
  115.     APTR    xfdli_Save1;        /* Pointer to first unlinked file */
  116.     APTR    xfdli_Save2;        /* Pointer to second unlinked file */
  117.     ULONG    xfdli_SaveLen1;        /* Length of first unlinked file */
  118.     ULONG    xfdli_SaveLen2;        /* Length of second unlinked file */
  119. };
  120.  
  121. /************************
  122. *                       *
  123. *    Scan Node (V37)    *
  124. *                       *
  125. ************************/
  126.  
  127. struct xfdScanNode {
  128.   struct xfdScanNode *xfdsn_Next;    /* Pointer to next xfdScanNode or NULL */
  129.   APTR              xfdsn_Save;    /* Pointer to data */
  130.   ULONG              xfdsn_SaveLen;    /* Length of data */
  131.   STRPTR          xfdsn_PackerName;    /* Name of recognized packer */
  132.   UWORD              xfdsn_PackerFlags;/* Flags for recognized packer */
  133. };
  134.  
  135. /************************
  136. *                       *
  137. *    Scan Hook (V37)    *
  138. *                       *
  139. ************************/
  140.  
  141. struct xfdScanHook {
  142.   BOOL    (* xfdsh_Entry)();    /* Entrypoint of hook code */
  143.   APTR       xfdsh_Data;        /* Private data of hook */
  144.   ULONG       xfdsh_ToDo;        /* Bytes still to scan (READ ONLY) */
  145.   ULONG       xfdsh_ScanNode;    /* Found data right now (or NULL) (READ ONLY) */
  146. };
  147.  
  148. /********************
  149. *                   *
  150. *    Error Codes    *
  151. *                   *
  152. ********************/
  153.  
  154. #define XFDERR_OK        0x0000    /* No errors */
  155.  
  156. #define XFDERR_NOMEMORY        0x0001    /* Error allocating memory */
  157. #define XFDERR_NOSLAVE        0x0002    /* No slave entry in info structure */
  158. #define XFDERR_NOTSUPPORTED    0x0003    /* Slave doesn't support called function */
  159. #define XFDERR_UNKNOWN        0x0004    /* Unknown file */
  160. #define XFDERR_NOSOURCE        0x0005    /* No sourcebuffer/seglist specified */
  161. #define XFDERR_WRONGPASSWORD    0x0006    /* Wrong password for decrunching */
  162. #define XFDERR_BADHUNK        0x0007    /* Bad hunk structure */
  163. #define XFDERR_CORRUPTEDDATA    0x0008    /* Crunched data is corrupted */
  164. #define XFDERR_MISSINGRESOURCE    0x0009    /* (V34) Missing resource (eg. library) */
  165. #define XFDERR_WRONGKEY        0x000a    /* (V35) Wrong 16/32 bit key */
  166. #define XFDERR_BETTERCPU    0x000b    /* (V37) Better CPU required */
  167. #define XFDERR_HOOKBREAK    0x000c    /* (V37) Hook caused break */
  168. #define XFDERR_DOSERROR        0x000d    /* (V37) Dos error */
  169. #define XFDERR_NOTARGET        0x000e    /* (V38) No user target given */
  170. #define XFDERR_TARGETTOOSMALL    0x000f    /* (V38) User target is too small */
  171. #define XFDERR_TARGETNOTSUPPORTED 0x0010 /* (V38) User target not supported */
  172.  
  173. #define XFDERR_UNDEFINEDHUNK    0x1000    /* (V34) Undefined hunk type */
  174. #define XFDERR_NOHUNKHEADER    0x1001    /* (V34) File is not executable */
  175. #define XFDERR_BADEXTTYPE    0x1002    /* (V34) Bad hunk_ext type */
  176. #define XFDERR_BUFFERTRUNCATED    0x1003    /* (V34) Unexpected end of file */
  177. #define XFDERR_WRONGHUNKAMOUNT    0x1004    /* (V34) Wrong amount of hunks */
  178. #define XFDERR_NOOVERLAYS    0x1005    /* (V36) Overlays not allowed */
  179.  
  180. #define XFDERR_UNSUPPORTEDHUNK    0x2000    /* (V34) Hunk type not supported */
  181. #define XFDERR_BADRELMODE    0x2001    /* (V34) Unknown XFDREL_#? mode */
  182.  
  183. /*******************************
  184. *                              *
  185. *    Relocation Modes (V34)    *
  186. *                              *
  187. *******************************/
  188.  
  189. #define XFDREL_DEFAULT        0x0000    /* Use memory types given by hunk_header */
  190. #define XFDREL_FORCECHIP    0x0001    /* Force all hunks to chip ram */
  191. #define XFDREL_FORCEFAST    0x0002    /* Force all hunks to fast ram */
  192.  
  193. /*************************************
  194. *                                    *
  195. *    Values for xfd??_PackerFlags    *
  196. *                                    *
  197. *************************************/
  198.  
  199. /* Bit numbers */
  200. #define XFDPFB_RELOC    0    /* Relocatible file packer */
  201. #define XFDPFB_ADDR    1    /* Absolute address file packer */
  202. #define XFDPFB_DATA    2    /* Data file packer */
  203.  
  204. #define XFDPFB_PASSWORD    4    /* Packer requires password */
  205. #define XFDPFB_RELMODE    5    /* (V34) Decruncher supports xfdsi_RelMode */
  206. #define XFDPFB_KEY16    6    /* (V35) Packer requires 16 bit key */
  207. #define XFDPFB_KEY32    7    /* (V35) Packer requires 32 bit key */
  208.  
  209. #define    XFDPFB_RECOGLEN    8    /* (V38) slave recognizes target lengths */
  210. #define    XFDPFB_USERTARGET 9    /* (V38) slave supports user target buffer */
  211.  
  212. #define XFDPFB_EXTERN    15    /* (V37) PRIVATE */
  213.  
  214. /* Bit masks */
  215. #define XFDPFF_RELOC    (1<<XFDPFB_RELOC)
  216. #define XFDPFF_ADDR    (1<<XFDPFB_ADDR)
  217. #define XFDPFF_DATA    (1<<XFDPFB_DATA)
  218.  
  219. #define XFDPFF_PASSWORD    (1<<XFDPFB_PASSWORD)
  220. #define XFDPFF_RELMODE    (1<<XFDPFB_RELMODE)
  221. #define XFDPFF_KEY16    (1<<XFDPFB_KEY16)
  222. #define XFDPFF_KEY32    (1<<XFDPFB_KEY32)
  223.  
  224. #define XFDPFF_RECOGLEN    (1<<XFDPFB_RECOGLEN)
  225. #define XFDPFF_USERTARGET (1<<XFDPFB_USERTARGET)
  226.  
  227. #define XFDPFF_EXTERN    (1<<XFDPFB_EXTERN)
  228.  
  229. /************************************
  230. *                                   *
  231. *    Values for xfd??_Flags (V37)   *
  232. *                                   *
  233. ************************************/
  234.  
  235. /* Bit numbers */
  236. #define XFDFB_RECOGEXTERN    0    /* xfdRecog#?() uses external slaves */
  237. #define    XFDFB_RECOGTARGETLEN    1    /* (V38) xfdRecogBuffer() uses only slaves
  238.                        that recognize target lengths */
  239. #define    XFDFB_RECOGUSERTARGET    2    /* (V38) xfdRecogBuffer() uses only slaves
  240.                        that support user targets */
  241. #define    XFDFB_USERTARGET    3    /* (V38) xfdbi_DecrunchBuffer() decrunchs
  242.                        to given xfdbi_UserTarget */
  243.  
  244. /* Bit masks */
  245. #define XFDFF_RECOGEXTERN    (1<<XFDFB_RECOGEXTERN)
  246. #define XFDFF_RECOGTARGETLEN    (1<<XFDFB_RECOGTARGETLEN)
  247. #define XFDFF_RECOGUSERTARGET    (1<<XFDFB_RECOGUSERTARGET)
  248. #define XFDFF_USERTARGET    (1<<XFDFB_USERTARGET)
  249.  
  250. /****************************************************
  251. *                                                   *
  252. *    Flags for xfdTestHunkStructureFlags() (V36)    *
  253. *                                                   *
  254. ****************************************************/
  255.  
  256. /* Bit numbers */
  257. #define XFDTHB_NOOVERLAYS    0    /* Abort on hunk_overlay */
  258.  
  259. /* Bit masks */
  260. #define XFDTHF_NOOVERLAYS    (1<<XFDTHB_NOOVERLAYS)
  261.  
  262. /****************************************
  263. *                                       *
  264. *    Flags for xfdStripHunks() (V36)    *
  265. *                                       *
  266. ****************************************/
  267.  
  268. /* Bit numbers */
  269. #define XFDSHB_NAME    0    /* Strip hunk_name */
  270. #define XFDSHB_SYMBOL    1    /* Strip hunk_symbol */
  271. #define XFDSHB_DEBUG    2    /* Strip hunk_debug */
  272.  
  273. /* Bit masks */
  274. #define XFDSHF_NAME    (1<<XFDSHB_NAME)
  275. #define XFDSHF_SYMBOL    (1<<XFDSHB_SYMBOL)
  276. #define XFDSHF_DEBUG    (1<<XFDSHB_DEBUG)
  277.  
  278. /**************************************
  279. *                                     *
  280. *    Flags for xfdScanData() (V37)    *
  281. *                                     *
  282. **************************************/
  283.  
  284. /* Bit numbers */
  285. #define XFDSDB_USEEXTERN 0    /* Use external slaves for scanning */
  286. #define XFDSDB_SCANODD    1    /* Scan at odd addresses too */
  287.  
  288. /* Bit masks */
  289. #define XFDSDF_USEEXTERN (1<<XFDSDB_USEEXTERN)
  290. #define XFDSDF_SCANODD    (1<<XFDSDB_SCANODD)
  291.  
  292. /****************
  293. *               *
  294. *    Foreman    *
  295. *               *
  296. ****************/
  297.  
  298. struct xfdForeMan {
  299.   ULONG        xfdf_Security;    /* moveq #-1,d0 ; rts */
  300.   ULONG        xfdf_ID;        /* Set to XFDF_ID */
  301.   UWORD               xfdf_Version;    /* Set to XFDF_VERSION */
  302.   UWORD        xfdf_Reserved;    /* Not used by now, set to NULL */
  303.   ULONG           xfdf_Next;        /* PRIVATE! */
  304.   ULONG           xfdf_SegList;    /* PRIVATE! */
  305.   struct xfdSlave *xfdf_FirstSlave;    /* First slave (see below) */
  306. };
  307.  
  308. #define XFDF_ID        (('X'<<24)|('F'<<16)|('D'<<8)|('F'))
  309. #define XFDF_VERSION    1
  310.  
  311. /**************
  312. *             *
  313. *    Slave    *
  314. *             *
  315. **************/
  316.  
  317. struct xfdSlave {
  318.   struct xfdSlave *xfds_Next;        /* Next slave (or NULL) */
  319.   UWORD           xfds_Version;    /* Set to XFDS_VERSION */
  320.   UWORD        xfds_MasterVersion;    /* Minimum XFDM_VERSION required */
  321.   STRPTR       xfds_PackerName;    /* Name of packer ('\0' terminated) */
  322.   UWORD        xfds_PackerFlags;    /* Flags for packer */
  323.   UWORD        xfds_MaxSpecialLen;    /* Max. length of special info (eg. password) */
  324.   BOOL        (* xfds_RecogBuffer)();       /* buffer recognition code (or NULL) */
  325.   BOOL        (* xfds_DecrunchBuffer)(); /* buffer decrunch code (or NULL) */
  326.   BOOL        (* xfds_RecogSegment)();   /* segment recognition code (or NULL) */
  327.   BOOL        (* xfds_DecrunchSegment)();/* segment decrunch code (or NULL) */
  328.   UWORD           xfds_SlaveID;    /* (V36) Slave ID (only internal slaves) */
  329.   UWORD           xfds_ReplaceID;    /* (V36) ID of slave to be replaced */
  330.   ULONG           xfds_MinBufferSize;    /* (V36) Min. BufSize for RecogBufferXYZ() */
  331. };
  332.  
  333. #define xfds_ScanData xfds_RecogSegment        /* (V37) XFDPFB_DATA: Scan code (or NULL) */
  334. #define xfds_VerifyData xfds_DecrunchSegment    /* (V37) XFDPFB_DATA: Verify code (or NULL) */
  335.  
  336. #define XFDS_VERSION    2
  337.  
  338. /*********************************************
  339. *                                            *
  340. *    Additional Recognition Results (V38)    *
  341. *                                            *
  342. *********************************************/
  343.  
  344. struct xfdRecogResult {
  345.     ULONG    xfdrr_MinTargetLen;    /* Min. required length of target buffer */
  346.     ULONG    xfdrr_FinalTargetLen;    /* Final length of decrunched file */
  347. };
  348.  
  349. /*********************************
  350. *                                *
  351. *    Internal Slave IDs (V36)    *
  352. *                                *
  353. *********************************/
  354.  
  355. #define XFDID_BASE    0x8000
  356.  
  357. #define XFDID_PowerPacker23        (XFDID_BASE+0x0001)
  358. #define XFDID_PowerPacker30        (XFDID_BASE+0x0003)
  359. #define XFDID_PowerPacker30Enc        (XFDID_BASE+0x0005)
  360. #define XFDID_PowerPacker30Ovl        (XFDID_BASE+0x0007)
  361. #define XFDID_PowerPacker40        (XFDID_BASE+0x0009)
  362. #define XFDID_PowerPacker40Lib        (XFDID_BASE+0x000a)
  363. #define XFDID_PowerPacker40Enc        (XFDID_BASE+0x000b)
  364. #define XFDID_PowerPacker40LibEnc    (XFDID_BASE+0x000c)
  365. #define XFDID_PowerPacker40Ovl        (XFDID_BASE+0x000d)
  366. #define XFDID_PowerPacker40LibOvl    (XFDID_BASE+0x000e)
  367. #define XFDID_PowerPackerData        (XFDID_BASE+0x000f)
  368. #define XFDID_PowerPackerDataEnc    (XFDID_BASE+0x0010)
  369. #define XFDID_ByteKiller13        (XFDID_BASE+0x0011)
  370. #define XFDID_ByteKiller20        (XFDID_BASE+0x0012)
  371. #define XFDID_ByteKiller30        (XFDID_BASE+0x0013)
  372. #define XFDID_ByteKillerPro10        (XFDID_BASE+0x0014)
  373. #define XFDID_ByteKillerPro10Pro    (XFDID_BASE+0x0015)
  374. #define XFDID_DragPack10        (XFDID_BASE+0x0016)
  375. #define XFDID_TNMCruncher11        (XFDID_BASE+0x0017)
  376. #define XFDID_HQCCruncher20        (XFDID_BASE+0x0018)
  377. #define XFDID_RSICruncher14        (XFDID_BASE+0x0019)
  378. #define XFDID_ANCCruncher        (XFDID_BASE+0x001a)
  379. #define XFDID_ReloKit10            (XFDID_BASE+0x001b)
  380. #define XFDID_HighPressureCruncher    (XFDID_BASE+0x001c)
  381. #define XFDID_STPackedSong        (XFDID_BASE+0x001d)
  382. #define XFDID_TSKCruncher        (XFDID_BASE+0x001e)
  383. #define XFDID_LightPack15        (XFDID_BASE+0x001f)
  384. #define XFDID_CrunchMaster10        (XFDID_BASE+0x0020)
  385. #define XFDID_HQCCompressor100        (XFDID_BASE+0x0021)
  386. #define XFDID_FlashSpeed10        (XFDID_BASE+0x0022)
  387. #define XFDID_CrunchManiaData        (XFDID_BASE+0x0023)
  388. #define XFDID_CrunchManiaDataEnc    (XFDID_BASE+0x0024)
  389. #define XFDID_CrunchManiaLib        (XFDID_BASE+0x0025)
  390. #define XFDID_CrunchManiaNormal        (XFDID_BASE+0x0026)
  391. #define XFDID_CrunchManiaSimple        (XFDID_BASE+0x0027)
  392. #define XFDID_CrunchManiaAddr        (XFDID_BASE+0x0028)
  393. #define XFDID_DefJamCruncher32        (XFDID_BASE+0x0029)
  394. #define XFDID_DefJamCruncher32Pro    (XFDID_BASE+0x002a)
  395. #define XFDID_TetraPack102        (XFDID_BASE+0x002b)
  396. #define XFDID_TetraPack11        (XFDID_BASE+0x002c)
  397. #define XFDID_TetraPack21        (XFDID_BASE+0x002d)
  398. #define XFDID_TetraPack21Pro        (XFDID_BASE+0x002e)
  399. #define XFDID_TetraPack22        (XFDID_BASE+0x002f)
  400. #define XFDID_TetraPack22Pro        (XFDID_BASE+0x0030)
  401. #define XFDID_DoubleAction10        (XFDID_BASE+0x0031)
  402. #define XFDID_DragPack252Data        (XFDID_BASE+0x0032)
  403. #define XFDID_DragPack252        (XFDID_BASE+0x0033)
  404. #define XFDID_FCG10            (XFDID_BASE+0x0034)
  405. #define XFDID_Freeway07            (XFDID_BASE+0x0035)
  406. #define XFDID_IAMPacker10ATM5Data    (XFDID_BASE+0x0036)
  407. #define XFDID_IAMPacker10ATM5        (XFDID_BASE+0x0037)
  408. #define XFDID_IAMPacker10ICEData    (XFDID_BASE+0x0038)
  409. #define XFDID_IAMPacker10ICE        (XFDID_BASE+0x0039)
  410. #define XFDID_Imploder            (XFDID_BASE+0x003a)
  411. #define XFDID_ImploderLib        (XFDID_BASE+0x003b)
  412. #define XFDID_ImploderOvl        (XFDID_BASE+0x003c)
  413. #define XFDID_FileImploder        (XFDID_BASE+0x003d)
  414. #define XFDID_MasterCruncher30Addr    (XFDID_BASE+0x003f)
  415. #define XFDID_MasterCruncher30        (XFDID_BASE+0x0040)
  416. #define XFDID_MaxPacker12        (XFDID_BASE+0x0041)
  417. #define XFDID_PackIt10Data        (XFDID_BASE+0x0042)
  418. #define XFDID_PackIt10            (XFDID_BASE+0x0043)
  419. #define XFDID_PMCNormal            (XFDID_BASE+0x0044)
  420. #define XFDID_PMCSample            (XFDID_BASE+0x0045)
  421. #define XFDID_XPKPacked            (XFDID_BASE+0x0046)
  422. #define XFDID_XPKCrypted        (XFDID_BASE+0x0047)
  423. #define XFDID_TimeCruncher17        (XFDID_BASE+0x0048)
  424. #define XFDID_TFACruncher154        (XFDID_BASE+0x0049)
  425. #define XFDID_TurtleSmasher13        (XFDID_BASE+0x004a)
  426. #define XFDID_MegaCruncher10        (XFDID_BASE+0x004b)
  427. #define XFDID_MegaCruncher12        (XFDID_BASE+0x004c)
  428. #define XFDID_ProPack            (XFDID_BASE+0x004d)
  429. #define XFDID_ProPackData        (XFDID_BASE+0x004e)
  430. #define XFDID_ProPackDataKey        (XFDID_BASE+0x004f)
  431. #define XFDID_STCruncher10        (XFDID_BASE+0x0050)
  432. #define XFDID_STCruncher10Data        (XFDID_BASE+0x0051)
  433. #define XFDID_SpikeCruncher        (XFDID_BASE+0x0052)
  434. #define XFDID_SyncroPacker46        (XFDID_BASE+0x0053)
  435. #define XFDID_SyncroPacker46Pro        (XFDID_BASE+0x0054)
  436. #define XFDID_TitanicsCruncher11    (XFDID_BASE+0x0055)
  437. #define XFDID_TitanicsCruncher12    (XFDID_BASE+0x0056)
  438. #define XFDID_TryItCruncher101        (XFDID_BASE+0x0057)
  439. #define XFDID_TurboSqueezer61        (XFDID_BASE+0x0058)
  440. #define XFDID_TurboSqueezer80        (XFDID_BASE+0x0059)
  441. #define XFDID_TurtleSmasher200        (XFDID_BASE+0x005a)
  442. #define XFDID_TurtleSmasher200Data    (XFDID_BASE+0x005b)
  443. #define XFDID_StoneCracker270        (XFDID_BASE+0x005c)
  444. #define XFDID_StoneCracker270Pro    (XFDID_BASE+0x005d)
  445. #define XFDID_StoneCracker292        (XFDID_BASE+0x005e)
  446. #define XFDID_StoneCracker299        (XFDID_BASE+0x005f)
  447. #define XFDID_StoneCracker299d        (XFDID_BASE+0x0060)
  448. #define XFDID_StoneCracker300        (XFDID_BASE+0x0061)
  449. #define XFDID_StoneCracker300Data    (XFDID_BASE+0x0062)
  450. #define XFDID_StoneCracker310        (XFDID_BASE+0x0063)
  451. #define XFDID_StoneCracker310Data    (XFDID_BASE+0x0064)
  452. #define XFDID_StoneCracker311        (XFDID_BASE+0x0065)
  453. #define XFDID_StoneCracker400        (XFDID_BASE+0x0066)
  454. #define XFDID_StoneCracker400Data    (XFDID_BASE+0x0067)
  455. #define XFDID_StoneCracker401        (XFDID_BASE+0x0068)
  456. #define XFDID_StoneCracker401Data    (XFDID_BASE+0x0069)
  457. #define XFDID_StoneCracker401Addr    (XFDID_BASE+0x006a)
  458. #define XFDID_StoneCracker401BetaAddr    (XFDID_BASE+0x006b)
  459. #define XFDID_StoneCracker403Data    (XFDID_BASE+0x006c)
  460. #define XFDID_StoneCracker404        (XFDID_BASE+0x006d)
  461. #define XFDID_StoneCracker404Data    (XFDID_BASE+0x006e)
  462. #define XFDID_StoneCracker404Addr    (XFDID_BASE+0x006f)
  463. #define XFDID_ChryseisCruncher09    (XFDID_BASE+0x0070)
  464. #define XFDID_QuickPowerPacker10    (XFDID_BASE+0x0071)
  465. #define XFDID_GNUPacker12        (XFDID_BASE+0x0072)
  466. #define XFDID_GNUPacker12Seg        (XFDID_BASE+0x0073)
  467. #define XFDID_GNUPacker12Data        (XFDID_BASE+0x0074)
  468. #define XFDID_TrashEliminator10        (XFDID_BASE+0x0075)
  469. #define XFDID_MasterCruncher30Data    (XFDID_BASE+0x0076)
  470. #define XFDID_SuperCruncher27        (XFDID_BASE+0x0077)
  471. #define XFDID_UltimatePacker11        (XFDID_BASE+0x0078)
  472. #define XFDID_ProPackOld        (XFDID_BASE+0x0079)
  473. #define XFDID_SACFPQCruncher        (XFDID_BASE+0x007a)
  474. #define XFDID_PowerPackerPatch10    (XFDID_BASE+0x007b)
  475. #define XFDID_CFP135            (XFDID_BASE+0x007c)
  476. #define XFDID_BOND            (XFDID_BASE+0x007d)
  477. #define XFDID_PowerPackerLoadSeg    (XFDID_BASE+0x007e)
  478. #define XFDID_StoneCracker299b        (XFDID_BASE+0x007f)
  479. #define XFDID_CrunchyDat10        (XFDID_BASE+0x0080)
  480. #define XFDID_PowerPacker20        (XFDID_BASE+0x0081)
  481.  
  482. #endif /* LIBRARIES_XFDMASTER_H */
  483.