home *** CD-ROM | disk | FTP | other *** search
/ Falcon 030 Power 2 / F030_POWER2.iso / ST_STE / MAGS / STOSBTS2.ARJ / stosbts2.msa / T.LST < prev    next >
File List  |  1987-04-22  |  2KB  |  85 lines

  1. Spoke &H484,4
  2. File$="A:\DATA\top25pd.DAT"
  3. Dim Ls(3000)
  4. Open "i",#1,File$
  5. L%=Lof(#1)
  6. Close #1
  7. A$=""
  8. A$=Space$(L%)
  9. Bload File$,Varptr(A$)
  10. C=2
  11. Ls(1)=1
  12. For K=0 To L%
  13.   If Asc(Mid$(A$,K,1))=13 Then
  14.     Ls(C)=K
  15.     C=C+1
  16.   Endif
  17. Next K
  18. Bottom=C
  19. Rem SINGLE LINE TEXT SCROLLING ROUTINE BY ADAM MEDLEY 1991
  20. Page=1
  21. Cls
  22. Am=Ls(24)-Ls(1)
  23. Print Mid$(A$,Ls(1),Am)
  24. Do
  25.   Z=Inp(2)
  26.   If Z=208 Then
  27.     Gosub Down_line
  28.   Endif
  29.   If Z=200 Then
  30.     Gosub Up_line
  31.   Endif
  32.   If Z=56 Then
  33.     Gosub Up_page
  34.   Endif
  35.   If Z=50 Then
  36.     Gosub Down_page
  37.   Endif
  38. Loop
  39. Procedure Down_line
  40.   If Page<=Bottom-26 Then
  41.     Bmove Xbios(3)+(8*160),Xbios(3),(192*160)
  42.     Page=Page+1
  43.     Am=Ls(Page+24)-Ls(Page+23)
  44.     Print At(0,23);Space$(80)
  45.     Print At(0,23);Mid$(A$,Ls(Page+23),Am)
  46.   Endif
  47. Return
  48. Procedure Up_line
  49.   If Page>1
  50.     Bmove Xbios(3),Xbios(3)+(8*160),(184*160)
  51.     Page=Page-1
  52.     Am=Ls(Page+1)-Ls(Page)
  53.     Print At(1,1);Space$(80)
  54.     Print At(1,1);Mid$(A$,Ls(Page),Am)
  55.   Endif
  56. Return
  57. Procedure Up_page
  58.   If Page>24
  59.     Cls
  60.     Page=Page-24
  61.     Am=Ls(Page+24)-Ls(Page)
  62.     Print At(1,1);Mid$(A$,Ls(Page),Am)
  63.   Endif
  64.   If Page<24
  65.     Page=0
  66.     Cls
  67.     Am=Ls(Page+24)-Ls(Page)
  68.     Print At(1,1);Mid$(A$,Ls(Page),Am)
  69.   Endif
  70. Return
  71. Procedure Down_page
  72.   If Page<=Bottom-50
  73.     Cls
  74.     Page=Page+24
  75.     Am=Ls(Page+24)-Ls(Page)
  76.     Print At(1,1);Mid$(A$,Ls(Page),Am)
  77.   Endif
  78.   If Page>Bottom-50
  79.     Page=Bottom-26
  80.     Cls
  81.     Am=Ls(Page+24)-Ls(Page)
  82.     Print At(1,1);Mid$(A$,Ls(Page),Am)
  83.   Endif
  84. Return
  85.