1: /
   2: /
   3: 
   4: / PDP-11 assembler pass 0
   5: 
   6:         jmp     start
   7: go:
   8:         jsr     pc,assem
   9:         movb    pof,r0
  10:         sys     write; outbuf; 512.
  11:         jes     wrterr
  12:         movb    pof,r0
  13:         sys     close
  14:         movb    fbfil,r0
  15:         sys     close
  16:         tstb    errflg
  17:         bne     aexit
  18:         jsr     r5,fcreat; a.tmp3
  19:         mov     r0,r1
  20:         mov     symend,0f
  21:         sub     $usymtab,0f
  22:         sys     indir; 9f
  23:         jes     wrterr
  24:         .data
  25: 9:      sys     write; usymtab; 0:..
  26:         .text
  27:         mov     r1,r0
  28:         sys     close
  29:         sys     exec; fpass2; 1f
  30:         mov     $fpass2,r0
  31:         jsr     r5,filerr; "?\n
  32: 
  33: aexit:
  34:         sys     unlink; a.tmp1
  35:         sys     unlink; a.tmp2
  36:         sys     unlink; a.tmp3
  37:         mov     $3,r0
  38:         sys     exit
  39: .data
  40: 1:
  41:         fpass2
  42:         globfl
  43:         outfl
  44: outfp:
  45:         outfile
  46:         a.tmp1
  47:         a.tmp2
  48:         a.tmp3
  49:         0
  50: fpass2:
  51:         </lib/as2\0>
  52: globfl:
  53: unglob=.+1
  54:         <-\0\0>
  55: outfl:
  56:         <-o\0>
  57: outfile:
  58:         <a.out\0>
  59: 3:
  60:         <-g\0>
  61:         .even
  62:         .text
  63: 
  64: filerr:
  65:         mov     r4,-(sp)
  66:         mov     r0,r4
  67:         mov     r4,0f
  68:         clr     r0
  69: 1:
  70:         tstb    (r4)+
  71:         beq     1f
  72:         inc     r0
  73:         br      1b
  74: 1:
  75:         mov     r0,1f
  76:         mov     $1,r0
  77:         sys     indir; 9f
  78:         .data
  79: 9:      sys     write; 0:0; 1:0
  80:         .text
  81:         mov     r5,0f
  82:         mov     $1,0f+2
  83:         tstb    1(r5)
  84:         beq     1f
  85:         mov     $2,0f+2
  86: 1:
  87:         mov     $1,r0
  88:         sys     indir; 9f
  89:         .data
  90: 9:      sys     write; 0:0; 1
  91:         .text
  92:         tst     (r5)+
  93:         mov     (sp)+,r4
  94:         rts     r5
  95: 
  96: fcreat:
  97:         mov     r4,-(sp)
  98:         mov     (r5)+,r4
  99:         mov     r4,0f
 100: 1:
 101:         sys     indir; 9f
 102:         .data
 103: 9:      sys     stat; 0:..; outbuf
 104:         .text
 105:         bec     2f
 106:         mov     r4,0f
 107:         sys     indir; 9f
 108:         .data
 109: 9:      sys     creat; 0:..; 444
 110:         .text
 111:         bes     2f
 112:         mov     (sp)+,r4
 113:         rts     r5
 114: 2:
 115:         incb    9.(r4)
 116:         cmpb    9.(r4),$'z
 117:         blos    1b
 118:         mov     r4,r0
 119:         jsr     r5,filerr; "?\n
 120:         mov     $3,r0
 121:         sys     exit
 122: 
 123: .=.+2
 124: wrterr:
 125:         mov     $1,r0
 126:         sys     write; 9f; 9f-8f
 127:         inc     errflg
 128:         jbr     aexit
 129: 9:      <as: Write error on temp file.\n>; 8:

Defined functions

aexit defined in line 33; used 2 times
fcreat defined in line 96; used 1 times
  • in line 18
filerr defined in line 64; used 2 times
go defined in line 7; never used
wrterr defined in line 124; used 2 times

Defined variables

fpass2 defined in line 50; used 3 times
globfl defined in line 52; used 1 times
  • in line 42
outfile defined in line 57; used 1 times
  • in line 45
outfl defined in line 55; used 1 times
  • in line 43
outfp defined in line 44; never used
unglob defined in line 53; never used
Last modified: 1979-01-10
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 541
Valid CSS Valid XHTML 1.0 Strict