1: /
   2: /
   3: 
   4: / move, line
   5: 
   6: sct = 2
   7: / fortran vt0 interfaces
   8: 
   9: / erase screen
  10: 
  11: erase.: temp
  12:         .+2
  13:         jsr     pc,setfil
  14:         mov     f,r0
  15:         sys     write; erase; 2
  16:         jmp     retrn
  17: 
  18: /	move(x, y)
  19: /
  20: /	sets current x,y to arguments
  21: /
  22: 
  23: .globl  move.
  24: .globl  line.
  25: .globl  erase.
  26: .globl  frame.
  27: .globl  arc.
  28: .globl  circle.
  29: 
  30: .globl  temp
  31: .globl  retrn
  32: 
  33: frame.: temp
  34:         .+2
  35:         jsr     pc,setfil
  36:         mov     2(r3),r0
  37:         movb    2(r0),frame+1
  38:         mov     f,r0
  39:         sys     write; frame; 2
  40:         jmp     retrn
  41: 
  42: move.:  temp
  43:         .+2
  44:         jsr     pc,garg
  45:         mov     r0,x
  46:         mov     r1,y
  47:         jmp     retrn
  48: 
  49: /	line(x, y)
  50: /
  51: /	plot vector from current x,y
  52: /	to arguments, setting current
  53: /	x,y when done to arguments
  54: /
  55: 
  56: line.:  temp
  57:         .+2
  58:         jsr     pc,garg
  59:         mov     r0,x1
  60:         mov     r1,y1
  61:         movb    $3,command
  62:         mov     f,r0
  63:         sys     write; command; 9
  64:         mov     x1,x
  65:         mov     y1,y
  66:         jmp     retrn
  67: 
  68: / call circle(x, y, radius)
  69: / circle's center at x, y
  70: 
  71: circle.:temp
  72:         .+2
  73:         jsr     pc,garg
  74:         mov     r0,x
  75:         mov     r1,y
  76:         mov     6(r3),r0
  77:         mov     2(r0),r0
  78:         ash     $2,r0
  79:         mov     r0,x1
  80:         movb    $5,command
  81:         mov     f,r0
  82:         sys     write; command; 7
  83:         jmp     retrn
  84: 
  85: / call arc(xo, yo, x1, y1, x2, y2)
  86: / plot circle arc: origin xo,yo;
  87: / counterclockwise from x1,y1 to x2,y2
  88: 
  89: arc.:   temp
  90:         .+2
  91:         jsr     pc,garg
  92:         mov     r0,x
  93:         mov     r1,y
  94:         cmp     (r3)+,(r3)+
  95:         jsr     pc,garg
  96:         mov     r0,x1
  97:         mov     r1,y1
  98:         cmp     (r3)+,(r3)+
  99:         jsr     pc,garg
 100:         mov     r0,x2
 101:         mov     r1,y2
 102:         movb    $6,command
 103:         mov     f,r0
 104:         sys     write; command; 13.
 105:         sub     $8.,r3
 106:         jmp     retrn
 107: 
 108: setfil:
 109:         tst     f
 110:         bne     1f
 111:         sys     creat; vt; 17
 112:         bes     9f
 113:         mov     r0,f
 114: 1:
 115:         rts     pc
 116: 
 117: garg:
 118:         jsr     pc,setfil
 119:         mov     2(r3),r0
 120:         mov     2(r0),r0
 121:         mov     4(r3),r1
 122:         mov     2(r1),r1
 123:         ash     $2,r0
 124:         ash     $2,r1
 125:         sub     $2048.,r0
 126:         sub     $2048.,r1
 127:         rts     pc
 128: 9:
 129:         mov     $1,r0
 130:         sys     write; bmes; emes-bmes
 131:         sys     exit
 132: 
 133: frame:  .byte   4,0
 134: erase:  .byte   1,1
 135:         .byte   0
 136: vt:     </dev/vt0\0>
 137: bmes:   <VT unwritable.\n>; emes:
 138:         .bss
 139:         .=.+1
 140: command:.=.+1
 141: x:      .=.+2
 142: y:      .=.+2
 143: x1:     .=.+2
 144: y1:     .=.+2
 145: x2:     .=.+2
 146: y2:     .=.+2
 147: f:      .=.+2

Defined functions

arc. declared in line 27; defined in line 89; used 1 times
  • in line 27
bmes defined in line 137; used 2 times
  • in line 130(2)
circle. declared in line 28; defined in line 71; used 1 times
  • in line 28
emes defined in line 137; used 1 times
erase defined in line 134; used 1 times
  • in line 15
erase. declared in line 25; defined in line 11; used 1 times
  • in line 25
frame defined in line 133; used 2 times
frame. declared in line 26; defined in line 33; used 1 times
  • in line 26
garg defined in line 117; used 6 times
line. declared in line 24; defined in line 56; used 1 times
  • in line 24
move. declared in line 23; defined in line 42; used 1 times
  • in line 23
sct defined in line 6; never used
setfil defined in line 108; used 3 times
vt defined in line 136; used 1 times

Defined variables

command defined in line 140; used 6 times
f defined in line 147; used 7 times
x defined in line 141; used 4 times
x1 defined in line 143; used 4 times
x2 defined in line 145; used 1 times
y defined in line 142; used 4 times
y1 defined in line 144; used 3 times
y2 defined in line 146; used 1 times
Last modified: 1975-07-17
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 380
Valid CSS Valid XHTML 1.0 Strict