]> wirehaze git hosting - MS-DOS.git/blob - v4.0/src/CMD/GRAPHICS/GRCTRL.STR

wirehaze git hosting

MZ is back!
[MS-DOS.git] / v4.0 / src / CMD / GRAPHICS / GRCTRL.STR
1 .XLIST ;AN000;
2 PAGE ,132 ;AN000;
3 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
4 ;; DOS - GRAPHICS Command
5 ;; (C) Copyright 1988 Microsoft
6 ;; ;AN000;
7 ;; File Name: GRCTRL.STR ;AN000;
8 ;; ---------- ;AN000;
9 ;; ;AN000;
10 ;; Description: ;AN000;
11 ;; ------------ ;AN000;
12 ;; Include file containing structures and equates for ;AN000;
13 ;; the Print Screen process. ;AN000;
14 ;; ;AN000;
15 ;; Change History: ;AN000;
16 ;; --------------- ;AN000;
17 ;; ;AN000;
18 ;; ;AN000;
19 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
20 ;; ;AN000;
21 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
22 .LIST ;AN000;
23 ;-------------------------------------------------------------------------------;AN000;
24 ; ;AN000;
25 ; PRINT SCREEN INTERNAL ERROR CODES ;AN000;
26 ; ;AN000;
27 ;-------------------------------------------------------------------------------;AN000;
28 NO_ERROR EQU 0 ;AN000;
29 UNABLE_TO_PRINT EQU 1 ; The procedure was unable to print the ;AN000;
30 ; screen ;AN000;
31 DISPLAYMODE_INFO_NOT_FOUND EQU 2 ; There was no DISPLAYMODE info record ;AN000;
32 ; in the Shared Area for the current mode ;AN000;
33 MODE_NOT_SUPPORTED EQU 4 ; This mode is not supported by this version ;AN000;
34 ; of GRAHICS. ;AN000;
35 PRINTER_ERROR EQU 8 ; An error occurred while printing a byte ;AN000;
36 ; (i.e., Out of paper, etc) ;AN000;
37 ;-------------------------------------------------------------------------------;AN000;
38 ; ;AN000;
39 ; PIXEL INTERNAL REPRESENTATION ;AN000;
40 ; ;AN000;
41 ;-------------------------------------------------------------------------------;AN000;
42 PIXEL_STR STRUC ;AN000;
43 R DB ? ; RED component (0 to MAX_INT) ;AN000;
44 G DB ? ; GREEN component (0 to MAX_INT) ;AN000;
45 B DB ? ; BLUE component (0 to MAX_INT) ;AN000;
46 PIXEL_STR ENDS ;AN000;
47 ;-------------------------------------------------------------------------------;AN000;
48 ; ;AN000;
49 ; VIDEO MODE TYPES ;AN000;
50 ; ;AN000;
51 ;-------------------------------------------------------------------------------;AN000;
52 TXT EQU 0 ; Text ;AN000;
53 APA EQU 1 ; All Points Addressable ;AN000;
54 ;AN000;
55 ;-------------------------------------------------------------------------------;AN000;
56 ; ;AN000;
57 ; BIOS INTERRUPT 10H CALL EQUATES ;AN000;
58 ; Note: Either AX or AH must be initialized, depending if the call is ;AN000;
59 ; a sub-call or not. ;AN000;
60 ; ;AN000;
61 ;-------------------------------------------------------------------------------;AN000;
62 READ_DOT_CALL EQU 0DH ; Read dot ;AN000;
63 SET_CURSOR_CALL EQU 02H ; Set cursor on the screen ;AN000;
64 READ_CURSOR_CALL EQU 03H ; Read position of the cursor on the screen ;AN000;
65 READ_CHAR_CALL EQU 08H ; Read attribute/character ;AN000;
66 GET_STATE_CALL EQU 0FH ; Return current video state ;AN000;
67 GET_P_REG_CALL EQU 1007H ; Read a palette register (EGA, VGA) ;AN000;
68 GET_C_REG_CALL EQU 1015H ; Read a color register (VGA) ;AN000;
69 READ_CONFIG_CALL EQU 1A00H ; Read display adapter configuration (PS/2) ;AN000;
70 PAGE_STATE_CALL EQU 101AH ; Read color page state call (PS/2) ;AN000;
71 ALT_SELECT_CALL EQU 12H ; Alternate select call (AH = 12h) ;AN000;
72 EGA_INFO_CALL EQU 10H ; Return EGA information (AH=12H,BH = 10H) ;AN000;
73 DISP_DESC_CALL EQU 15H ; PC CONVERTIBLE display description call ;AN000;
74 ;AN000;
75 ;-------------------------------------------------------------------------------;AN000;
76 ; ;AN000;
77 ; BIOS DATA AREA EQUATES ;AN000;
78 ; ;AN000;
79 ;-------------------------------------------------------------------------------;AN000;
80 BIOS_SEG EQU 40H ; BIOS segment ;AN000;
81 NB_ROWS_OFFSET EQU 84H ; Number of rows displayed when in a text mode ;AN000;
82 ;AN000;
83 ;-------------------------------------------------------------------------------;AN000;
84 ; ;AN000;
85 ; CONSTANT DEFINITIONS ;AN000;
86 ; ;AN000;
87 ;-------------------------------------------------------------------------------;AN000;
88 NO EQU 0 ;AN000;
89 YES EQU 1 ;AN000;
90 OFF EQU 0 ;AN000;
91 ON EQU 1 ;AN000;
92 ;AN000;
93 ;-------------------------------------------------------------------------------;AN000;
94 ; ;AN000;
95 ; TRANSLATION TABLE DEFINITIONS ;AN000;
96 ; ;AN000;
97 ;-------------------------------------------------------------------------------;AN000;
98 WHITE_INT EQU 63 ; Intensity for WHITE on the printer ;AN000;
99 BLACK_INT EQU 0 ; Intensity for BLACK on the printer ;AN000;
100 MAX_INT EQU WHITE_INT ; Maximum intensity for a RGB value, ;AN000;
101 ; (Red, Green, or Blue). ;AN000;
102 ONE_THIRD EQU MAX_INT*1/3 ; Used to calculate Red, Green, Blue intensity ;AN000;
103 TWO_THIRD EQU MAX_INT*2/3 ; values. ;AN000;
104 ;AN000;
105 ;-------------------------------------------------------------------------------;AN000;
106 ; ;AN000;
107 ; PRINTER CONTROL ASCII CODES ;AN000;
108 ; ;AN000;
109 ;-------------------------------------------------------------------------------;AN000;
110 CR EQU 0DH ; Carriage return ;AN000;
111 LF EQU 0AH ; Line feed ;AN000;