Trailing-Edge
-
PDP-10 Archives
-
BB-K818A-BM_1981
-
sources/cycval.for
There are no other files named cycval.for in the archive.
C Copyright (C) 1980, by Digital Equipment Corporation, Maynard, Mass.
C operating-system-dependent switches
C Copyright (C) 1980, by Digital Equipment Corporation, Maynard, Mass.
C
C
C C O P Y R I G H T
C
C
C Copyright (C) 1980 by
C Digital Equipment Corporation, Maynard, Mass.
C
C
C This software is furnished under a license and may be used and
C copied only in accordance with the terms of such license and
C with the inclusion of the above copyright notice. This
C software or any other copies thereof may not be provided or
C otherwise made available to any other person. No title to and
C ownership of the software is hereby transferred.
C
C The information in this software is subject to change without
C notice and should not be construed as a commitment by Digital
C Equipment Corporation.
C
C DIGITAL assumes no responsibility for the use or reliability
C of its software on equipment that is not supplied by DIGITAL.
C
C define char byte
C 27+128
C w(riting) opt(ion)s come groups of 8:
C (1) replace(0)/erase(1)/complement(2)/overlay(3)
C (2) negative image 0/1
C (3) pattern < 256 bit mask (e.g. 192 = P11000000)
C >= 256 canned pattern * 256 (e.g. 512 = P2)
C if value >= 256, low 8 bits are ignored
C (4) pattern multiplier, different from 6(?)
C (5) shading flag, sim pattern+ >= 10 use char
C (6) if shading != 0 this is y reference val
C (7) pixel multiplier, 1 <= value <= 10
C (8) alternating 0/1
C (9) foreground intensity, 0 <= value <= 7
C (10) background intensity, 0 <= value <= 7
C
C offsets from gwopsp...
C Inktypes...
C Inkolors...
C Text options
C RSTSONLY define Maxgels 1000 # due to limited RAM on RSTS
C drawing primitive gels...
C attribute/marker/other gels...
C writing attribute gels : Woptbase + wopindex
C similarly topts...
C maximum # of characters in a filespec
C maximum # of characters in a command line
C max length of prompt buffer
C max number of characters in file record
C size of record buffers (Fbufsz + 1)
C include logdef
C ========================================================================
C ========================================================================
integer function cycval ( k , nm , nv , vsi , vsc , val , mval )
integer k , nv , vsi ( 1 ) , val ( 1 ) , mval
integer curdx , curdy , smalld , larged
integer scf , lorng , hirng
integer cname ( 75 )
common / keypad / curdx , curdy , smalld , larged , scf , lorng ,
*hirng , cname
integer nm ( 1 ) , vsc ( 1 )
integer inch , key , c , cycing
integer i
C string sep \:\
integer sep ( 3 )
data sep ( 1 ) , sep ( 2 ) , sep ( 3 ) / 58 , 32 , 0 /
cycing = 1
continue
i = 1
23000 if(.not.(i.le.nv))goto 23002
if(.not.( mval .eq. val ( i ) ))goto 23003
goto 23002
23003 continue
23001 i=i+1
goto 23000
23002 continue
if(.not.( i .gt. nv ))goto 23005
i = nv
23005 continue
continue
23007 if(.not.( cycing .ne. 0 ))goto 23008
call uprmt ( nm )
call uprmt ( sep )
call uprmt ( vsc ( vsi ( i ) ) )
key = inch ( c )
if(.not.( key .eq. 274 .or. key .eq. k ))goto 23009
i = i + 1
if(.not.( i .gt. nv ))goto 23011
i = 1
23011 continue
goto 23010
23009 continue
if(.not.( key .eq. 276 ))goto 23013
i = i - 1
if(.not.( i .lt. 1 ))goto 23015
i = nv
23015 continue
goto 23014
23013 continue
if(.not.( key .eq. 268 ))goto 23017
cycval = 1
cycing = 0
goto 23018
23017 continue
if(.not.( key .eq. 273 ))goto 23019
cycval = - 1
cycing = 0
goto 23020
23019 continue
cycval = 0
cycing = 0
23020 continue
23018 continue
23014 continue
23010 continue
goto 23007
23008 continue
if(.not.( cycval .gt. 0 ))goto 23021
mval = val ( i )
23021 continue
return
end