Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

190 lines
8.7 KiB

.XLIST ;AN000;
PAGE ;AN000;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
;; DOS - GRAPHICS Command
;;
;; ;AN000;
;; File Name: GRSHAR.STR ;AN000;
;; ---------- ;AN000;
;; ;AN000;
;; Description: ;AN000;
;; ------------ ;AN000;
;; Include file containing structures and equates for ;AN000;
;; Shared Data Area. ;AN000;
;; ;AN000;
;; This area is used for communication between the installation process ;AN000;
;; and the Print Screen process; it contains all the information ;AN000;
;; extracted from the printer profile. ;AN000;
;; ;AN000;
;; ;AN000;
;; Change History: ;AN000;
;; --------------- ;AN000;
;; ;AN000;
;; ;AN000;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
;; ;AN000;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
.LIST ;AN000;
; ;AN000;
SHARED_DATA_AREA_STR STRUC ; ;AN000;
SD_TOTAL_SIZE DW ? ; Total # bytes ALLOCATED to the ;AN000;
; the Shared Data Area. ;AN000;
;;;;;;;;;;;; Environment ;;;;;;;;;;;;;; ;AN000;
SWITCHES DB 0 ; Command line switches ;AN000;
HARDWARE_CONFIG DB ? ; Type of video hardware ;AN000;
PRINTER_TYPE DB ? ; Type of printer attached ;AN000;
; ;AN000;
;;;;;;;;;;;; Profile Data ;;;;;;;;;;;;; ;AN000;
DARKADJUST_VALUE DB 0 ; Darkness adjustment value ;AN000;
; ;AN000;
NUM_PRT_COLOR DB ? ; Number of print colors ;AN000;
COLORPRINT_PTR DW ? ; Pointer to COLORPRINT info ;AN000;
; ;AN000;
NUM_PRT_BANDS DB ? ; Number of selectable print bands ;AN000;
COLORSELECT_PTR DW ? ; Pointer to COLORSELECT info ;AN000;
; bands ;AN000;
DISPLAYMODE_PTR DW ? ; Pointer to start of DISPLAYMODE ;AN000;
; info ;AN000;
;\/ ~~mda(001) ----------------------------------------------------------
; Added DATA_TYPE, which can be either DATA_ROW or DATA_COL.
; Needed so know if should send info to the printer in row
; or column format. IBM and EPSON use column format and HP
; PCL uses row format.
DATA_TYPE DB ?
;/\ ~~mda(001) ----------------------------------------------------------
;\/ ~~mda(001) ----------------------------------------------------------
; Added ROW_TO_EXTRACT which is set in PRINT_BW_APA and
; used in STORE_BOX so we know what row to extract from the
; printer box.
ROW_TO_EXTRACT DB ?
;/\ ~~mda(001) ----------------------------------------------------------
;\/ ~~mda(001) ----------------------------------------------------------
; Added COUNT which is used to store either the ASCII
; or the binary representation of the count. This is used
; instead of LOW_BYT_COUNT_PTR and HIGH_BYT_COUNT_PTR in
; the DISPLAYMODE structure. Also added NUM_BYTES_FOR_COUNT
; which is the length of the ascii number in COUNT.
DB ? ; COUNT grows up
DB ? ; ^
DB ? ; ^
DB ? ; ^
COUNT DB ? ; ^
NUM_BYTES_FOR_COUNT DB ? ; Number of bytes needed to store ascii #
;/\ ~~mda(001) ----------------------------------------------------------
;\/ ~~mda(001) ----------------------------------------------------------
; Added the following variable (which is set in PARSE_GRAPHICS
; and used in END_PRT_LINE) so we know if we have a printer,
; such as an IBM printer, that needs a CR & LF to be sent after
; each scan line is printed. Note: HP PCL printers don't
; need a CR, LF to be sent.
PRINTER_NEEDS_CR_LF DB ?
;/\ ~~mda(001) ----------------------------------------------------------
;
SHARED_DATA_AREA_STR ENDS ;; ;AN000;
;AN000;
;AN000;
;;;;;;;;; COLORSELECT info structure ;;;; ;AN000;
; ;AN000;
COLORSELECT_STR STRUC ; ;AN000;
NUM_SELECT_ESC DB ? ; number of escape bytes to ;AN000;
; select this band ;AN000;
SELECT_ESC DB ? ; Escape bytes to select band ;AN000;
COLORSELECT_STR ENDS ;; ;AN000;
;AN000;
;AN000;
;AN000;
;;;;;;;;; COLORPRINT info structure ;;;;; ;AN000;
; ;AN000;
COLORPRINT_STR STRUC ; ;AN000;
RED DB ? ; RGB value ;AN000;
GREEN DB ? ; ;AN000;
BLUE DB ? ; ;AN000;
; Bit mask indicating color ;AN000;
SELECT_MASK DB ? ; bands required: ;AN000;
; Bit 0: first band in table ;AN000;
COLORPRINT_STR ENDS ;; Bit 1: second band... ;AN000;
;AN000;
;AN000;
;;;;;;;;; DISPLAYMODE info structure ;;;; ;AN000;
; A new block is built when a ;AN000;
DISPLAYMODE_STR STRUC ; DISPLAYMODE statement is ;AN000;
; found ;AN000;
NEXT_DISP_MODE DW ? ; Pointer to info for next ;AN000;
; display mode; -1 if last ;AN000;
NUM_DISP_MODE DB ? ; Number of display modes for ;AN000;
DISP_MODE_LIST_PTR DW ? ; this record - list of them ;AN000;
; ;AN000;
BOX_WIDTH DB ? ; Print box size - horizontal ;AN000;
BOX_HEIGHT DB ? ; Print box size - vertical ;AN000;
; ;AN000;
NUM_PATTERNS DB ? ; Number of grey patterns for ;AN000;
; this box size ;AN000;
PATTERN_TAB_PTR DW ? ; pointer to grey pattern table ;AN000;
; for this display mode ;AN000;
NUM_GRAPHICS_ESC DB ? ; # of escape byte for GRAPHICS ;AN000;
GRAPHICS_ESC_PTR DW ? ; pointer to GRAPHICS escape ;AN000;
LOW_BYT_COUNT_PTR DW ? ; pointers to number of bytes sent ;AN000;
HGH_BYT_COUNT_PTR DW ? ; to the printer (1 word holds this ;AN000;
; number but, must be send 1 byte ;AN000;
; at a time). ;AN000;
NUM_SETUP_ESC DB ? ; # of escape byte for SETUP ;AN000;
SETUP_ESC_PTR DW ? ; pointer to SETUP escape seq ;AN000;
; for this display mode ;AN000;
NUM_RESTORE_ESC DB ? ; # of escape byte for RESTORE ;AN000;
RESTORE_ESC_PTR DW ? ; pointer to RESTORE escape ;AN000;
; seq for this display mode ;AN000;
PRINT_OPTIONS DB ? ; ;AN000;
; ;AN000;
;\/ ~~mda(001) ----------------------------------------------------------
; The following is the # of esc bytes after the word DATA
; in the GRAPHICS statement.
NUM_GRAPHICS_ESC_AFTER_DATA DB ? ;
;/\ ~~mda(001) ----------------------------------------------------------
DISPLAYMODE_STR ENDS ;; ;AN000;
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
;; ;AN000;
;; SHARED DATA AREA - EQUATES ;AN000;
;; ;AN000;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AN000;
;AN000;
; SWITCHES DB <bit mask> ; Command line switches: ;AN000;
REVERSE_SW EQU 1 ; /R ;AN000;
BACKGROUND_SW EQU 2 ; /B ;AN000;
; ;AN000;
; HARDWARE_CONFIG DB <bit mask> ; Type of video hardware ;AN000;
PALACE EQU 1 ; attached ;AN000;
ROUNDUP EQU 2 ; PS 2 MODEL 50 60 AND 80 ;AN000;
EGA EQU 4 ; Enhance Graphics Adapter ;AN000;
PC_CONVERTIBLE EQU 8 ; PC Convertible LCD ;AN000;
OLD_ADAPTER EQU 16 ; Color Graph. Adater or MONO ;AN000;
; ;AN000;
; PRINTER_TYPE DB <bit mask> ; Type of printer attached ;AN000;
COLOR EQU 1 ; ;AN000;
BLACK_WHITE EQU 2 ; ;AN000;
; ;AN000;
; PRINT_OPTIONS DB <bit mask> ; ;AN000;
ROTATE EQU 1 ; ;AN000;
;\/ ~~mda(001) ----------------------------------------------------------
; Added the following equates, which are used for the
; DATA_TYPE.
;
DATA_COL EQU 0
DATA_ROW EQU 1
;
;/\ ~~mda(001) ----------------------------------------------------------
;\/ ~~mda(001) ----------------------------------------------------------
; Added the following equates, which are used during parsing
; and printing, to distinguish between esc seq., types of
; counts, and data.
ESC_NUM_CODE EQU 0E0H
COUNT_CODE EQU 0C0H
LOWCOUNT_CODE EQU 0C1H
HIGHCOUNT_CODE EQU 0C2H
DATA_CODE EQU 0DDH
;
;/\ ~~mda(001) ----------------------------------------------------------