windows-nt/Source/XPSP1/NT/base/mvdm/softpc.new/bios/biostruc.inc
2020-09-26 16:20:57 +08:00

102 lines
2.4 KiB
PHP

; rom bios call packet structures
;*******************************
;system service call ( int 15h )
;*******************************
;function ah = 0c0h, return system configuration
;for pc and pcjr on return:
; (ah) = 80h
; (cy) = 1
;for pcxt, pc portable and pcat on return:
; (ah) = 86h
; (cy) = 1
;for all others:
; (ah) = 0
; (cy) = 0
; (es:bx) = pointer to system descriptor vector in ros
; system descriptor :
; dw xxxx length of descriptor in bytes,
; minimum length = 8
; db xx model byte
; 0ffh = pc
; 0feh = pc/xt, portable
; 0fdh = pc/jr
; 0fch = pc/at, 6mhz pc/at,
; 6mhz pc/at running coprocessor(?),
; ps/2 model 50, 50 z
; 0fah = ps/2 model 25, 30
; 0f9h = pc convertible
; 0f8h = ps/2 model 80
; 0f7h = nova
; 0e0 thru 0efh = reserved
;
; db xx secondary model byte
; 000h = pc1
; 000h = pc/xt, portable
; 000h = pc/jr
; 000h = pc/at
; 001h = 6mhz pc/at
; 003h = 6mhz pc/at running coprocessor(?)
; 004h = ps/2 model 50, 50z
; 001h = ps/2 model 25
; 000h = pc convertible
; 000h = ps/2 model 80
; 000h = nova
;
; db xx bios revision level
; 00 for first release, subsequent release
; of code with same model byte and
; secondary model byte require revison level
; to increase by one.
;
; db xx feature information byte 1
; x0000000 = 1, bios use dma channel 3
; = 0, dma channel 3 not used
;
; 0x000000 = 1, 2nd interrupt chip present
; = 0, 2nd interrupt chip not present
;
; 00x00000 = 1, real time clock present
; = 0, real time clock not present
;
; 000x0000 = 1, keyboard escape sequence(int15h)
; called in keyboard interrupt
; (int 09h).
; = 0, keyboard escape sequence not
; called.
; 0000xxxx reserved
;
; db xx feature information byte 2 - reserved
;
; db xx feature information byte 2 - reserved
;
; db xx feature information byte 2 - reserved
;
; db xx feature information byte 2 - reserved
;
bios_system_descriptor struc
bios_sd_leng dw ?
bios_sd_modelbyte db ?
bios_sd_scnd_modelbyte db ?
db ?
bios_sd_featurebyte1 db ?
db 4 dup (?)
bios_system_descriptor ends
;featurebyte1 bit map equates
dmachannel3 equ 10000000b
scndintcontroller equ 01000000b
realtimeclock equ 00100000b
keyescapeseq equ 00010000b
;
;model byte
mdl_pc1 equ 0ffh
mdl_xt equ 0feh
mdl_jr equ 0fdh
mdl_at equ 0fch
mdl_convert equ 0f9h
mdl_ps2_30 equ 0fah
mdl_ps2_80 equ 0f8h