Mercurial > hg > Members > kono > nitros9-code
view defs/vtiodefs @ 2122:055c774cb633
Commented out D.SysMAP updating code, as per bug 1783594 on SF
author | boisy |
---|---|
date | Tue, 28 Aug 2007 19:36:17 +0000 |
parents | e396d4f24b27 |
children |
line wrap: on
line source
IFNE VTIODEFS-1 VTIODEFS SET 1 ******************************************************************** * VTIODefs - Video Terminal I/O Definitions for CoCo 1/2 * * $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 CoHR memory locations. * * 2005/04/24 P.Harvey-Smith. * Added variables for cursor flash, currently only implemented in co51 * NAM VTIODefs TTL Video Terminal I/O Definitions for CoCo 1/2 ******************** * VTIO 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 CoWP-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 CoWP X position V.C80Y RMB 1 CoWP Y position V.Invers RMB 1 * end of CoWP-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.GrfDrvE RMB 2 GrfDrv entry point V.CoVDGE RMB 2 CoVDG entry point V.CoWPE RMB 2 CoWP entry point V.CoHRE RMB 2 CoHR entry point V.Flash RMB 2 Cursor flash routine address. v.FlashCount RMB 1 Cursor flash count V.NoFlash RMB 1 When this is non-zero do not flash cursor * CoHR 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 CoHR 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 ptr 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. * ModCoVDG EQU %00000010 CoVDG, Built-in VDG 32x16. ModCoWP EQU %00000100 CoWP, WordPak, 80x25 ModCoHR EQU %00001000 CoHR, PMODE 4 51x25 text * * Defs for cursor flash counter * CFlash50hz EQU 25 * 50Hz flash counter CFlash60Hz EQU 30 * 60Hz flash counter ENDC