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:
parent
e82ebb56d4
commit
abfd92fa59
@ -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
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user