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
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) ----------------------------------------------------------
|
|
|