view defs/scfdefs @ 1751:68405e756277

Properly inc'ed revision, more comments and symbols put into code for portability, added extra '?' for unknown language to be in line with original ident.
author boisy
date Mon, 07 Mar 2005 11:42:05 +0000
parents 338690d16f53
children e396d4f24b27
line wrap: on
line source

         IFNE  SCFDEFS-1

SCFDEFS  set   1

********************************************************************
* SCFDefs - Sequential Character File Manager Definitions
*
* $Id$
*
* SCF stands for 'Sequential Character Filemanager' and is a package of subroutines
* that define the logical structure of a serial device.
*
* The data structures in this file give SCF its 'personality' and are used
* by SCF itself, as well as applications that will require disk I/O.
*
* Edt/Rev  YYYY/MM/DD  Modified by
* Comment
* ------------------------------------------------------------------
*          1984/01/11  YO
* Added V.KANJI, V.KBUF, V.MODADR for new kanji input process.
*
*          1985/04/20  Mark G. Hawkins
* Added V.PDLHd Path Descriptor List Head.
*
*          1985/04/21  Mark G. Hawkins
* Added PD.PLP and PD.PST for modem handling.
*
*          1987/06/23  Kevin K. Darling
* Updated with Dev Desc info.
*
*          1998/10/03  Boisy G. Pitre
* Consolidated L1/L2 scfdefs.
*
*          2003/01/21  Boisy G. Pitre
* Added symbolics for enhanced SCF line editing.
*
*          2003/06/02  Boisy G. Pitre
* Updated comments for clarity.
*
*          2004/05/17  Boisy G. Pitre
* Added higher baud rates.

         nam   SCFDefs
         ttl   Sequential File Manager Definitions


         pag
*******************************
* SCF Device Descriptor Offsets
*
* These definitions are for SCF device descriptors.

         org   M$DTyp
IT.DVC   rmb   1          Device type (DT.SCF)
IT.UPC   rmb   1          Uppercase flag
IT.BSO   rmb   1          Backspace behavior
IT.DLO   rmb   1          Delete behavior
IT.EKO   rmb   1          Echo flag
IT.ALF   rmb   1          Auto linefeed flag
IT.NUL   rmb   1          End-of-line null count
IT.PAU   rmb   1          Page pause flag
IT.PAG   rmb   1          Number of lines per page
IT.BSP   rmb   1          Backspace character
IT.DEL   rmb   1          Delete-line character
IT.EOR   rmb   1          End-of-record character
IT.EOF   rmb   1          End-of-file character
IT.RPR   rmb   1          Reprint-line character
IT.DUP   rmb   1          Duplicate-last-line character
IT.PSC   rmb   1          Pause character
IT.INT   rmb   1          Interrupt character
IT.QUT   rmb   1          Quit character
IT.BSE   rmb   1          Backspace echo character
IT.OVF   rmb   1          Bell character
IT.PAR   rmb   1          Parity
IT.BAU   rmb   1          Baud rate
IT.D2P   rmb   2          Attached device name string offset
IT.XON   rmb   1          X-ON character
IT.XOFF  rmb   1          X-OFF character
IT.COL   rmb   1          Number of columns for display
IT.ROW   rmb   1          Number of rows for display
IT.XTYP  rmb   1          Extended type (added by BRI)

         IFGT  Level-1
* Window Descriptor Additions
* For CoCo window, where IT.PAR = $80
         org   IT.ROW+1
IT.WND   rmb   1          Window number (matches device name) ($2E)
IT.VAL   rmb   1          Use defaults on Init (0=no, 1=yes)
IT.STY   rmb   1          Screen type default
IT.CPX   rmb   1          Column start default
IT.CPY   rmb   1          Row start default
IT.FGC   rmb   1          Foreground color default
IT.BGC   rmb   1          Background color default
IT.BDC   rmb   1          Border color default
         ENDC


         pag
********************
* SCF Static Storage
*
* SCF devices must reserve this space for SCF
*
         org   V.USER
V.TYPE   rmb   1          Device type or parity
V.LINE   rmb   1          Lines left until end of page
V.PAUS   rmb   1          Immediate Pause request
V.DEV2   rmb   2          Attached device's static
V.INTR   rmb   1          Interrupt char
V.QUIT   rmb   1          Quit char
V.PCHR   rmb   1          Pause char
V.ERR    rmb   1          Accumulated errors
V.XON    rmb   1          X-On char
V.XOFF   rmb   1          X-Off char
V.KANJI  rmb   1          Kanji mode flag
V.KBUF   rmb   2          Kana - Kanji convert routine work address
V.MODADR rmb   2          Kana - Kanji convert module address
V.PDLHd  rmb   2          Open path descriptor list head pointer
V.RSV    rmb   5          Reserve bytes for future expansion
V.SCF    equ   .          Total SCF manager static overhead


         pag
***********************
* Character Definitions
*
C$NULL   set   0          Null char
C$RPET   set   $01        (CTRL-A - SOH) Repeat last input line
C$INTR   set   $03        (CTRL-C - ETX) Keyboard interrupt
C$RPRT   set   $04        (CTRL-D - EOT) Reprint current input line
C$QUIT   set   $05        (CTRL-E - ENQ) Keyboard Abort
C$BELL   set   $07        (CTRL-G - BEL) Line overflow warning
C$BSP    set   $08        (CTRL-H - BS ) Back space
C$RARR   set   $09        Right Arrow
C$EL     set   $05        Erase Line
C$LF     set   $0A        Line feed
C$HOME   set   $0B        Home position Code
C$Clsgr  set   $15        Graphic screen clear (use FM-11)
C$Clsall set   $16        Graphic & character clear (use FM-11)
C$CR     set   $0D        Carriage return
C$FORM   set   $0C        (CTRL-L - FF ) Form Feed ... screen clear
C$SI     set   $0F        Shift IN Code
C$SO     set   $0E        Shift OUT Code
C$DELETE set   $10        Delete char (for SCF enhanced line editing)
C$XON    set   $11        (CTRL-Q - DC1) Transmit Enable
C$INSERT set   C$XON      Insert char (for SCF enhanced line editing)
C$XOFF   set   $13        (CTRL-S - DC3) Transmit Disable
C$PLINE  set   C$XOFF     Print remaining line (for SCF enhanced line editing)
C$PAUS   set   $17        (CTRL-W - ETB) Pause character
C$DEL    set   $18        (CTRL-X - CAN) Delete line
C$SHRARR set   $19        Shift Right-Arrow
C$EOF    set   $1B        (CTRL-[ - ESC) END of file
C$RGT    set   $1C        Cursor right
C$LFT    set   $1D        Cursor left
C$UP     set   $1E        Cursor up
C$DWN    set   $1F        Cursor down
C$SPAC   set   $20        Space
C$PERD   set   '.
C$COMA   set   ',


         pag
*********************************************
* Sequential Character Path Descriptor Format
*
* A path descriptor is created for every new path that is open
* via the I$Open system call (processed by IOMan).  Process
* descriptors track state information of a path.
*
         org   PD.FST
PD.DV2   rmb   2          Output device table pointer
PD.RAW   rmb   1          Read/Write or ReadLn/WritLn mode
PD.MAX   rmb   2          ReadLn high byte count
PD.MIN   rmb   1          Devices are "mine" if clear
PD.STS   rmb   2          Status routine module addr
PD.STM   rmb   2          Reserved for status routine
         org   PD.OPT
         rmb   1          Device type
PD.UPC   rmb   1          Case (0=both, 1=upper only)
PD.BSO   rmb   1          Backspace (0=BSE, 1=BSE,SP,BSE)
PD.DLO   rmb   1          Delete (0=BSE over line, 1=CRLF)
PD.EKO   rmb   1          Echo (0=No Echo)
PD.ALF   rmb   1          Auto linefeed (0=No auto LF)
PD.NUL   rmb   1          End of Line null count
PD.PAU   rmb   1          Page pause (0=No end of page pause)
PD.PAG   rmb   1          Lines per page
PD.BSP   rmb   1          Backspace character
PD.DEL   rmb   1          Delete Line character
PD.EOR   rmb   1          End of Record character (read only)
PD.EOF   rmb   1          End of File character
PD.RPR   rmb   1          Repront Line character
PD.DUP   rmb   1          Dup Last Line character
PD.PSC   rmb   1          Pause character
PD.INT   rmb   1          Keyboard interrupt character (CTRL-C)
PD.QUT   rmb   1          Keyboard quit character (CTRL-E)
PD.BSE   rmb   1          Backspace echo character
PD.OVF   rmb   1          Line overflow character (BELL)
PD.PAR   rmb   1          Parity code
PD.BAU   rmb   1          ACIA baud rate (Color Computer)
PD.D2P   rmb   2          Offset of DEV2 name
PD.XON   rmb   1          ACIA X-ON character
PD.XOFF  rmb   1          ACIA X-OFF character
OPTCNT   equ   .-PD.OPT   Total user settable options
PD.ERR   rmb   1          Most recent I/O error status
PD.TBL   rmb   2          Device table addr (copy)
PD.PLP   rmb   2          Path Descriptor List Pointer
PD.PST   rmb   1          Current path status


* PD.PST values Path Descriptor Status byte
*
PST.DCD  equ   %00000001  Set if DCD is lost on Serial port


* PD.PAR definitions
*
* Parity
PARNONE  equ   %00000000
PARODD   equ   %00100000
PAREVEN  equ   %01100000
PARMARK  equ   %10100000
PARSPACE equ   %11100000

* PD.BAU definitions
*
* Baud rate
B110     equ   %00000000
B300     equ   %00000001
B600     equ   %00000010
B1200    equ   %00000011
B2400    equ   %00000100
B4800    equ   %00000101
B9600    equ   %00000110
B19200   equ   %00000111
B38400   equ   %00001000
B57600   equ   %00001001
B115200  equ   %00001010
* Word size
WORD8    equ   %00000000
WORD7    equ   %00100000
* Stop bits
STOP1    equ   %00000000
STOP2    equ   %00010000

         ENDC