home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / 451-475 / apd453 / dumbterm.amos / dumbterm.amosSourceCode
AMOS Source Code  |  1993-01-08  |  1KB  |  63 lines

  1. ' Dumb Terminal v0.2b      Code : Tex & Andrew Welsh 
  2. '
  3. Screen Open 0,640,256,8,Hires : Curs Off : Cls 0 : Colour 1,$FFF
  4. Wind Open 1,0,0,79,25,2 : Cls 0
  5. Pen 1 : Paper 0
  6. Border 1,0,2
  7. Screen Open 1,640,40,2,Hires : Curs Off : Cls 0 : Colour 1,$A28
  8. Screen Display 1,130,250,,
  9. Every 20 Proc _TIME$
  10. Serial Open 0,0
  11. Serial Speed 0,2400
  12. Serial Bits 0,8,1
  13. Serial Parity 0,-1
  14. Do 
  15. If S=83
  16.      A$=Chr$(27)+Chr$(27)
  17. End If 
  18.    A$=Inkey$ : S=Scancode
  19. Exit If Mouse Key=1
  20. If S=83
  21.      A$=Chr$(27)+Chr$(27)
  22. End If 
  23.    If A$<>""
  24.       Exit If S=81
  25.       If S=80
  26.          A$="ATDP047360602"+Chr$(13)
  27.       End If 
  28.       Serial Send 0,A$
  29.       Wait Len(A$)
  30.    End If 
  31.    R=Serial Get(0)
  32.    If R=13 : Print : End If 
  33.    If R>31 : Print Chr$(R); : End If 
  34. Loop 
  35. Serial Close 
  36. Procedure _TIME$
  37.    '
  38.    ' Call DOS function
  39.    T$=Space$(12)
  40.    Dreg(1)=Varptr(T$)
  41.    RIEN=Doscall(-192)
  42.    MN=Leek(Varptr(T$)+4)
  43.    SEC=Leek(Varptr(T$)+8)
  44.    '
  45.    ' Minutes calculation
  46.    H=MN/60 : H$=Mid$(Str$(H),2) : If Len(H$)<2 : H$="0"+H$ : End If 
  47.    M=MN mod 60 : M$=Mid$(Str$(M),2) : If Len(M$)<2 : M$="0"+M$ : End If 
  48.    '
  49.    ' Seconds calculation  
  50.    S=SEC/50 : S$=Mid$(Str$(S),2) : If Len(S$)<2 : S$="0"+S$ : End If 
  51.    '
  52.    ' Final string 
  53.    TIME$=H$+":"+M$+":"+S$
  54.    '
  55. Screen 1
  56. Home 
  57. X$=Border$(TIME$,2)
  58. Cdown 
  59. Centre X$
  60. Wait Vbl 
  61. Screen 0
  62. Every On 
  63. End Proc[TIME$]