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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? queue.inc

?? MenuetOS是一個(gè)用匯編開(kāi)發(fā)的32/64位PC操作系統(tǒng)
?? INC
字號(hào):
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;                                                                 ;;
;;  QUEUE.INC                                                      ;;
;;                                                                 ;;
;;  Buffer queue management for Menuet OS TCP/IP Stack             ;;
;;                                                                 ;;
;;  Version 0.3  29 August 2002                                    ;;
;;                                                                 ;;
;;  Copyright 2002 Mike Hibbett, mikeh@oceanfree.net               ;;
;;                                                                 ;;
;;  See file COPYING for details                                   ;;
;;                                                                 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
   
   
;*******************************************************************
;   Interface
;
;       queueInit   Configures the queues to empty
;       dequeue     Removes a buffer pointer from a queue
;       queue       Inserts a buffer pointer into a queue
;       freeBuff    Adds the buffer pointer to the list of free buffers
;       queueSize   Returns the number of entries in a queue
;       
;      The various defines for queue names can be found in stack.inc
;
;*******************************************************************


;***************************************************************************
;   Function
;      freeBuff
;
;   Description
;       Adds a buffer number to the beginning of the free list.
;       buffer number in eax  ( ms word zeroed )
;       all other registers preserved                         
;        This always works, so no error returned
;***************************************************************************
freeBuff:
    push    ebx
    push    ecx
    mov     ebx, EMPTY_QUEUE
    shl     ebx, 1
    add     ebx, queues
    cli     ; Ensure that another process does not interfer
    movzx   ecx, word [ebx]    
    mov     [ebx], ax
    shl     eax, 1
    add     eax, queueList
    mov     [eax], cx    
    sti
    pop     ecx
    pop     ebx
    
    ret
    

;***************************************************************************
;   Function
;      queueSize
;
;   Description
;       Counts the number of entries in a queue
;       queue number in ebx ( ms word zeroed )
;       Queue size returned in eax
;    This always works, so no error returned
;***************************************************************************
queueSize:
    xor     eax, eax
    shl     ebx, 1
    add     ebx, queues
    movzx   ecx, word [ebx]
    cmp     cx, NO_BUFFER
    je      qs_exit

qs_001:
    inc     eax
    shl     ecx, 1
    add     ecx, queueList
    movzx   ecx, word [ecx]
    cmp     cx, NO_BUFFER
    je      qs_exit
    jmp     qs_001
 
qs_exit:
    ret
    

;***************************************************************************
;   Function
;      queue
;
;   Description
;       Adds a buffer number to the *end* of a queue
;       This is quite quick because these queues will be short
;       queue number in eax ( ms word zeroed )
;       buffer number in ebx  ( ms word zeroed )
;       all other registers preserved                         
;        This always works, so no error returned
;***************************************************************************
queue:
    push    ebx
    shl     ebx, 1
    add     ebx, queueList        ; eax now holds address of queue entry
    mov     [ebx], word NO_BUFFER    ; This buffer will be the last
    
    cli
    shl     eax, 1
    add     eax, queues            ; eax now holds address of queue
    movzx   ebx, word [eax]

    cmp     bx, NO_BUFFER
    jne     qu_001
    
    pop     ebx
    ; The list is empty, so add this to the head
    mov     [eax], bx    
    jmp     qu_exit
    
qu_001:
    ; Find the last entry
    shl     ebx, 1
    add     ebx, queueList
    mov     eax, ebx
    movzx   ebx, word [ebx]
    cmp     bx, NO_BUFFER
    jne     qu_001
    
    mov     ebx, eax
    pop     eax
    mov     [ebx], ax
    
qu_exit:
    sti
    ret



;***************************************************************************
;   Function
;      dequeue
;
;   Description
;       removes a buffer number from the head of a queue
;       This is fast, as it unlinks the first entry in the list
;       queue number in eax ( ms word zeroed )
;       buffer number returned in eax ( ms word zeroed )
;       all other registers preserved                         
;
;***************************************************************************
dequeue:
    push    ebx
    shl     eax, 1
    add     eax, queues            ; eax now holds address of queue
    mov     ebx, eax
    cli
    movzx   eax, word [eax]
    cmp     ax, NO_BUFFER
    je      dq_exit
    push    eax
    shl     eax, 1
    add     eax, queueList        ; eax now holds address of queue entry
    mov     ax, [eax]
    mov     [ebx], ax
    pop     eax
    
dq_exit:
    sti
    pop     ebx
    ret   
   
   
;***************************************************************************
;   Function
;      queueInit
;
;   Description
;       Initialises the queues to empty, and creates the free queue
;       list.                         
;
;***************************************************************************
queueInit:
    mov     esi, queues
    mov     ecx, NUMQUEUES
    mov     ax, NO_BUFFER

qi001:
    mov     [esi], ax
    inc     esi
    inc     esi
    loop    qi001
    
    mov     esi, queues + ( 2 * EMPTY_QUEUE )    
    
    ; Initialise empty queue list
    
    xor     ax, ax
    mov     [esi], ax
    
    mov     ecx, NUMQUEUEENTRIES - 1
    mov     esi, queueList

qi002:    
    inc     ax
    mov     [esi], ax
    inc     esi
    inc     esi
    loop    qi002
    
    mov     ax, NO_BUFFER
    mov     [esi], ax
    
    ret
    

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产a| 91麻豆精品国产91久久久久| 亚洲色图欧洲色图婷婷| 69精品人人人人| 国产 日韩 欧美大片| 亚洲6080在线| 国产精品二三区| 欧美成人福利视频| 色94色欧美sute亚洲线路二 | 香蕉久久一区二区不卡无毒影院| 欧美一区二区三区婷婷月色| 91免费视频观看| 国产黄人亚洲片| 精品中文字幕一区二区| 亚洲观看高清完整版在线观看| 国产亚洲精品超碰| 欧美一级精品在线| 欧美精品视频www在线观看| 不卡的av在线| 国产福利一区在线观看| 看片的网站亚洲| 午夜精品福利在线| 亚洲精品免费在线观看| 国产精品久久久久久久久快鸭 | 国产综合色视频| 婷婷激情综合网| 亚洲精品中文字幕在线观看| 欧美精品一区二区三区很污很色的 | 久久久精品国产免费观看同学| 91污在线观看| 国产成人亚洲综合a∨婷婷| 亚洲综合自拍偷拍| 精品国产91洋老外米糕| 欧美久久一二三四区| 91色|porny| 国产.欧美.日韩| 久久精品国内一区二区三区| 亚洲高清中文字幕| 亚洲欧美日韩人成在线播放| 欧美激情一区二区| 精品欧美乱码久久久久久1区2区| 欧美午夜宅男影院| 2019国产精品| 91国在线观看| 成人午夜免费视频| 丁香婷婷综合色啪| 国产99久久久国产精品潘金网站| 亚洲免费观看在线观看| 国产精品国产三级国产有无不卡 | 国产成人亚洲综合a∨婷婷| 久久av老司机精品网站导航| 亚洲电影一区二区| 亚洲视频 欧洲视频| 国产精品盗摄一区二区三区| 国产亚洲成aⅴ人片在线观看| 日韩一区二区在线看| 欧美日韩高清一区| 欧美一级片免费看| 91麻豆精品国产91久久久更新时间 | 成人综合婷婷国产精品久久| 国产一区欧美二区| 国内成人免费视频| 国产一区美女在线| 亚洲视频一区在线观看| 中文字幕综合网| 亚洲精品免费在线| 亚洲制服丝袜av| 亚洲欧美日韩中文播放| 亚洲色图在线播放| 亚洲国产精品精华液网站| 亚洲成av人综合在线观看| 亚洲成av人片在线| 日韩高清不卡在线| 国产综合色在线视频区| 国产精品18久久久| 成人午夜免费电影| 91免费版在线| 欧美性猛交xxxxxx富婆| 7777精品伊人久久久大香线蕉超级流畅 | 91精品国产综合久久精品| 日韩欧美国产一区在线观看| 欧美国产禁国产网站cc| 国产精品超碰97尤物18| 亚洲综合免费观看高清完整版 | 婷婷国产在线综合| 久久超碰97人人做人人爱| 国产一区视频在线看| 99精品视频在线播放观看| 欧美午夜电影一区| 欧美一级国产精品| 中文子幕无线码一区tr| 一级女性全黄久久生活片免费| 天堂久久一区二区三区| 久久er99热精品一区二区| 天堂久久久久va久久久久| 国产精品原创巨作av| 91丝袜美女网| 欧美精品18+| 中文字幕精品综合| 亚洲3atv精品一区二区三区| 国产主播一区二区| 色偷偷成人一区二区三区91| 91精品国产91热久久久做人人| 久久久久9999亚洲精品| 亚洲一区二区中文在线| 精品在线观看免费| 色94色欧美sute亚洲13| 精品国产乱码久久久久久闺蜜 | 中文字幕精品—区二区四季| 亚洲一线二线三线视频| 免费成人小视频| a4yy欧美一区二区三区| 在线不卡a资源高清| 国产精品免费久久久久| 五月婷婷久久丁香| 懂色av一区二区夜夜嗨| 日韩精品一区二区三区中文不卡| 成人免费小视频| 久久99热这里只有精品| 在线看不卡av| 久久久www免费人成精品| 天天综合天天做天天综合| 成人黄色a**站在线观看| 日韩精品专区在线影院观看| 一区二区高清视频在线观看| 国产伦精一区二区三区| 欧美日韩激情一区二区三区| 国产精品成人免费在线| 韩国女主播一区二区三区| 欧美日韩精品一区二区天天拍小说| 亚洲国产精品二十页| 久久国产精品99久久久久久老狼| 欧美午夜精品久久久| 日韩理论片在线| 国产伦精品一区二区三区在线观看| 欧美蜜桃一区二区三区| 一区二区三区91| 色综合久久久久综合| 久久亚洲精华国产精华液| 国产精品高潮呻吟| 日本美女一区二区| 欧美日韩一区二区三区四区| 亚洲男人的天堂av| 99精品国产视频| 中文字幕在线观看一区| 国产成人av一区二区三区在线 | 免费人成精品欧美精品| 欧美美女黄视频| 亚洲一区二区不卡免费| 色婷婷激情一区二区三区| 综合久久久久久久| 91丨九色丨蝌蚪丨老版| 国产精品伦一区| 国产成人高清在线| 欧美一区二区三区影视| 狠狠色狠狠色合久久伊人| 精品欧美乱码久久久久久1区2区 | 国产精品妹子av| 成人三级伦理片| 国产精品久久久久久久第一福利| 国产成人av电影| 中文字幕免费不卡| 99久久精品国产一区| 亚洲欧美日韩精品久久久久| 99精品欧美一区二区蜜桃免费 | 亚洲综合一区二区三区| 91精彩视频在线| 日韩电影免费一区| 日韩一区二区麻豆国产| 激情六月婷婷久久| 久久久国产精品午夜一区ai换脸| 国产精品99久久久久久似苏梦涵 | 欧美在线观看视频在线| 午夜精品视频一区| 一区二区三区资源| 91精品国产综合久久精品app| 狠狠久久亚洲欧美| 中文字幕成人在线观看| 91污片在线观看| 日韩高清在线观看| 欧美一级精品在线| 精品一区二区三区蜜桃| 国产精品区一区二区三区| 在线观看不卡一区| 日本麻豆一区二区三区视频| 欧美不卡123| 色婷婷久久一区二区三区麻豆| 午夜影院久久久| 精品国产污网站| 97精品电影院| 日本免费新一区视频| 国产三区在线成人av| 欧美午夜精品久久久| 久久爱另类一区二区小说| 国产精品久久久久影院老司 | 日韩av网站免费在线| 国产日产欧产精品推荐色| 91在线精品一区二区| 日韩国产在线观看一区| 国产欧美1区2区3区|