; Copyright (c) 1981 Harvard-Radcliffe Student Timesharing System ; Science Center, Harvard University .page .sbttl character property table-- forrest howard, pdp-11 lisp ;the purpose of this section is to provide the ;character table that is used by patom, the ;the system lexer, and the macro issep,isbrk,isnum,...when the ;system is used for am110 instruction ;the following symbols will be re-defined by the system lex ;assembly code if the files are all assembled together. ;otherwise, they are set to constants that will be picked ;up by the macro expansions of is... . .if ndf,vsep vsep=4 vdq=0 vnum=10 vsq=0 vperd=0 vlpara!brk=0 vrpara!brk=0 vlbkta=0 vrbkta=0 veof=0 vchar=2 verr=0 .endc ;note that the format of the bytes in the system version ;is like so ; axxxxxxb ; with a being 1 if a break of seperator character ; b being 1 if on printout the atom containing it ; is to be double-quoted ; xxxxx is the offset from seploop to which control ; is transfered when the character is encountered first in ; a lexeme ; c is 1 if the character is a valid numeric character(0-9) ;in the am110 version ; a000srcb ; ; with s 1 if a seperator character ; with r 1 if a "normal" character(i.e. not brk,number,...) ; and rest as above ;if this is a data-space only lisp, and onepage is on, and ;fpsim is on, we want to force ctable into the onepage psect. .if eq,multiseg .if ne,fpsim .if ne,onepage .psect onepage .iff .psect shbydat con .endc .iff .psect shbydat con .endc .iff .psect shbydat con .endc dqo=1 brk=200 ctable: .rept 11 .byte dqo!verr!brk .endr ;above took care of thru backspace .rept 15-10 .byte dqo!brk!vsep .endr ;and characters such as cr,lf .rept 32-15 .byte dqo!verr!brk .endr ;miscelaneous characters .byte dqo!vsep!brk .rept 37-33 .byte dqo!verr!brk .endr .byte dqo!vsep!brk ;this corresponds to space .byte vchar ;for ! .byte dqo!vdq ;for " .rept 46-42 .byte vchar .endr .byte dqo!vsq!brk ;for ' .byte dqo!vlpara!brk .byte dqo!vrpara!brk .rept 54-51 .byte vchar .endr .byte vnum ;for - this is a strange token, since ; -123 part of number ; - atom alone ; -??? normal ; ab-c normal .byte dqo!vperd!brk ;for . .byte vchar ;for / .rept 71-57 .byte vnum .endr ;do the integers .rept 132-71 .byte vchar .endr ;and the characters .byte dqo!vlbkta!brk ;the bracket .byte vchar .byte dqo!vrbkta!brk ;and the other .rept 177-135 .byte vchar .endr ;and now lower case stuff .byte dqo!veof!brk ;end of file .byte 0 ;for even length's sake