1
0
mirror of https://github.com/PDP-10/its.git synced 2026-01-13 23:36:30 +00:00

VERSA: Fix XGP intercharacter and interline spacing.

Parse ;VSP directives, and insert spaces between characters and lines as
appropriate. TJ6 makes use of both of these features.
This commit is contained in:
Adam Sampson 2018-05-26 00:12:02 +01:00 committed by Adam Sampson
parent e82ebb56d4
commit abfd92fa59

View File

@ -4297,7 +4297,6 @@ xgp.wi==200.*17./2 ;8.5 inches wide
.scalar basel ;height of line above baseline
.scalar chrrct ;max baseline distance.
.scalar movdwn ;amount to move down from xgp.y after line is done
.scalar rvsp ;line spacing
.vector rescan(100.) ;500 characters worth
.scalar outena,count,ptr,eofp,eopp
@ -4328,12 +4327,14 @@ xgp50: call mapper"finish ;"no longer need the file
call plot"finish ;"finished plotting (for this file)
return ;and th.th.th.that's all folks
.scalar nskip,ksetok,lftmar,topmar
.scalar nskip,ksetok,lftmar,topmar,vsp
scrimp: setzm nskip
setzm ksetok
movei a,128
movem a,topmar
movem a,lftmar
movei a,6
movem a,vsp
scrmor: call mapper"nxtbyt ;"
jrst scrfin
cain x,"; ;"
@ -4371,6 +4372,8 @@ scrcom: call scrget ;get the command
jrst scrlft
camn a,['topmar]
jrst scrtop
camn a,['vsp]
jrst scrvsp
jrst scrloo ;ignore rest
scrget: setzi a,
@ -4409,6 +4412,10 @@ scrtop: call scrnum
movem a,topmar
jrst scrloo
scrvsp: call scrnum
movem a,vsp
jrst scrloo
.vector ksetbf(50.),ksetfi(4)
.scalar ksetnm,ksetmr
scrkset:
@ -4514,6 +4521,7 @@ doline: setzm outena ;disable output
movem x,ptr
call dolin1
setom outena
setzm seper
move x,[440700,,rescan]
movem x,ptr
call dolin1
@ -4553,7 +4561,9 @@ normal: skipn outena
aos (p)
return]
movei z,(x)
movs x,xgp.x
move x,xgp.x
add x,seper
movsi x,(x)
move y,xgp.y
sub y,basel
movsi y,(y)
@ -4575,6 +4585,7 @@ linfin: skipn outena
jrst [ ;if output not enabled
move y,scanln ;get top scan line
add y,chrrct
add y,vsp
movem y,xgp.y
sub y,movdwn
movem y,scanln
@ -4617,7 +4628,7 @@ cl.es1: 40,,setcol ;set column (column[2])
45,,hedtxt ;heading text (length, text[length]
46,,stundr ;start underline
47,,undend ;end underscore (y-offset)
50,,intrsp ;interline spacing (spacing)
50,,intrsp ;intercharacter spacing (spacing)
51,,undenw ;end underscore (thickness, y-offset)
52,,bsladr ;base line adjust (offset{rel})
53,,underr ;underscore (y-off{rel}, length[2])
@ -4683,9 +4694,7 @@ undend: movei a,2
linspc: call xarg1
return
movem x,rvsp
addm x,xgp.y
setzm seper
return
.value foo