home *** CD-ROM | disk | FTP | other *** search
/ Carsten's PPE Collection / Carstens_PPE_Collection_2007.zip / T / TDI-JCOM.ZIP / TDI-JCOM.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1995-04-15  |  4KB  |  243 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.     String   STRING001
  28.     String   STRING002
  29.     String   STRING003
  30.     String   STRING004
  31.  
  32. ;------------------------------------------------------------------------------
  33.  
  34.     STRING002 = "TDI-CONF\"
  35.     DispFile PPEPath() + "TDI-MNU", 4 + 1 + 2
  36.     INTEGER006 = 3
  37.     INTEGER008 = 2
  38.     INTEGER002 = 0
  39.     :LABEL001
  40.     If (INTEGER002 > 0) Then
  41.         For INTEGER004 = 1 To 15
  42.             AnsiPos 2, INTEGER008 + INTEGER004
  43.             Print "                                      "
  44.         Next
  45.     Endif
  46.     INTEGER007 = 0
  47.     INTEGER008 = 2
  48.     INTEGER006 = 3
  49.     INTEGER002 = 0
  50.     INTEGER003 = 0
  51.     INTEGER001 = 1
  52.     While (Exist(PPEPath() + STRING002 + "TDI-GRP.LST")) Do
  53.         INTEGER002 = INTEGER002 + 1
  54.         AnsiPos 2, INTEGER008 + INTEGER002
  55.         If (ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", INTEGER002) <> "") Print "@X1B" + Upper(ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", INTEGER002))
  56.         If (ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", INTEGER002) == "") INTEGER002 = INTEGER002 - 1
  57.         If (ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", INTEGER002 + 1) == "") Break
  58.     EndWhile
  59.     While (Exist(PPEPath() + STRING002 + "CONF")) Do
  60.         INTEGER003 = INTEGER003 + 1
  61.         AnsiPos 2, INTEGER008 + INTEGER002 + INTEGER003
  62.         If (ReadLine(PPEPath() + STRING002 + "CONF", INTEGER003) == "") Break
  63.         If (ReadLine(PPEPath() + STRING002 + "CONF", INTEGER003) <> "") Print "@X1B" + Lower(ReadLine(PPEPath() + STRING002 + "CONF", INTEGER003 * 2))
  64.         If (ReadLine(PPEPath() + STRING002 + "CONF", INTEGER003) <> "") STRING001 = ReadLine(PPEPath() + STRING002 + "CONF", INTEGER003 * 2 - 1)
  65.     EndWhile
  66.     :LABEL002
  67.     If (INTEGER002 + INTEGER003 + 1 < 15) Then
  68.         For INTEGER004 = INTEGER002 + INTEGER003 + 1 To 15
  69.             AnsiPos 2, INTEGER008 + INTEGER004
  70.             Print "                                      "
  71.         Next
  72.     Endif
  73.     INTEGER007 = 1
  74.     AnsiPos 2, INTEGER008 + 1
  75.     Print "@X30                                      "
  76.     AnsiPos 2, INTEGER008 + 1
  77.     Print "@X30" + Upper(ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", 1))
  78.     AnsiPos 1, 21
  79.     Print "@X07Join > "
  80.     Gosub LABEL007
  81.     :LABEL003
  82.     Gosub LABEL010
  83.     If (STRING003 == Chr(13)) Goto LABEL008
  84.     If (STRING003 == "UP") Goto LABEL005
  85.     If (STRING003 == "DOWN") Goto LABEL006
  86.     If (STRING003 == Chr(27)) Goto LABEL004
  87.     If (!((((STRING003 == Chr(13)) || (STRING003 == "UP")) || (STRING003 == "DOWN")) || (STRING003 == Chr(27)))) Goto LABEL003
  88.     Goto LABEL002
  89.     End
  90.     :LABEL004
  91.     AnsiPos 1, 21
  92.     Print "@X07Join > "
  93.     End
  94.     :LABEL005
  95.     If (INTEGER007 > 1) Then
  96.         INTEGER007 = INTEGER007 - 1
  97.         AnsiPos 2, INTEGER008 + INTEGER007 + 1
  98.         Print "@X1B                                      "
  99.         AnsiPos 2, INTEGER008 + INTEGER007 + 1
  100.         If (INTEGER007 <= INTEGER002) Print "@X1B" + Upper(ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", INTEGER007 + 1))
  101.         If ((INTEGER001 <= INTEGER003) && (INTEGER007 >= INTEGER002)) INTEGER001 = INTEGER001 - 1
  102.         If ((INTEGER001 <= INTEGER003) && (INTEGER007 >= INTEGER002)) Print "@X1B" + Lower(ReadLine(PPEPath() + STRING002 + "CONF", (INTEGER001 + 1) * 2))
  103.         AnsiPos 2, INTEGER008 + INTEGER007
  104.         Print "@X30                                      "
  105.         AnsiPos 2, INTEGER008 + INTEGER007
  106.         If (INTEGER007 <= INTEGER002) Then
  107.             Print "@X30" + Upper(ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", INTEGER007))
  108.             INTEGER005 = GetX()
  109.             INTEGER006 = GetY()
  110.         Endif
  111.         If ((INTEGER007 <= INTEGER002 + INTEGER003) && (INTEGER007 > INTEGER002)) Then
  112.             Print "@X30" + Lower(ReadLine(PPEPath() + STRING002 + "CONF", INTEGER001 * 2))
  113.             INTEGER005 = GetX()
  114.             INTEGER006 = GetY()
  115.         Endif
  116.     Endif
  117.     If (INTEGER007 < INTEGER002 + 2) INTEGER001 = 1
  118.     Gosub LABEL007
  119.     Goto LABEL003
  120.     :LABEL006
  121.     If (INTEGER007 < INTEGER002 + INTEGER003 / 2) Then
  122.         INTEGER007 = INTEGER007 + 1
  123.         AnsiPos 2, INTEGER008 + INTEGER007 - 1
  124.         Print "@X1B                                      "
  125.         AnsiPos 2, INTEGER008 + INTEGER007 - 1
  126.         If (INTEGER007 <= INTEGER002 + 1) Print "@X1B" + Upper(ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", INTEGER007 - 1))
  127.         If ((INTEGER001 <= INTEGER003) && (INTEGER007 - 1 > INTEGER002)) INTEGER001 = INTEGER001 + 1
  128.         If ((INTEGER001 <= INTEGER003) && (INTEGER007 - 1 > INTEGER002)) Print "@X1B" + Lower(ReadLine(PPEPath() + STRING002 + "CONF", (INTEGER001 - 1) * 2))
  129.         AnsiPos 2, INTEGER008 + INTEGER007
  130.         Print "@X30                                      "
  131.         AnsiPos 2, INTEGER008 + INTEGER007
  132.         If (INTEGER007 <= INTEGER002) Then
  133.             Print "@X30" + Upper(ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", INTEGER007))
  134.             INTEGER005 = GetX()
  135.             INTEGER006 = GetY()
  136.         Endif
  137.         If ((INTEGER007 <= INTEGER002 + INTEGER003) && (INTEGER007 > INTEGER002)) Then
  138.             Print "@X30" + Lower(ReadLine(PPEPath() + STRING002 + "CONF", INTEGER001 * 2))
  139.             INTEGER005 = GetX()
  140.             INTEGER006 = GetY()
  141.         Endif
  142.     Endif
  143.     Gosub LABEL007
  144.     Goto LABEL003
  145.     :LABEL007
  146.     AnsiPos 3, 19
  147.     Print "@X1B                                 "
  148.     AnsiPos 3, 19
  149.     If (INTEGER006 <= INTEGER002 + INTEGER008) Print "@X1B  SUBDIR  "
  150.     If (Left(ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", S2I(INTEGER006, 10) - INTEGER008), 2) == "..") Then
  151.         AnsiPos 3, 19
  152.         Print "@X1B                                 "
  153.         AnsiPos 3, 19
  154.         Print "@X1B  UP-DIR  "
  155.     Else
  156.         AnsiPos 3, 19
  157.         Print "@X1B                                 "
  158.         AnsiPos 3, 19
  159.         If (INTEGER006 <= INTEGER002 + INTEGER008) Print "@X1B  SUBDIR  "
  160.     Endif
  161.     If (INTEGER006 > INTEGER002 + INTEGER008) Print "@X1B  CONFERENCE # " + ReadLine(PPEPath() + STRING002 + "CONF", INTEGER001 * 2 - 1) + " "
  162.     Return
  163.     :LABEL008
  164.     AnsiPos 14, 21
  165.     If (INTEGER006 > INTEGER002 + INTEGER008) KbdStuff "JOIN " + ReadLine(PPEPath() + STRING002 + "CONF", INTEGER001 * 2 - 1) + Chr(13)
  166.     If (INTEGER006 <= INTEGER002 + INTEGER008) Goto LABEL009
  167.     End
  168.     :LABEL009
  169.     If (Left(ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", S2I(INTEGER006, 10) - INTEGER008), 2) <> "..") Then
  170.         STRING002 = STRING002 + I2S(S2I(INTEGER006, 10) - INTEGER008, 10) + "\"
  171.         STRING004 = S2I(INTEGER006, 10)
  172.     Endif
  173.     If (Left(ReadLine(PPEPath() + STRING002 + "TDI-GRP.LST", S2I(INTEGER006, 10) - INTEGER008), 2) == "..") STRING002 = Left(STRING002, Len(STRING002) - Len(STRING004) + 1)
  174.     Goto LABEL001
  175.     :LABEL010
  176.     STRING003 = Inkey()
  177.     If (STRING003 == "") Goto LABEL010
  178.     Return
  179.  
  180. ;------------------------------------------------------------------------------
  181. ;
  182. ; Usage report (before postprocessing)
  183. ;
  184. ; ■ Statements used :
  185. ;
  186. ;    3       End
  187. ;    32      Goto 
  188. ;    36      Let 
  189. ;    27      Print 
  190. ;    39      If 
  191. ;    1       DispFile 
  192. ;    4       Gosub 
  193. ;    2       Return
  194. ;    1       KbdStuff 
  195. ;    23      AnsiPos 
  196. ;
  197. ;
  198. ; ■ Functions used :
  199. ;
  200. ;    8       *
  201. ;    1       /
  202. ;    111     +
  203. ;    17      -
  204. ;    14      ==
  205. ;    4       <>
  206. ;    5       <
  207. ;    15      <=
  208. ;    8       >
  209. ;    6       >=
  210. ;    15      !
  211. ;    10      &&
  212. ;    5       ||
  213. ;    2       Len(
  214. ;    5       Lower()
  215. ;    6       Upper()
  216. ;    4       Left()
  217. ;    5       Chr()
  218. ;    1       Inkey()
  219. ;    26      PPEPath()
  220. ;    23      ReadLine()
  221. ;    2       Exist()
  222. ;    1       I2S()
  223. ;    5       S2I()
  224. ;    4       GetX()
  225. ;    4       GetY()
  226. ;
  227. ;------------------------------------------------------------------------------
  228. ;
  229. ; Analysis flags : No flag
  230. ;
  231. ;------------------------------------------------------------------------------
  232. ;
  233. ; Postprocessing report
  234. ;
  235. ;    2       For/Next
  236. ;    2       While/EndWhile
  237. ;    10      If/Then or If/Then/Else
  238. ;    0       Select Case
  239. ;
  240. ;------------------------------------------------------------------------------
  241. ;                 AEGiS Corp - Break the routines, code against the machines!
  242. ;------------------------------------------------------------------------------
  243.