home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 7 Games / 07-Games.zip / HOS20000.ZIP / README.1ST next >
Text File  |  1990-03-16  |  6KB  |  176 lines

  1.  
  2.     This Zip package contains the source code for REVISOR.C, the
  3.     OS/2 version.
  4.  
  5.     At any rate the history of this code is one I hope most of us can
  6.     appreciate and will follow suit with my ideas behind it.
  7.  
  8.     I have recently finished the book HACKERS by Steven Levy. A book that
  9.     describes where the world, and works, of the original hackers started
  10.     and then progressed through time.
  11.  
  12.     Needless to say I will not rewrite the book, find it if you can, but
  13.     I would like to point out that a hacker was defined as someone who
  14.     felt an affinity with the machine at their fingertips. With this
  15.     souped up attitude the 'hacker' would spend hours, upon days, upon
  16.     years making the machine sing to the caress of their instructions.
  17.  
  18.     If what they were coding was nothing more then a robot control system
  19.     or the screen routines for a primitive Star Wars Game, they conducted
  20.     their work with a relentless vigor that teams of 'society' programmers
  21.     could not compare with.
  22.  
  23.     So, there I sat ITCHING for something to code, please no psycho analysis,
  24.     and I realized that often times I wished I had backed up some code
  25.     before modifications so that I could restore the original version once
  26.     I found that my changes blew up. At one point I had looked into source
  27.     code librarian software but the price was ( is ) more then I could afford.
  28.  
  29.     Thus was born REVISOR, currently in a very, very, incomplete and simple
  30.     cycle, but here lay the plot:
  31.  
  32.     For my purpose, a 'hack' is considered to be a modification, change,
  33.     correction, addition, a supercharge, a port, a anything done to this
  34.     code for the sake of the 'hack'.
  35.  
  36.     I hereby release this code ( both OS/2 and DOS versions ) to the public
  37.     domain. In doing so I also reserve the right to make requirements for
  38.     the people who adopt it:
  39.  
  40.         1.  Make it faster.
  41.         2.  Make it cleaner.
  42.         3.  Add neat functions, don't waste time with crap that you wouldn't
  43.                 use.
  44.         4.  Debug it if needed, I ain't perfect.
  45.         5.  Keep it clean.
  46.         6.  Enjoy the puss out of it.
  47.         7.  Enjoy the art of the hack!
  48.         8.  Most of all reload it onto the BBS systems of the world, a your
  49.                 revision notes to the source code, so that others may take a
  50.                 wHACK at it as well. You never know, your hack may inspire an
  51.                 even greater one to evolve.
  52.  
  53.     Oh, one other thing, in the REVISOR token structure there is a
  54.     Sig field of type unsigned integer. Notice in the main body I
  55.     initialize this to 0x434a5646, this is CJVF which is FVJC backwords
  56.     which is Frank V.J. Castellucci which is my name.
  57.  
  58.     *************** The Hackers Ethic ********************
  59.  
  60.         Access to computers - and anything which might teach
  61.         you something about the way the world works - should
  62.         be unlimited and total. Always yield to the Hands-On Imperative!
  63.  
  64.         All Information should be free.
  65.  
  66.         Mistrust Authority - Promote Decentralization.
  67.  
  68.         Hackers should be judged by their hacking, not bogus criteria
  69.         such as degrees, age, race, or position.
  70.  
  71.         You can create art and beauty on a computer.
  72.  
  73.     ********************  Hack  Notes  ********************
  74.  
  75.     Revisor is a simple incarnation of a source librarian storage routine.
  76.  
  77.     It takes as arguments:
  78.  
  79.         revisor target.src
  80.  
  81.         Where:  target.src  is the input file to be placed into the
  82.                                                 revisor catalog.
  83.  
  84.                                                 This file will also define a key to the
  85.                                                 revise token structure to be used for restoration
  86.                                                 identification or some other need.
  87.  
  88.                                                 The revisor catalog will be named target.rev,
  89.                                                 in other words the base name of the target file
  90.                                                 with the extension of '.REV'.
  91.  
  92.             -OR-
  93.  
  94.         revisor target.src  alternt.rev
  95.  
  96.         Where  alternt.rev  is the alternative name of the catalog to store
  97.                                                 the target file to.
  98.  
  99.             -OR-
  100.  
  101.         revisor target.src  alternt.rev  alternt.inp
  102.  
  103.         Where  alternt.inp  is the alternative input data into the catalog.
  104.                                                 This is usefull for storing many targets that
  105.                                                 make up a project.
  106.  
  107.             -OR-
  108.  
  109.         revisor target.src  , alternt.inp
  110.  
  111.         Where   , ( comma ) tells revisor to use the default catalog, see
  112.                                                 the above description, but still provide an
  113.                                                 alternate input.
  114.  
  115.         I guess you can tell the parameters are positional, but they don't
  116.         need to stay this way.
  117.  
  118.         I reduced the amount of error information in case you use this in
  119.         a make file and don't want to see abunch of garbage on the screen.
  120.  
  121.         MAKE FILE USAGE EXAMPLE ( MS Make Version )
  122.  
  123.             somecode.obj: somecode.c
  124.                 cl  -c $(MYFLAGS) somecode.c
  125.                 revisor somecode.c
  126.  
  127.         ************* Operation of Revisor  ******************
  128.  
  129.         Providing the target and/or alternate input files are valid, revisor
  130.         will create a Revisor Token which consists of:
  131.  
  132.         filename used as a key for recovery, search, whatever
  133.         Date Stamp of last write date for input file
  134.         Time Stamp of last write time for input file
  135.         Signature
  136.         Length of data following the token
  137.  
  138.         It then appends this token to the end of the catalog in use.
  139.         After which it then appends the target or alternate target following
  140.         the token.
  141.  
  142.         Diagram
  143.  
  144.         Catalog File
  145.                 BYTE 0     ->  Revisor Token ( see above and source code )
  146.                                              DATA
  147.                                              Revisor Token
  148.                                              DATA
  149.                                              Revisor Token
  150.                                              DATA
  151.                                              and so on...
  152.  
  153.     Thats it, I tried to document the source as good as I did, another
  154.     reason why I need a routine like this is because I NEVER document
  155.     stuff I should.
  156.  
  157.         To compile this under os/2:
  158.         cl  revisor.c   ( ta da! )
  159.  
  160.     Couple of hacks off the bat:
  161.  
  162.     Make a DOS version, shouldn't be too hard to do as the functions
  163.     VioWrtTTY can be substituted with printf or the like and the
  164.     DosOpen, DosFindFirst, DosRead and DosWrite are the younger siblings
  165.     of the DOS versions of the same.
  166.  
  167.     Create a routine which is able to deal with the catalogs! Makes sense.
  168.  
  169.     Add the ability to compress the file before storing it in the catalog.
  170.  
  171.     Forget all I just said and do what you want!
  172.  
  173.                                         Frank
  174.  
  175.  
  176.