mirror of
https://github.com/SEPPDROID/Digital-Research-Source-Code.git
synced 2025-10-26 09:54:20 +00:00
Upload
Digital Research
This commit is contained in:
@@ -0,0 +1,116 @@
|
||||
;************************************************
|
||||
;*
|
||||
;* Virtual Console Control Block Definition
|
||||
;*
|
||||
;* +---------+---------+---------+---------+
|
||||
;* 00 | attach | queue |
|
||||
;* +---------+---------+---------+---------+
|
||||
;* 04 | flag | startcol| column | nchar |
|
||||
;* +---------+---------+---------+---------+
|
||||
;* 08 | mimic | msource | pc | vc |
|
||||
;* +---------+---------+---------+---------+
|
||||
;* 0C | btmp | rsvd | state |
|
||||
;* +---------+---------+---------+---------+
|
||||
;* 10 | maxbufsiz | vinq |
|
||||
;* +---------+---------+---------+---------+
|
||||
;* 14 | voutq | vcmxq |
|
||||
;* +---------+---------+---------+---------+
|
||||
;* 18 | qpbflags| qpbfill | qpbqaddr |
|
||||
;* +---------+---------+---------+---------+
|
||||
;* 1C | qpbnmsgs | qpbbuffptr |
|
||||
;* +---------+---------+---------+---------+
|
||||
;* 20 | qbuff | cosleep |
|
||||
;* +---------+---------+---------+---------+
|
||||
;* 24 | usleep | vsleep |
|
||||
;* +---------+---------+---------+---------+
|
||||
;* 28 | Reserved |
|
||||
;* +---------+---------+---------+---------+
|
||||
;*
|
||||
;*
|
||||
;*
|
||||
;* attach - current owner of device
|
||||
;* if 0, no owner
|
||||
;* if 0ffffh, a mimic device
|
||||
;* queue - linked list of PDs waiting to attach
|
||||
;* flag - run-time flags
|
||||
;* startcol- used for line editing
|
||||
;* column - used for line editing
|
||||
;* nchar - 1 character read ahead for CTRL chars.
|
||||
;* mimic - cio dev that mimics us.
|
||||
;* 0ffh means no mimic device
|
||||
;* msource - if attach = 0ffffh, we are a
|
||||
;* mimic device and msource is the
|
||||
;* device we are mimicing.
|
||||
;* pc - physical console number
|
||||
;* vc - virtual console number
|
||||
;* btmp - temporary line editing variable
|
||||
;* rsvd - unused
|
||||
;* state - current state of virtual console
|
||||
;* maxbufsiz - maximum file size for buffered mode
|
||||
;* vinq - address of QPB for this virtual console's
|
||||
;* input. written by PIN, created by the VOUT
|
||||
;* process associated with this virtual console
|
||||
;* voutq - address of QPB for this virtual console's
|
||||
|
||||
;* output. written and created by the assoc. VOUT
|
||||
;* vcmxq - MX queue for changing of virtual console state
|
||||
;* qpbflags- the 1st 8 bytes of a Queue Parameter Block, for
|
||||
;* queue reads and writes, used only by reentrant
|
||||
;* intercept code
|
||||
;* qbuff - buffer for queue writes
|
||||
;* cosleep - temporary list for processes waiting for XIOS console output
|
||||
;* usleep - user process sleeps here
|
||||
;* vsleep - vout process sleeps here
|
||||
;*
|
||||
c_attach equ word ptr 0
|
||||
c_queue equ word ptr c_attach + word
|
||||
c_flag equ byte ptr c_queue + word
|
||||
c_strtcol equ byte ptr c_flag + byte
|
||||
c_column equ byte ptr c_strtcol + byte
|
||||
c_nchar equ byte ptr c_column + byte
|
||||
c_mimic equ byte ptr c_nchar + byte
|
||||
c_msource equ byte ptr c_mimic + byte
|
||||
c_pc equ byte ptr c_msource + byte
|
||||
c_vc equ byte ptr c_pc + byte
|
||||
c_btmp equ byte ptr c_vc + byte
|
||||
c_rsvd equ byte ptr c_btmp + byte
|
||||
c_state equ word ptr c_rsvd + byte
|
||||
c_maxbufsiz equ word ptr c_state + word
|
||||
c_vinq equ word ptr c_maxbufsiz + word
|
||||
c_voutq equ word ptr c_vinq + word
|
||||
c_vcmxq equ word ptr c_voutq + word
|
||||
c_qpbflags equ byte ptr c_vcmxq + word
|
||||
c_qpbfill equ byte ptr c_qpbflags + byte
|
||||
c_qpbqaddr equ word ptr c_qpbfill + byte
|
||||
c_qpbnmsgs equ word ptr c_qpbqaddr + word
|
||||
c_qpbbuffptr equ word ptr c_qpbnmsgs + word
|
||||
c_qbuff equ word ptr c_qpbbuffptr + word
|
||||
c_cosleep equ word ptr c_qbuff + word
|
||||
c_usleep equ word ptr c_cosleep + word
|
||||
c_vsleep equ word ptr c_usleep + word
|
||||
ccblen equ c_vsleep + word + 4
|
||||
|
||||
; Flags for c_flag
|
||||
|
||||
cf_listcp equ 001h ;control P toggle
|
||||
cf_compc equ 002h ;suppress output
|
||||
cf_switchs equ 004h ;XIOS supports switch screening
|
||||
cf_conout equ 008h ;ownership flag of console output
|
||||
cf_vout equ 010h ;process writing to VOUTQ
|
||||
cf_bufp equ 020h ;just sent a char to a VOUTQ, don't
|
||||
;echo to list if csm_ctrlP is set.
|
||||
;CCB state flags
|
||||
|
||||
csm_buffered equ 00001h
|
||||
csm_background equ 00002h
|
||||
csm_purging equ 00004h
|
||||
csm_noswitch equ 00008h
|
||||
csm_suspend equ 00010h
|
||||
csm_abort equ 00020h
|
||||
csm_filefull equ 00040h
|
||||
csm_ctrlS equ 00080h
|
||||
csm_ctrlO equ 00100h
|
||||
csm_ctrlP equ 00200h
|
||||
|
||||
;LCB - list control block is first ten bytes of VCCB
|
||||
lcblen equ 10
|
||||
Reference in New Issue
Block a user