diff defs/l52.defs @ 0:6641a883d6b0

Initial revision
author boisy
date Thu, 04 Apr 2002 16:34:12 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/defs/l52.defs	Thu Apr 04 16:34:12 2002 +0000
@@ -0,0 +1,108 @@
+
+* miscellaneous definitions
+HResMaxX equ   639        high resolution X limit
+HResMaxY equ   191        high resolution Y limit
+MousData equ   $0008      arbitrary choice for mouse data area ($0008-$000F)
+PcktSize equ   5          number of bytes in mouse data packet
+SyncData equ   %10000000  initial mouse data byte pattern
+SyncMask equ   %11111000  mask for initial mouse data byte pattern
+
+* 65C52 register definitions
+         org   0
+ISReg    rmb   1          IRQ Status (read only)
+IEReg    equ   ISReg      IRQ Enable (write only)
+CSReg    rmb   1          Control Status (read only)
+CFReg    equ   CSReg      Control/Format (write only)
+CDReg    rmb   1          Compare Data (write only, unused in this driver)
+TBReg    equ   CDReg      Transmit Break (write only)
+DataReg  rmb   1          receive/transmit Data (read Rx / write Tx)
+
+* IRQ Status/Enable bit definitions
+ISE.IRQ  equ   %10000000  IRQ occurred/enable
+ISE.TxE  equ   %01000000  Tx data register Empty
+ISE.CTS  equ   %00100000  CTS transition
+ISE.DCD  equ   %00010000  DCD transition
+ISE.DSR  equ   %00001000  DSR transition
+ISE.FOB  equ   %00000100  receive data Framing or Overrun error, or Break
+ISE.Par  equ   %00000010  Parity error in Rx data
+ISE.RxF  equ   %00000001  Rx data register Full
+
+ISE.Errs equ   ISE.FOB!ISE.Par IRQ Status error bits
+ISE.Flip equ   $00        all ISR bits active when set
+ISE.Mask equ   ISE.FOB!ISE.Par!ISE.RxF active IRQs
+
+* Control Status bit definitions
+CS.Frame equ   %10000000  framing error (set=error)
+CS.TxE   equ   %01000000  Tx data empty (set=empty)
+CS.CTS   equ   %00100000  CTS input (set=disabled)
+CS.DCD   equ   %00010000  DCD input (set=disabled)
+CS.DSR   equ   %00001000  DSR input (set=disabled)
+CS.Break equ   %00000100  Rx line break (set=received break)
+CS.DTR   equ   %00000010  DTR output (set=disabled)
+CS.RTS   equ   %00000001  RTS output (set=disabled)
+
+* Control bit definitions
+C.TBRCDR equ   %01000000  Tx Break/Compare Data register access (set=Tx Break)
+C.StpBit equ   %00100000  stop bits (set=two, clear=one)
+C.Echo   equ   %00010000  local echo (set=activated)
+C.Baud   equ   %00001111  see baud rate table below
+
+* baud rate table
+         org   0
+BR.00050 rmb   1          50 baud
+BR.00110 rmb   1          109.2 baud
+BR.00135 rmb   1          134.58 baud
+BR.00150 rmb   1          150 baud
+BR.00300 rmb   1          300 baud
+BR.00600 rmb   1          600 baud
+BR.01200 rmb   1          1200 baud
+BR.01800 rmb   1          1800 baud
+BR.02400 rmb   1          2400 baud
+BR.03600 rmb   1          3600 baud
+BR.04800 rmb   1          4800 baud
+BR.07200 rmb   1          7200 baud
+BR.09600 rmb   1          9600 baud
+BR.19200 rmb   1          19200 baud
+BR.38400 rmb   1          38400 baud
+BR.ExClk rmb   1          external Rx and Tx clocks
+
+* Format bit definitions
+F.Slct   equ   %10000000  register select (set=Format, clear=Control)
+F.DatBit equ   %01100000  see data bit table below
+F.Par    equ   %00011100  see parity table below
+F.DTR    equ   %00000010  DTR output (set=disabled)
+F.RTS    equ   %00000001  RTS output (set=disabled)
+
+* data bit table
+DB.5     equ   %00000000  five data bits per character
+DB.6     equ   %00100000  six data bits per character
+DB.7     equ   %01000000  seven data bits per character
+DB.8     equ   %01100000  eight data bits per character
+
+* parity table
+Par.None equ   %00000000
+Par.Odd  equ   %00000100
+Par.Even equ   %00001100
+Par.Mark equ   %00010100
+Par.Spac equ   %00011100
+
+* Transmit Break bit definitions
+TB.Brk   equ   %00000010  Tx break control (set=transmit continuous line Break)
+TB.Par   equ   %00000001  parity check (set=parity bit to ISE.Par, clear=normal)
+
+* Btn.Cntr bit definitions
+BC.Butn1 equ   %00100000  button #1 (left, 1 = pressed)
+BC.Butn2 equ   %00010000  button #2 (middle, 1 = pressed)
+BC.Butn3 equ   %00001000  button #3 (right, 1 = pressed)
+BC.RxCnt equ   %00000111  Rx data counter
+
+BC.Butns equ   BC.Butn1!BC.Butn2!BC.Butn3 mask for all buttons
+
+
+* mouse static data area definitions
+         org   0
+Btn.Cntr rmb   1          mouse button status and Rx data counter
+Buffer   rmb   3          Rx buffer for 1st 3 bytes of XY mouse data (must start at 1,u)
+CrntXPos rmb   2          mouse X position (0 to HResMaxX)
+CrntYPos rmb   2          mouse Y position (0 to HResMaxY*2)
+