PROGRAM.TXT

          The idea behind ziphack is that strings, much like a
          number system, can be "Counted". Ok, lets think of
          it this way. When I was thinking about how to generate every
          combination of letters, it occurred to me that it's very easy
          to see with number. If you want every combination of letters
          that might be in 1-100, its simple right? Just start counting
          at 1 until you get to 100. Well, Ziphack works the same way.
          In numbers let's say your Low is 0, your High is 9 (you'll see)
          when numbers are counted, something like this occurs

                                                    10's    1's place

                                                          | 0 | <- low
                                                          | 1 |
                                                          | 2 |
                                                          | 3 |
                                                          | 4 |
                                                          | 5 |
                                                          | 6 |
                                                          | 7 |
                                                          | 8 |
                                                          | 9 |  <-high
                         New place created==>     |   0   | 0 |
                                                  |   1   | 0 |
                                                  |   1   | 1 |
                                                  |   1   | 2 |

         Now when our 1's place reaches high, a new place is created
         with the low value, and 1's place is reset back to low
          (I realize 00 is a strange number, but for this to work 00 is
           a possible combination of 2 digits )

          Realizing this aspect of our counting system, a created
          a procedure to increase a string by a factor of 1.
          It is in CLEAN.PAS

                   Note: ZIPHACK.PAS is a bit sloppy to make it
                          go as fast as I could get it, meaning
                          there is no passing of variables when
                          I could help it. I have copied the heart
                          of the program into a nice clean example
                          for your education.

          -what's that you say? a successor of a string? Yes its true,
          and useful.  ex    Increasing 'TIM' would return  'TIN'
                             Increasing 'AAA' would return  'AAB'
                                        'AAZ' would return  'ABA'

                So go play with CLEAN.PAS now and have fun!
                
                      I have tried my best to make this program
          of learing value to all. So if I am wrong in any of 
          my conclusions, please tell me so that I may fix it
          and learn from my mistake! Write me if you think getting
          zip passwords in Pascal is cool! 
                                             ===>   Mr.Pibb
 
       Questions, Comments, Correct me? - MRFAKE@HOTMAIL.COM
    
                            
            