home *** CD-ROM | disk | FTP | other *** search
/ minnie.tuhs.org / unixen.tar / unixen / PDP-11 / Trees / V6 / usr / source / mdec / tpboot.s < prev    next >
Encoding:
Text File  |  1975-06-26  |  1016 b   |  93 lines

  1. / tape boot program to load and transfer
  2. / to a 'tp' entry
  3.  
  4. / entry is made by jsr pc,*$0
  5. / so return can be rts pc
  6. / jsr pc,(r5) is putc
  7. / jsr pc,2(r5) is getc
  8. / jsr pc,4(r5) is mesg
  9.  
  10. core = 24.
  11. .. = [core*2048.]-512.
  12. start:
  13.     mov    $..,sp
  14.     mov    sp,r1
  15.     cmp    pc,r1
  16.     bhis    2f
  17.     clr    r0
  18.     cmp    (r0),$407
  19.     bne    1f
  20.     mov    $20,r0
  21. 1:
  22.     mov    (r0)+,(r1)+
  23.     cmp    r1,$core*2048.
  24.     blo    1b
  25.     jmp    (sp)
  26.  
  27. 2:
  28.     mov    $trvect,r5
  29.     mov    $name,r4
  30.     jsr    pc,rew
  31.     mov    $'=,r0
  32.     jsr    pc,(r5)
  33. 2:
  34.     mov    r4,r1
  35. 1:
  36.     jsr    pc,getc
  37.     cmp    r0,$'\n
  38.     beq    1f
  39.     cmp    r0,$'@
  40.     beq    2b
  41.     movb    r0,(r1)+
  42.     cmp    r0,$'#
  43.     bne    1b
  44.     sub    $2,r1
  45.     cmp    r1,r4
  46.     blo    2b
  47.     br    1b
  48. 1:
  49.     clrb    (r1)
  50.     cmp    r1,r4
  51.     blos    start
  52.     mov    $1,tapa
  53.     mov    $-6144.,wc
  54.     jsr    pc,tread
  55.     clr    r1
  56. 1:
  57.     mov    r1,r2
  58.     mov    r4,r0
  59. 2:
  60.     cmpb    (r0)+,(r1)
  61.     bne    2f
  62.     tstb    (r1)+
  63.     bne    2b
  64.     br    1f
  65. 2:
  66.     mov    r2,r1
  67.     add    $64.,r1
  68.     cmp    r1,$12288.
  69.     blo    1b
  70.     jsr    pc,rew
  71.     br    start
  72. 1:
  73.     mov    44.(r2),tapa
  74.     mov    38.(r2),r0
  75.     inc    r0
  76.     clc
  77.     ror    r0
  78.     neg    r0
  79.     mov    r0,wc
  80.     clr    r0
  81. 1:
  82.     clr    (r0)+
  83.     cmp    r0,sp
  84.     blo    1b
  85.     jsr    pc,tread
  86.     jsr    pc,rew
  87.     br    callout
  88.  
  89. tapa:    0
  90. wc:    0
  91. ba:    0
  92. name    = ..-32.
  93.