home *** CD-ROM | disk | FTP | other *** search
/ Collection of Hack-Phreak Scene Programs / cleanhpvac.zip / cleanhpvac / AGSDOS0!.ZIP / ADOS.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-10-01  |  4KB  |  272 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.     String   STRING001
  22.     String   STRING002
  23.     String   STRING003
  24.     String   STRING004
  25.     String   STRING005
  26.  
  27. ;------------------------------------------------------------------------------
  28.  
  29.     FAppend 1, PPEPath() + "A-DOS.LOG", 2, 0
  30.     FPutLn 1, "------------------------------------------------------------------------------"
  31.     FPutLn 1, String(Date()), " ", String(Time()), " ", U_Name(), " entered in A-DOS :))"
  32.     FPutLn 1
  33.     FPutLn 1, "Command used :"
  34.     FPutLn 1
  35.     StartDisp 1
  36.     STRING001 = "PCB"
  37.     Color 7
  38.     Cls
  39.     Delay 20
  40.     DispFile PPEPath() + "shell.txt", 0
  41.     Delay 25
  42.     DispFile PPEPath() + "limiter.txt", 0
  43.     Delay 10
  44.     DispFile PPEPath() + "access.txt", 0
  45.     Delay 18
  46.     DispFile PPEPath() + "allowed.tre", 0
  47.     Gosub LABEL010
  48.     :LABEL001
  49.     STRING002 = Inkey()
  50.     :LABEL002
  51.     If (STRING002 == "") Goto LABEL001
  52.     If ((Asc(STRING002) >= 32) && (Len(STRING002) == 1)) Then
  53.         Print STRING002
  54.         STRING004 = STRING004 + STRING002
  55.     Endif
  56.     If ((((STRING002 == Chr(8)) && (Len(STRING002) == 1)) || (STRING002 == "LEFT")) && (Len(STRING004) > 0)) Then
  57.         Print Chr(8) + " " + Chr(8)
  58.         STRING004 = Left(STRING004, Len(STRING004) - 1)
  59.     Endif
  60.     If ((STRING002 == "RIGHT") && (Len(STRING003) > Len(STRING004))) Then
  61.         STRING002 = Mid(STRING003, Len(STRING004) + 1, 1)
  62.         Goto LABEL002
  63.     Endif
  64.     If ((STRING002 == Chr(13)) && (Len(STRING002) == 1)) Then
  65.         Goto LABEL003
  66.     Endif
  67.     Goto LABEL001
  68.     :LABEL003
  69.     STRING004 = Trim(STRING004, " ")
  70.     STRING003 = STRING004
  71.     STRING004 = Upper(STRING004)
  72.     INTEGER002 = 0
  73.     For INTEGER001 = 1 To Len(STRING004)
  74.         If (Mid(STRING004, INTEGER001, 1) == "\") Inc INTEGER002
  75.     Next
  76.     If (INTEGER002 > 1) Then
  77.         DispFile PPEPath() + "nocomplx.txt", 0
  78.         STRING004 = ""
  79.         Gosub LABEL010
  80.         Goto LABEL001
  81.     Endif
  82.     If (Left(STRING004, 3) == "DIR") Then
  83.         FPutLn 1, STRING004
  84.         If (STRING001 <> "") Then
  85.             DispFile PPEPath() + STRING001 + ".DIR", 0
  86.             Goto LABEL004
  87.         Endif
  88.         DispFile PPEPath() + "ROOT.DIR", 0
  89.         :LABEL004
  90.         STRING004 = ""
  91.         Gosub LABEL010
  92.         Goto LABEL001
  93.     Endif
  94.     If (Left(STRING004, 3) == "REM") Then
  95.         STRING004 = ""
  96.         Gosub LABEL010
  97.         Goto LABEL001
  98.     Endif
  99.     If (STRING004 == "CD\") Then
  100.         STRING001 = ""
  101.         STRING004 = ""
  102.         Gosub LABEL010
  103.         Goto LABEL001
  104.     Endif
  105.     If (Left(STRING004, 3) == "CD\") Then
  106.         DispFile PPEPath() + "nocomplx.txt", 0
  107.         STRING004 = ""
  108.         Gosub LABEL010
  109.         Goto LABEL001
  110.     Endif
  111.     If (Left(STRING004, 4) == "CD..") Then
  112.         FPutLn 1, STRING004
  113.         If (STRING001 == "") Then
  114.             DispFile PPEPath() + "invaldir.txt", 0
  115.             STRING004 = ""
  116.             Gosub LABEL010
  117.             Goto LABEL001
  118.             Goto LABEL005
  119.         Endif
  120.         STRING001 = ""
  121.         STRING004 = ""
  122.         Gosub LABEL010
  123.         Goto LABEL001
  124.     Endif
  125.     :LABEL005
  126.     If (STRING004 == "CLS") Then
  127.         FPutLn 1, STRING004
  128.         STRING004 = ""
  129.         Cls
  130.         Gosub LABEL010
  131.         Goto LABEL001
  132.     Endif
  133.     If (Left(STRING004, 3) == "CD ") Then
  134.         FPutLn 1, STRING004
  135.         STRING005 = Upper(Mid(STRING004, 4, Len(STRING004) - 3))
  136.         If (((STRING005 == "..") && (STRING001 <> "")) || (STRING005 == "\")) Then
  137.             STRING001 = ""
  138.             STRING004 = ""
  139.             Gosub LABEL010
  140.             Goto LABEL001
  141.         Endif
  142.         If ((STRING005 <> "PCB") && (STRING005 <> "DOS")) Then
  143.             DispFile PPEPath() + "a_denied.txt", 0
  144.             STRING004 = ""
  145.             Gosub LABEL010
  146.             Goto LABEL001
  147.             Goto LABEL006
  148.         Endif
  149.         STRING001 = STRING005
  150.         STRING004 = ""
  151.         Gosub LABEL010
  152.         Goto LABEL001
  153.     Endif
  154.     :LABEL006
  155.     If ((((((Left(STRING004, 7) == "FORMAT ") || (Left(STRING004, 4) == "DEL ")) || (Left(STRING004, 8) == "DELTREE ")) || (Left(STRING004, 6) == "ERASE ")) || (Left(STRING004, 5) == "FDISK")) || (Left(STRING004, 3) == "RD ")) Then
  156.         FPutLn 1, STRING004, " !!!!!"
  157.         DispFile PPEPath() + "BUSTED", 1
  158.         FPutLn 1, "User was thrown out of this PPE and should be Locked out !!"
  159.         Log "Unallowed command typed in A-DOS !!!", 0
  160.         Message 0, "Sysop", U_Name(), "Lamer", "R", 0, 0, 0, PPEPath() + "busted.msg"
  161.         Wait
  162.     ElseIf (STRING004 == "EXIT") Then
  163.         PrintLn 
  164.         Delay 20
  165.         FPutLn 1, "Exit by normal way..."
  166.     Else
  167.         If (STRING004 == "") Goto LABEL009
  168.         FOpen 2, PPEPath() + STRING001 + ".CMD", 0, 0
  169.         :LABEL007
  170.         If (Ferr(2)) Goto LABEL008
  171.         FGet 2, STRING005
  172.         If (Upper(STRING005) == STRING004) Then
  173.             FPutLn 1, STRING004
  174.             DispFile PPEPath() + "a_denied.txt", 0
  175.             FClose 2
  176.         Else
  177.             Goto LABEL007
  178.             :LABEL008
  179.             FPutLn 1, STRING004
  180.             DispFile PPEPath() + "invalcom.txt", 0
  181.             FClose 2
  182.             Goto LABEL009
  183.         Endif
  184.         :LABEL009
  185.         Gosub LABEL010
  186.         STRING004 = ""
  187.         Goto LABEL001
  188.     Endif
  189.     FClose 1
  190.     End
  191.     :LABEL010
  192.     PrintLn 
  193.     PrintLn "Type EXIT to return to PCBoard"
  194.     PrintLn 
  195.     Print "C:\", STRING001, ">"
  196.     Return
  197.  
  198. ;------------------------------------------------------------------------------
  199. ;
  200. ; Usage report (before postprocessing)
  201. ;
  202. ; ■ Statements used :
  203. ;
  204. ;    1       End
  205. ;    2       Cls
  206. ;    1       Wait
  207. ;    1       Color 
  208. ;    47      Goto 
  209. ;    28      Let 
  210. ;    3       Print 
  211. ;    4       PrintLn 
  212. ;    24      If 
  213. ;    13      DispFile 
  214. ;    1       FOpen 
  215. ;    1       FAppend 
  216. ;    3       FClose 
  217. ;    1       FGet 
  218. ;    14      FPutLn 
  219. ;    1       StartDisp 
  220. ;    1       Log 
  221. ;    13      Gosub 
  222. ;    1       Return
  223. ;    5       Delay 
  224. ;    1       Inc 
  225. ;    1       Message 
  226. ;
  227. ;
  228. ; ■ Functions used :
  229. ;
  230. ;    23      +
  231. ;    2       -
  232. ;    28      ==
  233. ;    4       <>
  234. ;    1       <
  235. ;    1       <=
  236. ;    3       >
  237. ;    3       >=
  238. ;    21      !
  239. ;    9       &&
  240. ;    8       ||
  241. ;    11      Len(
  242. ;    3       Upper()
  243. ;    3       Mid()
  244. ;    12      Left()
  245. ;    1       Ferr()
  246. ;    4       Chr()
  247. ;    1       Asc()
  248. ;    1       Trim()
  249. ;    1       Date()
  250. ;    1       Time()
  251. ;    2       U_Name()
  252. ;    1       Inkey()
  253. ;    2       String()
  254. ;    16      PPEPath()
  255. ;
  256. ;------------------------------------------------------------------------------
  257. ;
  258. ; Analysis flags : No flag
  259. ;
  260. ;------------------------------------------------------------------------------
  261. ;
  262. ; Postprocessing report
  263. ;
  264. ;    1       For/Next
  265. ;    0       While/EndWhile
  266. ;    19      If/Then or If/Then/Else
  267. ;    0       Select Case
  268. ;
  269. ;------------------------------------------------------------------------------
  270. ;                 AEGiS Corp - Break the routines, code against the machines!
  271. ;------------------------------------------------------------------------------
  272.