home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / PCBOARD / SCUM_FPS.ZIP / DOWNLOAD.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-02-27  |  4KB  |  254 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.     Integer  INTEGER007
  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   TSTRING011(23)
  36.     String   STRING012
  37.     String   STRING013
  38.     String   STRING014
  39.     String   STRING015
  40.     String   STRING016
  41.     String   STRING017
  42.     String   STRING018
  43.     String   STRING019
  44.     String   STRING020
  45.     String   STRING021
  46.     String   STRING022
  47.  
  48. ;------------------------------------------------------------------------------
  49.  
  50.     STRING012 = PPEPath() + "DOWNLOAD.PCB"
  51.     FOpen 2, STRING012, 0, 0
  52.     FGet 2, STRING013
  53.     FGet 2, STRING014
  54.     FGet 2, STRING015
  55.     FGet 2, STRING016
  56.     FGet 2, STRING017
  57.     FGet 2, STRING018
  58.     FGet 2, STRING019
  59.     FGet 2, STRING020
  60.     FGet 2, STRING021
  61.     FGet 2, STRING022
  62.     FClose 2
  63.     STRING008 = "1.0"
  64.     Newline
  65.     StartDisp 1
  66.     DispStr STRING013
  67.     Newline
  68.     DispStr STRING014
  69.     Newline
  70.     DispStr STRING015
  71.     Newline
  72.     DispStr STRING016
  73.     Newline
  74.     INTEGER007 = GetY()
  75.     For INTEGER006 = 1 To INTEGER007
  76.         TSTRING011(INTEGER006) = ScrText(1, INTEGER006, 250, 1)
  77.     Next
  78.     Shell 0, INTEGER001, "PCBFPS1.EXE", PPEPath()
  79.     Newline
  80.     SPrintLn Chr(27) + "[1;1f"
  81.     For INTEGER006 = 1 To INTEGER007
  82.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X00", "")
  83.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X01", "")
  84.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X02", "")
  85.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X03", "")
  86.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X04", "")
  87.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X05", "")
  88.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X06", "")
  89.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X07", "")
  90.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X08", "")
  91.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X09", "")
  92.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X0A", "")
  93.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X0B", "")
  94.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X0C", "")
  95.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X0D", "")
  96.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X0E", "")
  97.         TSTRING011(INTEGER006) = ReplaceStr(TSTRING011(INTEGER006), "@X0F", "")
  98.         TSTRING011(INTEGER006) = StripStr(TSTRING011(INTEGER006), "@X")
  99.         TSTRING011(INTEGER006) = Trim(TSTRING011(INTEGER006), " ")
  100.     Next
  101.     For INTEGER006 = 1 To INTEGER007
  102.         SPrint "" + String(INTEGER006) + ";1f"
  103.         SPrint TSTRING011(INTEGER006)
  104.     Next
  105.     FOpen 7, "PCBFPS.$$$", 0, 0
  106.     :LABEL001
  107.     If (Ferr(7)) Goto LABEL002
  108.     FGet 7, STRING002
  109.     FGet 7, STRING003
  110.     FGet 7, STRING004
  111.     FGet 7, STRING005
  112.     FGet 7, STRING006
  113.     If (STRING002 == "") Goto LABEL002
  114.     StartDisp 1
  115.     Newline
  116.     DispStr STRING017 + STRING002 + STRING018 + STRING003 + STRING019 + STRING004
  117.     Newline
  118.     DispStr STRING020 + STRING005 + STRING021 + STRING006
  119.     Newline
  120.     DispStr STRING022
  121.     GetUser
  122.     STRING010 = U_Notes(3)
  123.     Tokenize STRING010
  124.     If (TokCount() == 3) Then
  125.         STRING008 = GetToken()
  126.         STRING007 = GetToken()
  127.         STRING009 = GetToken()
  128.     Endif
  129.     INTEGER002 = STRING007
  130.     INTEGER003 = STRING003
  131.     INTEGER002 = INTEGER002 - INTEGER003
  132.     STRING007 = INTEGER002
  133.     U_Notes(3) = STRING008 + " " + STRING007 + " " + STRING009
  134.     PutUser
  135.     INTEGER004 = U_RecNum(STRING005)
  136.     If (INTEGER004 > -1) Then
  137.         GetAltUser INTEGER004
  138.         STRING010 = U_Notes(3)
  139.         Tokenize STRING010
  140.         If (TokCount() == 3) Then
  141.             STRING008 = GetToken()
  142.             STRING007 = GetToken()
  143.             STRING009 = GetToken()
  144.         Endif
  145.         INTEGER002 = STRING007
  146.         INTEGER003 = STRING006
  147.         INTEGER002 = INTEGER002 + INTEGER003
  148.         STRING007 = INTEGER002
  149.         INTEGER005 = STRING009
  150.         INTEGER005 = INTEGER005 + INTEGER003
  151.         STRING009 = INTEGER005
  152.         U_Notes(3) = STRING008 + " " + STRING007 + " " + STRING009
  153.         PutUser
  154.     Endif
  155.     Newline
  156.     Goto LABEL001
  157.     :LABEL002
  158.     StartDisp 1
  159.     Newline
  160.     Newline
  161.     DispStr "                        @X01 -[ @X0BPCB-FPS@X08 by @X01-=\@X0BT@X03he @X0BL@X03iquidater@X01/=-@X05 @X03TRSi/SCUM@X01 ]-"
  162.     Newline
  163.     Newline
  164.     Delete "PCBFPS.$$$"
  165.     Delete "DLINFO.FPS"
  166.     End
  167.  
  168. ;------------------------------------------------------------------------------
  169. ;
  170. ; Usage report (before postprocessing)
  171. ;
  172. ; ■ Statements used :
  173. ;
  174. ;    1       End
  175. ;    12      Goto 
  176. ;    50      Let 
  177. ;    8       If 
  178. ;    2       FOpen 
  179. ;    1       FClose 
  180. ;    15      FGet 
  181. ;    3       StartDisp 
  182. ;    1       GetUser
  183. ;    2       PutUser
  184. ;    2       Delete 
  185. ;    14      Newline
  186. ;    2       Tokenize 
  187. ;    1       Shell 
  188. ;    8       DispStr 
  189. ;    2       SPrint 
  190. ;    1       SPrintLn 
  191. ;    1       GetAltUser 
  192. ;
  193. ;
  194. ; ■ Functions used :
  195. ;
  196. ;    1       -
  197. ;    25      +
  198. ;    1       -
  199. ;    3       ==
  200. ;    3       <
  201. ;    3       <=
  202. ;    1       >
  203. ;    6       >=
  204. ;    7       !
  205. ;    6       &&
  206. ;    3       ||
  207. ;    1       Ferr()
  208. ;    1       Chr()
  209. ;    1       Trim()
  210. ;    1       String()
  211. ;    2       PPEPath()
  212. ;    6       GetToken()
  213. ;    1       GetY()
  214. ;    2       TokCount()
  215. ;    1       U_RecNum()
  216. ;    1       ScrText()
  217. ;    16      ReplaceStr()
  218. ;    1       StripStr()
  219. ;
  220. ;------------------------------------------------------------------------------
  221. ;
  222. ; Analysis flags : WRS
  223. ;
  224. ; W - Write user ■ 5
  225. ;     Program writes a user record. Although this may be normal for a
  226. ;     User Editor, it may also be a way to modify an account level.
  227. ;     ■ Search for : PUTUSER
  228. ;
  229. ; R - Read user ■ 5
  230. ;     User records are read, this may signify that someone wants to get
  231. ;     various informations about a user (for example his password), but
  232. ;     this may also be normal for a program accessing user records (for
  233. ;     example a User Editor)
  234. ;     ■ Search for : GETALTUSER
  235. ;
  236. ; S - Shell to DOS ■ 5
  237. ;     This may be normal if the PPE need to execute an external command,
  238. ;     but may be actually anything... nasty (formating HD, rebooting,...)
  239. ;     or usefull (sorting, maintenance,...). Check!
  240. ;     ■ Search for : SHELL
  241. ;
  242. ;------------------------------------------------------------------------------
  243. ;
  244. ; Postprocessing report
  245. ;
  246. ;    3       For/Next
  247. ;    0       While/EndWhile
  248. ;    3       If/Then or If/Then/Else
  249. ;    0       Select Case
  250. ;
  251. ;------------------------------------------------------------------------------
  252. ;                 AEGiS Corp - Break the routines, code against the machines!
  253. ;------------------------------------------------------------------------------
  254.