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.
 
 
 
 
 
 

71 lines
2.7 KiB

;----------------------------------------------------------------------------;
; Define macros
;----------------------------------------------------------------------------;
ShowStr MACRO str
mov dx, offset str
mov ah, 9
int 21h
ENDM
BOP MACRO func
db 0c4h,0c4h,func
; jmp cs:[pass_disp_add]
; int 44h
ENDM
;----------------------------------------------------------------------------;
; Flags & Numeric Equates
;----------------------------------------------------------------------------;
MAX_LOW EQU 25 ; Max low count
MAX_CUL EQU 80 ; Max culumn count
MaxFunc EQU 1Dh ; int 10h max function No.
MaxCmd EQU 24 ; max command code for DOS 3.2+
cr EQU 0Dh ; carriage return
lf EQU 0Ah ; linefeed
eom EQU '$' ; end-of-message signal
space EQU 20h ; ascii space
tab EQU 09h ; ascii tab
VECTOR_SEG EQU 0000h ; Interrupt Vector segment
WORK_SEG EQU 0040h ; BIOS work area segment
FULLSCREEN EQU 1
; definition of a Request Header structure so that we can access its elements.
; this structure is not exhaustive at all: block device use some addresses for
; different purposes, and have data beyond the cmd_seg word.
REQ_HEADER STRUC
lengt DB ? ; request header length
unit DB ? ; unit number (for Block Devs. only)
ccode DB ? ; command code
stat DW ? ; status word
reserv DB 8 DUP(?) ; reserved for DOS us
media DB ? ; Media ID (for Block Devs. only)
xfer DW ? ; offset of data buffer
xseg DW ? ; segment of data buffer
cmd_off DW ? ; count of bytes in request, or
cmd_seg DW ? ; segment of CONFIG.SYS line
REQ_HEADER ENDS
; values for the different 'magic numbers' used with Device Drivers
fNEXTLINK EQU -1 ; word to tell DOS to substitute by address of
; next device
fCHARDEVICE EQU 8000h ; bit to define device as a character device
fOPENCLOSE EQU 0040h ; bit to indicate that device supports open/close
fDONE EQU 0100h ; Status Done bit meaning device is done
fERROR EQU 8000h ; Status Error bit meaning error on operation
fWRITE_E EQU 000Ah ; Write Fault Error bit
fREAD_E EQU 000Bh ; Read Fault Error bit
fUNKNOWN_E EQU 0003h ; Unknown Command Error bit
; values for the search flags used by Write Routine
fDELETE EQU 2
fINSERT EQU 4
fSEARCH EQU 8