home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / b / krterm.min < prev    next >
Text File  |  2020-01-01  |  2KB  |  138 lines

  1.     .title    KRTERM.MIN  Packet I/O via TT
  2.     .ident    "V03.62"
  3.  
  4. ; /62/    31-May-93  Billy Youdelman
  5.  
  6. ;    Copyright 1984 Change Software, Inc.
  7.  
  8.     .include "IN:KRTMAC.MIN"
  9.     .iif ndf  KRTINC  .error    <; .include for IN:KRTMAC.MIN failed>
  10.  
  11.     .mcall    .GVAL    ,.RCTRLO,.TTINR    ,.TTYOUT
  12.  
  13.     $TCFIG    =    424
  14.         CRLF$    =    2
  15.         PAGE$    =    200
  16.  
  17.  
  18.     .psect    $code
  19.     .sbttl    Initialize the terminal
  20.  
  21. ttyini::save    <r1,r2>
  22.     .gval    #rtwork,#$tcfig
  23.     cmp    rt11ver    ,#5
  24.     bge    71$
  25.     bic    #crlf$    ,(r0)
  26.     br    77$
  27. 71$:    mov    r0    ,r1
  28.     MOV    #rtwork    ,R0
  29.     MOV    #28.*^o400+1.,@R0
  30.     MOV    r1    ,2.(R0)
  31.     EMT    ^o375
  32.     mov    r0    ,r2
  33.     bic    #crlf$    ,r2
  34.     MOV    #rtwork    ,R0
  35.     MOV    #28.*^o400+3,@R0
  36.     MOV    r1    ,2.(R0)
  37.     MOV    r2    ,4.(R0)
  38.     EMT    ^o375
  39. 77$:    .rctrlo
  40.     mov    #1000    ,r2
  41. 10$:    calls    binrea,<#-1>
  42.     dec    r2
  43.     beq    20$
  44.     tst    r0
  45.     beq    10$
  46. 20$:    clr    r0
  47.     unsave    <r2,r1>
  48.     return
  49.  
  50.  
  51.     .sbttl    Binary read
  52.  
  53. xbinre::
  54. binrea::cmp    (r5)    ,#-1
  55.     bne    20$
  56.     .ttinr
  57.     bcs    80$
  58.     mov    r0    ,r1
  59.     clr    r0
  60.     br    100$
  61.  
  62. 20$:    mov    (r5)    ,r1
  63.     mul    #60.    ,r1
  64.  
  65. 30$:    .ttinr
  66.     bcs    40$
  67.     mov    r0    ,r1
  68.     clr    r0
  69.     br    100$
  70.  
  71. 40$:    dec    r1
  72.     beq    80$
  73.     calls    suspend    ,<#0,#1>
  74.     br    30$
  75.  
  76. 80$:    mov    #er$nin    ,r0
  77.     clr    r1
  78. 100$:    return
  79.  
  80.  
  81.     .sbttl    Binary write
  82.  
  83. binwri::save    <r1,r2>
  84.     mov    @r5    ,r1
  85.     mov    2(r5)    ,r2
  86.     beq    100$
  87. 10$:    .ttyou    (r1)+
  88.     sob    r2    ,10$
  89. 100$:    clr    r0
  90.     unsave    <r2,r1>
  91.     return
  92.  
  93.  
  94.     .sbttl    Reset an XOFF
  95.  
  96. ttxon::    save    <r1,r2>
  97.     .gval    #rtwork,#$tcfig
  98.     cmp    rt11ver    ,#5
  99.     bge    71$
  100.     mov    r0    ,r2
  101.     bic    #page$    ,(r2)
  102.     .rctrlo
  103.     bis    #page$    ,(r2)
  104.     br    77$
  105. 71$:    mov    r0    ,r1
  106.     MOV    #rtwork    ,R0
  107.     MOV    #28.*^o400+1.,@R0
  108.     MOV    r1    ,2.(R0)
  109.     EMT    ^o375
  110.     mov    r0    ,r2
  111.     bic    #page$    ,r2
  112.     MOV    #rtwork    ,R0
  113.     MOV    #28.*^o400+3,@R0
  114.     MOV    r1    ,2.(R0)
  115.     MOV    r2    ,4.(R0)
  116.     EMT    ^o375
  117.     .rctrlo
  118.     bis    #page$    ,r2
  119.     MOV    #rtwork    ,R0
  120.     MOV    #28.*^o400+3,@R0
  121.     MOV    r1    ,2.(R0)
  122.     MOV    r2    ,4.(R0)
  123.     EMT    ^o375
  124. 77$:    unsave    <r2,r1>
  125.     .rctrlo
  126.     .ttyout    #xon
  127.     clr    r0
  128.     return
  129.  
  130.  
  131.     .sbttl    Hose the terminal port, cancel type_ahead
  132.  
  133. hose::
  134. cantyp::call    ttxon
  135.     jmp    clrcns
  136.  
  137.     .end
  138.