home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 8 / FreshFishVol8-CD2.bin / bbs / util / mayflower.lha / MayFlower / SearchMem / SearchMem.doc < prev    next >
Text File  |  1994-05-04  |  8KB  |  172 lines

  1.        --- ---
  2.        (o) (o)          SearchMem 4.0 (19940311)
  3.           ^
  4.        \_____/          by Stephen D. Childers
  5.  
  6. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  7.                 *******  NOTICE !   NOTICE !  *******
  8.  
  9. Certain areas of memory within your Amiga system are linked to the
  10. registers of special purpose chips, and searching through these areas may
  11. cause very strange things to happen. Be prepared to reset your system.
  12.  
  13. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  14. Program Description:
  15.  
  16.    1) Program searches a given memory range for a given search pattern.
  17.       An address will be printed (in hex format) for every match found.
  18.  
  19.       NOTE 1: This version of SearchMem does not check memory size of
  20.               your system. It attempts to search the memory range that
  21.               you specify whether that memory is or is not installed.
  22.  
  23.    2) Option -c will look for any case condition of the pattern.
  24.  
  25.    3) Option -d will disable multitasking while searching.
  26.       Not using this option may lead to erroneous results when searching
  27.       memory. Using this option freezes EVERYTHING until SearchMem is
  28.       done searching, but system will unfreeze momentarily when SearchMem
  29.       finds a match and prints a line.
  30.  
  31.    4) Option -s will show a line of data that surround pattern.
  32.  
  33.       The pattern, and data that surround the pattern, will be shown
  34.       as printable characters (the pattern portion will be shown in a
  35.       different colour). Non printable characters will appear as an
  36.       asterick of another different colour.
  37.  
  38.       NOTE 2: When SearchMem finds a match within memory the data may be
  39.               changed by other processes just before SearchMem prints the
  40.               data to window; when this happens the data printed in window
  41.               will not match pattern argument.
  42.  
  43.       NOTE 3: If option -h is used then printout is shown in hex format.
  44.  
  45.    5) Option -n means no ansi codes will be used by option -s.
  46.  
  47.    6) Control-C will break SearchMem (but only if option d is NOT set)
  48.       and display the memory location that was about to be searched
  49.       when break occured; this is so you may later resume a search
  50.       without having to start at the original search location.
  51.  
  52.    7) When program ends, it will print out the last address searched.
  53.       The last address that is searched is computed by the following
  54.       formula:
  55.                   location + range - pattern length
  56.  
  57.       You may use this address if you plan to begin again where you
  58.       left off.
  59.  
  60.    8) Can only be used from CLI. Can be made resident.
  61.  
  62.    9) Program (when run from CLI) will interact with the 'c:Why' command
  63.       after program failures; this command may provide a more detailed
  64.       explanation of why the program failed.
  65.  
  66.       The 'Why' command should be used immediately after a program
  67.       failure to extract the last program's result code, because
  68.       that result code is changed upon the execution of the next CLI
  69.       command.
  70.  
  71.   10) Certain error reports will contain the name of the argument, file,
  72.       device, (etc) that is associated with failure when it occurs.
  73.  
  74. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  75. CLI Usage:
  76.  
  77.    > SearchMem [!|?] [[-options] location range pattern]
  78.  
  79.       ! = Show author info
  80.       ? = Show some help
  81.  
  82.       options c = case insensitive
  83.               d = disable multitasking during search
  84.               h = pattern is in hex format
  85.               s = show characters surrounding pattern
  86.               n = no ANSI codes when using option -s
  87.  
  88.       location = Address to start search from.
  89.                  The range of input values for location are:
  90.                     Decimal =  0 to 4294967295
  91.                     Hex     = H0 to Hffffffff
  92.  
  93.        range   = How much memory to search.
  94.                  The range of input values for range are:
  95.                     Decimal =  1 to 4294967295
  96.                     Hex     = H1 to Hffffffff
  97.  
  98.       pattern  = The pattern to find, which may be in string
  99.                  format (default) or hex format (use option -h for hex)
  100.  
  101.    Hex values for location and range must be preceded with 'h'.
  102.  
  103. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  104. CLI examples:
  105.  
  106.    Example 1:
  107.  
  108.       > SearchMem -sc  hf80000  h80000 Code
  109.       > SearchMem -sc  16252928 h80000 Code
  110.       > SearchMem -sc  16252928 524288 code
  111.       > SearchMem -sch hf80000  h80000 436f6465
  112.  
  113.    All of the above lines will accomplish the exact same thing.
  114.  
  115.    Example 2:
  116.  
  117.       > SearchMem -sc hf80000 h80000 .library
  118.  
  119. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  120. Version History:
  121.  
  122.    The following information briefly describes changes or improvements
  123.    made to each version, and they will be described in descending order;
  124.    meaning latest version information begins first:
  125.    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  126.    Version 4.0 (19940311) -
  127.    1) Changed version numbering format. Program can now be used with the
  128.       "Version" command. Date within parenthesis is shown in a somewhat
  129.       international format as (yyyymmdd).
  130.    2) Added new options -s & -n
  131.    3) Modified option -c because of new option -s
  132.    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  133.    Version 19930804 -
  134.    1) Optimized and refined source code thereby making program smaller.
  135.    2) Alas, removed a small bug (programmer's error) which would
  136.       sometimes print eroneous results when using option -c.
  137.    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  138.    Version 19920107 -
  139.    1) Removed a CLI parsing problem.
  140.    2) Removed yet another problem from my code which involved pattern
  141.       matching. Certain patterns containing repeated characters would
  142.       not match with memory that contained data that matched pattern.
  143.       An example of the problem follows:
  144.       Suppose the pattern to search for was equal to "0001", and the
  145.       memory to search contained the following data:
  146.                 "00001000010000100001"
  147.       Note the differences between pattern and memory data.
  148.       The program would not find any matches, although it should have.
  149.    3) Program should now search a little faster when using c option.
  150.    4) Can be made resident.
  151.    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  152.    Version 19910918 - The first version.
  153.  
  154. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  155.      _   _   _   _   _   _   _   _   _   _   _   _   _   _   _   _   _
  156.    /X_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_X\
  157.   /X/                                                                 \X\
  158.  /X/      9   Know ye not that the unrighteous shall not inherit       \X\
  159.  \X\   the kingdom of God? Be not deceived: neither fornicators,       /X/
  160.  /X/   nor idolaters, nor adulterers, nor effeminate, nor abusers      \X\
  161.  \X\   of themselves with mankind,                                     /X/
  162.  /X/      10  Nor thieves, nor covetous, nor drunkards, nor revilers,  \X\
  163.  \X\   nor extortioners, shall inherit the kingdom of God.             /X/
  164.  /X/                                                                   \X\
  165.  \X\          The Holy King James Bible - 1st Corinthians 6:9-10       /X/
  166.   \X\_   _   _   _   _   _   _   _   _   _   _   _   _   _   _   _   _/X/
  167.    \X_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_}-{_X/
  168.  
  169. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  170.                               End Of Document
  171.  
  172.