home *** CD-ROM | disk | FTP | other *** search
/ Collection of Hack-Phreak Scene Programs / cleanhpvac.zip / cleanhpvac / PWAA1L20.ZIP / ONELINER.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1995-03-14  |  4KB  |  222 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Integer  INTEGER001
  20.     Integer  INTEGER002
  21.     Integer  INTEGER003
  22.     Integer  INTEGER004
  23.     Integer  INTEGER005
  24.     Integer  INTEGER006
  25.     String   STRING001
  26.     String   STRING002
  27.     String   STRING003
  28.     String   STRING004
  29.     String   STRING005
  30.     String   STRING006
  31.     String   STRING007
  32.     String   STRING008
  33.     String   STRING009
  34.     String   STRING010
  35.     String   STRING011
  36.     String   STRING012
  37.     String   TSTRING013(100)
  38.  
  39. ;------------------------------------------------------------------------------
  40.  
  41.     If (!STRING001) STRING001 = "" ; PPLC BUG!
  42.     StartDisp 1
  43.     FOpen 1, PPEPath() + "ONELINER.CNF", 0, 0
  44.     FGet 1, INTEGER005
  45.     FGet 1, STRING008
  46.     FGet 1, STRING007
  47.     FGet 1, STRING006
  48.     FGet 1, STRING009
  49.     FGet 1, STRING011
  50.     FGet 1, STRING012
  51.     FClose 1
  52.     FreshLine
  53.     If (Exist(PPEPath() + "ONELINER.TOP")) DispFile PPEPath() + "ONELINER.TOP", 0
  54.     If (Exist(PPEPath() + "ONELINER.DAT")) DispFile PPEPath() + "ONELINER.DAT", 0
  55.     If (Exist(PPEPath() + "ONELINER.BOT")) DispFile PPEPath() + "ONELINER.BOT", 0
  56.     InputStr STRING009 + "_", STRING010, 1, 1, "YyNn", 4096
  57.     If ((Lower(STRING010) == "n") || (Lower(STRING010) == "")) Then
  58.         FreshLine
  59.         End
  60.     Endif
  61.     FreshLine
  62.     If (Exist(PPEPath() + "ONELINER.ENT")) DispFile PPEPath() + "ONELINER.ENT", 0
  63.     Color 7
  64.     STRING003 = ""
  65.     INTEGER001 = 0
  66.     While (STRING003 <> Chr(13)) Do
  67.         STRING003 = Inkey()
  68.         If (((Len(STRING003) == 1) && (STRING003 >= " ")) && (INTEGER001 < 75)) Then
  69.             Print STRING003
  70.             Inc INTEGER001
  71.             STRING002 = STRING002 + STRING003
  72.             If (StripAtx(Right(STRING002, 4)) == "") Then
  73.                 INTEGER003 = CurColor()
  74.                 For INTEGER002 = 1 To 4
  75.                     Print Chr(8) + " " + Chr(8)
  76.                     Dec INTEGER001
  77.                 Next
  78.                 Print Right(STRING002, 4)
  79.             Endif
  80.             Continue
  81.         Endif
  82.         If ((STRING003 == Chr(8)) && (Len(STRING002) > 0)) Then
  83.             If (StripAtx(Right(STRING002, 4)) == "") Then
  84.                 Color INTEGER003
  85.                 STRING002 = Left(STRING002, Len(STRING002) - 4)
  86.                 Continue
  87.             Endif
  88.             Print Chr(8) + " " + Chr(8)
  89.             Dec INTEGER001
  90.             STRING002 = Left(STRING002, Len(STRING002) - 1)
  91.         Endif
  92.     EndWhile
  93.     If (StripAtx(STRING002) <> "") Then
  94.         If (Lower(STRING008) == "no") Goto LABEL001
  95.         STRING004 = StripAtx(STRING002)
  96.         For INTEGER004 = 0 To Len(STRING004)
  97.             STRING005 = Right(STRING004, Len(STRING004) - INTEGER004)
  98.             If ((((InStr(STRING005, "@USER@") == 1) || (InStr(STRING005, "@FIRST@") == 1)) || (InStr(STRING005, "@FIRSTU@") == 1)) || (InStr(STRING005, "@LASTCALLERSYSTEM@") == 1)) Then
  99.                 FreshLine
  100.                 PrintLn STRING012
  101.                 End
  102.             Endif
  103.         Next
  104.         :LABEL001
  105.         If (Exist(PPEPath() + "ONELINER.DAT")) Goto LABEL002
  106.         FCreate 4, PPEPath() + "ONELINER.DAT", 1, 0
  107.         FPutLn 4, STRING006 + "| " + STRING007 + "Oneliners have been reset!@POS:79@" + STRING006 + "|"
  108.         FClose 4
  109.         :LABEL002
  110.         Rename PPEPath() + "ONELINER.DAT", PPEPath() + "ONELINER.$$$"
  111.         FOpen 2, PPEPath() + "ONELINER.$$$", 0, 0
  112.         FOpen 3, PPEPath() + "ONELINER.DAT", 1, 0
  113.         For INTEGER006 = 1 To INTEGER005
  114.             FGet 2, TSTRING013(INTEGER006)
  115.             If (TSTRING013(INTEGER006) == "") Break
  116.         Next
  117.         FClose 2
  118.         Delete PPEPath() + "ONELINER.$$$"
  119.         If (INTEGER006 > INTEGER005) Then
  120.             For INTEGER006 = 2 To INTEGER005
  121.                 If (TSTRING013(INTEGER006) == "") Goto LABEL003
  122.                 FPutLn 3, TSTRING013(INTEGER006)
  123.             Next
  124.         Endif
  125.         If (INTEGER006 <= INTEGER005) Then
  126.             For INTEGER006 = 1 To INTEGER005
  127.                 If (TSTRING013(INTEGER006) == "") Break
  128.                 FPutLn 3, TSTRING013(INTEGER006)
  129.             Next
  130.         Endif
  131.         :LABEL003
  132.         FPutLn 3, STRING006 + "| " + STRING007 + STRING002 + "@POS:79@" + STRING006 + "|"
  133.         FClose 3
  134.         Log "ONELINER: " + StripAtx(STRING002), 0
  135.         End
  136.     Endif
  137.     FreshLine
  138.     PrintLn STRING011
  139.     STRING001 = "GO AHEAD YOU LAME FUCKING BITCH! TRY TO DECOMPILE THIS THING!"
  140.     End
  141.  
  142. ;------------------------------------------------------------------------------
  143. ;
  144. ; Usage report (before postprocessing)
  145. ;
  146. ; ■ Statements used :
  147. ;
  148. ;    4       End
  149. ;    2       Color 
  150. ;    28      Goto 
  151. ;    21      Let 
  152. ;    4       Print 
  153. ;    2       PrintLn 
  154. ;    25      If 
  155. ;    4       DispFile 
  156. ;    1       FCreate 
  157. ;    3       FOpen 
  158. ;    4       FClose 
  159. ;    8       FGet 
  160. ;    4       FPutLn 
  161. ;    1       StartDisp 
  162. ;    1       Delete 
  163. ;    1       Log 
  164. ;    1       InputStr 
  165. ;    1       Inc 
  166. ;    2       Dec 
  167. ;    5       FreshLine
  168. ;    1       Rename 
  169. ;
  170. ;
  171. ; ■ Functions used :
  172. ;
  173. ;    39      +
  174. ;    3       -
  175. ;    14      ==
  176. ;    2       <>
  177. ;    6       <
  178. ;    6       <=
  179. ;    2       >
  180. ;    11      >=
  181. ;    18      !
  182. ;    13      &&
  183. ;    9       ||
  184. ;    7       Len(
  185. ;    3       Lower()
  186. ;    2       Left()
  187. ;    4       Right()
  188. ;    6       Chr()
  189. ;    4       InStr()
  190. ;    5       StripAtx()
  191. ;    1       Inkey()
  192. ;    16      PPEPath()
  193. ;    5       Exist()
  194. ;    1       CurColor()
  195. ;
  196. ;------------------------------------------------------------------------------
  197. ;
  198. ; Analysis flags : No flag
  199. ;
  200. ;
  201. ;------------------------------------------------------------------------------
  202. ;
  203. ;     One or more PPLC bugs were found, this is not a PPLX error, but PPLX is  
  204. ;     reporting the error ;)  Some statements  like VAR = !!!!10, VAR = !0*!0  
  205. ;     or similar things are not handled  correctly by PPLC, some may use this  
  206. ;     to  avoid a  correct decompilation...  This doesn't mean that there  is  
  207. ;     actually an error, but the probability of error is high...               
  208. ;     ■ Search for : PPLC BUG
  209. ;
  210. ;------------------------------------------------------------------------------
  211. ;
  212. ; Postprocessing report
  213. ;
  214. ;    5       For/Next
  215. ;    1       While/EndWhile
  216. ;    9       If/Then or If/Then/Else
  217. ;    0       Select Case
  218. ;
  219. ;------------------------------------------------------------------------------
  220. ;                 AEGiS Corp - Break the routines, code against the machines!
  221. ;------------------------------------------------------------------------------
  222.