home *** CD-ROM | disk | FTP | other *** search
/ Carsten's PPE Collection / Carstens_PPE_Collection_2007.zip / S / SIK-SCHK.ZIP / CHECK.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1995-03-09  |  4KB  |  236 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.1O (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Integer  INTEGER001
  21.     Integer  INTEGER002
  22.     Integer  INTEGER003
  23.     Integer  INTEGER004
  24.     Real     REAL001
  25.     Real     REAL002
  26.     Real     REAL003
  27.     Real     REAL004
  28.     String   STRING001
  29.     String   STRING002
  30.     String   STRING003
  31.     String   STRING004
  32.     String   STRING005
  33.     String   STRING006
  34.     String   STRING007
  35.     String   STRING008
  36.     String   STRING009
  37.     String   STRING010
  38.     String   STRING011
  39.     Int      INT001
  40.  
  41. ;------------------------------------------------------------------------------
  42.  
  43.     STRING001 = GetToken()
  44.     If (STRING001 == "") Then
  45.         PrintLn "Error : Usage check.ppe @SCPS@ "
  46.         PrintLn "Exiting....."
  47.         Delay 10
  48.         End
  49.     Endif
  50.     If (OnLocal()) Then
  51.         REAL001 = 3360
  52.         STRING002 = "24000"
  53.         REAL002 = S2I(STRING002, 10)
  54.     Else
  55.         REAL001 = S2I(STRING001, 10)
  56.         STRING002 = Carrier()
  57.         REAL002 = S2I(STRING002, 10)
  58.     Endif
  59.     REAL003 = ((REAL001 / (REAL002 / 10)) * 100) / 2
  60.     PrintLn REAL003
  61.     Newlines 3
  62.     REAL004 = REAL003 * 2
  63.     If ((REAL004 >= 0) && (REAL004 < 50)) Then
  64.         STRING007 = "BoRiNG!!!!! yoU Need HElp"
  65.     Endif
  66.     If ((REAL004 >= 50) && (REAL004 < 100)) Then
  67.         STRING007 = "NoTHinG SpeCIAl!"
  68.     Endif
  69.     If ((REAL004 >= 100) && (REAL004 < 150)) Then
  70.         STRING007 = "VroooM!"
  71.     Endif
  72.     If (REAL004 >= 150) Then
  73.         STRING007 = "WhoA SpEED DeMOn!"
  74.     Endif
  75.     PrintLn "@X0AYour Overall Speed Rating: @X1F" + STRING007 + "@X07"
  76.     Newlines 2
  77.     PrintLn "@X090%         25%         50%         75%         100%        125%"
  78.     PrintLn "@X02|-+-+-+-+-+-*-+-+-+-+-+-@X0A*-+-+-+-+-+-*-+-+-@X03+-+-+-*-+-+-@X0B+-+-+-*-|"
  79.     Print "@X0E"
  80.     For INTEGER002 = 0 To REAL003
  81.         Print "█"
  82.         Delay 1
  83.     Next
  84.     STRING007 = I2S(REAL001, 10)
  85.     Print "@X0F" + STRING007 + "@X09cps" + Chr(13)
  86.     Newline
  87.     FOpen 1, PPEPath() + "record.dat", 2, 1
  88.     :LABEL001
  89.     INT001 = INT001 + 1
  90.     FGet 1, STRING007
  91.     Tokenize STRING007
  92.     STRING003 = GetToken()
  93.     If (STRING003 == STRING002) Then
  94.         BOOLEAN001 = 1
  95.         STRING006 = GetToken()
  96.         STRING005 = GetToken()
  97.         STRING009 = GetToken()
  98.     ElseIf (INT001 >= 99) Then
  99.         INT001 = 0
  100.     Else
  101.         Goto LABEL001
  102.     Endif
  103.     If (BOOLEAN001) Goto LABEL002
  104.     GetUser
  105.     STRING006 = U_Name()
  106.     STRING010 = Date()
  107.     STRING008 = STRING002 + " " + STRING006 + " " + I2S(REAL001, 10) + " " + STRING010
  108.     Newlines 2
  109.     PrintLn "@X0FNew Record CPS at this Baud: @X09" + STRING005 + "@X07 Set by: @X0E" + STRING006 + "@X07 On: @X0F" + STRING010 + "@X07"
  110.     FPut 1, STRING008
  111.     FClose 1
  112.     Goto LABEL004
  113.     :LABEL002
  114.     FClose 1
  115.     INTEGER001 = S2I(STRING005, 10)
  116.     Newlines 2
  117.     If (INTEGER001 >= REAL001) Then
  118.         PrintLn "@X0FThe Record CPS at this Baud: @X09" + STRING005 + "@X07 Set by: @X0E" + STRING006 + "@X07 On: @X0F" + STRING009 + "@X07"
  119.     Else
  120.         PrintLn "@X0FThe Previous Record CPS at this Baud: @X09" + STRING005 + "@X07 Set by: @X0E" + STRING006 + "@X07 On: @X0F" + STRING009 + "@X07"
  121.         PrintLn "@X0FThe New Record CPS at this Baud: @X09" + I2S(REAL001, 10) + "@X07 Set by: @X0E@USER@@X07 On: @X0F@SYSDATE@@X07"
  122.         GetUser
  123.         STRING006 = U_Name()
  124.         STRING010 = Date()
  125.         STRING008 = STRING002 + " " + STRING006 + " " + I2S(REAL001, 10) + " " + STRING010
  126.         FOpen 1, PPEPath() + "record.dat", 2, 1
  127.         :LABEL003
  128.         FGet 1, STRING007
  129.         Tokenize STRING007
  130.         STRING003 = GetToken()
  131.         If (STRING003 == STRING002) Then
  132.             FSeek 1, 0 - Len(STRING007) + 2, 1
  133.             FPut 1, STRING008
  134.         Else
  135.             Goto LABEL003
  136.         Endif
  137.         FClose 1
  138.     Endif
  139.     :LABEL004
  140.     Wait
  141.     Newline
  142.     INTEGER003 = GetX()
  143.     INTEGER004 = GetY()
  144.     STRING004 = "--=[■] Coded By Odin SiK (c) 95 [■]=--"
  145.     INTEGER004 = INTEGER004 + 40 - Len(STRING004) / 2
  146.     AnsiPos INTEGER003, INTEGER004
  147.     Print "@X0D"
  148.     INTEGER002 = 0
  149.     While (((1 < 0) && (INTEGER002 >= Len(STRING004) + 1)) || ((1 >= 0) && (INTEGER002 <= Len(STRING004) + 1))) Do
  150.         STRING011 = Left(STRING004, INTEGER002) + "@X0F" + Mid(STRING004, INTEGER002 + 1, 1) + "@X0D" + Right(STRING004, Len(STRING004) - INTEGER002 + 1)
  151.         AnsiPos INTEGER003, INTEGER004
  152.         Print STRING011
  153.         Delay 1
  154.         INTEGER002 = INTEGER002 + 1
  155.     EndWhile
  156.     For INTEGER002 = Len(STRING004) To 0 Step -1
  157.         STRING011 = Left(STRING004, INTEGER002 - 1) + "@X0F" + Mid(STRING004, INTEGER002, 1) + "@X0D" + Right(STRING004, Len(STRING004) - INTEGER002)
  158.         AnsiPos INTEGER003, INTEGER004 + 40 - Len(STRING004) / 2
  159.         Print STRING011
  160.         Delay 1
  161.     Next
  162.     Print "@X07" + Chr(13)
  163.  
  164. ;------------------------------------------------------------------------------
  165. ;
  166. ; Usage report (before postprocessing)
  167. ;
  168. ; ■ Statements used :
  169. ;
  170. ;    1       End
  171. ;    1       Wait
  172. ;    25      Goto 
  173. ;    41      Let 
  174. ;    7       Print 
  175. ;    10      PrintLn 
  176. ;    14      If 
  177. ;    2       FOpen 
  178. ;    3       FClose 
  179. ;    2       FGet 
  180. ;    2       FPut 
  181. ;    2       GetUser
  182. ;    4       Delay 
  183. ;    2       Newline
  184. ;    4       Newlines 
  185. ;    2       Tokenize 
  186. ;    3       AnsiPos 
  187. ;    1       FSeek 
  188. ;
  189. ;
  190. ; ■ Functions used :
  191. ;
  192. ;    3       -
  193. ;    2       *
  194. ;    5       /
  195. ;    60      +
  196. ;    6       -
  197. ;    3       ==
  198. ;    6       <
  199. ;    3       <=
  200. ;    12      >=
  201. ;    14      !
  202. ;    9       &&
  203. ;    3       ||
  204. ;    8       Len(
  205. ;    2       Mid()
  206. ;    2       Left()
  207. ;    2       Right()
  208. ;    2       Chr()
  209. ;    2       Date()
  210. ;    2       U_Name()
  211. ;    2       PPEPath()
  212. ;    1       OnLocal()
  213. ;    6       GetToken()
  214. ;    4       I2S()
  215. ;    4       S2I()
  216. ;    1       Carrier()
  217. ;    1       GetX()
  218. ;    1       GetY()
  219. ;
  220. ;------------------------------------------------------------------------------
  221. ;
  222. ; Analysis flags : No flag
  223. ;
  224. ;------------------------------------------------------------------------------
  225. ;
  226. ; Postprocessing report
  227. ;
  228. ;    2       For/Next
  229. ;    1       While/EndWhile
  230. ;    10      If/Then or If/Then/Else
  231. ;    0       Select Case
  232. ;
  233. ;------------------------------------------------------------------------------
  234. ;                 AEGiS Corp - Break the routines, code against the machines!
  235. ;------------------------------------------------------------------------------
  236.