亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? drivers.mac

?? MS DOS 6.0 操作系統(tǒng)源碼完整版,對(duì)于研制操作系統(tǒng)結(jié)構(gòu),構(gòu)建個(gè)人的操作系統(tǒng)是非常有用的.
?? MAC
?? 第 1 頁 / 共 2 頁
字號(hào):
;***
;* $Workfile:   drivers.mac  $
;* $Revision:   1.2  $
;*   $Author:   Dave Sewell  $
;*     $Date:   08 Aug 1989 16:44:04  $
;***

                SUBTTL  MS-DOS device driver definitions
                PAGE    66, 132

COMMENT @
    drivers.mac : December 9, 1988 : Alan Butt

    This files contains a set of "Standard" definitions for all Expansion
    Box device drivers
@

OPTION PROC:PRIVATE

recover    MACRO
        jmp     short $+2
        ENDM

MICROSOFT_OEM_ID        EQU  0
SEWELL_OEM_ID           EQU  (298 SHL 5)
INTERLNK_ID             EQU  0

VFXD_Device_ID EQU  SEWELL_OEM_ID OR INTERLNK_ID
EXECUTION_TIME_BOOST        EQU 10000  ; Time in milliseconds to extend slice
RELEASE_TIME_SLICE_2F       EQU 1680h  ; Int 2F API function to release slice
SERIAL_IDLER                EQU 0
SET_VMSTAT_HIGH_PRI_BACK    EQU 1      ; Set High_Priority_Background flag for VM
RESET_VMSTAT_HIGH_PRI_BACK  EQU 2      ; Reset  "          "           "
ADJUST_EXECUTION_TIME       EQU 3      ; Extend current time slice for VM
RELEASE_TIME_SLICE          EQU 4      ; Release current time slice for VM
PARALLEL_IDLER              EQU 5

INTERLNK_MULTIPLEX_ID       EQU 56H
                                        
;--- Definition of bits in the sequence number/flags byte

BYTE_LENGTH             EQU     10000000B
CONTINUED_PACKET        EQU     01000000B
COMPRESSED              EQU     00100000B
SEVEN_WIRE              EQU     00010000B
USE_CHECKSUM            EQU     00001000B
ECHOPLEX                EQU     00000100B
SEQUENCE_BITS           EQU     00000011B
IDLE_BITS               EQU     11111100B

COMM_CRIT_ERR   EQU     (88 - 13H)

MINIMUM_TICKS           EQU 5
RECV_PACK_TICKS         EQU 401
SYNC_TICKS              EQU (2 * 18)
CONNECT_TICKS           EQU 5

SEQUENCE_BITS           EQU     00000011B

MAX_FIXUPS      EQU     5

; Device attribute codes:  ATT_* define the various bits to be used in th
; device driver attribute word of the device header.

ATT_CHARACTER   equ     8000H           ; Character device
ATT_BLOCK       equ     0000H           ; Block device
ATT_IOCTL       equ     4000H           ; IOCTL read and write supported
ATT_NON_IBM     equ     2000H           ; Non-IBM format (block)
ATT_OUTBUSY     equ     2000H           ; Output Until Busy supported (Char)
ATT_OCRM        equ     0800H           ; Open/Close/Removeable media supported*
ATT_GEN_IOCTL   equ     0040H           ; Generic IOCTL & Get/Set log dev**
ATT_INT29       equ     0010H           ; accepts special interupt 29h
ATT_CLOCK       equ     0008H           ; this is the CLOCK device
ATT_NUL         equ     0004H           ; Current NUL device
ATT_HUGE        equ     0002H           ; 32-bit sector addressing (block)
ATT_STDOUT      equ     0002H           ; Current standard output (character)
ATT_STDIN       equ     0001H           ; Current standard input
                                        ; *  MS-DOS 3.0+
                                        ; ** MS-DOS 3.2+

DEVICE_NAME_SIZE    EQU 8               ; Characters in device_header.name_num

device_header   STRUC                   ; Device header structure
    next_offset dw  -1                  ; Link to next driver (offset)
    next_seg    dw  -1                  ; Link to next driver (segment)
    attribute   dw  ATT_CHARACTER       ; Device driver attribute word
    strategy    dw  ?                   ; Offset to strategy entry point
    inter       dw  ?                   ; Offset to interrupt entry point
    name_num    db  "        "          ; Device name or number of units
device_header   ENDS

STATUS_ERROR    equ     8000H           ; error status
STATUS_BUSY     equ     0200H           ; busy status
STATUS_DONE     equ     0100H           ; Done

ERR_WRITE_PROT  equ     00H             ; write-protect error
ERR_UNK_UNIT    equ     01H             ; Unknown unit
ERR_NOT_READY   equ     02H             ; Drive not ready
ERR_UNK_COMMAND equ     03H             ; Unknown command
ERR_CRC         equ     04H             ; CRC error
ERR_BAD_LENGTH  equ     05H             ; Bad drive request structure length
ERR_SEEK        equ     06H             ; Seek error
ERR_UNK_MEDIA   equ     07H             ; Unknown media
ERR_NOT_FOUND   equ     08H             ; Sector not found
ERR_PAPER_OUT   equ     09H             ; Printer out of paper
ERR_WRITE_FAULT equ     0aH             ; Write fault
ERR_READ_FAULT  equ     0bH             ; Read fault
ERR_FAILURE     equ     0ch             ; General Failure
ERR_DISK_CHANGE equ     0fh             ; Invalid disk change


INIT_DRIVER         EQU      0
MEDIA_CHECK         EQU      1
BUILD_BPB           EQU      2
IOCTL_READ          EQU      3
READ                EQU      4
ND_READ             EQU      5
INPUT_STATUS        EQU      6
FLUSH_INPUT         EQU      7
WRITE               EQU      8
WRITE_VERIFY        EQU      9
OUTPUT_STATUS       EQU     10
FLUSH_OUTPUT        EQU     11
IOCTL_WRITE         EQU     12
DEVICE_OPEN         EQU     13
DEVICE_CLOSE        EQU     14
REMOVABLE_MEDIA     EQU     15
OUTPUT_UNTIL_BUSY   EQU     16
GENERIC_IOCTL       EQU     19
GET_LOGICAL_DEVICE  EQU     23
SET_LOGICAL_DEVICE  EQU     24

MAX_VOLUME      EQU     12              ; Maximum volume label length

MEDIA_CHANGED       equ -1              ; Media changed code
MEDIA_DONT_KNOW     equ 0               ; Don't know if media has changed or not
MEDIA_NOT_CHANGED   equ 1               ; Media has not changed code

bios_parameter_block    STRUC
    bytes_per_sector    dw  ?           ; Bytes per sector
    sectors_per_unit    db  ?           ; Sectors per cluster (power of 2)
    reserved_sectors    dw  ?           ; Number of reserved sectors (start @ 0)
    number_of_fats      db  ?           ; Number of file allocation tables
    root_dir_entries    dw  ?           ; Maximum root directory entries
    total_sectors       dw  ?           ; Total number of sectors for media
    media_id_byte       db  ?           ; Media ID byte
    sectors_per_fat     dw  ?           ; Number of sectors occupied by one FAT
    sectors_per_track   dw  ?           ; Sectors per track (MS-DOS 3.0+)
    number_of_heads     dw  ?           ; Number of heads (MS-DOS 3.0+)
    hidden_sectors      dw  ?           ; Number of hidden sectors (MS-DOS 3.0+)
    high_hidden         dw  ?           ; High order word of hidden sects (3.2+)
    long_total_sectors  dd  ?           ; Total number of sectors if 08H-09H
                                        ; (total_sectors) is zero (MS-DOS 3.2+)
                        db  6 dup (?)
bios_parameter_block    ENDS

; If number of clusters addressable on a device is greater than or equal to
; MIN_16_BIT_CLUSTERS, then 16-bit FAT table entries must be used

MIN_16_BIT_CLUSTERS     EQU 4087        ; 0FF7H

;   The disk paramenter structure is used by undocumented DOS calls 0x32, 0x52,
;   and 0x53.  This structure is defined for MS-DOS 2.0 - MS-DOS 4.0.
;
;   The structures for the disk parameter blocks differ according to the DOS
;   version.

dpb_dos2                STRUC           ; DOS's Disk Parameter Block

    dpb2_drive              db  ?       ; Drive # (0 = A, 1 = B, ...)
    dpb2_unit               db  ?       ; Unit number within device driver
    dpb2_bytes_per_sector   dw  ?       ; Number of bytes per sector
    dpb2_max_cluster        db  ?       ; Largest sector number in cluster
                                        ;  add one for number of sectors/cluster
    dpb2_log2_cluster       db  ?       ; Log base two of the cluster size
    dpb2_reserved_sectors   dw  ?       ; Number of reserved (boot) sectors
    dpb2_number_of_fats     db  ?       ; Number of copies of the FAT
    dpb2_root_dir_entries   dw  ?       ; Number of root directory entries
    dpb2_first_data         dw  ?       ; First sector of data on medium
    dpb2_max_number         dw  ?       ; Largest possible cluster number
                                        ;  subtract one for number of clusters
    dpb2_sectors_per_fat    db  ?       ; Number of sectors in one FAT copy
    dpb2_first_root         dw  ?       ; First sector of root directory
    dpb2_device_driver      dd  ?       ; Corresponding device driver address
    dpb2_media_id           db  ?       ; Media descriptor byte
    dpb2_valid              db  ?       ; 0FF indicates block must be rebuild
    dpb2_next_block         dd  ?       ; address of next device block in list

    dpb2_dir_start          dw  ?       ; Starting cluster of current directory
                                        ;  zero indicates the root directory
    dpb2_path_name          db 64 DUP(?) ; ASCIIZ current directory path string

dpb_dos2                ENDS

dpb_dos3                STRUC           ; DOS's Disk Parameter Block

    dpb3_drive              db  ?       ; Drive # (0 = A, 1 = B, ...)
    dpb3_unit               db  ?       ; Unit number within device driver
    dpb3_bytes_per_sector   dw  ?       ; Number of bytes per sector
    dpb3_max_cluster        db  ?       ; Largest sector number in cluster
                                        ;  add one for number of sectors/cluster
    dpb3_log2_cluster       db  ?       ; Log base two of the cluster size
    dpb3_reserved_sectors   dw  ?       ; Number of reserved (boot) sectors
    dpb3_number_of_fats     db  ?       ; Number of copies of the FAT
    dpb3_root_dir_entries   dw  ?       ; Number of root directory entries
    dpb3_first_data         dw  ?       ; First sector of data on medium
    dpb3_max_number         dw  ?       ; Largest possible cluster number
                                        ;  subtract one for number of clusters
    dpb3_sectors_per_fat    db  ?       ; Number of sectors in one FAT copy
    dpb3_first_root         dw  ?       ; First sector of root directory
    dpb3_device_driver      dd  ?       ; Corresponding device driver address
    dpb3_media_id           db  ?       ; Media descriptor byte
    dpb3_valid              db  ?       ; 0FF indicates block must be rebuild
    dpb3_next_block         dd  ?       ; address of next device block in list

    dpb3_unknown_zero       dw  ?       ; Unknown value (usually zero?)
    dpb3_unknown_ffff       dw  ?       ; Unknown value (usually ffff?)

dpb_dos3                ENDS

dpb_dos4                STRUC           ; DOS's Disk Parameter Block

    dpb4_drive              db  ?       ; Drive # (0 = A, 1 = B, ...)
    dpb4_unit               db  ?       ; Unit number within device driver
    dpb4_bytes_per_sector   dw  ?       ; Number of bytes per sector
    dpb4_max_cluster        db  ?       ; Largest sector number in cluster
                                        ;  add one for number of sectors/cluster
    dpb4_log2_cluster       db  ?       ; Log base two of the cluster size
    dpb4_reserved_sectors   dw  ?       ; Number of reserved (boot) sectors
    dpb4_number_of_fats     db  ?       ; Number of copies of the FAT
    dpb4_root_dir_entries   dw  ?       ; Number of root directory entries
    dpb4_first_data         dw  ?       ; First sector of data on medium
    dpb4_max_number         dw  ?       ; Largest possible cluster number
                                        ;  subtract one for number of clusters
    dpb4_sectors_per_fat    db  ?       ; Number of sectors in one FAT copy
    dpb4_unknown_byte       db  ?       ; Unknown byte (usually 00)
    dpb4_first_root         dw  ?       ; First sector of root directory
    dpb4_device_driver      dd  ?       ; Corresponding device driver address
    dpb4_media_id           db  ?       ; Media descriptor byte
    dpb4_valid              db  ?       ; 0FF indicates block must be rebuild
    dpb4_next_block         dd  ?       ; address of next device block in list

    dpb4_unknown_zero       dw  ?       ; Unknown value (usually zero?)
    dpb4_unknown_ffff       dw  ?       ; Unknown value (usually ffff?)

dpb_dos4                ENDS

MAX_DEVICES         EQU     26          ; Maximum number of units for the block
                                        ; device drivers.

MAX_CHAR_DEVICES    EQU     20          ; Max # of character devices

MAX_PORTS           EQU     8           ; Size of ports array (in words)

; Minimum and maximum serial block sizes.

PRODUCT_DOSLINK     EQU     0
PRODUCT_VERSION     EQU     ((MAJOR_VER SHL 8) OR MINOR_VER)

static_rhp      STRUC                   ; Static RHP definition
    rhp_length      db  ?               ; Request header length
    rhp_unit        db  ?               ; Block-device unit number
    rhp_command     db  ?               ; Command code (driver subfunction)
    rhp_status      dw  ?               ; Driver return status
                    db  8 DUP (?)
static_rhp      ENDS

init_req        STRUC                   ; initialize request
                    db  TYPE static_rhp DUP (?)
                    db  (12H - (TYPE static_rhp)) DUP (?)
    init_cmd        dd  ?               ; Segment:Offset of line loading driver
    init_first      db  ?               ; First unit number
init_req        ENDS

init_ans        STRUC                   ; Initialization answer
                    db  TYPE static_rhp DUP (?)
    init_units      db  ?               ; Units supported
    init_end        dd  ?               ; Segment:offset free mem above driver
    init_bpb        dd  ?               ; Segment:Offset BPB pointer array
init_ans        ENDS


?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
激情综合网天天干| 欧美影院午夜播放| 国产毛片精品视频| 麻豆免费看一区二区三区| 蜜芽一区二区三区| 日本视频在线一区| 美日韩黄色大片| 黄一区二区三区| 国产精品一区在线观看乱码| 久久av中文字幕片| 国产在线精品一区二区三区不卡| 成人动漫一区二区| 亚洲一区二区不卡免费| 亚洲狼人国产精品| 一区视频在线播放| 国产亚洲成av人在线观看导航| 欧美一区二区三区电影| 日本韩国欧美在线| 国产成人在线免费| 国产成人啪免费观看软件| 久久精品二区亚洲w码| 91免费在线看| 日韩高清不卡一区二区| 欧美xxxx老人做受| 国产亚洲一区二区三区| 国产精品久久久久久久久果冻传媒| 亚洲天堂福利av| 午夜精品在线看| 久久aⅴ国产欧美74aaa| 波多野结衣在线一区| 欧美三级韩国三级日本三斤| 在线成人小视频| 久久新电视剧免费观看| ...xxx性欧美| 日韩中文字幕不卡| 国产aⅴ精品一区二区三区色成熟| 成人av电影在线网| 91精品一区二区三区在线观看| 欧美大片一区二区| 成人免费在线观看入口| 日本在线不卡视频| 成人av网站免费| 555www色欧美视频| 亚洲国产精华液网站w| 亚洲第一福利一区| 成人在线综合网| 欧美日韩电影一区| 亚洲国产精品高清| 青青国产91久久久久久| 成人午夜在线视频| 日韩一区二区在线看| 国产精品欧美综合在线| 日韩极品在线观看| 92国产精品观看| 精品黑人一区二区三区久久| 亚洲欧美日韩在线| 国产精品影视在线观看| 欧美三级电影一区| 亚洲欧洲性图库| 久久精品国产99久久6| 在线免费精品视频| 国产精品三级视频| 91在线国内视频| 国产精品不卡在线| 天堂久久一区二区三区| www.欧美精品一二区| 26uuu另类欧美亚洲曰本| 亚洲国产另类精品专区| 成人激情动漫在线观看| 日本韩国欧美在线| 夜夜爽夜夜爽精品视频| 国产91精品久久久久久久网曝门| 欧美日韩一区三区四区| 美腿丝袜在线亚洲一区| 亚洲色图欧洲色图婷婷| 石原莉奈在线亚洲三区| 久久激情五月婷婷| 欧美日韩一区二区三区免费看| 国产日韩亚洲欧美综合| 奇米影视在线99精品| 欧美日韩在线精品一区二区三区激情| 中文字幕一区三区| 懂色av中文一区二区三区| 精品久久久久久久久久久院品网| 亚洲成人激情综合网| 在线观看日产精品| 亚洲日本在线天堂| 粉嫩绯色av一区二区在线观看| 26uuu久久天堂性欧美| 免费高清不卡av| 91麻豆精品国产91久久久久久久久| 亚洲一区二区三区在线播放| 色婷婷亚洲婷婷| 亚洲视频在线观看一区| 波多野结衣在线一区| 国产精品国产自产拍在线| 成人av手机在线观看| 国产精品电影一区二区| 成人免费视频caoporn| 国产精品乱人伦| 成人精品视频网站| 亚洲欧洲日韩一区二区三区| av成人老司机| 一区二区三区中文字幕在线观看| 91视视频在线观看入口直接观看www | 韩日av一区二区| 精品黑人一区二区三区久久| 黄页视频在线91| 国产三级精品三级在线专区| 夫妻av一区二区| 亚洲日穴在线视频| 欧美日韩中文字幕一区| 天堂va蜜桃一区二区三区| 欧美电影一区二区| 男男gaygay亚洲| 精品国产精品网麻豆系列 | 亚洲成人自拍网| 一区在线观看免费| 欧美va亚洲va香蕉在线 | 喷水一区二区三区| 中文字幕国产一区二区| 色综合久久久久综合体| 国产一区视频网站| 日韩精品午夜视频| 亚洲午夜私人影院| 亚洲国产成人自拍| 一区二区三区四区av| 国产一区二区三区久久久| 最新日韩在线视频| 91福利国产成人精品照片| 午夜精品福利在线| 精品国产成人系列| 国产成人精品1024| 亚洲国产视频网站| 日韩精品一区二区三区四区| 国产老肥熟一区二区三区| 亚洲特级片在线| 欧美一区二区大片| 国产suv精品一区二区6| 亚洲大片免费看| 久久网站最新地址| 91福利国产精品| 国产一区二区三区久久悠悠色av| 一区在线观看视频| 日韩欧美国产精品| 91小视频在线免费看| 日本不卡视频一二三区| 国产亚洲人成网站| 欧美日韩国产首页在线观看| 国产一区美女在线| 亚洲制服丝袜av| 久久精品视频在线看| 欧美性猛片xxxx免费看久爱| 经典一区二区三区| 亚洲综合区在线| 国产欧美日韩另类视频免费观看| 在线视频欧美精品| 国产精品18久久久久久久久久久久 | 91精品国产综合久久精品app | 久久免费看少妇高潮| 色婷婷综合中文久久一本| 经典三级视频一区| 亚洲图片有声小说| 国产精品乱码一区二区三区软件 | 国产69精品久久777的优势| 一区二区三区成人| 久久青草欧美一区二区三区| 欧美日韩国产高清一区二区 | 久久精品国产秦先生| 懂色av中文字幕一区二区三区| 一本在线高清不卡dvd| 91黄色激情网站| 欧美激情一区二区三区在线| 亚洲高清视频的网址| 国产suv精品一区二区6| 欧美日韩免费高清一区色橹橹| 久久久久成人黄色影片| 国产69精品久久99不卡| 麻豆成人久久精品二区三区红| 久久一二三国产| 国产综合色产在线精品| 日日噜噜夜夜狠狠视频欧美人| 综合欧美亚洲日本| 久久久激情视频| 欧美xxxx在线观看| 555夜色666亚洲国产免| 色久综合一二码| 色综合亚洲欧洲| av不卡在线观看| 成人午夜电影网站| 国产精品99精品久久免费| 麻豆国产欧美日韩综合精品二区| 午夜一区二区三区在线观看| 一区二区在线观看视频| 一区二区中文字幕在线| 1000精品久久久久久久久| 国产精品久久久久久福利一牛影视| 久久久久国产一区二区三区四区| 精品国内片67194| 亚洲精品一区二区三区在线观看|