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

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

?? bios.asm

?? 一個(gè)80x86 BIOS 的匯編源代碼.
?? ASM
?? 第 1 頁 / 共 5 頁
字號:
        INC     AL                              ;  ...show more
        DAA
        MOV     DL,AL
        JNB     KBY_01
        MOV     AL,DH                           ;  ...do carry
        ADC     AL,0
        DAA
        MOV     DH,AL

KBY_01: MOV     AL,DH
        CALL    DIGIT                           ; Print hex digit
        MOV     AL,DL
        MOV     CL,4
        ROR     AL,CL
        CALL    DIGIT                           ; Print hex digit
        MOV     AL,DL
        CALL    DIGIT                           ; Print hex digit
        RET

TIMER:  MOV     DX,241h                         ; Check for timer #2 port
        CLI
        IN      AL,DX                           ;  ..read BCD seconds/100
        STI
        CMP     AL,99h                          ; Are BCD digits in range?
        JBE     SER_01                          ;  ...yes, port exists
;
        MOV     DX,341h                         ; Check for timer #1 port
        CLI
        IN      AL,DX                           ;  ..read BCD seconds/100
        STI
        CMP     AL,99h                          ; Are BCD digits in range?
        JBE     SER_01                          ;  ...yes, port exists
;
        STC                                     ; No hardware, ports 0FFh
        RET

SER_01: CLC                                     ; Found timer(s) answering
        RET

V_CONT: MOV     BP,4                            ; Assume monochrome, 4K memory
        MOV     BX,0B000h                       ;  ...segment in BX
        MOV     AL,DS:49h                       ; Get the video mode
        CMP     AL,7                            ;  ...was it mono?
        JZ      M_SEG                           ;  ...yes, skip
        MOV     BP,10h                          ; Else CGA, has 16K memory
        MOV     BX,0B800h                       ;  ...segment in BX

M_SEG:  PUSH    BX                              ; Load video seg in ES
        POP     ES
        MOV     AL,DS:65h                       ; Get CRT hardware mode
        AND     AL,11110111b                    ;  ...disable video
        MOV     DX,DS:63h                       ; Get 6845 index port
        ADD     DX,4                            ;  ...add offset for
        OUT     DX,AL                           ; 6845 controller port

CRTRAM: CALL    MEMTST                          ; Memory check ES:0 - ES:0400
        DEC     BP
        JNZ     CRTRAM                          ; Loop until CRT RAM checked
        JNB     LE2F5
        OR      Byte ptr DS:15h,ER_CRT          ; Set CRT RAM error in status

LE2F5:  CALL    V_INIT
        MOV     AX,1414h                        ; Time-out value seconds
        MOV     DS:78h,AX                       ;  ...LPT1
        MOV     DS:7Ah,AX                       ;  ...LPT2
        MOV     AX,101h                         ; Time-out value seconds
        MOV     DS:7Ch,AX                       ;  ...COM1
        MOV     DS:7Eh,AX                       ;  ...COM2
        MOV     SI,offset LPTRS                 ; SI --> LPTR port table
        XOR     DI,DI                           ;  ...offset into data seg
        MOV     CX,3                            ;  ...number of printers

NXTPRT: MOV     DX,CS:[SI]                      ; Get LPTR port
        MOV     AL,10101010b                    ;  ...write value
        OUT     DX,AL                           ;  ...to the LPTR
        MOV     AL,11111111b                    ; Dummy data value
        OUT     0C0h,AL                         ;  ...on the bus
        IN      AL,DX                           ; Read code back
        CMP     AL,10101010b                    ;  ...check code
        JNZ     NO_LPT                          ;  ...no printer found
        MOV     [DI+8],DX                       ; Save printer port
        INC     DI
        INC     DI

NO_LPT: INC     SI
        INC     SI
        LOOP    NXTPRT
        MOV     AX,DI                           ; Number of printers * 2
        MOV     CL,3                            ;  ...get shift count
        ROR     AL,CL                           ;  ...divide by eight
        MOV     DS:11h,AL                       ;  ...save in equip. flag

        XOR     DI,DI                           ; com port(s) at 40:00 (hex)

COM_1:  MOV     DX,3FBh                         ; COM #1 line control reg.
        MOV     AL,00011010b                    ;  ...7 bits, even parity
        OUT     DX,AL                           ; Reset COM #1 line cont. reg
        MOV     AL,11111111b                    ;  ...noise pattern
        OUT     0C0h,AL                         ; Write pattern on data buss
        IN      AL,DX                           ;  ...read result from COM #1
        CMP     AL,00011010b                    ; Check if serial port exists
        JNZ     COM_2                           ;  ...skip if no COM #1 port
        MOV     Word ptr [DI],3F8h              ; Else save port # in impure
        INC     DI                              ;  ...potential COM #2 port
        INC     DI                              ;  ...is at 40:02 (hex)

COM_2:  MOV     DX,2FBh                         ; COM #2 line control reg
        MOV     AL,00011010b                    ;  ...7 bits, even parity
        OUT     DX,AL                           ; Reset COM #2 line cont. reg
        MOV     AL,11111111b                    ;  ...noise pattern
        OUT     0C0h,AL                         ; Write pattern on data buss
        IN      AL,DX                           ;  ...read results from COM #2
        CMP     AL,00011010b                    ; Check if serial port exists
        JNZ     COM_CT                          ;  ...skip if no COM #2 port
        MOV     word ptr [DI],2F8h              ; Else save port # in impure
        INC     DI                              ;  ...total number of serial
        INC     DI                              ;  ...interfaces times two

COM_CT: MOV     AX,DI                           ; Get serial interface count
        OR      DS:11h,AL                       ;  ...equip.  flag
        MOV     DX,201h
        IN      AL,DX                           ; Read game controller
        TEST    AL,0Fh                          ;  ...anything there?
        JNZ     NOGAME                          ;  ...yes, invalid
        OR      Byte ptr DS:11h,00010000b       ; Else game port present

NOGAME: MOV     DX,0C000h                       ; ROM segment start
        PUSH    DS

FNDROM: MOV     DS,DX                           ; Load ROM segment
        XOR     BX,BX                           ;  ...ID offset
        MOV     AX,[BX]                         ; Read the ROM id
        CMP     AX,0AA55h
        JNZ     NXTROM                          ;  ...not valid ROM
        MOV     AX,40h
        MOV     ES,AX
        MOV     AH,0
        MOV     AL,[BX+2]                       ; Get ROM size (bytes * 512)
        MOV     CL,5
        SHL     AX,CL                           ; Now ROM size in segments
        ADD     DX,AX                           ;  ...add base segment
        MOV     CL,4
        SHL     AX,CL                           ; ROM address in bytes
        MOV     CX,AX                           ;  ...checksum requires CX
        CALL    CHK_01                          ; Find ROM checksum
        JNZ     BADROM                          ;  ...bad ROM
        PUSH    DX
        MOV     Word ptr ES:67h,3               ; Offset  for ROM being setup
        MOV     ES:69h,DS                       ; Segment for ROM being setup
        CALL    Dword ptr ES:67h                ;  ...call ROM initialization
        POP     DX
        JMP     short   FND_01

BADROM: OR      Byte ptr ES:15h,ER_ROM          ; ROM present, bad checksum

NXTROM: ADD     DX,80h                          ; Segment for next ROM

FND_01: CMP     DX,0F600h                       ; End of ROM space
        JL      FNDROM                          ;  ...no, continue
        POP     DS
        IN      AL,21h                          ; Read ic 8259 interrupt mask
        AND     AL,10111100b                    ;  ...enable IRQ (0,1,6) ints
        OUT     21h,AL                          ; (tod_clock,key,floppy_disk)

        MOV     AH,1
        MOV     CH,0F0h
        INT     10h                             ; Set cursor type
        CALL    BLANK                           ;  ...clear display
        PUSH    DS
        PUSH    CS
        POP     DS
        POP     ES
        TEST    Byte ptr ES:10h,1               ; Floppy disk present?
        JZ      FND_02                          ;  ...no
        CMP     Word ptr ES:72h,1234h           ; Bios setup before?
        JNZ     CONFIG                          ;  ...no
FND_02: JMP     RESET                           ; Else skip memory check

CONFIG: MOV     AX,41Ah                         ; Where to move cursor
        MOV     SI,offset STUF                  ; ...equipment message
        CALL    LOCATE                          ; ...position cursor
        CALL    PRINT                           ; ...and print string
        MOV     AX,51Bh                         ; New cursor position
        MOV     SI,offset STUF_1                ;  ...CR/LF
        CALL    Locate                          ;  ...position cursor
        CALL    PRINT                           ;  ...and print string
        TEST    Byte ptr ES:15h,11111111b       ; Any error so far?
        JZ      VALID                           ;  ...no, skip
        CALL    PRINT                           ; Print string
        MOV     AL,ES:15h                       ;  ...get error number
        CALL    NUMBER                          ;  ...print hex value
        CALL    PRINT                           ;  ...print prompt
        MOV     BL,4                            ;  ...long beep
        CALL    BEEP
        CALL    GETCH                           ; Wait for keypress
        PUSH    AX                              ;  ...save answer
        CALL    OUTCHR                          ;  ...echo answer
        POP     AX                              ;  ...get  answer
        CMP     AL,'Y'                          ; Was it "Y"
        JZ      FND_02                          ;  ...ok, continue
        CMP     AL,'y'                          ; Was it "y"
        JZ      FND_02                          ;  ...ok, continue
        JMPF    0F000h,COLD                     ; Else cold reset

VALID:  MOV     SI,offset STUF_2                ; No errors found, load banner
        CALL    PRINT                           ;  ...and print string
        MOV     AX,81Eh                         ; Where to move cursor
        CALL    LOCATE                          ;  ...position cursor
        CALL    PRINT                           ;  ...and print string
        MOV     AX,91Ch                         ; Where to move cursor
        CALL    LOCATE                          ;  ...position cursor
        MOV     BL,17h                          ; Character count

FENCE:  MOV     AL,'-'                          ; Load ascii minus
        CALL    OUTCHR                          ;  ...and print it
        DEC     BL
        JNZ     FENCE
        MOV     AX,0A21h                        ; Where to move cursor
        CALL    LOCATE                          ;  ...position cursor
        MOV     AL,ES:49h                       ; Get CRT mode
        CMP     AL,7
        JZ      FEN_01                          ;  ...monochrome
        MOV     SI,offset STUF_3                ;  ...color/graphics

FEN_01: CALL    PRINT                           ; Print the string
        MOV     BX,0B21h
        MOV     AL,ES:11h                       ; Get equipment byte
        PUSH    AX
        MOV     CL,6
        ROR     AL,CL
        AND     AL,3                            ; Number of printers
        JZ      FEN_02
        MOV     BP,8
        MOV     SI,offset STUF_4
        CALL    FAO                             ; Formatted ascii output

FEN_02: POP     AX                              ; Equipment byte restore
        MOV     SI,offset STUF_5                ;  ...game controller
        PUSH    AX                              ; Save a copy of equip. byte
        TEST    AL,00010000b
        JZ      NO_TOY                          ; Jump if no game controller
        MOV     AX,BX
        CALL    LOCATE                          ; Position cursor
        CALL    PRINT                           ;  ...and print string
        INC     BH                              ;  ...scroll line

NO_TOY: CALL    TIMER                           ; Timer devices?
        JB      NO_TIM                          ;  ...skip if none
        MOV     AX,BX
        CALL    LOCATE                          ; Position cursor
        INC     BH

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区四区不卡在线| 亚洲另类在线一区| 色婷婷国产精品| 开心九九激情九九欧美日韩精美视频电影| 精品理论电影在线| 色呦呦国产精品| 国产一区二区福利| 日本美女一区二区三区视频| 国产精品久久久久久一区二区三区| 91麻豆精品国产91久久久更新时间| 岛国精品一区二区| 免费成人性网站| 亚洲综合视频在线| 国产精品第一页第二页第三页| 日韩欧美电影一区| 欧美日韩国产三级| 97国产一区二区| 国产一区二区三区香蕉| 亚洲成a天堂v人片| 国产蜜臀97一区二区三区| 91美女在线看| 国产成人午夜片在线观看高清观看| 玉米视频成人免费看| 久久青草欧美一区二区三区| 欧美亚洲国产一卡| 色综合久久中文综合久久牛| 成人h动漫精品| 成人性视频免费网站| 国产精品99久久久久久宅男| 三级亚洲高清视频| 一区二区三区中文在线| 久久精品一区二区三区不卡 | 国产精品情趣视频| 欧美一区二区三区喷汁尤物| 91小宝寻花一区二区三区| 理论电影国产精品| 首页国产欧美日韩丝袜| 亚洲人成网站精品片在线观看| 久久亚洲捆绑美女| 欧美日韩二区三区| 欧美性欧美巨大黑白大战| eeuss鲁片一区二区三区在线看| 久久99国产精品成人| 日韩av一区二区在线影视| 亚洲午夜国产一区99re久久| 日韩理论片一区二区| 国产精品国产三级国产a| 欧美一区二区三级| 欧美成人aa大片| 日韩一区二区三区视频在线观看| 欧美午夜精品久久久久久超碰| 99精品视频一区| 成人丝袜视频网| 国产91丝袜在线播放0| 国产乱码精品一区二区三区av | 一区二区三区波多野结衣在线观看 | 欧美亚洲综合另类| 91一区二区在线观看| 国产精品一二三| 国产精品自产自拍| 国产揄拍国内精品对白| 国产综合久久久久久久久久久久| 麻豆精品国产91久久久久久| 蜜桃一区二区三区四区| 美脚の诱脚舐め脚责91| 亚洲国产成人精品视频| 亚洲午夜视频在线观看| 首页国产欧美日韩丝袜| 日本一不卡视频| 国产成人精品免费一区二区| 成人一区二区三区视频| 国产成人综合视频| 国产一区二区成人久久免费影院| 国产乱人伦精品一区二区在线观看| 国产精品 日产精品 欧美精品| 国产成人精品综合在线观看 | 日本亚洲电影天堂| 紧缚奴在线一区二区三区| 国产在线视视频有精品| 成人午夜av影视| 色哟哟欧美精品| 91超碰这里只有精品国产| 日韩一区二区三区电影在线观看 | 欧美极品aⅴ影院| 亚洲色欲色欲www| 亚洲国产日产av| 激情六月婷婷综合| 成人毛片在线观看| 91无套直看片红桃| 欧美一三区三区四区免费在线看 | 精品入口麻豆88视频| 国产日韩欧美激情| 亚洲激情第一区| 美女网站一区二区| 成人久久视频在线观看| 欧美在线视频全部完| 91精品国产欧美一区二区18 | 国产人成亚洲第一网站在线播放| 亚洲三级免费观看| 日韩精品欧美精品| 成人午夜av电影| 欧美日韩国产电影| 欧美国产日韩在线观看| 亚洲国产成人精品视频| 国产精一品亚洲二区在线视频| 91女厕偷拍女厕偷拍高清| 日韩精品专区在线影院重磅| 国产精品女人毛片| 日韩经典中文字幕一区| 国产成人小视频| 精品国产污污免费网站入口| 亚洲免费观看在线视频| 精品在线亚洲视频| 欧美伊人久久久久久午夜久久久久| 日韩欧美亚洲一区二区| 亚洲女同ⅹxx女同tv| 韩国毛片一区二区三区| 欧美日韩国产一级片| 国产精品美日韩| 老鸭窝一区二区久久精品| 色猫猫国产区一区二在线视频| 精品国产不卡一区二区三区| 一区二区三区在线视频免费观看| 国产河南妇女毛片精品久久久| 欧美乱妇20p| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 欧美私人免费视频| 国产女人水真多18毛片18精品视频| 日韩精品一二三四| 欧美美女直播网站| 亚洲欧美日韩精品久久久久| 国产精品一卡二卡| 日韩欧美成人一区| 丝袜美腿高跟呻吟高潮一区| av一区二区不卡| 欧美极品美女视频| 国产一区91精品张津瑜| 91精品国产入口在线| 亚洲成人中文在线| 色系网站成人免费| 中文字幕制服丝袜一区二区三区| 国产麻豆精品视频| 欧美成人精品高清在线播放| 亚洲成人免费观看| 在线观看免费一区| 亚洲精品菠萝久久久久久久| 国产宾馆实践打屁股91| 久久免费美女视频| 韩国三级在线一区| 2024国产精品视频| 精品亚洲国产成人av制服丝袜| 在线播放91灌醉迷j高跟美女| 亚洲小说欧美激情另类| 欧美伊人久久大香线蕉综合69| 亚洲综合激情小说| 欧美日韩中文国产| 亚洲第一搞黄网站| 在线综合+亚洲+欧美中文字幕| 亚洲精品视频在线看| 91啪亚洲精品| 夜夜揉揉日日人人青青一国产精品| 欧美日韩小视频| 久久99精品久久久久久动态图| 国产日韩欧美a| 99国产精品久久久久久久久久久| 亚洲精品国产第一综合99久久| 色婷婷激情久久| 丝袜亚洲另类丝袜在线| 欧美一区二区免费| 国产中文一区二区三区| 日本一区二区不卡视频| av电影在线不卡| 亚洲午夜国产一区99re久久| 欧美午夜精品久久久久久孕妇| 亚洲三级电影网站| 色婷婷久久一区二区三区麻豆| 天堂影院一区二区| 欧美电视剧在线观看完整版| 国产精品一区在线观看乱码| 国产精品久久久久影院亚瑟| 日本精品裸体写真集在线观看| 亚洲国产成人av网| 欧美va天堂va视频va在线| 国产麻豆一精品一av一免费| 国产精品成人在线观看| 在线视频欧美精品| 日本 国产 欧美色综合| 久久免费视频色| 色香蕉成人二区免费| 首页国产欧美久久| 国产精品国产精品国产专区不片| 在线免费观看日本欧美| 裸体歌舞表演一区二区| 国产精品丝袜黑色高跟| 一本色道久久综合狠狠躁的推荐 | 久久婷婷国产综合精品青草| 成人的网站免费观看| 婷婷六月综合亚洲| 欧美国产综合一区二区| 欧美吻胸吃奶大尺度电影|