home *** CD-ROM | disk | FTP | other *** search
/ Groovy Bytes: Behind the Moon / groovybytes.iso / GROOVY / PPE / AEGIS / AGSHOS10.ZIP / AGSHOS.PPE (.txt) < prev    next >
Encoding:
PCBoard Programming Language Executable  |  1994-11-25  |  2.9 KB  |  183 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  TINTEGER001(1)
  20.     Integer  INTEGER002
  21.     Integer  INTEGER003
  22.     Integer  TINTEGER004(1)
  23.     Integer  INTEGER005
  24.     Integer  INTEGER006
  25.     String   TSTRING001(1)
  26.     String   TSTRING002(1)
  27.     String   STRING003
  28.  
  29. ;------------------------------------------------------------------------------
  30.  
  31.     INTEGER002 = FileInf(ReadLine(PCBDat(), 29), 4) / 400
  32.     Redim TSTRING001, INTEGER002
  33.     Redim TSTRING002, INTEGER002
  34.     Redim TINTEGER001, INTEGER002
  35.     Redim TINTEGER004, INTEGER002
  36.     Newline
  37.     PrintLn "@X08.:[@X03AEG@X0Bi@X03S H@X0Ba@X03LL @X0Bo@X03F SH@X0Ba@X03M@X0Be @X03v1.@X0Bo @X03B@X0By @X03N@X0Bu@X03MB@X0Be@X03R S@X0Bi@X03X@X08]:."
  38.     RdUNet PcbNode()
  39.     WrUNet PcbNode(), "Q", UN_Name(), UN_City(), "iN HaLL oF SHaMe", " "
  40.     INTEGER005 = INTEGER002 / 10
  41.     Print "@X08.:[@X0Bi@X03ND@X0Be@X03X@X0Bi@X03NG : @X08[@X03"
  42.     For INTEGER003 = 1 To INTEGER005
  43.         Print "∙"
  44.     Next
  45.     Print "@X08]:."
  46.     Backup INTEGER005 + 3
  47.     INTEGER006 = 0
  48.     INTEGER005 = 0
  49.     Print "@X0B"
  50.     For INTEGER003 = 1 To INTEGER002
  51.         Inc INTEGER005
  52.         If (INTEGER005 == 10) Then
  53.             Print "■"
  54.             INTEGER005 = 0
  55.         Endif
  56.         GetAltUser INTEGER003
  57.         If ((U_Bul() == 0) && (U_Bdl() <> 0)) Then
  58.             Inc INTEGER006
  59.             TSTRING001(INTEGER006) = U_Name()
  60.             TSTRING002(INTEGER006) = U_City
  61.             TINTEGER001(INTEGER006) = U_Bdl()
  62.         Endif
  63.     Next
  64.     DispFile PPEPath() + "AGSHOS.PCB", 0
  65.     Sort TINTEGER001, TINTEGER004
  66.     For INTEGER003 = 1 To 10
  67.         AnsiPos 3, 8 + INTEGER003
  68.         STRING003 = TSTRING001(TINTEGER004(INTEGER002 - INTEGER003 + 1))
  69.         Gosub LABEL001
  70.         Print STRING003
  71.         AnsiPos 32, 8 + INTEGER003
  72.         STRING003 = TSTRING002(TINTEGER004(INTEGER002 - INTEGER003 + 1))
  73.         Gosub LABEL001
  74.         Print STRING003
  75.         AnsiPos 65, 8 + INTEGER003
  76.         STRING003 = String(TINTEGER001(TINTEGER004(INTEGER002 - INTEGER003 + 1)))
  77.         Gosub LABEL001
  78.         Print STRING003
  79.     Next
  80.     AnsiPos 1, 22
  81.     Wait
  82.     End
  83.     :LABEL001
  84.     STRING003 = Mid(STRING003, 1, 30)
  85.     STRING003 = Replace(STRING003, "0", "o")
  86.     STRING003 = Replace(STRING003, "A", "a")
  87.     STRING003 = Replace(STRING003, "E", "e")
  88.     STRING003 = Replace(STRING003, "I", "i")
  89.     STRING003 = Replace(STRING003, "O", "o")
  90.     STRING003 = Replace(STRING003, "U", "u")
  91.     STRING003 = Mid(STRING003, 1, 2) + "@X0F" + Mid(STRING003, 3, Len(STRING003) - 3)
  92.     STRING003 = Mid(STRING003, 1, 1) + "@X0B" + Mid(STRING003, 2, Len(STRING003) - 2)
  93.     STRING003 = "@X03" + STRING003
  94.     STRING003 = Trim(STRING003, " ")
  95.     Return
  96.  
  97. ;------------------------------------------------------------------------------
  98. ;
  99. ; Usage report (before postprocessing)
  100. ;
  101. ; ■ Statements used :
  102. ;
  103. ;    1       End
  104. ;    1       Wait
  105. ;    8       Goto 
  106. ;    28      Let 
  107. ;    8       Print 
  108. ;    1       PrintLn 
  109. ;    5       If 
  110. ;    1       DispFile 
  111. ;    3       Gosub 
  112. ;    1       Return
  113. ;    2       Inc 
  114. ;    1       Newline
  115. ;    1       RdUNet 
  116. ;    1       WrUNet 
  117. ;    4       AnsiPos 
  118. ;    1       Backup 
  119. ;    4       Redim 
  120. ;    1       GetAltUser 
  121. ;    1       Sort 
  122. ;
  123. ;
  124. ; ■ Functions used :
  125. ;
  126. ;    2       /
  127. ;    16      +
  128. ;    5       -
  129. ;    2       ==
  130. ;    1       <>
  131. ;    3       <
  132. ;    3       <=
  133. ;    6       >=
  134. ;    5       !
  135. ;    7       &&
  136. ;    3       ||
  137. ;    2       Len(
  138. ;    5       Mid()
  139. ;    1       Trim()
  140. ;    1       U_Name()
  141. ;    2       U_Bdl()
  142. ;    1       U_Bul()
  143. ;    6       Replace()
  144. ;    1       String()
  145. ;    1       PCBDat()
  146. ;    1       PPEPath()
  147. ;    2       PcbNode()
  148. ;    1       ReadLine()
  149. ;    1       UN_Name()
  150. ;    1       UN_City()
  151. ;    1       FileInf()
  152. ;
  153. ;------------------------------------------------------------------------------
  154. ;
  155. ; Analysis flags : Rd
  156. ;
  157. ; R - Read user ■ 5
  158. ;     User records are read, this may signify that someone wants to get
  159. ;     various informations about a user (for example his password), but
  160. ;     this may also be normal for a program accessing user records (for
  161. ;     example a User Editor)
  162. ;     ■ Search for : GETALTUSER
  163. ;
  164. ; d - Access PCBOARD.DAT ■ 2
  165. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  166. ;     for many PPE so they can find various informations on the system
  167. ;     (system paths, max number of lines in messages, ...) but it may also
  168. ;     be a way to gather vital informations.
  169. ;     ■ Search for : PCBDAT()
  170. ;
  171. ;------------------------------------------------------------------------------
  172. ;
  173. ; Postprocessing report
  174. ;
  175. ;    3       For/Next
  176. ;    0       While/EndWhile
  177. ;    2       If/Then or If/Then/Else
  178. ;    0       Select Case
  179. ;
  180. ;------------------------------------------------------------------------------
  181. ;                 AEGiS Corp - Break the routines, code against the machines!
  182. ;------------------------------------------------------------------------------
  183.