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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? flate.a

?? zip壓縮
?? A
?? 第 1 頁 / 共 2 頁
字號:
        jsr             _memflush               ; ignores the unshrink flag        bra.s           fe\@fm\@:   jsr             _flushfe\@:   lea             8+INTSIZE+G_SIZE(sp),sp                 ENDM                ENDC    ; ?FUNZIP; Here are the two bit-grabbing macros, defined in their NO_CHECK_EOF form:;;   #define NEEDBITS(n) {while(k<(n)){b|=((ulg)NEXTBYTE)<<k;k+=8;}};   #define DUMPBITS(n) {b>>=(n);k-=(n);};; Without NO_CHECK_EOF, NEEDBITS reads like this:;;   {while(k<(n)){int c=NEXTBYTE;if(c==EOF)return 1;b|=((ulg)c)<<k;k+=8;}};; NEEDBITS clobbers d0, d1, a0, and a1, none of which can be used as the arg; to the macro specifying the number of bits.  The arg can be a shortword memory; address, or d2-d7.  The result is copied into d1 as a word ready for masking.; DUMPBITS has no side effects; the arg must be a d-register (or immediate in the; range 1-8?) and only the lower byte is significant.NEEDBITS        MACRO                   ; arg is shortnb\@:   cmp.w           \1,k            ; assert 0 < k <= 32 ... arg may be 0        bhs.s           ne\@        NEXTBYTE                        ; returns in d0.l                 IFND   NO_CHECK_EOF        cmp.w           #EOF,d0        bne.s           nok\@        moveq           #RET_ERR,d0        bra             return                 ENDC   ; !NO_CHECK_EOFnok\@:  lsl.l           k,d0        or.l            d0,b        addq.w          #8,k        bra.s           nb\@ne\@:   move.l          b,d1            ; return a copy of b in d1                xdef nb\@   ; XXX TEMPORARY                xdef ne\@                ENDMDUMPBITS        MACRO                   ; arg is byte, not short!        lsr.l           \1,b            ; upper bits of \1 are ignored, right?        sub.b           \1,k                ENDM; This is a longword version of the mask_bits constant array:longmasks:      dc.l    $00000000,$00000001,$00000003,$00000007,$0000000F                dc.l    $0000001F,$0000003F,$0000007F,$000000FF,$000001FF                dc.l    $000003FF,$000007FF,$00000FFF,$00001FFF,$00003FFF                dc.l    $00007FFF,$0000FFFF,0,0,0,0,0,0,0,0,0,0,0,0,0,0    xdef longmasks  ; XXX; ******************************************************************************; Here we go, finally:        xdef    _inflate_codes_inflate_codes:        link            a5,#-8        movem.l         savregs,-(sp); 8(a5) = tl, 12(a5) = td, 16(a5) = bl, 18|20(a5) = bd... add 4 for REENT_G; -4(a5) = ml, -8(a5) = md, both unsigned long.; Here we cache some globals and args:                IFD     REENT_G        move.l          8(a5),G                ELSE        lea             _G,G            ; G is now a global instance                ENDC        lea             longmasks,lmask        move.l          bb(G),b        MOVINT          bk(G),k                IFD     INT16        moveq           #0,w            ; keep this usable as longword                ENDC        MOVINT          wp(G),w        moveq           #0,e            ; keep this usable as longword too        MOVINT          16+G_SIZE(a5),d0        asl.w           #2,d0        move.l          (lmask,d0.w),-4(a5)     ; ml = mask_bits[bl]        MOVINT          16+INTSIZE+G_SIZE(a5),d0        asl.w           #2,d0        move.l          (lmask,d0.w),-8(a5)     ; md = mask_bits[bd]        xdef main_loop   ; XXX  TEMPORARY        xdef newtop        xdef nonlit        xdef distop        xdef docopy        xdef nonleng        xdef tailgo        xdef finish        xdef disbrkmain_loop:        nop      ; XXX TEMPORARY        NEEDBITS        14+INTSIZE+G_SIZE(a5)   ; (unsigned) bl        and.l           -4(a5),d1               ; ml                IFNE SIZEOF_huft-8        mulu            #SIZEOF_huft,d1                ELSE        asl.l           #3,d1                ENDC        move.l          8+G_SIZE(a5),t          ; tl        add.l           d1,tnewtop:  move.b         h_b(t),d0         DUMPBITS       d0         move.b         h_e(t),e         cmp.b          #32,e                   ; is it a literal?         bne            nonlit                  ; no          move.w        h_v_n(t),d0             ; yes                IFGT SIZEOF_slide-4          lea           redirslide(G),a0                ELSE          move.l        redirslide(G),a0                ENDC          move.b        d0,(a0,w.l)             ; stick in the decoded byte          addq.l        #1,w          cmp.l         #WSIZE,w          blo           main_loop           FLUSH        w           ext.l        d0                      ; does a test as it casts long           bne          return           moveq        #0,w           bra          main_loop               ; break (newtop loop)nonlit:  cmp.b          #31,e                   ; is it a length?         beq            finish                  ; no, it's the end marker         bhi            nonleng                 ; no, it's something else          NEEDBITS      e                       ; yes: a duplicate string          move.w        e,d0          asl.w         #2,d0          and.l         (lmask,d0.w),d1          moveq         #0,n                    ; cast h_v_n(t) to long          move.w        h_v_n(t),n          add.l         d1,n                    ; length of block to copy          DUMPBITS      e          NEEDBITS      14+(2*INTSIZE)+G_SIZE(a5)   ; bd, lower word if long          and.l         -8(a5),d1                   ; md                IFNE SIZEOF_huft-8          mulu          #SIZEOF_huft,d1                ELSE          asl.l         #3,d1                ENDC          move.l        12+G_SIZE(a5),t                 ; td          add.l         d1,tdistop:    move.b       h_b(t),d0           DUMPBITS     d0           move.b       h_e(t),e           cmp.b        #32,e                   ; is it a literal?           blo.s        disbrk                  ; then stop doing this            cmp.b       #INVALID,e              ; is it bogus?            bne.s       disgo             moveq      #RET_ERR,d0             ; then fail             bra        returndisgo:      and.w       #$001F,e            NEEDBITS    e            move.w      e,d0            asl.w       #2,d0            and.l       (lmask,d0.w),d1                IFNE SIZEOF_huft-8            mulu        #SIZEOF_huft,d1                ELSE            asl.l       #3,d1                ENDC            move.l      h_v_t(t),t            add.l       d1,t            bra         distopdisbrk:   NEEDBITS      e          move.l        e,d0          asl.w         #2,d0          and.l         (lmask,d0.w),d1          move.l        w,d          move.w        h_v_n(t),d0     ; assert top word of d0 is zero          sub.l         d0,d          sub.l         d1,d            ; distance back to copy the block          DUMPBITS      edocopy:    move.l       #WSIZE,e        ; copy the duplicated string           and.l        #WSIZE-1,d      ; ...but first check if the length           cmp.l        d,w             ; will overflow the window...           blo.s        ddgw            sub.l       w,e           bra.s        dadwddgw:       sub.l       d,edadw:      cmp.l        #$08000,e       ; also, only copy <= 32K, so we can           bls.s        dnox            ; use a dbra loop to do it            move.l      #$08000,ednox:      cmp.l        n,e           bls.s        delen            move.l      n,edelen:     sub.l        e,n             ; size of sub-block to copy in this pass                IFGT    SIZEOF_slide-4           lea          redirslide(G),a0                ELSE           move.l       redirslide(G),a0                ENDC           move.l       a0,a1           add.l        w,a0           add.l        d,a1; Now at this point we could do tests to see if we should use an optimized; large block copying method such as movem's, but since (a) such methods require; the source and destination to be compatibly aligned -- and odd bytes at each; end have to be handled separately, (b) it's only worth checking for if the; block is pretty large, and (c) most strings are only a few bytes long, we're; just not going to bother.  Therefore we check above to make sure we move at; most 32K in one sub-block, so a dbra loop can handle it.dshort:    move.l       e,d0           subq         #1,d0           ; assert >= 0dspin:      move.b      (a1)+,(a0)+            dbra        d0,dspin           add.l        e,w           add.l        e,d           cmp.l        #WSIZE,w           blo.s        dnfl            FLUSH       w            ext.l       d0              ; does a test as it casts to long            bne         return            moveq       #0,wdnfl:      tst.l        n               ; need to do more sub-blocks?           bne          docopy          ; yes          moveq         #0,e            ; restore zeroness in upper bytes of e          bra           main_loop       ; break (newtop loop)nonleng: cmp.w          #INVALID,e      ; bottom of newtop loop -- misc. code         bne.s          tailgo          ; invalid code?          moveq         #RET_ERR,d0     ; then fail          bra           returntailgo:  and.w          #$001F,e         NEEDBITS       e         move.w         e,d0         asl.w          #2,d0         and.l          (lmask,d0.w),d1                IFNE SIZEOF_huft-8         mulu           #SIZEOF_huft,d1                ELSE         asl.l          #3,d1                ENDC         move.l         h_v_t(t),t         add.l          d1,t         bra            newtopfinish: MOVINT          w,wp(G)         ; done: restore cached globals        MOVINT          k,bk(G)        move.l          b,bb(G)        moveq           #RET_OK,d0      ; return "no error"return: movem.l         (sp)+,savregs        unlk            a5        rts

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕二三区不卡| 88在线观看91蜜桃国自产| 中文字幕第一页久久| 国产成a人亚洲| 中文字幕在线不卡| 色偷偷88欧美精品久久久| 亚洲国产精品一区二区久久| 欧美精品第1页| 久久国产福利国产秒拍| 国产午夜亚洲精品不卡| 一本到不卡免费一区二区| 亚洲午夜久久久久久久久电影网| 777精品伊人久久久久大香线蕉| 日本欧洲一区二区| 欧美激情一区二区三区全黄 | 奇米色一区二区| 欧美精品一区二区精品网| 国产精品一区二区久久精品爱涩| 国产精品久久久久久久第一福利| 在线欧美日韩国产| 久久91精品久久久久久秒播| 自拍偷拍国产亚洲| 欧美一区二区三区人| 成人免费毛片高清视频| 亚洲一区二区成人在线观看| 精品国产乱码久久久久久免费| 成人毛片在线观看| 日韩高清国产一区在线| 久久久噜噜噜久久人人看| 欧洲国产伦久久久久久久| 美女被吸乳得到大胸91| 中文字幕一区二区三区在线不卡 | 成人一区二区三区视频| 一区二区三区中文字幕电影| 欧美videossexotv100| 色八戒一区二区三区| 国产综合成人久久大片91| 亚洲综合图片区| 国产日韩欧美综合一区| 欧美高清激情brazzers| 99久久精品国产观看| 韩国精品在线观看| 丝袜美腿成人在线| 最新国产精品久久精品| 日韩欧美亚洲国产另类| 欧美午夜精品一区二区蜜桃| 成人av在线资源网站| 麻豆成人综合网| 午夜视频一区二区三区| 亚洲视频电影在线| 亚洲国产精品精华液2区45| 日韩一区二区视频| 欧美日韩成人综合| 91丨九色丨尤物| 成人av在线播放网站| 国产高清在线精品| 紧缚捆绑精品一区二区| 奇米四色…亚洲| 亚洲不卡在线观看| 亚洲一区二区三区四区在线观看 | 一区二区三区蜜桃网| 国产精品丝袜久久久久久app| 日韩视频一区二区三区在线播放| 欧美专区在线观看一区| 在线精品视频免费观看| 91无套直看片红桃| 91一区二区在线| 欧美日韩卡一卡二| 成人久久视频在线观看| 粉嫩一区二区三区在线看| 国产成人精品综合在线观看 | 99在线视频精品| 国产成人午夜99999| 国产美女av一区二区三区| 久草中文综合在线| 国内精品久久久久影院薰衣草| 久久精品理论片| 国精产品一区一区三区mba桃花| 麻豆国产精品777777在线| 九色综合狠狠综合久久| 国产一区二区三区蝌蚪| 国产精品一二三四区| 成人中文字幕电影| 不卡的电视剧免费网站有什么| 成人黄动漫网站免费app| 99久久精品免费看国产| 成人av网在线| 在线观看视频一区二区| 欧美剧在线免费观看网站| 91超碰这里只有精品国产| 9191久久久久久久久久久| 日韩一区二区免费在线电影| 久久伊人中文字幕| 国产精品久久久久影院亚瑟| 亚洲欧美乱综合| 午夜国产不卡在线观看视频| 激情综合亚洲精品| 成年人国产精品| 欧美日韩日日夜夜| 欧美成人一级视频| 中文字幕一区二区视频| 午夜精品福利一区二区三区蜜桃| 美腿丝袜亚洲色图| 不卡一区二区三区四区| 欧美午夜寂寞影院| 久久夜色精品国产噜噜av| 中文字幕一区二区视频| 日韩和欧美的一区| 成人高清免费在线播放| 欧美午夜一区二区三区| 精品国产3级a| 亚洲免费视频成人| 久久精品国产一区二区| 99久久777色| 91精品国产福利在线观看| 国产三级欧美三级日产三级99| 亚洲精品视频自拍| 紧缚奴在线一区二区三区| 色综合天天综合| 欧美变态tickling挠脚心| 国产精品久久久久aaaa| 免费看欧美女人艹b| 99精品一区二区三区| 精品欧美一区二区久久| 亚洲欧洲日韩综合一区二区| 日韩成人精品在线| 不卡视频在线观看| 精品人伦一区二区色婷婷| 亚洲伦理在线免费看| 久久国产综合精品| 色综合久久综合网| 久久久久久久久岛国免费| 亚洲成av人片在线| 99re在线精品| 久久先锋资源网| 五月天亚洲婷婷| 色欧美片视频在线观看在线视频| 2020国产成人综合网| 天天av天天翘天天综合网| 9人人澡人人爽人人精品| 日韩精品一区二区三区在线播放| 亚洲理论在线观看| 成人黄页在线观看| 久久蜜桃av一区精品变态类天堂 | 欧美va亚洲va国产综合| 综合婷婷亚洲小说| 国产凹凸在线观看一区二区| 欧美一二三区精品| 日韩激情一区二区| 欧美系列日韩一区| 亚洲天堂成人在线观看| 成人av在线播放网址| 日本一区二区在线不卡| 国产在线精品一区二区三区不卡| 欧美乱妇23p| 婷婷中文字幕综合| 欧美日韩中文字幕一区二区| 一区二区欧美在线观看| 97se亚洲国产综合自在线| 中文字幕中文字幕中文字幕亚洲无线| 国产精品一区二区在线观看不卡| 欧美成人精品3d动漫h| 另类欧美日韩国产在线| 日韩午夜激情视频| 久久成人久久鬼色| 欧美成人伊人久久综合网| 日本成人在线电影网| 欧美一级精品在线| 日韩成人精品在线观看| 日韩亚洲电影在线| 激情伊人五月天久久综合| 亚洲精品一区二区三区影院| 韩国av一区二区三区| 国产日韩欧美精品综合| 国产白丝网站精品污在线入口| 国产欧美一区在线| 国产.欧美.日韩| 国产精品福利在线播放| 色欧美片视频在线观看| 亚洲高清免费一级二级三级| 欧美高清dvd| 午夜不卡在线视频| 国产精品一区免费在线观看| 欧美色图一区二区三区| 国产欧美日韩在线| 成人精品gif动图一区| 日本一区二区三区在线观看| 成人三级在线视频| 亚洲一区在线播放| 日韩三级精品电影久久久| 国产综合色精品一区二区三区| 亚洲少妇屁股交4| 欧美午夜一区二区三区| 久久成人av少妇免费| 国产欧美中文在线| 欧美亚洲自拍偷拍| 激情综合一区二区三区| 亚洲欧洲日韩av| 欧美日韩国产天堂| 激情五月婷婷综合|