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

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

?? copro.asm

?? 匯編源代碼大全
?? ASM
字號:
comment *
   Purpose:
   To detect math coprocessor type (8087, 287, 387) and manufacturer
   (Intel, IIT)

   Author:
   Yousuf Khan. Source code based partly on Infoplus source code by
   Andrew Rossman, IIT detection routines entirely my own. Infoplus is
   freeware, therefore this source code is released as freeware,
   not public domain. Original authors must be acknowledged in any
   future work.
*

        .model  tiny

        .data
        fnone   equ     0
        f8087   equ     1
        f80287  equ     2
        f80387  equ     3
        funk    equ     0FFh
        ndp_cw  dw      ?
        ndp_sw  dw      ?
        mNDPCW  dw      ?
        mndp    db      ?
        ndpmsg  db      "Math coprocessor found: $"
        manmsg  db      "Manufacturer: $"
        _87     db      "8087",13,10,"$"
        _287    db      "80287",13,10,"$"
        _387    db      "80387 or i486",13,10,"$"
        _funk   db      "What the hell kind of a copro is this?",13,10,"$"
        Intel   db      "Intel or clone",13,10,"$"
        IIT     db      "IIT or clone",13,10,"$"

        .code
        org     100h

start:

; The next two 80x87 instructions cannot carry the WAIT prefix,
; because there may not be an 80x87 for which to wait.  The WAIT is
; therefore emulated with a MOV CX,<value>! LOOP $ combination.

.8087
        mov     word ptr ndp_cw,0000H
        cli                     ;no interrupts during this test

        fninit                  ;initialize NDP
        mov     cx,2
        loop    $

        fnstcw  ndp_cw          ;store control word in ndp_cw
;        mov     cx,14h
;        loop    $

        sti
        mov     ax,ndp_cw       ;check for valid status word
        cmp     ah,3            ;is NDP present?
        je      short ndp_01    ;if 3, must be there
        mov     mNDP,fnone
        jmp     short ndp_done

ndp_01:
        cmp     ax,03FFH        ;check if 8087
        jne     short ndp_02
        mov     mNDP,f8087
        jmp     short ndp_04

ndp_02:
        call    iit_test

.286P
        cmp     ax,037FH        ;check if 286/387/486
        jne     short ndp_05    ;must be garbage

;detect 287 or 387

        fld1                    ;Load +1.0 onto NDP stack
        fldz                    ;Load +0.0 onto NDP stack
        fdiv                    ;do +1/0
        fld1                    ;Load +1.0 onto NDP stack
        fchs                    ;Change to -1.0
        fldz                    ;Load +0.0 onto NDP stack
        fdiv                    ;do -1/0
        fcom                    ;compare
        fstsw   ndp_sw
        mov     ax,ndp_sw
        and     ah,41H          ; C3, C0
        cmp     ah,40H          ; ST(0) = ST(1)
        jne     short ndp_03
        mov     mNDP,f80287
        jmp     short ndp_04

ndp_03:
        cmp     ah,01H          ; ST(0) < ST(1)
        jne     short ndp_05
        mov     mNDP,f80387

ndp_04:

.8087
        fstcw   mNDPCW          ;save status for INFOPLUS
        jmp     short ndp_done

ndp_05:
        mov     mNDP,funk

ndp_done:
        mov     ah, 9
        mov     dx, offset manmsg
        int     21h
        cmp     [mman], 1       ;IIT=1?
        jne     short intelman
        mov     ah, 9
        mov     dx, offset iit
        int     21h
        jmp     short type_msgs

intelman:
        mov     ah, 9
        mov     dx, offset intel
        int     21h

type_msgs:
        mov     ah, 9
        mov     dx, offset ndpmsg
        int     21h
        cmp     [mndp], 0FFh
        jne     short not_funk
        mov     ah, 9
        mov     dx, offset _funk
        int     21h
        jmp     short exit_prog

not_funk:
        cmp     [mndp], 3
        jne     short not_387
        mov     ah, 9
        mov     dx, offset _387
        int     21h
        jmp     short exit_prog

not_387:
        cmp     [mndp], 2
        jne     short not_287
        mov     ah, 9
        mov     dx, offset _287
        int     21h
        jmp     short exit_prog

not_287:
        mov     ah, 9
        mov     dx, offset _87
        int     21h
exit_prog:
        mov     al, [mndp]
        mov     ah, 4ch
        int     21h

iit_test        proc    near

        .data
        fsb0    equ     <dw 0E8DBh>     ;bank 0 opcode
        fsb1    equ     <dw 0EBDBh>     ;bank 1 opcode
        fsb2    equ     <dw 0EADBh>     ;bank 2 opcode
        f4x4    equ     <dw 0F1DBh>     ;4x4 mat transform opcode
        f0      dd      9.9999
        f1      dd      10.0
        mman    db      0       ;assume Intel=0 installed initially

        .code
        ;initialize two banks to zero
        wait
        fsb0            ;switch to bank 0, default on Intel
        finit
        fsb1            ;switch to bank 1
        finit
        ;store a 2.0 into bank 0 while placing a 1.0 into bank 1
        fsb0            ;switch to bank 0
        fld     [f0]    ;load value from [F2] into bank 0 stack
        fclex           ;clear all math copro exceptions

        fsb1            ;switch to bank 1, should fail on Intel
        fld     [f1]    ;load a 1 into bank 1 stack
        fclex

        fsb0
        fcom    [f0]    ;compare, should be false on Intel
        fclex

        push    ax
        .286p           ;FNSTSW AX only works on 287+
        fnstsw  ax      ;store stat word in AX
        sahf            ;transfer copro flags to CPU flags
        ja      short is_intel
        mov     [mman], 1       ;IIT=1, Intel=0 (default)

is_intel:
        finit           ;reset to original
        pop     ax
        ret
        endp
        end     start


iit_test        proc    near

        .data
        fsb0    equ     <dw 0E8DBh>     ;bank 0 opcode
        fsb1    equ     <dw 0EBDBh>     ;bank 1 opcode
        fsb2    equ     <dw 0EADBh>     ;bank 2 opcode
        f4x4    equ     <dw 0F1DBh>     ;4x4 mat transform opcode
        f0      dd      9.9999
        f1      dd      10.0
        mman    db      0       ;assume Intel=0 installed initially

        .code
        ;initialize two banks to zero
        wait
        fsb0            ;switch to bank 0, default on Intel
        finit
        fsb1            ;switch to bank 1
        finit
        ;store a 2.0 into bank 0 while placing a 1.0 into bank 1
        fsb0            ;switch to bank 0
        fld     [f0]    ;load value from [F2] into bank 0 stack
        fclex           ;clear all math copro exceptions

        fsb1            ;switch to bank 1, should fail on Intel
        fld     [f1]    ;load a 1 into bank 1 stack
        fclex

        fsb0
        fcom    [f0]    ;compare, should be false on Intel
        fclex

        push    ax
        .286p           ;FNSTSW AX only works on 287+
        fnstsw  ax      ;store stat word in AX
        sahf            ;transfer copro flags to CPU flags
        ja      short is_intel
        mov     [mman], 1       ;IIT=1, Intel=0 (default)

is_intel:
        finit           ;reset to original
        pop     ax
        ret
        endp
        end     start

; EOF COPRO.ASM

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品视频1区2区3区| 精品国产乱码久久| 91精品国产色综合久久| 国产亚洲人成网站| 亚洲国产乱码最新视频| 91久久精品午夜一区二区| 3751色影院一区二区三区| 国产精品私人自拍| 狠狠色伊人亚洲综合成人| 色噜噜夜夜夜综合网| 国产亚洲一区二区三区| 日韩 欧美一区二区三区| 99精品视频在线播放观看| 精品美女被调教视频大全网站| 亚洲在线成人精品| 91丨九色丨黑人外教| 久久精品免费在线观看| 蜜桃av一区二区| 欧美精品第1页| 亚洲综合男人的天堂| 91美女视频网站| 国产精品成人在线观看| 国产高清精品在线| 精品国产免费人成电影在线观看四季| 图片区小说区区亚洲影院| 在线视频你懂得一区二区三区| 国产精品免费aⅴ片在线观看| 久草在线在线精品观看| 欧美美女一区二区在线观看| 夜夜揉揉日日人人青青一国产精品| 不卡的av电影| 成人免费在线视频| 99re成人精品视频| 中文字幕一区二区三区色视频| 成人午夜伦理影院| 中文欧美字幕免费| 91尤物视频在线观看| 国产日产欧美精品一区二区三区| 国产成人在线视频网址| 国产色产综合色产在线视频| 盗摄精品av一区二区三区| 久久久不卡影院| 国产成人在线观看| 国产精品久久久久影院老司| 99久久精品久久久久久清纯| 一区免费观看视频| 欧美在线综合视频| 风间由美性色一区二区三区| 国产欧美日韩视频在线观看| 国产久卡久卡久卡久卡视频精品| 久久网站热最新地址| 国产成人一级电影| 一色桃子久久精品亚洲| 91福利视频在线| 五月天丁香久久| 欧美大胆人体bbbb| 国产综合色精品一区二区三区| 国产视频一区二区在线| 99久久国产综合精品色伊| 亚洲综合男人的天堂| 日韩精品一区二区在线| 成人性生交大片免费| 一区二区三区丝袜| 欧美变态口味重另类| 高清成人免费视频| 亚洲一区二区三区四区的| 欧美一区二区黄色| 成人免费的视频| 亚洲成人动漫在线免费观看| 久久久久久久久一| 在线国产亚洲欧美| 国产一区福利在线| ...xxx性欧美| 日韩亚洲欧美一区| 不卡视频在线看| 久久精品99国产国产精| 最新中文字幕一区二区三区| 777色狠狠一区二区三区| 国产成人午夜精品影院观看视频 | 日本中文字幕一区二区视频| 国产午夜精品久久久久久久| 欧美日韩一级二级三级| 国产一区啦啦啦在线观看| 亚洲一区二区三区四区五区黄 | 欧美少妇性性性| 国产不卡视频一区| 美脚の诱脚舐め脚责91 | 丁香婷婷综合色啪| 欧美乱妇一区二区三区不卡视频| 久久精品久久综合| 亚洲人成人一区二区在线观看| 精品国产91亚洲一区二区三区婷婷| 色诱亚洲精品久久久久久| 久久99日本精品| 性久久久久久久久久久久| 久久精子c满五个校花| 91精品国产色综合久久不卡蜜臀 | 精品久久国产老人久久综合| 91福利资源站| 91老师国产黑色丝袜在线| 国产成人综合视频| 国产一区不卡视频| 免费的成人av| 91看片淫黄大片一级在线观看| 国产精品一二三四区| 免费成人美女在线观看| 一区二区三区日韩欧美精品| 中文字幕一区二区三区蜜月 | 欧美一区二区视频免费观看| 91国产精品成人| 欧美影视一区二区三区| 色诱视频网站一区| 精品视频色一区| 欧美肥胖老妇做爰| 日韩女同互慰一区二区| 日韩欧美一级二级三级| 日韩欧美亚洲国产精品字幕久久久| 4hu四虎永久在线影院成人| 欧美日韩国产123区| 欧美日韩精品是欧美日韩精品| 欧美日韩免费一区二区三区| 精品视频一区三区九区| 91精品免费在线| 精品日产卡一卡二卡麻豆| 久久久影视传媒| 国产精品欧美极品| 一区二区三区精品视频在线| 亚洲18影院在线观看| 久久成人免费网| 国产成a人亚洲| 91在线观看地址| 欧美日韩色综合| 日韩三级免费观看| 久久久九九九九| 国产在线看一区| 国产成人高清视频| 色婷婷久久久综合中文字幕| 欧美在线免费播放| 精品av久久707| 中文字幕在线观看不卡视频| 亚洲一区二区三区小说| 精品亚洲porn| 91在线视频免费观看| 宅男在线国产精品| 国产亚洲福利社区一区| 亚洲免费在线观看| 男女男精品视频| 99久久精品免费看国产免费软件| 欧美日韩一级黄| 欧美国产日韩精品免费观看| 一二三四区精品视频| 国产一区二区三区久久久| 色一情一伦一子一伦一区| 精品久久免费看| 亚洲午夜久久久久久久久电影网| 国产主播一区二区三区| 色国产综合视频| 久久免费午夜影院| 午夜影院久久久| 97国产精品videossex| 欧美一区二区三区在线电影| 国产精品免费视频网站| 日本美女视频一区二区| 成人99免费视频| 精品成人私密视频| 亚洲成人在线网站| 99久久99久久综合| 久久老女人爱爱| 日本欧美加勒比视频| 色婷婷综合久色| 国产三区在线成人av| 午夜欧美大尺度福利影院在线看| 成人一区在线观看| 久久综合网色—综合色88| 石原莉奈在线亚洲二区| 日本福利一区二区| 国产精品久久久久aaaa樱花| 精品一区二区免费| 欧美高清精品3d| 亚洲国产精品一区二区尤物区| 成人18视频日本| 欧美国产1区2区| 国产精品99久久久| 精品国产sm最大网站免费看| 日本vs亚洲vs韩国一区三区二区| 欧美亚洲丝袜传媒另类| 亚洲色大成网站www久久九九| 国产美女一区二区| 久久众筹精品私拍模特| 美腿丝袜亚洲一区| 日韩欧美美女一区二区三区| 亚洲一区二区三区视频在线播放| 91香蕉视频黄| 国产精品护士白丝一区av| 成人一道本在线| 国产精品久久久久一区| caoporen国产精品视频| 中文av字幕一区| 91视频在线看| 亚洲美女视频在线观看|