Mercurial > hg > Members > kono > nitros9-code
view defs/cciodefs @ 1797:3084051a2863
Updated
author | boisy |
---|---|
date | Mon, 11 Apr 2005 15:42:16 +0000 |
parents | ce1ed7b7746f |
children | 6e5fa42c2fb1 |
line wrap: on
line source
CCIODEFS set 1 ******************************************************************** * CCIODefs - CoCo 1/2 I/O Definitions * * $Id$ * * Edt/Rev YYYY/MM/DD Modified by * Comment * ------------------------------------------------------------------ * * 2004/11/29, P.Harvey-Smith. * Added symbolic defines for bits in V.CoLoad. * * 2004/12/02, P.Harvey-Smith. * moved over all variables from co51.asm * * 2005/04/09, P.Harvey-Smith. * decoded rest of the co51 memory locations. * nam CCIODefs ttl CoCo 1/2 I/O Definitions ******************** * CCIO Static Memory * org V.SCF V.ScrnA rmb 2 (2) screen start address in system memory V.ScrnE rmb 2 (2) address of end of screen V.CrsrA rmb 1 (2) cursor address V.CrsAL rmb 1 cursor address low V.CChar rmb 1 value of character under cursor V.Mode rmb 1 mode: 0=256x192 x2, 1=128x192 x4 V.NGChr rmb 1 number of additional characters to get V.RTAdd rmb 2 (2) return address after getting characters V.NChar rmb 1 character to process V.NChr2 rmb 1 and the next one rmb 1 V.Chr1 rmb 1 same as under cursor character V.CColr rmb 1 cursor color V.Col rmb 1 number of columns for this screen V.Row rmb 1 number of rows V.Alpha rmb 1 0 when in alpha mode V.PIA1 rmb 1 PIA1Base value V.Rdy rmb 1 device ready (see SS.DStat 0=not ready) V.CFlg1 rmb 1 VDG display code values V.SBAdd rmb 2 (2) address of block screen is in V.GBuff rmb 2 allocation for graphics buffers (block#) V.AGBuf rmb 4 (2) additional graphics buffer V.FFMem rmb 2 Flood fill alloc'ed mem V.FFSPt rmb 2 Flood fill current stack pointer V.FFSTp rmb 1 Flood fill stack top V.FF6 rmb 1 flood fill flag V.FFFlag rmb 1 ?? V.MTabl rmb 2 (2) address of mask table for pixels in byte V.PixBt rmb 1 bit mask for modes (0=$07, 1=$03 )#pixels/byte V.GCrsX rmb 1 graphics cursor X value V.GCrsY rmb 1 graphics cursor Y V.Msk1 rmb 1 mask byte 1 V.Msk2 rmb 1 mask byte 2 (00,55,AA,FF) V.MCol rmb 1 color? (C003,8001) V.4A rmb 1 V.PMask rmb 1 pixel mask for colors (i.e. $55, $CC etc) V.4C rmb 1 V.4D rmb 1 V.4E rmb 1 V.4F rmb 1 V.Caps rmb 1 caps lock info: $00=lower $FF=upper V.ClkCnt rmb 1 clock count ?? V.WrChr rmb 1 character to write V.CurCo rmb 1 current CO-module in use * start of CO80-specific static memory V.Co80X rmb 1 V.54 V.Co80Y rmb 1 V.55 V.ColPtr rmb 1 V.56 V.RowPtr rmb 1 V.57 V.C80X rmb 1 CO80 X position V.C80Y rmb 1 CO80 Y position V.Invers rmb 1 * end of CO80-specific static memory V.DspVct rmb 2 vector to display screen V.CnvVct rmb 2 vector to X/Y to address conversion V.LKeyCd rmb 1 last key code V.2Key1 rmb 1 2nd Key 1 V.2Key2 rmb 1 2nd Key 2 V.2Key3 rmb 1 2nd Key 3 V.Key1 rmb 1 Key 1 V.Key2 rmb 1 Key 2 V.Key3 rmb 1 Key 3 V.ShftDn rmb 1 SHIFT/CTRL state V.CtrlDn rmb 1 CTRL key down V.KeyFlg rmb 1 key flag V.AltDwn rmb 1 ALT key down V.KySns rmb 1 key sense flags V.KySame rmb 1 key same as last flag V.KySnsF rmb 1 key sense flag V.Spcl rmb 1 V.KTblLC rmb 1 key table entry # V.6F rmb 1 ??? V.COLoad rmb 1 CO-module loaded flags V.CFlag rmb 1 true lowercase flag $10=true, $00=false V.GRFOE rmb 2 GRFO entry point V.CO32E rmb 2 CO32 entry point V.CO80E rmb 2 CO80 entry point V.CO51E rmb 2 CO51 entry point ;Co51 vars V.51ScrnA rmb 2 * Screen address. V.51XPos rmb 1 * X co-ordinate V.51YPos rmb 1 * Y co-ordinate V.51EscSeq rmb 1 * In escape sequence V.51ReverseFlag rmb 1 * Reverse video flag V.51UnderlineFlag rmb 1 * Underline flag V.51CtrlDispatch rmb 2 * Ctrl char dispatch address, currently processing V.51BytePixOffset rmb 1 * byte offset in screen line, of character X position V.51OldCursorPosX rmb 1 * Position of old cursor before update V.51OldCursorPosY rmb 1 V.51CursorChanged rmb 1 * Has cursor position changed ? 1=yes,0=no V.51CursorOn rmb 1 * Is cursor on ? 1=yes 0=no V.51XORFlag rmb 1 * and data to screen (0) or Xor (1) V.51ScreenMask1 rmb 1 * screen masks for drawing characters on screen V.51ScreenMask2 rmb 1 ; End of c051 vars ; **** Note these have to come at the end of the defs, or the keyboard **** ; **** code can clobber variables defined after these ! **** V.IBufH rmb 1 input buffer head V.IBufT rmb 1 input buffer tail V.InBuf rmb 1 input buffer tail V.51End rmb 1 rmb 250-. V.Last equ . * Unknown for now *VD.FFMem rmb 2 (2) bottom of stack for flood fill *VD.FFSPt rmb 2 (2) flood fill stack pointer *VD.FFSTp rmb 2 (2) flood fill stack top pointer *VD.FF6 rmb 1 flood fill flag *VD.MCol2 rmb 1 color *VD.FF1 rmb 1 data for flood fill *VD.FF2 rmb 1 data for flood fill *VD.FFMsk rmb 1 flood fill mask *VD.FFFlg rmb 1 flood fill flag *VD.Palet rmb 16 (16) current palette values *VD.PlFlg rmb 1 initialized to $08 by L00DB, and then unused! ; ; Defs for V.COLoad flags. ; ModCo32 equ %00000010 ; Co32, normal VDG 32x16. ModCo80 equ %00000100 ; Co80, wordpak rs, 80x25 ModCo51 equ %00001000 ; Co51, pmode 4 51x25 text