home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / BBS / POB396_2.ZIP / POB396LS.PPE (.txt) < prev   
PCBoard Programming Language Executable  |  1995-01-01  |  4KB  |  284 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 3.O1 (Encryption type I) - 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.     Integer  INTEGER007
  26.     Integer  INTEGER008
  27.     Integer  INTEGER009
  28.     Integer  INTEGER010
  29.     Integer  INTEGER011
  30.     Integer  INTEGER012
  31.     Integer  TINTEGER013(6)
  32.     Integer  INTEGER014
  33.     Integer  INTEGER015
  34.     Integer  INTEGER016
  35.     Integer  INTEGER017
  36.     Integer  INTEGER018
  37.     Integer  INTEGER019
  38.     String   STRING001
  39.     String   STRING002
  40.     String   STRING003
  41.     String   STRING004
  42.     String   STRING005
  43.     String   STRING006
  44.     String   STRING007
  45.     String   STRING008
  46.     String   STRING009
  47.     String   STRING010
  48.     String   STRING011
  49.     String   STRING012
  50.  
  51. ;------------------------------------------------------------------------------
  52.  
  53.     STRING009 = TokenStr()
  54.     Tokenize STRING009
  55.     INTEGER007 = 1
  56.     STRING010 = "@X87_@X07"
  57.     While (TokCount() > 0) Do
  58.         TINTEGER013(INTEGER007) = GetToken()
  59.         Inc INTEGER007
  60.     EndWhile
  61.     INTEGER001 = ReadLine(PPEPath() + PPEName() + ".CNF", 1)
  62.     INTEGER014 = ReadLine(PPEPath() + PPEName() + ".CNF", 2)
  63.     INTEGER018 = ReadLine(PPEPath() + PPEName() + ".CNF", 3)
  64.     INTEGER019 = ReadLine(PPEPath() + PPEName() + ".CNF", 4)
  65.     STRING005 = ReadLine(PPEPath() + PPEName() + ".CNF", 5)
  66.     STRING002 = ReadLine(PPEPath() + PPEName() + ".CNF", 6)
  67.     STRING003 = ReadLine(PPEPath() + PPEName() + ".CNF", 7)
  68.     STRING011 = " *** POB396LS 1.01 POB(c)1995 ***  "
  69.     INTEGER017 = (0 + 22) * (0 * 0) + 24354 - 0 - 0
  70.     STRING005 = STRING005 + STRING011
  71.     INTEGER004 = 74
  72.     If (0 + 0 > 41) Goto LABEL013
  73.     INTEGER012 = Len(STRING005)
  74.     INTEGER002 = (80 - INTEGER004 - 0 + 0) / 2
  75.     INTEGER005 = INTEGER002 + 0
  76.     INTEGER003 = INTEGER005 + INTEGER004 + 1
  77.     INTEGER006 = INTEGER003 - 1
  78.     AnsiPos 1, INTEGER014
  79.     DispFile PPEPath() + "396", 1 + 2 + 4
  80.     Print " ? "
  81.     INTEGER015 = GetX()
  82.     INTEGER016 = GetY()
  83.     Print STRING010
  84.     AnsiPos INTEGER002, INTEGER001
  85.     Print ""
  86.     AnsiPos INTEGER003, INTEGER001
  87.     Print ""
  88.     INTEGER007 = 0
  89.     INTEGER010 = 1
  90.     INTEGER008 = INTEGER006
  91.     :LABEL001
  92.     GetUser
  93.     If (U_Expert == 1) Goto LABEL002
  94.     If (INTEGER008 >= INTEGER005) Then
  95.         AnsiPos INTEGER008, INTEGER001
  96.         Color INTEGER019
  97.         Print Mid(STRING005, INTEGER007, INTEGER010)
  98.         Inc INTEGER010
  99.         Dec INTEGER008
  100.         Delay INTEGER018
  101.         :LABEL002
  102.         Gosub LABEL012
  103.         Goto LABEL001
  104.     Endif
  105.     INTEGER007 = 2
  106.     INTEGER008 = INTEGER004
  107.     INTEGER009 = 1
  108.     STRING006 = Inkey()
  109.     Goto LABEL010
  110.     :LABEL003
  111.     Cls
  112.     STRING004 = CurConf()
  113.     Dec STRING004
  114.     STRING001 = STRING004
  115.     KbdStuff "J" + ";" + STRING001 + ";" + "Q" + Chr(13)
  116.     End
  117.     :LABEL004
  118.     Cls
  119.     STRING004 = CurConf()
  120.     Inc STRING004
  121.     STRING001 = STRING004
  122.     KbdStuff "J" + ";" + STRING001 + ";" + "Q" + Chr(13)
  123.     End
  124.     :LABEL005
  125.     Cls
  126.     KbdStuff "G" + Chr(13)
  127.     End
  128.     :LABEL006
  129.     Cls
  130.     KbdStuff "D" + Chr(13)
  131.     End
  132.     :LABEL007
  133.     Cls
  134.     KbdStuff "U" + Chr(13)
  135.     End
  136.     :LABEL008
  137.     Cls
  138.     KbdStuff STRING002 + Chr(13)
  139.     End
  140.     :LABEL009
  141.     Cls
  142.     KbdStuff STRING003 + Chr(13)
  143.     End
  144.     :LABEL010
  145.     While (STRING006 <> Chr(13)) Do
  146.         If (INTEGER007 + INTEGER010 <= INTEGER012 + 1) Then
  147.             INTEGER011 = 1
  148.             INTEGER009 = 1
  149.             AnsiPos INTEGER005, INTEGER001
  150.             Print Mid(STRING005, INTEGER007, INTEGER010)
  151.             Inc INTEGER007
  152.         Else
  153.             AnsiPos INTEGER005, INTEGER001
  154.             Print Mid(STRING005, INTEGER007 + 1, INTEGER010 - INTEGER009)
  155.             Inc INTEGER009
  156.             If (INTEGER007 < INTEGER012) Then
  157.                 Inc INTEGER007
  158.             Else
  159.                 INTEGER007 = 1
  160.             Endif
  161.             Print Mid(STRING005, 0, INTEGER011)
  162.             Inc INTEGER011
  163.         Endif
  164.         Delay INTEGER018
  165.         Gosub LABEL012
  166.     EndWhile
  167.     :LABEL011
  168.     KbdStuff "MENU" + Chr(13)
  169.     End
  170.     If (0 == 0) STRING012 = "NO"
  171.  
  172.     EndFunc
  173.  
  174.     :LABEL012
  175.     STRING006 = Inkey()
  176.     If (STRING006 == "") Return
  177.     If (STRING006 == "LEFT") Goto LABEL003
  178.     If (STRING006 == "RIGHT") Goto LABEL004
  179.     If (STRING006 == "UP") Goto LABEL007
  180.     If (STRING006 == "DOWN") Goto LABEL006
  181.     If (STRING006 == "HOME") Goto LABEL008
  182.     If (STRING006 == "END") Goto LABEL009
  183.     If (STRING006 == Chr(27)) Goto LABEL005
  184.     AnsiPos INTEGER015, INTEGER016
  185.     STRING007 = Len(STRING008)
  186.     If (STRING006 == Chr(8)) Then
  187.         ClrEol
  188.         STRING008 = Mid(STRING008, 1, STRING007 - 1)
  189.     Endif
  190.     If (STRING006 <> Chr(8)) Then
  191.         STRING008 = STRING008 + STRING006
  192.     Endif
  193.     If ((STRING008 == "") && (STRING006 == Chr(13))) Return
  194.     Print STRING008 + STRING010
  195.     If (STRING006 == Chr(13)) Then
  196.         ClrEol
  197.         If (STRING008 == Chr(13)) Goto LABEL011
  198.         KbdString STRING008
  199.         End
  200.     Endif
  201.     Return
  202.     :LABEL013
  203.     Cls
  204.     PrintLn "Execute failor"
  205.     STRING006 = Inkey()
  206.     While (STRING006 <> Chr(13)) Do
  207.     EndWhile
  208.     Cls
  209.     End
  210.  
  211. ;------------------------------------------------------------------------------
  212. ;
  213. ; Usage report (before postprocessing)
  214. ;
  215. ; ■ Statements used :
  216. ;
  217. ;    10      End
  218. ;    9       Cls
  219. ;    2       ClrEol
  220. ;    1       Color 
  221. ;    27      Goto 
  222. ;    42      Let 
  223. ;    9       Print 
  224. ;    1       PrintLn 
  225. ;    22      If 
  226. ;    1       DispFile 
  227. ;    1       GetUser
  228. ;    2       Gosub 
  229. ;    3       Return
  230. ;    2       Delay 
  231. ;    7       Inc 
  232. ;    2       Dec 
  233. ;    1       Tokenize 
  234. ;    8       KbdStuff 
  235. ;    7       AnsiPos 
  236. ;    1       KbdString 
  237. ;    1       EndFunc
  238. ;
  239. ;
  240. ; ■ Functions used :
  241. ;
  242. ;    2       *
  243. ;    1       /
  244. ;    46      +
  245. ;    7       -
  246. ;    15      ==
  247. ;    3       <>
  248. ;    1       <
  249. ;    1       <=
  250. ;    2       >
  251. ;    1       >=
  252. ;    9       !
  253. ;    1       &&
  254. ;    2       Len(
  255. ;    5       Mid()
  256. ;    16      Chr()
  257. ;    3       Inkey()
  258. ;    2       CurConf()
  259. ;    8       PPEPath()
  260. ;    7       ReadLine()
  261. ;    1       GetToken()
  262. ;    1       TokenStr()
  263. ;    1       GetX()
  264. ;    1       GetY()
  265. ;    7       PPEName()
  266. ;    1       TokCount()
  267. ;
  268. ;------------------------------------------------------------------------------
  269. ;
  270. ; Analysis flags : No flag
  271. ;
  272. ;------------------------------------------------------------------------------
  273. ;
  274. ; Postprocessing report
  275. ;
  276. ;    0       For/Next
  277. ;    3       While/EndWhile
  278. ;    6       If/Then or If/Then/Else
  279. ;    0       Select Case
  280. ;
  281. ;------------------------------------------------------------------------------
  282. ;                 AEGiS Corp - Break the routines, code against the machines!
  283. ;------------------------------------------------------------------------------
  284.