home *** CD-ROM | disk | FTP | other *** search
/ minnie.tuhs.org / unixen.tar / unixen / PDP-11 / Trees / V6 / usr / source / fort / rt / rb.s < prev    next >
Encoding:
Text File  |  1975-07-17  |  529 b   |  50 lines

  1. /
  2. /
  3.  
  4. / rb -- funct/subr stuff
  5.  
  6. .globl    call
  7. .globl    callp
  8. .globl    retrn
  9. .globl    stsp
  10.  
  11. callp:
  12.     mov    (r4)+,r0
  13.     add    r3,r0
  14.     mov    (r0),r0
  15.     br    1f
  16.  
  17. call:
  18.     mov    (r4)+,r0
  19. 1:
  20.     mov    r3,-(sp)
  21.     mov    (r4)+,r3
  22.     mov    r4,-(sp)
  23.     mov    r0,r4
  24.     mov    (r4)+,-(sp)        / lv of funct
  25.     jmp    *(r4)+
  26.  
  27. retrn:
  28.     mov    r3,r0
  29.     mov    (sp)+,r1        / lv of funct
  30.     mov    (sp)+,r4
  31.     mov    (sp)+,r3
  32.     mov    (r0),sp
  33.     tst    (r4)+        / arg count
  34.     mov    (r4)+,r0        / return byte count
  35.     inc    r0
  36.     bic    $1,r0
  37.     add    r0,r1
  38. 1:
  39.     sub    $2,r0
  40.     blt    1f
  41.     mov    -(r1),-(sp)
  42.     br    1b
  43. 1:
  44.     jmp    *(r4)+
  45.  
  46. stsp:
  47.     mov    sp,*(r4)+
  48.     jmp    *(r4)+
  49.  
  50.