Mercurial > hg > Members > kono > nitros9-code
view defs/vtiodefs @ 1971:136a4e706aa6
Fixed step rate issues on recalibrate on original Dragon 5.25" drives
author | afra |
---|---|
date | Sun, 08 Jan 2006 21:39:17 +0000 |
parents | 1e312b144f4d |
children | e396d4f24b27 |
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 noz-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 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. * 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