//
// Definitions for BCPL-coded keyboard package
// last edited November 2, 1981 by Bill van Melle
//
// Copyright Xerox Corporation 1979, 1980, 1981


manifest NoOfKeys = 72	// 64 keyboard keys, 8 buttons
structure InputDatumMap [ code↑0,(NoOfKeys-1) byte ]
 
structure UserState [	keys	word 5
	]
manifest USsize = 5

manifest [
	UpStroke = #10	// must be #10
	DownStroke = 0	// must be 0
	]

manifest [
	KeyboardLevel	= 13
	buttons		= #177030
	Keys		= #177034
	cursorXmax	= 606-16
	cursorYmax	= 808-16
  ]

// the input keys use the standard ASCII encoding
// the mouse and keyset use #200 and above
//
manifest xxx = 0
manifest [
	ctrl	= xxx
	hs1	= #207
	hs2	= #206
	hs3	= #205
	hs4	= #204
	hs5	= #203
	mb1	= #202
	mb2	= #201
	mb3	= #200
	esc	=  #33
	tab	=  #11
	lf	=  #12
	del	= #177
	bs	=   #1
	spr1	= #301
	rtn	=  #15
	spr2	= #302
	spr3	= #303
	space	=  #40
	lshft	= xxx
	rshft	= xxx
	lock	= xxx
	CTRL	= ctrl
	HS1	= hs1
	HS2	= hs2
	HS3	= hs3
	HS4	= hs4
	HS5	= hs5
	MB1	= mb1
	MB2	= mb2
	MB3	= mb3
	ESC	=  #33
	TAB	=  #11
	LF	=  #12
	DEL	= #177
	BS	=   #1
	SPR1	= spr1
	RTN	=  #15
	SPR2	= spr2
	SPR3	= spr3
	SPACE	=  #40
	LSHFT	= lshft
	RSHFT	= rshft
	LOCK	= lock
	S	= #400
]