home *** CD-ROM | disk | FTP | other *** search
/ The Fred Fish Collection 1.6 / ffcollection-1-6-1993-02.iso / ff_disks / 721-750 / ff_750 / cfx / cfx.doc < prev    next >
Text File  |  1992-10-12  |  62KB  |  1,323 lines

  1. Please leave the next line intact for update patches to be applied later!
  2. $VER: CFX 5.242
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24. ***************************************************************************
  25. *                                                                         *
  26. *                     CFX PRO 5 - Crunched File Xaminer                   *
  27. *                                                                         *
  28. *                     by BOB RYE and MARCUS MROCZKOWSKI                   *
  29. *                                                                         *
  30. *                     Public Release: Friday 25/09/1992                   *
  31. *                                                                         *
  32. ***************************************************************************
  33.  
  34. Everything contained in this release of CFX PRO 5 for the Amiga is
  35. USE-AT-OWN-RISK. We, the authors, make no guarantee as to the fitness for
  36. use of this software. We accept no responsibility for possible damages
  37. incurred before, during or after execution of this software.
  38.  
  39.  
  40.  #### #    #### #### #### ####   #### #### #### ###    ##### #  # # ####   #
  41.  #  # #    #    #  # #    #      #  # #    #  # #  #     #   #  # # #      #
  42.  #### #    ###  #### #### ###    #### ###  #### #  #     #   #### # ####   #
  43.  #    #    #    #  #    # #      # #  #    #  # #  #     #   #  # #    #
  44.  #    #### #### #  # #### ####   #  # #### #  # ###      #   #  # # ####   #
  45.  
  46. *****************************************************************************
  47.  
  48.                    DID YOU PAY MONEY FOR THIS SOFTWARE?
  49.  
  50.                               CFX is FREEWARE
  51.  
  52.  This software is FREEWARE. This software is free. If you have paid
  53.  money for this software, then you have been ripped off. I have written
  54.  this program for you, for free. If you paid for "support" from where you
  55.  got this file, then you are also being ripped off. There are only two
  56.  people who can fully help you with the operation of this program:
  57.  Marcus Mroczkowski (co-author),
  58.  and myself (Bob Rye, the guy who wrote this program.)
  59.  
  60.  You cannot obtain support from some unqualified desk-doofus hiding behind
  61.  the facade of "a support specialist". All that these people are doing is
  62.  making money from you, the innocent end-user, and ripping me off by
  63.  immorally making money from *MY* programs.
  64.  
  65.  Please take a stand against these companies. Please don't buy *FREE*
  66.  software from these companies. If you would like copies of any (or all)
  67.  of MY software (anything by Bob Rye) you can have them for *FREE*. That's
  68.  right, for nothing. All I ask for is a blank disk, to copy the programs
  69.  onto, and the cost of return postage (and your address!) Then if you want
  70.  "support" for my programs, send Fido Netmail to me (addresses are at the
  71.  bottom of this document) or snail-mail me and you'll get real support.
  72.  
  73.                           STAND UP AND BE COUNTED.
  74.  
  75.                       Say NO! to costly FREE software.
  76.  
  77. *****************************************************************************
  78.  
  79. If you represent a PD/Shareware/Freeware library or electronic distribution
  80. system, then please feel free to contact me to gain written permission to
  81. allow you to legally include this software in your library, for
  82. distribution. The "ADS" electronic distribution system has my written
  83. permission to redistribute this software, as does Fred Fish.
  84.  
  85. You may copy and transfer copies of this package to whoever you like,
  86. provided that this package is transferred completely intact, with all
  87. documentation and executables unmodified therein (modification of
  88. copyrighted works is called "contributory copyright infringement" and
  89. persons found infringing copyright are liable to legal action); however,
  90. if you represent a registered (or otherwise) company, and you wish to
  91. redistribute this package, you MUST obtain my written permission. The
  92. registered version of the CFX executable may not under any circumstances be
  93. copied, (pirated) distributed or given away. The copyright to CFX, the
  94. documentation, the source-code, and the actual software remains the
  95. explicit property of Bob Rye, © 1988-1992 inclusive.
  96.  
  97. Distributors of this package must cease distributing this package, if
  98. and/or when, specifically requested to do so by the author(s). This request
  99. will be made in writing.
  100.  
  101. ANY commercial distribution of this package without the prior written
  102. consent of the author (Bob Rye) is expressly prohibited.
  103.  
  104.  
  105.  
  106.                                 DISCLAIMER
  107.                                 ¯¯¯¯¯¯¯¯¯¯
  108. ALTHOUGH OUTSTANDING BUGS IN THE CODE HAVE BEEN ELIMINATED, THERE REMAINS
  109. THE POSSIBILITY OF UNFORESEEN PROBLEMS. WE RESERVE THE RIGHT TO REFUTE THE
  110. EXISTENCE OF SUCH 'BUGS', BUT IF FOUND, WE WILL ATTEMPT TO FIX SUCH
  111. PROBLEM(S). IF, HOWEVER, UNFORESEEN BUGS ARE FOUND TO CAUSE YOU MENTAL
  112. AND/OR PHYSICAL ANGUISH, THEN THAT IS AS THEY SAY IN THE CLASSICS, BAD
  113. LUCK! WE ACCEPT NO BLAME FOR ANY LOSS OR INCONVENIENCE FOUND TO ARISE FROM
  114. THE (MIS)USAGE OF THIS PROGRAM. WE RESERVE THE RIGHT TO WITHDRAW SUPPORT
  115. AND UPGRADES AT ANY TIME. WE PROBABLY WON'T DO THIS, BUT WE HAVE THIS
  116. RIGHT.
  117.  
  118.  
  119. ALL INSTANCES OF COMPANY AND/OR PRODUCT NAMES ARE (C), (R) AND (TM)
  120. RESPECTIVELY, WHERE APPLICABLE. "CFX" AND "CFX PRO" ARE COPYRIGHT BOB RYE,
  121. 1988 - 1992 INCLUSIVE.
  122.  
  123. CFX VERSION 5 has been extensively tested on:
  124.   Amigas 500, 1000, 2000, 3000 (all vanilla PAL, 1.3 - 2.04 OS)
  125.   B2000 GVP 22mhz & 33mhz ALL-IN-ONE accelerator PAL 1.3 - 2.04 OS
  126.   A3000 PP&S 68040 (CAVE-YOUR-BRAINS-IN) accelerator, 2.04 OS
  127.  
  128. ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
  129.                                                         CFX PRO 5   Page 1
  130.  
  131.  
  132.  
  133.  
  134.  
  135.                             Table of contents:
  136.                             ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
  137.  
  138.                              1...... Contents
  139.  
  140.                              2...... Preview
  141.  
  142.                              3...... Usages
  143.  
  144.                              4...... Switches (filetypes)
  145.  
  146.                              7...... Options
  147.  
  148.                             15...... Bits and Pieces
  149.  
  150.                             16...... CFX output
  151.  
  152.                             17...... Correspondence
  153.  
  154.                             18...... Registration (ho ho, I'm a cynic.)
  155.  
  156.                             19...... Credits & Acknowledgments
  157.  
  158.                             20...... Registered Users
  159.  
  160.                             21...... Registration form
  161.                                                         CFX PRO 5   Page 2
  162.  
  163.                                   Preview
  164.                                   ¯¯¯¯¯¯¯
  165.         CFX has the ability to enter the directory tree of your disks. The
  166. directory tree of a disk can be extensively deep.  CFX will only allow you
  167. to enter 48 directory levels, and no more.  To allow for the recursive
  168. collecting of 48 layers of directories, you need 30000 bytes of stack.
  169. Since the average system-floppy will usually contain no more than 6 levels,
  170. this shouldn't be a problem, since 4000 bytes of stack allows you to enter
  171. 8 directory levels.  So, to be sure, please allow 30000 bytes of stack if
  172. you intend to examine possibly-large directory trees.  You have been
  173. warned!
  174.  
  175.         CFX requires the ReqTools.library and the PowerPacker.library to run.
  176.  
  177.         CFX was written to enable the Amiga user to identify certain
  178. characteristics of given files.  The file, let's call it 'TEST', is a file
  179. that you received from a BBS, but there were no accompanying docs with it.
  180. The file is executable, but you have a feeling that it is crunched.
  181. PowerPacker doesn't know this file's 'crunch' type, so you can't easily
  182. identify the filetype.  You could use a debugger/monitor to find what the
  183. filetype is, but the most you'll get out of that is to ascertain that the
  184. file REALLY IS crunched.  Well, from my experiences on the Aust Amiga Fido
  185. Echo, I know that there are a lot of you who don't like receiving crunched
  186. files.  This program attempts to let you know if it is crunched, and most
  187. possibly, what it is crunched with.  You can then decide what to do with
  188. the mysterious file 'TEST'.  Keep it or trash it????
  189.  
  190.         Unlike many other so-called 'file examiners' on the Amiga, CFX has
  191. a very large brainfile from which it can acknowledge a large percentage of
  192. the current Amiga filetypes.  It will then report to you what type of
  193. cruncher was used to crunch the file, or, if it isn't crunched, what type
  194. of file 'TEST' really is.  The information that CFX gives isn't really
  195. self-explanatory, so let's describe what the various displays mean.
  196.                                                         CFX PRO 5   Page 3
  197.  
  198.                                   USAGES
  199.                                   ¯¯¯¯¯¯
  200. Upon invocation with the standard "help" switch:
  201. 1> CFX ? {return}
  202.  
  203. CFX will show this screen:
  204.  
  205.  CFX Crunched File Examiner Pro
  206.  © Bob Rye & Marcus Mroczkowski    Registered
  207.  Copyright (c) 1988->1992 incl.    68030
  208.  VER 5.229 16:47:28 Aug 10 1992    Version
  209.  
  210. Usage: CFX [<-f>switch] [-options] [file1,file2,,,]
  211.  
  212.  Switches: -f<?> where <?> =        Options:
  213.     a    Address crunched             -a      About CFX
  214.     b    Binary (non-exec) files      -b      Be quiet
  215.     c    Crunched (a+r+t) files       -c      Checksum calculation
  216.     d    Document/text files          -d      Deep directory scan
  217.     i    IFF files                    -e      Extended hunk scan
  218.     k    Known files                  -h<=>#  files with <#, =# or ># Hunks
  219.     o    Overlayed files              -i[p|f] Integrity check [pass|fail]
  220.     p    ILBM Picture files           -l[f]   real file Length [FFS]
  221.     r    Relocator crunched           -n      No virus-requester warnings
  222.     t    Transmission archives        -r      Requester usage
  223.     u    Unknown files                -s[l]   Summary [Loud]
  224.     v    Viruses                      -u      deep Uncrunch/virus check
  225.     x    eXecutable files             -x      file eXplosion information
  226.  
  227. As you can see, CFX accepts switches and options, along with filenames
  228. and/or directory/device names.  CFX also examines the current directory
  229. via:
  230.  
  231. 1> CFX {return}
  232.  
  233. First, let us explain the switches.  CFX's switches can be thought of as
  234. "find" switches.  When you use a particular switch, you are really asking
  235. CFX to find a specific filetype.  Therefore, when using a CFX switch, you
  236. must prepend the action specifier with an immediate "-f".  Here are some
  237. examples:
  238.  
  239. 1> CFX -fa dh1: {return}
  240.  
  241. will examine the root-level of DH1:  for any files that are of the
  242. address-crunched type.  The action specifier in this case is the "a" after
  243. the "-f".  The "a" of course stands for "address".  No other filetypes will
  244. be displayed other than address-crunched files.  By using this switch, you
  245. are effectively filtering out every other filetype other than
  246. address-crunched.  (See ADDRESS-CRUNCHED in the FILETYPES chapter)
  247.  
  248. 1> CFX -ft MAIL: {return}
  249.  
  250. will examine the root-level of your MAIL:  directory for any filetypes that
  251. fall into CFX's "transfer archive" category, hence the "t" after the "-f".
  252. (See TRANSFER ARCHIVE in the FILETYPES chapter)
  253.  
  254. All of the specific filetypes are explained in full in the FILETYPES
  255. chapter.
  256.                                                         CFX PRO 5   Page 4
  257.  
  258.                            SWITCHES (FILETYPES)
  259.                            ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
  260.  
  261. The following switches must be immediately appended to the "-f" find
  262. switch, thus:  CFX -fr dh0:  {return} (find relocator-crunched)
  263.  
  264.     a    address-crunched - this switch will force CFX to only display
  265. files that have been output by an address-cruncher.  Address-crunchers tend
  266. to be the scourge of the computing society, so these files shouldn't really
  267. be allowed to live, unless of course, you really need the file.  CFX knows
  268. most of the Amiga address-cruncher formats.  CFX doesn't currently check
  269. the uncrunched contents of all of these filetypes, although some are now
  270. covered (See "-u deep Uncrunch" option later).  This switch cannot be used
  271. in conjunction with any other switch, although some options may be used.
  272. See BRAINFILE INFORMATION for more info on address-crunchers.
  273.  
  274.     b    binary (non-exec) files - when this switch is used, CFX will only
  275. display information on non-executable files.  This filetype covers all
  276. non-executable filetypes, including transmission archives, text files,
  277. picture files etc.  This switch may be used in conjunction with the "known
  278. files" and "unknown files" switches, and some options.  Obviously, you
  279. cannot ask CFX to display only executable binary files, as binary files are
  280. NOT executable in the eyes of CFX!
  281.  
  282.     c    crunched (a+r+t) files - this switch will allow CFX to display all
  283. files that it finds that have been crunched by something.  This includes
  284. Address-crunched files, Relocator-crunched files, and Transmission
  285. archives, hence the (a+r+t) after the description.  This switch cannot be
  286. used in conjunction with any other switches, although it is possible to mix
  287. this switch and some options.
  288.  
  289.     i    IFF files - this switch allows CFX to find and display only IFF
  290. format files.  Practically all IFF files are catered for in this switch.
  291. If CFX finds an IFF file that it doesn't actively know or recognise, then
  292. it will print "Unknown IFF format".  If this happens, please send us a copy
  293. (or the first 4000 bytes) of the file(s) in question and we'll add it to
  294. our brainfile.  This switch cannot be used in conjunction with other
  295. switches, but may be used with some options.
  296.  
  297.     k    known files - this switch is for use in conjunction with one of
  298. these other switches:  <NONE> <BINARY> <OVERLAYED> <EXECUTABLE>.  When used
  299. without another switch (ie.  CFX -fk {return} or CFX -fk dh3:  {return})
  300. CFX will only display files that it knows.  Considering that the list of
  301. filetypes that CFX knows is rather extensive, you should find a lot of
  302. files!  When used with the binary switch (ie.  CFX -fk -fb {return}) CFX
  303. will only display files of non-executable type that it actively knows.
  304. This could cover filetypes of known IFF's, or certain configuration
  305. filetypes etc.  In conjunction with the overlayed switch, this switch will
  306. find known overlayed files.  This could include the "DImp executable disk
  307. archive" or the "PowerPacker 3 overlayed file crunched file".  Finally, you
  308. may use this switch with the executable switch.  This will ensure that CFX
  309. only displays executable files of known type.  This could include all
  310. crunched executable files that CFX knows.
  311.                                                         CFX PRO 5   Page 5
  312.  
  313.     o    overlayed files - this is a very handy switch that allows the
  314. user to find overlayed filetypes.  Since it may be difficult for the
  315. non-technically minded user to find the overlay id long-word in an
  316. executable file-header, this option allows you to find which files are
  317. overlayed.  Overlayed files use a special technique for loading into the
  318. Amiga's memory.  Certain software producers use this technique on their
  319. larger files so as to not rob the Amiga of vital memory during loads (ie.
  320. instead of loading a 340k file directly into the Amiga's memory, an
  321. overlayed file may only load in what parts of the file that they need at
  322. any one time.  Therefore this file may only load 50k at any one time,
  323. thereby freeing about 300k of memory for other uses.) Obviously, this
  324. switch finds executable files (only they can be overlayed!) Therefore, no
  325. other switches work with this one, other than the "known" and "unknown"
  326. switches, and some of the options.
  327.  
  328.     p    ILBM picture files - this is almost a subset switch of the IFF
  329. switch.  This allows CFX to find and display ONLY IFF picture files, and
  330. not *ALL* of the entire IFF gamut.  Also, all IFF (ILBM and ANIM) picture
  331. files found will be displayed with normal and additional information (if
  332. possible.) The picture's size and number of bitplanes will also be
  333. displayed, making this switch an excellent tool in itself.  This switch is
  334. mutually exclusive from other switches, but may be used with some options.
  335.  
  336.     r    relocator-crunched - CFX will display files of this type if this
  337. switch is used.  Whilst similar to address-crunched files in some ways,
  338. relocator-crunched files tend to be more useful, and more kind to the
  339. machine.  Some of these relocator-crunched files actually use more
  340. intelligent scatter-loading methods than AmigaDOS itself (wouldn't be hard,
  341. though *;-) This switch can only be used by itself, with a couple of the
  342. options thrown in for good measure.  After all, you don't want to find all
  343. of the files that are address-crunched relocator IFF's, do you??
  344.  
  345.     t    transmission archives - this is another handy little switch
  346. for finding (and examining, to an extent) files that are considered
  347. transmission archives by CFX.  Since most of you use these archiving
  348. methods, I won't go into the "Complete works of Lempel and Ziv", or explain
  349. the inner workings of "adaptive Huffman encoding".  Instead, let it suffice
  350. to say, that CFX knows lots of 'em.  If you have any of these cute archive
  351. types that CFX doesn't know, then please let us know!  This switch is
  352. mutually exclusive with other switches, but some options may be used with
  353. it.
  354.  
  355.     u    unknown files - see "known files" and reverse what has been said.
  356.                                                         CFX PRO 5   Page 6
  357.  
  358.     v    viruses - unluckily, the Amiga is following the rest of the
  359. computer/PC cliques (or should that be cliches??) that have hordes of rabid
  360. spotty juveniles writing heroic viruses (I think I must attribute that line
  361. to Andrew Clayton!) These authors are of course witless beyond belief.
  362. Luckily, we have been allowed to obtain several file-virus filetypes from
  363. Amiga Quarantine, in New South Wales.  The guys at A.Q.  (Richard and Brian
  364. Logan) were gracious enough to allow us access to some of the common (and
  365. some uncommon) nasties that might visit you, if you're not careful!  With
  366. this switch, you can force CFX to ONLY check each file found for virus
  367. infection.  This will ensure that CFX ONLY displays information about files
  368. that are of a virus filetype.  You don't, however, have to manually use
  369. this switch for CFX to virus-check your files.  CFX automatically checks
  370. each executable file for infection EVERY time it is run.  Since CFX is a
  371. hybrid of assembly and C, the asm virus checking routines are lightning
  372. quick, hence the automatic checking.  When/if CFX finds a virus-infected
  373. file, it will print its usual information, AND display a requester
  374. informing you of your infection (ooh, sounds nasty.) CFX doesn't remove or
  375. disinfect infected files.  It is only there to find such infections.  So
  376. far, CFX has performed beautifully, and has even outperformed most of the
  377. latter-day anti-virus utilities.  Another thing to be aware of, is CFX's
  378. built-in anti-virus protection.  CFX has two intelligent routines that it
  379. performs every time CFX is invoked.  Firstly, CFX checks it's filename
  380. (argv[0]) and if this isn't "CFX" then it will bomb out, with a warning.
  381. This is for protection against those "replacement" viruses which rename
  382. your original file to something like "DEVS:  ".  Secondly, CFX performs a
  383. self-anti-virus test upon each invocation.  If CFX finds that itself has
  384. been infected, CFX will not run further, as doing so may infect each and
  385. every file that CFX checks!  Not good.  Therefore, CFX needs to be able to
  386. find itself upon every invocation.  This means one of two things:  you MUST
  387. place your copy of CFX in a system-pathed directory (ie.  C:) or you must
  388. call CFX with it's full pathname (ie.  DH1:TOOLS/CFX.) The latter is
  389. cumbersome, so use the former method.  If CFX cannot find itself, through
  390. pathnames, or through tracing its own argument vectors, then it will run
  391. without checking itself.  This is your problem.
  392.  
  393. ************************************************************************
  394. *** In conclusion, only use -fv if you are specifically looking ONLY ***
  395. *** for infected files, as CFX will always check ALL executables for ***
  396. ***                         infection anyway.                        ***
  397. ************************************************************************
  398.  
  399.     x    executable files - will force CFX to only display executable files
  400. that are found during its scan.  This switch can be used with the "known"
  401. and "unknown" switches.  You can't use this switch with many other switches
  402. (other than find unknown and known), but some options are available with
  403. this one.  This switch is useful for finding files which you can run on an
  404. unknown disk (AND CFX performs a virus check on each executable that it
  405. finds!)
  406.                                                         CFX PRO 5   Page 7
  407.  
  408.                                   OPTIONS
  409.                                   ¯¯¯¯¯¯¯
  410.  
  411. CFX's options are "support" options, which should make your prospective
  412. examinations easier.  Let's dissect the options singularly:
  413.  
  414. Options:
  415.  
  416.   -a      About CFX - this option shows one of two things. If you have paid
  417. a registraton contribution to the authors, you will receive a personal
  418. version of CFX.  This version will have your name and other information in
  419. this screen:
  420.  
  421.  CFX Crunched File Examiner Pro
  422.  © Bob Rye & Marcus Mroczkowski    Registered
  423.  Copyright (c) 1988->1992 incl.    68030
  424.  VER 5.229 16:47:28 Aug 10 1992    Version
  425.  
  426.  Compiler: SAS/C version 5.10b
  427.  
  428.  This CFX is registered to: Bob Rye
  429.  
  430.  Registration contact:
  431.         BOB RYE
  432.         11 BEAVER STREET
  433.         ST. ALBANS, VICTORIA
  434.         AUSTRALIA, 3021
  435.  
  436. Otherwise, if you are still using the public release version, this screen
  437. will explain the FREEWARE concept, and give you information about how to
  438. contact the authors for when you decide to register CFX.
  439.  
  440.  CFX Crunched File Examiner Pro
  441.  © Bob Rye & Marcus Mroczkowski    Public
  442.  Copyright (c) 1988->1992 incl.    68000
  443.  VER 5.226 17:13:59 Jul 14 1992    Version
  444.  
  445.  CFX is a file examiner with a difference. It doesn't claim to be anything
  446.  but a file examiner. Of course, something written today will be out of
  447.  date tomorrow, but we are committed to making, and keeping, CFX the best
  448.  file examiner that your precious registration money can buy.
  449.  
  450.  This version of CFX is FREEWARE, which means that if you use CFX, you
  451.  don't have to provide a small contribution to the authors, but if you do
  452.  contribute a small amount, you will receive a fully functional version of
  453.  CFX, with built-in virus-check-uncrunch. We suggest a nominal fee of $25
  454.  AUS (See DOCS), which will not only endear you to us forever, but will
  455.  also allow you free updates and upgrades whenever they are available. Be
  456.  daring! Register this FREEWARE product today!
  457.  
  458.  Registration contact:
  459.         BOB RYE
  460.         11 BEAVER STREET
  461.         ST. ALBANS, VICTORIA
  462.         AUSTRALIA, 3021
  463.  
  464.  
  465. Surely for this much work, we deserve something, don't we??) This option is
  466. best used by itself.
  467.  
  468. *-------------------------------------------------------------------------*
  469.                                                         CFX PRO 5   Page 8
  470.  
  471.   -b      Be quiet - this option will allow you to dodge the CFX
  472. title/heading which CFX prints at the start of each session.  Why this
  473. option?  If you use Directory Opus (quite fantastic IMO) and you have CFX
  474. hooked into a tool gadget, you will soon realise that DOpus uses (or did
  475. use, I don't know if it's changed!?) a 256-byte string buffer for selected
  476. filenames.  If you picked 23 filenames in DOpus, and the length of all
  477. these filenames exceeded 256 bytes, then another string buffer would be
  478. allocated for you.  Therefore, CFX would print its title, and then do its
  479. work, and then get its next string buffer and do it all over again.  Seeing
  480. the CFX title after every 6 files have been CFX'd gets a bit annoying.
  481. This option alleviates this somewhat.
  482.  
  483. *-------------------------------------------------------------------------*
  484.  
  485.   -c      checksum calculation - an option for the paranoid! In your
  486. examination travels, you may feel like gaining a magic number for each file
  487. that is examined.  This number shouldn't change between invocations of CFX.
  488. It is a little checksum of the file's header, and can show you whether a
  489. filetype has changed since you last CFX'd it.  To properly use this, you
  490. should redirect CFX's output to a text file, and store that textfile
  491. somewhere safe.  Later, you can cross-reference another of these outputs
  492. against the original.  Any changed files will have a different checksum.
  493. Perhaps later, we may add a built-in function to automatically
  494. cross-reference these files.  This option can be used in conjunction with
  495. most switches and other options.
  496.  
  497. *-------------------------------------------------------------------------*
  498.  
  499.   -d      deep directory scan - one of the most basic (and important)
  500. options.  The "-d" will allow you to recursively enter directory levels.
  501. If you were to use:
  502.  
  503. 1> CFX -d dh0: {return}
  504.  
  505. CFX would first examine the root level of dh0:, and then each of the
  506. sub-directories from the root.  The above example would provide an
  507. examination report for ALL files and directories on drive dh0:.  This
  508. option can be used to modify all action switches and options.  When CFX
  509. outputs its findings, it doesn't sort the directory entries in any way, as
  510. this would entail buffering and sorting before output.  We believe that
  511. reading a directory structure straight from DOS is the best way to get to
  512. filenames, hence no sorting/pausing.  CFX now has a limit as to how many
  513. directory-levels it can descend.  As of this writing, the number has been
  514. set at 48 levels, although this may change at any time, for bigger or
  515. smaller.  This has been implemented because of the fact that CFX recurses,
  516. and uses more memory each time it enters a new directory-level.  This
  517. memory comes from the system-stack.  If you have a low system-stack when
  518. you use "-d", and CFX crashes, then you should set your stack to a higher
  519. number. The bigger the stacksize, the better. To allow for the recursive
  520. collecting of 48 layers of directories, you need 30000 bytes of stack. You
  521. have been warned!
  522.  
  523. *-------------------------------------------------------------------------*
  524.                                                         CFX PRO 5   Page 9
  525.  
  526.   -e      extended hunk scan - another option for the technically minded.
  527. This allows the user to FULLY examine the hunk structure of a specified
  528. file(s).  Of course, this will only be effective with executable files, so
  529. non-executable files won't provide an extended-hunk report.  This can be
  530. useful for checking whether a file contains annoying debug hunks, symbol
  531. hunks, or anything else hunk-oriented.  You can use this option with most
  532. other options and switches, although extended hunk-information won't be
  533. provided for non-executable files.
  534.  
  535. *-------------------------------------------------------------------------*
  536.  
  537.   -h<=>#  files with <#, =# or ># hunks - this option is practically a
  538. "find" switch camouflaged as an option.  If you would like to know which
  539. files on your disk contain a certain number of hunks, this is the option to
  540. use.  Some programmers release executables containing innumerable hunks.
  541. This can be good and bad.  If your system contains severely fragmented
  542. memory, a program of 97 hunks will probably scatter-load a bit easier
  543. (memory permitting) than a 2 hunk file of the same size.  Imagine your
  544. Amiga's memory as being a big box containing several pigeon-holes.  When
  545. the memory isn't fragmented, there might only be 4 pigeon-holes, that are
  546. quite large.  When fragmented, the pigeon holes are more in number, and a
  547. fair bit smaller.  A large program of two hunks will need a certain amount
  548. of contiguous memory to scatter-load.  If fragmented, your machine may not
  549. be able to load the file.  On the other hand, the fragmented machine may be
  550. able to load the same sized program of 97 hunks, as each hunk is small, and
  551. easily fitted into the "broken" memory.  If you are an avid Imploder 4
  552. user, then you may want to "hunk-merge" such programs with huge numbers of
  553. hunks.  If you need to know whether your TOOLS:  directory contains any
  554. files of more than 10 hunks (my personal cut-off level), then CFX the
  555. directory with:
  556.  
  557. 1> CFX -h>10 TOOLS: {return}
  558.  
  559. CFX will then inform you of the files of more than 10 hunks in your TOOLS:
  560. directory.  You can also find files containing a specific number of hunks
  561. by using the "=" operator, or files containing less than a certain number
  562. through the "<" operator.  Hence:
  563.  
  564. 1> CFX -h<3 TOOLS: {return}
  565.  
  566. will find files of less than 3 hunks in TOOLS:.  Of course, you cannot
  567. specify an illegal formula like:
  568.  
  569. 1> CFX -h<1 TOOLS: {return} or
  570.  
  571. 1> CFX -h<-10 TOOLS: {return}
  572.  
  573. as executables cannot contain less than 1 hunk.  The numbers that you give
  574. to CFX for this option MUST BE positive decimals.  This option can be used
  575. with many other options and switches, although useless if used in
  576. conjunction with "-fb" for instance.  If you don't understand this concept,
  577. Addison-Wesley print excellent books for the Amiga...
  578.  
  579. *-------------------------------------------------------------------------*
  580.                                                         CFX PRO 5   Page 10
  581.  
  582.   -i[p|f] integrity check of files - have you ever received a disk of
  583. pictures from someone and noted that some of the files have disk-errors
  584. right in the middle of them?  Have you also noted that the pictures with
  585. the errors in their guts are the ones that you REALLY want?  Just as Mostra
  586. is about to show you the incredibly viable HAM interlaced version of
  587. "KELLY_BUNDY_GOES_NAKED_SEX_FEST.pic" you hear that sickening <grrr><grrr>
  588. noise from DF0:.  Oh, I'm all a-swoon from the thought of it!  This can
  589. provide you with quite a lot of teeth-gnashing.  The "-i" option checks all
  590. specified files on a disk for these horrid read/write errors.  If CFX finds
  591. a file that has compromised integrity, CFX will report this with a flag in
  592. its output.  (See "CFX OUTPUT" later...) You then know that this file is
  593. knackered.  Brett O'Callaghan then asked for more from this option, so he
  594. got it.  Brett said that he'd like CFX to be able to report just WHAT files
  595. passed or failed an integrity check, while skipping other irrelevant
  596. information.  Well, this function is now implemented, as you can now
  597. specify either:
  598.  
  599. 1) a straight integrity check of all files, with reporting of all file's
  600.   statuses, or;
  601.  
  602. 2) an integrity check of all files, but only receiving reports about which
  603.   files FAILED the check, or;
  604.  
  605. 3) an integrity check of all files, but only receiving reports about which
  606.   files PASSED the check.
  607.  
  608. To gain a complete integrity check of all files (and receive full
  609. reporting), use the '-i' option.  For a full check, but only receiving
  610. reports for FAILED or PASSED files, use '-if' or '-ip' respectively.  This
  611. option is subject to all other dynamic switches/options, as in using the
  612. '-s' option with the '-i' option, you won't receive any information (unless
  613. you use the BOC '-sl' option) about individual files, but only a summary
  614. report.  Then check the number of entries in the 'Compromised files' area
  615. for how many bad files there are.  This option can be used with most other
  616. options and switches.
  617.  
  618. NOTE: Attempting the check an emtpy file's integrity is not possible (why
  619. bother?) Thanks to Martin Ozolins who made some chilling discoveries about
  620. CFX...
  621.  
  622. *-------------------------------------------------------------------------*
  623.  
  624.   -l[f]   real file length [FFS] - "Bob, I have a cunning plan." This
  625. is what Brett O'Callaghan once said in response to the completely
  626. blasphemous way that AmigaDOS handles filesizes.  I won't explain the way
  627. that DOS handles the filesize information, but suffice it to say, it's
  628. stuffed (just like Baldrick's plans.) Brett came up with a plan so cunning,
  629. you could cut your lunch with it.  This involved asking DOS how big a file
  630. is, and then rolling it in a cute little algorithm of mine.  Now, using
  631. this option, CFX will list filesizes CORRECTLY.  That is, instead of being
  632. told that your disk containing one hundred 3-byte files contains 300 bytes
  633. of information, CFX will tell you that you really have a lot less than
  634. 835.7 k free.  Don't forget, that each of these 3-byte files is really
  635. exactly 1-kilobyte long (one parent block = 512-bytes, one data block =
  636. 512-bytes).  This option defaults to standardfilesystem sizes.  You can use
  637. fastfilesystem sizes via:
  638.  
  639. 1> CFX -lf ... {return}
  640.  
  641. I don't know how useful this option is, as it would be handier in a
  642. directory-handling program (like that excellent Australian one with the
  643. author who doesn't reply to netmail.) This option is also safe to use with
  644. most other options and switches, as its actions are practically passive.
  645.  
  646. *-------------------------------------------------------------------------*
  647.                                                         CFX PRO 5   Page 11
  648.  
  649.   -n      no requester-warnings - this is for those of you who like to
  650. redirect your outputs.  When CFX finds a file-virus on a disk, it reports
  651. this via a big requester.  Since this requester will sit there on your CLI
  652. for an eon or two, you can turn off the requesters.  Now you can check a
  653. disk for viruses, whilst redirecting CFX's output, without having to worry
  654. about clicking requesters every 7 seconds.  Another excellent idea by CFX's
  655. co-author, Marcus Mroczkowski.  This option can be used in conjunction with
  656. other options and switches, although you must be careful with its use, as
  657. CFX would (by default) warn you that it has found a virus on your disk.  If
  658. you turn off the requester-warning, then pay attention to CFX's
  659. file-information area, as CFX will ALWAYS print to the standard output that
  660. a file-virus has been found.
  661.  
  662. *-------------------------------------------------------------------------*
  663.  
  664.   -r      requester usage - for those people who like to point and click.
  665. This version of CFX allows a *MUCH* better representation of a
  666. file-requester, using the brilliant Nico François ReqTools.library
  667. requester (makes the ARP and REQ requester look very dense.) By using the
  668. command-line:
  669.  
  670. 1> CFX -r {return}
  671.  
  672. CFX will bring up the requester, and ask for your selection(s).  You can
  673. either change directories or sit where you are; point and hit "OK";
  674. double-click a filename; or extended-select a group of files (thankyou
  675. Brett!) using the shift-key for the extended-selection modifier (ala
  676. WorkBench), select ALL of the files in the current directory by hitting the
  677. "ALL" gadget, select files via a wildcard arrangement, using the
  678. "MATCH" gadget; or just hit "CANCEL" and do nothing.
  679.  
  680. *-------------------------------------------------------------------------*
  681.                                                         CFX PRO 5   Page 12
  682.  
  683.   -s[l]   summary [LOUD] - when examining a whole directory tree, the user
  684. may not want or need CFX to display everything about the files found.  You
  685. may only want a summary of valid points about the dir-tree.  This
  686. information can be very interesting, and is generally quicker than a
  687. full-display of CFX's work.  Here is a summary of my DH1:  partition that
  688. CFX gave me after the command line:
  689.  
  690. 1> CFX -d -s dh1: {return}
  691.  
  692.  CFX Crunched File Examiner Pro
  693.  © Bob Rye & Marcus Mroczkowski
  694.  Copyright (c) 1988, 89, 90, 91
  695.  VER 5.08p 14:53:02 Oct 20 1991
  696.  
  697. CFX Summary of "dh1:" (HD_1):
  698.  
  699.  -> Relocator-crunched.......: 74        Size :  1225988
  700.  -> Address-crunched.........: 1         Size :     6164
  701.  -> Other known executables..: 0         Size :        0
  702.  ?? Unknown executables......: 115       Size :  4104876
  703.                               ---------------------------
  704. Executable files checked.....: 190       Size :  5337028
  705.  
  706.  -> Crunched data files......: 1         Size :    54708
  707.  -> Other known data files...: 4         Size :    68606
  708.  ?? Unknown data files.......: 0         Size :        0
  709.                               ---------------------------
  710. Data files checked...........: 5         Size :   123314
  711.  
  712. Acceptable files.............: 195       Size :  5460342
  713. Compromised files............: 0         Size :        0
  714. Directories found............: 7       
  715. FILE/LINK VIRUSES found......: 0       
  716.  
  717. Total % of known files.......: 41.03%
  718.  
  719. The only other thing I should explain is the [LOUD] sub-option.  With the
  720. above example, (and as is usual) CFX used the default QUIET option.  You
  721. can force CFX to print it's usual information display whilst doing the
  722. summary scan.  The LOUD option must be specified immediately after the
  723. "-s".  (Thanks again to Brett O'Callaghan for this little titbit!) This
  724. option is particularly useful when used in conjunction with some of the
  725. "find" switches.  Of course, the percentage known total at the bottom of
  726. the summary output can appear silly at times. For example:
  727.  
  728. 1> CFX -fr -d -s dh0: {return}
  729.  
  730. will search (deeply) through drive dh0:  for all relocator-crunched files,
  731. and then display a summary screen on the found files.  Of course, the %
  732. known field will be 100% if any files were found.  If you can't figure out
  733. why this is so, go back and use Whatis.
  734.  
  735. NOTE: CFX now allows stacked device/dir/file names to be passed to the
  736. summary function. This means that the following command line is perfectly
  737. valid:
  738.  
  739. 1> CFX -fr -d -s dh0: dh1: dh2: dh3:{return}
  740.  
  741. as long as you don't include too many name directives. CFX now ceases
  742. counting at 30 files/devs and will only examine the first 30 given.
  743.  
  744.         One thing you should also be made aware of is the fact that CFX's
  745. switches and options are NOT case-sensitive.  So, either -FA, -Fa, -fA, or
  746. -fa will gain the same action. Another caveat is the argument positioning.
  747. CFX doesn't need arguments in any particular order. For example:
  748.                                                         CFX PRO 5   Page 13
  749.  
  750. 1> CFX -s -d -fr dh0: {return}  is identical to:
  751. 1> CFX -d -s -fr dh0: {return}  is identical to:
  752. 1> CFX -d dh0: -fr -s {return}
  753.  
  754. 1> CFX -s -d -fr dh0: dh1: dh2: dh3: temp: {return}  is identical to:
  755. 1> CFX dh0: -s dh1: -d dh2: -fr dh3: temp: {return}  is identical to:
  756. 1> CFX dh0: dh1: dh2: dh3: temp: -s -d -fr {return}
  757.  
  758. If CFX gives you this warning:
  759.  
  760.  CFX Crunched File Examiner Pro
  761.  © Bob Rye & Marcus Mroczkowski
  762.  Copyright (c) 1988, 89, 90, 91
  763.  VER 5.08t 14:18:14 Oct 23 1991
  764.  
  765. Argument conflict: illegal combination of switches.
  766.  
  767. then you know that you have offended CFX's logic.  If you have a mixture of
  768. switches that CFX refuses to accept, that YOU think should be OK, then
  769. please netmail me with your ideas.  I'll certainly have a look at them.
  770.  
  771. *-------------------------------------------------------------------------*
  772.  
  773.   -u      deep uncrunch/virus check - this is a new option which will
  774. definitely grow as we add more cruncher types to this function.  What this
  775. does is quite simple (from the user's viewpoint!) If CFX finds a file that
  776. has been crunched by a certain cruncher type that it can uncrunch, and the
  777. -u option has been given, CFX will attempt to uncrunch the file, and then
  778. scan the uncrunched memory for viruses.  Currently this option supports
  779. these cruncher types:
  780.  
  781. ByteKiller 1.2-1.3
  782. Tuff 1.0
  783. Tetragon "Tetrapack" 2.1 - 2.2 +PRO
  784. DefJam 3.2
  785. PowerPacker data
  786. PowerPacker 2.x OTHER THAN MASTER modes
  787. PowerPacker 3.x OTHER THAN MASTER, overlayed and encrypted modes
  788. PowerPacker 4.x OTHER THAN overlayed, loadseg and encrypted modes
  789. All Imploders, 1.0-4.0 OTHER THAN S-Lib & L-Lib crunched, overlayed
  790. crunched, and some mutants.
  791.  
  792. Technically speaking, ByteKiller, Tuff, Tetragon(s) and DefJam(s) usually
  793. stomp memory where they uncrunch, but CFX doesn't allow this to happen.
  794. CFX allocates a safe memory area (memory permitting) and allows these
  795. crunched files to uncrunch safely.  The uncrunched programs in this mode DO
  796. NOT launch, so this function is safe.  If a virus is found hidden in a
  797. crunched file, CFX will give the appropriate warnings.  Of course this
  798. option can take some time to fully execute if you have 300 (supported)
  799. crunched files in a directory to check.  Usage example:
  800.  
  801. 1> CFX -u -d DH1: {return}
  802.  
  803. will examine ALL directory levels of drive DH1:, and if CFX finds any of
  804. the supported crunchers, it will attempt to uncrunch them, check them, and
  805. report it's findings.  Sometimes CFX may report that a file was too mutated
  806. for uncrunch-examination:  this is just tough luck.  CFX will then skip
  807. this file.  One file comes to mind, and that is MandelMountains 2.1
  808. (mutated like the be-jingos.) To uncrunch this file, run two copies of Zap,
  809. load in MM2.1 into one Zap, and another Imploder Normal file into the other
  810. Zap.  Now, after the longwords $000003E9, $00000014 in MM2.1, copy Normal
  811. Imploder code into the MM2.1 Zap window, until you hit the first $000003F2.
  812. Now use PowerPacker 3.0+ to uncrunch this file.  Experiment...
  813.  
  814. On registered versions of CFX Pro, some MUTANT Imploder filetypes were so
  815. mutated that CFX had NO real chance of uncrunching them for the file-virus
  816. check.  This has still not changed, and any attempt to use the "-U" option
  817. on mutated files may result in a severe system crash.  CFX has, however,
  818. been changed so that it now attempts to determine the extent of mutation,
  819. and if found to be severe, CFX will not uncrunch the file.  This does not
  820. preclude the possibility that the crunched file is knackered, and CFX may
  821. still crash the machine when attempting such examinations, even though CFX
  822. now has tighter control on the situation.  This now also applies to the
  823. PowerPacker MUTATIONS as well.  CFX will mostly uncrunch and virus-check
  824. these files, but if the PowerPacker file is comprehensively mutated, CFX
  825. may unfortunately crash your system.  Please note that this hasn't happened
  826. on my machine for quite some time, and I regularly virus-check crunched
  827. files of this type...
  828.  
  829. *-------------------------------------------------------------------------*
  830.                                                         CFX PRO 5   Page 14
  831.  
  832.   -x      file eXplosion information - this is a new option which will
  833. investigate/disassemble certain files. The file explosion ability can be
  834. quite handy, since it peeks into several archive/crunched-file types. An
  835. example of this would be:
  836.  
  837. 1> CFX -x DH1:SRC_BAK/CFX5_92_08_11.lha {return}
  838.  
  839.  CFX Crunched File Examiner Pro
  840.  © Bob Rye & Marcus Mroczkowski    Registered
  841.  Copyright (c) 1988->1992 incl.    68030
  842.  VER 5.229 16:47:28 Aug 10 1992    Version
  843.  
  844. <BASE DIRECTORY> "DH1:SRC_BAK" (BAK)
  845. CFX5_92_08_11.lha            204595   --D-- --    Lharc -lh5- arc
  846.  -> F = 87   h0 = 0   h1 = 0   h2 = 0   h3 = 0   h4 = 0   h5 = 87  h6 = 0  
  847.  -> h7 = 0   hd = 0   z4 = 0   z5 = 0   zs = 0   ?? = 0   T = 494490
  848.  
  849.   1 files  1 directories  204595 bytes  CFX finished!
  850.  
  851. The key to the above format:
  852.  
  853. F  = number of files found in this archive (whatever the format.)
  854. h0 = number of stored (-lh0-) files in this archive
  855. h1 = number of -lh1- files in this archive
  856. h2 = number of -lh2- files in this archive
  857. h3 = number of -lh3- files in this archive
  858. h4 = number of -lh4- files in this archive
  859. h5 = number of -lh5- files in this archive
  860. h6 = number of -lh6- files in this archive
  861. h7 = number of -lh7- files in this archive
  862. hd = number of -lhd- files in this archive
  863.  
  864. z4 = number of -lz4- files in this archive
  865. z5 = number of -lz5- files in this archive
  866. zs = number of -lzs- files in this archive
  867.  
  868. ?? = number of unknown-format files in this archive
  869.  
  870. T  = total uncrunched/exploded size of files in this archive
  871.  
  872. The filetypes that CFX can disassemble are many varied. Obviously, LHA and
  873. LZH files (along with quite a few *.LZ* variants) are supported. Also
  874. supported are several disk-crunchers, like DMS. Address-crunchers are also
  875. supported, like:
  876.  
  877. 1> CFX -x CFX:ETEST/tetra21_plain {return}
  878.  
  879.  CFX Crunched File Examiner Pro
  880.  © Bob Rye & Marcus Mroczkowski    Registered
  881.  Copyright (c) 1988->1992 incl.    68030
  882.  VER 5.229 16:47:28 Aug 10 1992    Version
  883.  
  884. tetra21_plain                4948     X-A-- H1    Tetrapack 2.1 norm-decrunch
  885.  -> UNCR AREA = $30000-$50000  JUMP ADDR = $30000  EXPL. SIZE = 8822
  886.  
  887.   1 files  0 directories  4948 bytes  CFX finished!
  888.  
  889. The key to the above:
  890.  
  891. UNCR AREA [Uncrunch Area] = hex address $30000 - $50000. This is the area
  892. of your memory that will be bulldozed when this address-cruncher expands.
  893.  
  894. JUMP ADDR [Jump Address] is where execution of the newly expanded data will
  895. commence.
  896.  
  897. EXPL. SIZE [Exploded Size] is how big this crunched file will expand to
  898. inside the Amiga's memory.
  899.  
  900. This feature allows you to check files more deeply, and may be confusing to
  901. some users.  If so, don't let it worry you.  This option may not even be of
  902. any use to you.
  903.                                                         CFX PRO 5   Page 15
  904.  
  905.                               BITS AND PIECES
  906.                               ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
  907. - CFX PRO 5 requires the Nico François ReqTools.library in your LIBS: dir.
  908. - CFX PRO 5 requires the Nico Francois PowerPacker.library in your LIBS: dir.
  909. - The ReqTools.library accepts extended select (Brett's idea), so use it!
  910. - Options and switches may be either case (upper or lower).
  911. - Options and switches may be in any order (including pathnames/files).
  912. - Filenames/directorynames may be stacked, for example:
  913.  
  914.         1> CFX -d dh0: dh1: dh2: {return}
  915.  
  916. will recursively enter and examine all files in ALL levels of drive dh0:,
  917. then when finished, repeat the same for drives dh1:  and dh2:;
  918.  
  919. or
  920.  
  921.         1> CFX -d c:dir tools:CED dh2:MAIL/trapdoor {return}
  922.  
  923. will examine the files c:dir, tools:CED and dh2:MAIL/trapdoor and then
  924. recursively enter and examine all files in drive dh4:
  925.  
  926. What will happen if you type:
  927.  
  928. 1> CFX -fr c:dir {return}
  929.  
  930. and the file c:dir ISN'T crunched with a relocator cruncher??  Check it and
  931. see if you're right.  This same thing will happen if you specify a find
  932. switch along with asking for the requester.  Only specified ('find')
  933. filetypes will be displayed if you ask for a specific find-mask.
  934.  
  935. The AmigaDOS protect bits for the CLI can make CFX's life a misery.  If a
  936. file hasn't got it's 'R' (Read) bit set, then CFX will report a "READ
  937. PROTECTION ERROR" and fail to examine the file.  This is not CFX's fault
  938. per se, it's the AmigaDOS function "Read()" which won't allow us the
  939. privilege, which is just as well, 'cos that's its job!  Never mind, just
  940. check the protection bits for the file if CFX reports a "READ PROTECTION
  941. ERROR" and change the bits via "protect" if you'd like to examine this
  942. file.  CFX did have the ability to change the bits automatically, but this
  943. was not quite right, since you might have unset the "R" bit for a very good
  944. reason:  file protection.  CFX does NOT behave automatically under any
  945. circumstances, and does not take matters into it's own hands.
  946.  
  947. Before launching its activities, CFX checks your DOSBase vectors for
  948. intrusion by the Xeno file-virus.  This virus is very dangerous if running
  949. in a system that CFX is about to utilise.  If Xeno is running when you CFX
  950. a directory (or if you launch a 'dir' command, or 'list' or ANYTHING that
  951. examines directory trees) there is a good chance that some or all of the
  952. examined files will be infected.  This is the reason that CFX checks the
  953. system's current DOSBase.  If there is a nasty wedged into DOSBase, CFX
  954. will refuse to run, and will explain its decision not to do so.  Believe
  955. me, you don't want anything like CFX running alongside the Xeno virus.
  956.  
  957. CFX may sometimes give you the wrong filetype description of a file,
  958. because of some utter twist of fate. This is rare. This is unfortunate.
  959. This is life. There is nothing we can do about this. Unfortunately, some
  960. files "look" like other filetypes, sometimes. Just be happy in the
  961. knowledge that CFX doesn't get things confused very often.
  962.  
  963. CFX version 5.000+ were (and will continue to be) developed with:
  964.         - SAS C-compiler, versions 5.10 - 5.10b.
  965.         - SAS assembler 5.10b
  966.         - DevPac GenIm assembler version 2.14.
  967.         - Cygnus Editor Professional version 2.12.
  968.                                                         CFX PRO 5   Page 16
  969.  
  970.                                 CFX OUTPUT
  971.                                 ¯¯¯¯¯¯¯¯¯¯
  972. For the moment, if you think of CFX PRO 5 as just a directory replacement,
  973. then you shouldn't have any problems using it.  It's a very informative and
  974. comprehensive replacement, however! The standard CFX output line format is:
  975.  
  976. <         filename         > < size > <flg> <hnk> <    file information    >
  977.  
  978. 'filename' is a 28-character field, which will automatically expand with a
  979. bigger filename.
  980.  
  981. 'size' is the filesize of the file being examined (defaulting to
  982. standardfilesystem size.)
  983.  
  984. 'flg' is the important part here.  'flg' is a 5-character field of flags
  985. which tells you everything you needed to know about the file.  Let's check
  986. what each of the flag-elements means:
  987.  
  988.   1 - the first element can be only one of two things:
  989.   'X' or '-'
  990.       'X' tells you that the file is 'eXecutable'
  991.       '-' tells you that the file is NOT executable (ie. is binary)
  992.  
  993.   2 - the second element can only be one of two things:
  994.   'O' or '-'
  995.       'O' tells you that the file is 'Overlayed'
  996.       '-' tells you that the file is NOT overlayed
  997.  
  998.   3 - the third element can only be one of four things:
  999.   'A' or 'D' or 'R' or '-'
  1000.       'A' tells you that the file is of 'Address-crunched' type
  1001.       'D' tells you that the file is of 'transmission-archived' (DATA) type
  1002.       'R' tells you that the file is of 'Relocator-crunched' type
  1003.       '-' tells you that the file is NOT of any discernible type
  1004.  
  1005.   4 - the fourth element can only be one of three things:
  1006.   'M' or 'V' or '-'
  1007.       'M' tells you that the file is a 'Mutant' type
  1008.       'V' tells you that the file is a 'Virus' type
  1009.       '-' tells you that the file is NOT a known mutant or virus
  1010.  
  1011.   5 - the fifth element can only be one of three things:
  1012.   'F' or 'P' or '-'
  1013.       'F' tells you that the file FAILED a full integrity check
  1014.       'P' tells you that the file PASSED a full integrity check
  1015.       '-' tells you that a file integrity check was NOT performed
  1016.  
  1017. 'hnk' is the 'number' of hunks field.  This takes the form of 'Hxxx' where
  1018. 'xxx' equals the number of hunks in the file.  Only executable files
  1019. contain hunks, so binary files won't feature this field.  CFX PRO 5 should
  1020. handle files with as many hunks as is possible.
  1021.  
  1022. 'file information' is another crucial part of CFX's output.  This is where
  1023. you receive a description string of the file in question.  This may be
  1024. 'Unknown executable type' or any of the other filetype descriptions that
  1025. CFX currently knows.  Here is the CFX output resulting from CFX checking
  1026. itself:
  1027.  
  1028. CFX                          48104    X---- H2    executable type
  1029.  
  1030. Obviously, the filename is 'CFX', its filesize is 48104 bytes (SFS), it's
  1031. an eXecutable file, has 2 hunks, and is unknown (ie.  not a virus or a
  1032. crunched-file.) Now you should experiment with CFX.  Check your entire
  1033. SYSTEM disk for interest's sake via:
  1034.  
  1035. 1> CFX -d SYS: {return} and ENJOY your program!
  1036.                                                         CFX PRO 5   Page 17
  1037.  
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.            CORRESPONDENCE, BUG REPORTS, PRETTY POSTCARDS, MONEY
  1045.            ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
  1046.  
  1047. Mail:
  1048. ¯¯¯¯¯
  1049.         BOB RYE
  1050.         11 BEAVER STREET
  1051.         ST. ALBANS
  1052.         VICTORIA
  1053.         AUSTRALIA 3021
  1054.  
  1055.  
  1056.  
  1057. Don't forget to include your FIDO Netmail address or Internet Email
  1058. address, and personal postal address.
  1059.  
  1060.  
  1061.  
  1062. Bob's electronic mail addresses:
  1063. ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
  1064.   3:633/359.7@fido
  1065.   41:300/359.7@amiganet
  1066.   42:8699/8.7@trinet
  1067.   bobrye@csource.oz.au
  1068.   Bob_Rye@guru.apana.org.au
  1069.  
  1070.   CRAZY DIAMOND 3:633/359@fido
  1071.   Phone: [Intl. +61 3 5698873] [National 03 5698873] up to 14.4k
  1072.   SysOp: Chris Quonoey
  1073.  
  1074. The latest PUBLIC version of CFX will always be available on this BBS, in
  1075. the Amiga files section.
  1076.  
  1077.  
  1078. Marcus's electronic mail addresses:
  1079. ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
  1080.   3:635/509.5@fido
  1081.   Marcus.Mroczkowski@p5.f509.n635.z3.fidonet.org
  1082.  
  1083.   BALLARAT MAIL 3:635/509@fido
  1084.   Phone: [Intl. +61 53 420845] [National 053 420845] up to 14.4k
  1085.   SysOp: Stephen Walsh
  1086.                                                         CFX PRO 5   Page 18
  1087.  
  1088.                           REGISTRATION = $25 AUS!
  1089.                           ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
  1090. If you're using a non-registered version of CFX PRO 5, and you like it
  1091. (let's face it, what's there not to like??) then please register it.
  1092. Hundreds of hours, very long hours, have been put into this program.  AND
  1093. it's the best of it's kind, worldwide.  Support us and we'll support you.
  1094. This is the FREEWARE announcement straight from CFX's "-a" option.  Please
  1095. read it:
  1096.  
  1097. /*-----------------------------------------------------------------------*/
  1098.  
  1099.  CFX Crunched File Examiner Pro
  1100.  © Bob Rye & Marcus Mroczkowski    Public
  1101.  Copyright (c) 1988->1992 incl.    68000
  1102.  VER 5.226 17:13:59 Jul 14 1992    Version
  1103.  
  1104.  CFX is a file examiner with a difference. It doesn't claim to be anything
  1105.  but a file examiner. Of course, something written today will be out of
  1106.  date tomorrow, but we are committed to making, and keeping, CFX the best
  1107.  file examiner that your precious registration money can buy.
  1108.  
  1109.  This version of CFX is FREEWARE, which means that if you use CFX, you
  1110.  don't have to provide a small contribution to the authors, but if you do
  1111.  contribute a small amount, you will receive a fully functional version of
  1112.  CFX, with built-in virus-check-uncrunch. We suggest a nominal fee of $25
  1113.  AUS (See DOCS), which will not only endear you to us forever, but will
  1114.  also allow you free updates and upgrades whenever they are available. Be
  1115.  daring! Register this FREEWARE product today!
  1116.  
  1117.  Registration contact:
  1118.         BOB RYE
  1119.         11 BEAVER STREET
  1120.         ST. ALBANS, VICTORIA
  1121.         AUSTRALIA, 3021
  1122.  
  1123. /*-----------------------------------------------------------------------*/
  1124.  
  1125. What do you get for registering?? Here is the short list:
  1126.  
  1127. Personal compiled copies, compiled to your specifications (ie. fully
  1128. optimised, 68000, 68010, 68020, 68030, 68040, all supporting
  1129. maths-coprocessors.
  1130.  
  1131. The ability to utilise the "-u" option and fully virus-check and report on
  1132. crunched files.
  1133.  
  1134. The ability to use the "-x" option, to disassemble crunched files'
  1135. structures.
  1136.  
  1137. A clear conscience.
  1138.  
  1139. Due to my unemployment, and the fact that I'm flat stoney broke, I cannot
  1140. cover the costs of postage for updates and upgrades.  Your immediate
  1141. FREEWARE registration contribution does cover the primary media and postage
  1142. cost, but, unfortunately, I cannot continue to supply a printed manual.  If
  1143. you would like a printed manual, please enclose an additional $10 AUS.  For
  1144. Air-Mail postage, please enclose an additional $10 AUS.  All registered
  1145. users may send their original disk, a stamped (PRE-PAID) self-addressed
  1146. disk-mailer (please quote your registration number) to me at any time and
  1147. they will receive the latest version update/upgrade for no cost.  To
  1148. register, fully complete and sign a printout of the registration form at
  1149. the end of this document, and get it to me, pronto!
  1150.                                                         CFX PRO 5   Page 19
  1151.  
  1152.                          CREDITS & ACKNOWLEDGMENTS
  1153.                          ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
  1154. Kim Benson         - for putting up with my very late nights and for
  1155.                      feeding me and keeping me warm. There you go, Poss,
  1156.                      you've now been read by at least 5 users worldwide!
  1157.                      You're famous!
  1158.  
  1159. Marcus Mroczkowski - for technical expertise, keeping my Amiga alive, ideas,
  1160.                      manual filetype examination, ideas, beer, dim-sims,
  1161.                      exhaustive virus-examination and infection,
  1162.                      beta-testing, ideas and company. Want a sick computer
  1163.                      fixed?? See Marcus.
  1164.  
  1165. Brett O'Callaghan  - one of THE beta-testers who also contributed positively
  1166.                      to the development process, for brilliant ideas, for
  1167.                      being intelligent, and for telling me about Larry
  1168.                      Niven. (Anyone know where I can get a Nessus doll??)
  1169.  
  1170. Stephen Walsh      - another beta-tester and sysop of a great BBS and who
  1171.                      made constant suggestions for improvement.
  1172.  
  1173. Martin Ozolins     - a well-hard beta-tester and reg'd owner who, with the
  1174.                      help of Enforcer, found several whoppers...
  1175.  
  1176. Brendan Pratt      - a beta-tester from Qld, with a big BBS to boot. Thanks
  1177.                      for the access to SideCar, the files, and the testing!
  1178.  
  1179. Guns N' Roses      - another spectacular album (or two.) While I can't
  1180.                      really admit that Axl actively beta-tested during the
  1181.                      recording of UYI 1 & 2, I have heard a rumour that
  1182.                      Slash did have a quick tinker during mixing...
  1183.  
  1184. Van Halen          - thank God Sammy didn't leave Van Halen. Otherwise I
  1185.                      couldn't have cruised to 'Judgement Day' from 'For
  1186.                      Unlawful Carnal Knowledge'. Could you imagine that
  1187.                      pose David Lee Roth singing THAT?? And a word for
  1188.                      Eddie, stick to the guitars, mate...
  1189.  
  1190. Brian and Richard  - thanks for the viruses, guys. I hope the program lives
  1191.                      up to all expectations. Talk to you soon.
  1192.  
  1193. Darius Ignasiak       - who was my first "SHAREWARE" contributor, and who has
  1194.                      continued to support the project. Darius, here is your
  1195.                      5 minutes of fame: Darius is the first person in the
  1196.                      WORLD to receive a registered (paid) copy of CFX.
  1197.                      I hope it gets there on Friday! I also hope you like
  1198.                      this Darius...
  1199.  
  1200. Justin Downey      - who was the first to comment on the program, and who
  1201.                      has dissappeared. Where are you, Justin??
  1202.  
  1203. Mike West          - from the center of Australia. Two questions remain on
  1204.                      my lips. Where are you Mike?? Had your baby yet?? *;-)
  1205.  
  1206. SAS/C              - for providing an *awesome* compiler. Competition? What
  1207.                      competition? The first (and foremost) supportive
  1208.                      computer/software company that I've ever seen.
  1209.  
  1210. Commodore Amiga    - for OS 2.x. This is great. One thing though, where is
  1211.                      my developers kit?? Surely you've seen my application
  1212.                      by now?? Actually, ANTI-THANKS to C= Australia for
  1213.                      their pathetic slowness and irrevocable uselessness.
  1214.                      Two years I've been trying to get devleoper status
  1215.                      with these turkeys, and every time I've called them I
  1216.                      am told "Mr. Mason is on holidays" or "Mr. Mason
  1217.                      hasn't got around to looking at your presentation
  1218.                      yet." What crap. Stick it C=. Thank God YOU didn't
  1219.                      really invent such a great machine. I'll get my
  1220.                      include files from SAS in the future.
  1221.  
  1222. Nico François      - A special thankyou goes to Nico François, whose
  1223.                      ReqTools.library makes a program look, feel and behave
  1224.                      supremely, and whose PowerPacker.library makes
  1225.                      uncrunching things extremely fluffy! Thanks Nico!
  1226.                                                         CFX PRO 5   Page 20
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.                       REGISTERED USERS AS OF 24/09/92
  1233.                       ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
  1234. Marcus and myself would like to thank the following people:
  1235.  
  1236.  1. Stephen Walsh
  1237.  2. Darius Ignasiak
  1238.  3. Mike West
  1239.  4. Brett O'Callaghan
  1240.  5. Richard McElvenny
  1241.  6. Justin Downey
  1242.  7. Brendan Pratt
  1243.  8. Amiga Quarantine
  1244.  9. Andrew Garth
  1245. 10. David Margerison
  1246. 11. Wolfgang Schoenfelder
  1247. 12. Commodore Australia (Ha!)
  1248. 13. Ron Hocking
  1249. 14. Andrew Rogl
  1250. 15. John Paul Lonie
  1251. 16. Andrew Leniart
  1252. 17. Chris McCallum
  1253. 18. Ian Rodbourn
  1254. 19. Chris Quonoey
  1255. 20. Martin Ozolins
  1256.  
  1257.  
  1258.  
  1259. Updates are available whenever you feel like one!
  1260.  
  1261. MAIL TO:
  1262.         BOB RYE
  1263.         11 BEAVER STREET
  1264.         ST. ALBANS
  1265.         VICTORIA
  1266.         AUSTRALIA 3021
  1267.  
  1268.  
  1269. CFX REGISTRATION:  I (Bob Rye) will not accept monies from any person in
  1270. payment for registration of CFX if the person's signature is not included
  1271. on this form.  You have been warned.
  1272.  
  1273. Please read the registration page and this notice fully:
  1274.  
  1275.                                 DISCLAIMER
  1276.                                 ¯¯¯¯¯¯¯¯¯¯
  1277. ALTHOUGH OUTSTANDING BUGS IN THE CODE HAVE BEEN ELIMINATED, THERE REMAINS
  1278. THE POSSIBILITY OF UNFORESEEN PROBLEMS.  WE RESERVE THE RIGHT TO REFUTE THE
  1279. WORD OF THE USER AS TO THE EXTENT OF SUCH 'BUGS', BUT IF FOUND, WE WILL
  1280. ATTEMPT TO FIX SUCH PROBLEM(S).  IF, HOWEVER, UNFORESEEN BUGS ARE FOUND TO
  1281. CAUSE YOU MENTAL AND/OR PHYSICAL PAIN, THEN THAT IS AS THEY SAY IN THE
  1282. CLASSICS, BAD LUCK!  WE ACCEPT NO BLAME FOR ANY LOSS OR INCONVENIENCE FOUND
  1283. TO ARISE FROM THE (MIS)USAGE OF THIS PROGRAM.  WE RESERVE THE RIGHT TO
  1284. WITHDRAW SUPPORT AND UPGRADES AT ANY TIME.  WE PROBABLY WON'T DO THIS, BUT
  1285. WE HAVE THIS RIGHT.
  1286.  
  1287. If you would like to continue with registration, please fill in the below.
  1288. The registration fee is $25 Australian.
  1289.  
  1290. NAME:______________________________________________________________________
  1291.  
  1292.  
  1293. ADDRESS:___________________________________________________________________
  1294.  
  1295.  
  1296.         ___________________________________________________________________
  1297.  
  1298.  
  1299.         ___________________________________________________________________
  1300.  
  1301.  
  1302. MACHINE CONFIGURATION: (ie. 500, 1000, 2000, 3000, accelerator etc)
  1303.  
  1304.  
  1305. ___________________________________________________________________________
  1306.  
  1307.  
  1308. ___________________________________________________________________________
  1309.  
  1310.  
  1311. I hereby attest to my understanding of the above terms by giving my
  1312. signature:
  1313.  
  1314.  
  1315. SIGNATURE:____________________________________________
  1316.  
  1317.  
  1318. DATED:_____________________
  1319.  
  1320.  
  1321. Depending upon mode of mailing chosen (by you, read the registration page!)
  1322. please allow up to eight weeks for delivery of your copy of CFX.
  1323.