Mercurial > hg > Members > kono > nitros9-code
annotate defs/vdgdefs @ 1530:a02b18bfc376
New 'Old' fields added from OS-9 Level One V2.00.00 Addendum
author | boisy |
---|---|
date | Wed, 14 Apr 2004 13:35:50 +0000 |
parents | 0a678473d5cf |
children | 8d4b5ee1cee4 |
rev | line source |
---|---|
1200 | 1 IFEQ VDGDEFS |
373
c07686556109
Added ifeq statements at top to allow for multiple use's of same def
boisy
parents:
0
diff
changeset
|
2 |
1200 | 3 VDGDEFS set 1 |
0 | 4 |
1200 | 5 ******************************************************************** |
6 * VDGDefs - VDG Interface Definititions | |
7 * | |
8 * $Id$ | |
0 | 9 * |
1200 | 10 * Edt/Rev YYYY/MM/DD Modified by |
11 * Comment | |
12 * ------------------------------------------------------------------ | |
13 * 1991/05/07 Alan DeKok | |
14 * Wrote original from VDGint source. | |
0 | 15 |
16 | |
1200 | 17 nam VDGDefs |
18 ttl VDG Interface Definitions | |
19 | |
20 | |
21 pag | |
22 * Notes: | |
23 * | |
24 * All offsets from 'U' (address of device memory area) | |
25 * (see p. 6-9, technical reference: U=start of driver data memory | |
0 | 26 * NOTE: There is LOTS of stuff which is only used once, and some which |
27 * is not needed. Here's a list of the un-needed, and un-used (other than | |
28 * once) | |
29 * | |
1200 | 30 * It would probably be benificial to patch VDGint to fix these problems, |
0 | 31 * unless anyone else has ideas as to why VDGint is doing things this way. |
32 * | |
33 * Un-needed | |
34 * VD.EPlt1 - (2) set to VD.NChar, and then read only | |
35 * VD.EPlt2 - (2) set to same as VD.EPlt1, and then unused | |
36 * VD.Chr1 - (1) set to same as VD.CChar, and then unused | |
37 * VD.PlFlg - (1) initialized to $08, and unused | |
38 * | |
39 * Un-used | |
40 * | |
41 * $1D - (1) end of SCF memory requirements | |
42 * VD.Strt1 - (2) CLRed, and then read (LDD) - left as $0000 | |
43 * $24-$2B - (8) | |
44 * $33-$34 - (2) | |
45 * $7E-$FF - (130) | |
46 * | |
1200 | 47 * Total of 22 (150 in whole page) bytes unneeded or unused. |
0 | 48 |
49 VD.Start equ $1E start of VD.XXXX data: number of VDG screens in use | |
50 VD.Strt1 equ $1F (2) and another start | |
51 VD.Caps equ $21 caps lock info: $00=lower $FF=upper | |
52 VD.DFlag equ $23 0=current screen is valid, $01-$FF = update video | |
53 * $24-$2B unused | |
54 VD.NGChr equ $2C number of additional characters to get | |
55 VD.RTAdd equ $2D (2) return address after getting characters | |
56 VD.EPlt1 equ $2F (2) pointer to where to put next character | |
57 VD.EPlt2 equ $31 (2) as above. | |
58 * $33-$34 unused | |
59 VD.CFlag equ $35 true lowercase flag $10=true, $00=false | |
60 VD.CFlg1 equ $36 VDG display code values | |
61 VD.DGBuf equ $37 number of currently displayed buffer | |
62 VD.ScrnA equ $38 (2) screen start address in system memory | |
63 VD.ScrnE equ $3A (2) address of end of screen | |
64 VD.CrsrA equ $3C (2) cursor address | |
65 VD.CrsAL equ $3D cursor address low | |
66 VD.CChar equ $3E value of character under cursor | |
67 VD.Mode equ $3F mode: 0=256x192 x2, 1=128x192 x4 | |
68 VD.Chr1 equ $40 same as under cursor character | |
69 VD.CColr equ $41 cursor color | |
70 VD.Col equ $42 number of columns for this screen | |
71 VD.Row equ $43 number of rows | |
72 VD.TFlg1 equ $44 see WRITE ($0E) | |
73 VD.Alpha equ $45 0 when in alpha mode | |
761 | 74 VD.Rdy equ $46 device ready (see SS.DStat 0=not ready) |
0 | 75 VD.SBAdd equ $47 (2) address of block screen is in |
76 VD.Blk equ $49 Block number of screen | |
77 VD.GBuff equ $4A allocation for graphics buffers (block#) | |
78 VD.AGBuf equ $4B (2) additional graphics buffer | |
762 | 79 VD.HiRes equ $4D hi-res screen table (block value) |
0 | 80 VD.NBlk equ $4E number of blocks in this screen |
81 VD.SType equ $4F screen type 0-4 | |
82 VD.HR2 equ $50 (3) for screen number 2 | |
761 | 83 VD.HR3 equ $53 (3) for screen 3 (same 3 bytes as above) |
762 | 84 VD.FFMem equ $56 (2) bottom of stack for flood fill |
85 VD.FFSPt equ $58 (2) flood fill stack pointer | |
86 VD.FFSTp equ $5A (2) flood fill stack top pointer | |
0 | 87 VD.FF6 equ $5C flood fill flag |
88 VD.MTabl equ $5D (2) address of mask table for pixels in byte | |
89 VD.PixBt equ $5F bit mask for modes (0=$07, 1=$03 )#pixels/byte | |
90 VD.GCrsX equ $60 graphics cursor X value | |
91 VD.GCrsY equ $61 graphics cursor Y | |
92 VD.Msk1 equ $62 mask byte 1 | |
93 VD.Msk2 equ $63 mask byte 2 (00,55,AA,FF) | |
762 | 94 VD.MCol equ $64 color? (C003,8001) |
0 | 95 VD.MCol2 equ $65 color |
762 | 96 VD.PMask equ $66 pixel mask for colors (i.e. $55, $CC etc) |
0 | 97 VD.FF1 equ $67 data for flood fill |
98 VD.FF2 equ $68 data for flood fill | |
99 VD.FFMsk equ $69 flood fill mask | |
100 VD.FFFlg equ $6A flood fill flag | |
101 VD.Palet equ $6B (16) current palette values | |
102 VD.PlFlg equ $7B initialized to $08 by L00DB, and then unused! | |
103 VD.NChar equ $7C character to process | |
104 VD.NChr2 equ $7D and the next one | |
105 | |
106 * and RMB until we get 256 bytes reserved | |
373
c07686556109
Added ifeq statements at top to allow for multiple use's of same def
boisy
parents:
0
diff
changeset
|
107 |
1200 | 108 ENDC |
373
c07686556109
Added ifeq statements at top to allow for multiple use's of same def
boisy
parents:
0
diff
changeset
|
109 |