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

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

?? tinyfrac.asm

?? 基于Menuet OS的用戶應用程序及其系統應用程序(用戶:BMP/jpg圖片查看器 系統:CPU 狀態監控程序等)
?? ASM
字號:
; tinyfrac.asm
;
; teeny program displays the Mandelbrot set.
;
; written on Sun  03-26-1995  by Ed Beroset (Fidonet 1:3641/1.250)
;
; This program was based on a program by Frank Hommers, later optimized
; for size by Mikko Hyvarinen and posted in Fidonet's 80XXX echo.
;
; This new version has many new features and was based on my own
; optimization of Hyvarinen's version.  Some features:
;
; pan     using the arrow keys, one can navigate the fractal.
;
;               Home  Up  PgUp
;               Left      Right   correspond to 8 obvious directions
;               End   Dn  PgDn
;
; zoom    there are now ten levels of magnification available.  If the
;         program is assembled with FEATURES defined, the number
;         corresponding to the zoom level (0-9, zero is most zoomed in)
;         is displayed in the upper left hand corner of the screen just
;         before each new fractal is drawn.  The gray '+' key zooms out,
;         the gray '-' key zooms in.
;
; beep    the program will beep at the completion of each fractal
;         drawing or if the user attempts to zoom past either limit.
;
; mode    if the program is assembled with MODECHANGE defined, the
;         will change to the next video mode if the 'v' key is pressed.
;         This is handy because drawing fractals at high resolution can
;         be very timeconsuming.  The user can find an interesting spot
;         in a low res mode and then change to a high res mode to see it
;         more fully rendered.
;
; size    this whole project was started off as a size optimization
;         exercise, so there have been some rather ugly tradeoffs to
;         sacrifice speed for size.
;
; 8086    yes, it runs on an 8086 although only if you leave out either
;         the FEATURES option or the MODECHANGE option and it would be
;         slower and more painful than oral surgery.
;
; cost    there IS such a thing as a free lunch!  This code is hereby
;         released to the public domain by the author.
;
;
; to assemble & link:
;   TASM /m2 tinyfrac       (assemble using two pass mode if required)
;   TLINK /Tdc tinyfrac     (link Target platform is DOS, COM file)
;
;
   
PIXWIDTH    equ 511
PIXHEIGHT   equ 255
   
ZOOMLIMIT   equ  13       ; can change to up to 13 for extended zoom in
   
; feel free to experiment with the following constants:
   
DELTA       equ 200       ; the unit of pan movement in pixels
THRESHOLD   equ  7       ; must be in the range of (0,255)
STARTSCALE  equ  5        ; a number from 0 to ZOOMLIMIT, inclusive
CHAR_COLOR  equ 0fh       ; white on black background (for PRINTZOOM feature)
   
   
   
; ************************************************************
;
;   Menuet header
   
   
use32
   
                  org     0x0
   
                  db      'MENUET01'
                  dd      0x01
                  dd      START
                  dd      I_END
                  dd      0x200000
                  dd      0x7fff0
                  dd      0,0
   
STARTX  dd  200
STARTY  dd  120
   
scaleaddy dd 120
scaleaddx dd 200
   
START:
   
        call    draw_window
   
        call    draw_fractal
   
still:
   
        mov  eax,10
        int  0x40
   
        cmp  eax,1
        je   red
        cmp  eax,2
        je   key
        cmp  eax,3
        je   button
   
        jmp  still
   
      red:
        call draw_window
        call put_image
        jmp  still
   
      key:
        mov  eax,2
        int  0x40
   
        cmp  ah,'e'
        je   cycle
        cmp  ah,'r'
        je   cycle
        jmp  no_cycle
      cycle:
        call color_cycle
        jmp  still
      no_cycle:
   
        cmp  ah,'q'
        jne  no_in
        inc  byte [scale]
        mov  ebx,[STARTX]
        imul ebx,2
        sub  ebx,[scaleaddx]
        mov  [STARTX],ebx
        mov  ebx,[STARTY]
        imul ebx,2
        sub  ebx,[scaleaddy]
        mov  [STARTY],ebx
      no_in:
   
        cmp  ah,'w'
        jne  no_out
        dec  byte [scale]
        mov  ebx,[STARTX]
        add  ebx,[scaleaddx]
        shr  ebx,1
        mov  [STARTX],ebx
        mov  ebx,[STARTY]
        add  ebx,[scaleaddy]
        shr  ebx,1
        mov  [STARTY],ebx
      no_out:
   
        cmp  ah,130+48
        jne  no_up
        sub  [STARTY],100
      no_up:
   
        cmp  ah,129+48
        jne  no_down
        add  [STARTY],100
      no_down:
   
        cmp  ah,128+48
        jne  no_left
        sub  [STARTX],100
      no_left:
   
        cmp  ah,131+48
        jne  no_right
        add  [STARTX],100
      no_right:
   
        call draw_fractal
        jmp  still
   
      button:
        mov  eax,17
        int  0x40
   
        cmp  ah,1
        jne  no_close
        mov  eax,-1
        int  0x40
      no_close:
   
        cmp  ah,2
        jne  no_bgr
   
        mov  eax,15   ; bgr 512 x 256
        mov  ebx,1
        mov  ecx,512
        mov  edx,256
        int  0x40
   
        mov  eax,15
        mov  ebx,5
        mov  ecx,0x100000
        mov  edx,0
        mov  esi,512*3*256
        int  0x40
   
        mov  eax,15
        mov  ebx,3
        int  0x40
   
        jmp  still
   
      no_bgr:
   
        cmp  ah,3
        jb   no_color
        cmp  ah,5
        jg   no_color
        shr  eax,8
        sub  eax,3
        imul eax,8
        add  eax,8
        not  eax
        and  eax,11000b
;        sub  eax,8
        mov  [shlc],al
        call draw_fractal
        jmp  still
   
      no_color:
   
   
        jmp  still
   
   
color_cycle:
   
     pusha
     mov  ecx,0x08080808
     mov  esi,(256/8)*5
     cmp  ah,'e'
     je   f_out
     mov  ecx,-0x08080808
     mov  esi,(256/8)*5-1
   f_out:
   
   newcycle:
     mov  edi,0x100000
   newpix:
     mov  eax,[edi]
     add  eax,ecx
     mov  [edi],eax
     add  edi,4
     cmp  edi,0x100000+512*256*3
     jb   newpix
     call put_image
     mov  eax,5
     mov  ebx,1
     int  0x40
     dec  esi
     jnz  newcycle
   
     mov  eax,0
     mov  edi,0x100000
     mov  ecx,512*256*3 / 4 +50
     cld
     rep  stosd

     popa
   
     call draw_fractal
   
     ret
   
   
   
   
   
; **********************************************************************
;
;    Tinyfrac
;
   
   
draw_fractal:
   
        pusha
        mov     eax,4
        mov     ebx,15*65536+35
        mov     ecx,0xffffff
        mov     edx,calc
        mov     esi,calcl-calc
        int     0x40
        popa
        pusha
   
        movzx   ebp,word [STARTX]
        movzx   edi,word [STARTY]
   
   
;       This routine is the fractal drawing engine.  It has been
;       optimized for size, sacrificing speed.
   
        mov     cx, PIXHEIGHT   ; height of screen in pixels
   
        sub     di,cx           ; adjust our Y offset
@@CalcRow:
   
        push    cx
   
;        and     cl,0x7
;        cmp     cl,0
;        jne     noim
;        call    put_image
;     noim:
   
        mov     cx, PIXWIDTH -1  ; width of screen in pixels
   
        sub     bp,cx           ;
@@CalcPixel:
        push    cx              ; save the column counter on stack
        xor     cx, cx          ; clear out color loop counter
        xor     bx, bx          ; zero i coefficient
        xor     dx, dx          ; zero j coefficient
@@CycleColors:
        push    dx              ; save j value for later
        mov     ax, bx          ; ax = i
        sub     ax, dx          ; ax = i - j
        add     dx, bx          ; dx = i + j
        stc                     ; one additional shift, please
        call    Shifty          ; ax = ((i+j)*(i-j)) shifted right
        pop     dx              ; retrieve our saved value for j
        add     ax,bp           ; account for base offset...
        cmp     ah,THRESHOLD    ; Q: is i > THRESHOLD * 256?
        xchg    bx,ax           ; now swap new i with old i
        jg      @@draw          ; Y: draw this pixel
        clc                     ; no additional shifts here, please
        call    Shifty          ; now dx:ax = old i * j
        xchg    dx,ax           ;
        add     dx,di           ; account for base offset...
        inc     cl              ; increment color
        jnz     @@CycleColors   ; keep going until we're done
@@draw:
        xchg    ax, cx          ; mov color into al
        pop     cx              ; retrieve our column counter
        pop     dx              ; fetch row (column already in cx)
        push    dx              ; must leave a copy on the stack
        xor     bx,bx           ; write to video page zero
   
        call    put_pixel
   
        inc     bp
        loop    @@CalcPixel
        inc     di
        pop     cx
        loop    @@CalcRow
   
        call    put_image
   
        popa
   
        ret
   
   
put_image:
   
        pusha
   
        mov  eax,7
        mov  ebx,0x100000
        mov  ecx,512*65536+255
        mov  edx,10*65536+30
        int  0x40
   
        popa
   
        ret
   
   
shlc db 0
   
put_pixel:
   
        pusha
        sub     edi,[STARTY]
        sub     ebp,[STARTX]
        and     edi,0xff
        and     ebp,0x1ff
        shl     edi,9
        mov     ebx,edi ; * 3 - Y
        add     edi,ebx
        add     edi,ebx
        mov     ebx,ebp
        add     ebp,ebx
        add     ebp,ebx
        add     edi,ebp
        mov     cl,[shlc]
        mov     ebx,0xff
        shl     ebx,cl
        add     cl,3
        shl     eax,cl
        and     eax,ebx
        mov     [0x100000+edi],eax
        popa
   
        ret
   
   
;****************************************************************************
 ;
 ;       This routine multiplies AX by DX and shifts the result (in
;       DX:AX) to the right by scale bits (or scale+1 bits if CY is
;       set).  The resulting value is left in AX.  DX is destroyed.
;
;****************************************************************************
   
Shifty:
        push    cx              ; save middle bits (i*i - j*j)
        db      0b1h            ; code for mov cl,immed8
scale   db      STARTSCALE
        adc     cl,0            ; adjust per CY flag
        imul    dx              ; do the multiply
   
        xchg    ax,dx           ;
        shl     eax,16          ; put hi part in hi 16 bits
        xchg    ax,dx
        shr     eax,cl          ;
   
        pop     cx              ;
        ret                     ;
   
   
   
; **********************************************************************
;
;                   WINDOW DEFINITIONS AND DRAW
;
; **********************************************************************
   
   
   
draw_window:
   
      pusha
   
      mov  eax,12
      mov  ebx,1
      int  0x40
   
      mov  eax,0
      mov  ebx,50*65536+531
      mov  ecx,100*65536+256+48
      mov  edx,0x02334455
      mov  esi,0x80778899
      mov  edi,0x00778899
      int  0x40
   
      mov  eax,8
      mov  ebx,(531-19)*65536+12
      mov  ecx,5*65536+12
      mov  edx,1
      mov  esi,0x808080
      int  0x40
   
      mov  eax,8
      mov  ebx,300*65536+112
      mov  ecx,5*65536+12
      mov  edx,2
      mov  esi,0x808080
      int  0x40
   
      mov  ebx,430*65536+12
      mov  ecx,5*65536+12
      mov  edx,3
      mov  esi,0xa00000
      mov  edi,3
    newcolor:
      mov  eax,8
      int  0x40
      add  ebx,13*65536
      shr  esi,8
      inc  edx
      dec  edi
      jnz  newcolor
   
      mov  eax,4
      mov  ebx,8*65536+8
      mov  ecx,0xffffff
      mov  edx,l
      mov  esi,ll-l
      int  0x40
   
      mov  eax,12
      mov  ebx,2
      int  0x40
   
      popa
      ret
   
   
; ***************************************************************
;
;     DATA AREA
;
   
   
l:  db 'TINYFRAC - MOVE: ARROWS, ZOOM Q/W, CYCLE: E/R     '
    db 'SET AS WALLPAPER'
ll:
   
calc   db 'CALCULATING'
calcl:
   
I_END:
   
   
   
   

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线国产电影不卡| 亚洲人成7777| 一区在线中文字幕| 日本伊人精品一区二区三区观看方式| 国产精品中文有码| 欧美日韩一区二区三区四区| 久久久久久久久久电影| 一区二区三区欧美视频| 国产999精品久久| 日韩三级电影网址| 亚洲影视在线播放| 91毛片在线观看| 国产精品传媒入口麻豆| 国产一区二区三区视频在线播放| 欧美亚洲免费在线一区| 国产精品女同一区二区三区| 六月丁香婷婷色狠狠久久| 欧美猛男gaygay网站| 亚洲同性同志一二三专区| 成人永久免费视频| 国产日韩欧美在线一区| 麻豆精品一区二区三区| 欧美精品高清视频| 亚洲高清免费视频| av亚洲精华国产精华精| 久久久久国色av免费看影院| 国产综合久久久久影院| 7777精品伊人久久久大香线蕉的| 亚洲一区二区成人在线观看| 色中色一区二区| 最新热久久免费视频| 成人国产精品免费观看动漫| 国产日韩欧美电影| 高清不卡在线观看av| 久久久亚洲欧洲日产国码αv| 麻豆国产精品视频| 久久在线免费观看| 国产一区二区免费视频| 久久久99免费| 国产精品88av| 国产日韩v精品一区二区| 国产一区二区精品久久99| 2022国产精品视频| 成人在线综合网站| 亚洲日本在线视频观看| 欧美午夜精品一区二区三区| 亚洲福利国产精品| 日韩欧美中文字幕精品| 激情五月激情综合网| 国产欧美一区二区在线观看| 国产suv精品一区二区三区| 亚洲欧洲日韩av| 欧美性大战久久久| 久色婷婷小香蕉久久| 国产人成一区二区三区影院| 91在线国产观看| 亚洲高清三级视频| 精品国产91亚洲一区二区三区婷婷| 国产一区二区三区免费| 日韩美女视频一区| 欧美日韩aaaaa| 国产麻豆91精品| 亚洲激情五月婷婷| 日韩欧美国产综合一区| youjizz久久| 日本成人在线视频网站| 国产精品久久免费看| 欧美日韩一二三区| 成人性视频网站| 婷婷开心久久网| 国产精品色婷婷久久58| 91精品国产手机| 成人综合婷婷国产精品久久| 日韩成人一级片| 亚洲色欲色欲www| 精品国产乱码久久久久久浪潮 | 国产欧美综合色| 欧美三级日韩三级| 国产成人8x视频一区二区| 午夜伦欧美伦电影理论片| 国产精品美女一区二区三区 | 久久久www免费人成精品| 日本电影欧美片| 国产精品1区二区.| 蜜桃一区二区三区在线观看| 一区精品在线播放| 久久―日本道色综合久久| 欧美亚洲丝袜传媒另类| 国产成人在线免费观看| 蜜臀精品久久久久久蜜臀 | 国产清纯在线一区二区www| 欧美日韩免费视频| 95精品视频在线| 国产乱对白刺激视频不卡| 日韩极品在线观看| 亚洲美女淫视频| 欧美国产亚洲另类动漫| 26uuu国产一区二区三区| 欧美一区二区三区免费大片| 欧美调教femdomvk| 91丨九色丨国产丨porny| 成人小视频免费在线观看| 激情综合色播激情啊| 久久99精品久久久久| 天天综合色天天综合| 亚洲最大成人综合| 亚洲影院久久精品| 亚洲精品老司机| 亚洲免费观看在线观看| 中文字幕一区免费在线观看| 国产女主播视频一区二区| 久久久久久久久久久黄色| 久久久久久久免费视频了| 久久综合一区二区| 久久久亚洲精品一区二区三区| 精品日韩一区二区| 亚洲精品一区二区在线观看| 欧美精品一区二区三区视频| 日韩一区二区视频| 欧美精品一区二区在线观看| wwww国产精品欧美| 中文一区一区三区高中清不卡| 欧美国产日韩一二三区| 亚洲天堂精品视频| 亚洲高清在线精品| 免费成人在线播放| 精品影院一区二区久久久| 国产福利91精品一区| 成人av网站在线观看| 91啦中文在线观看| 欧美这里有精品| 91精品国产91久久综合桃花| 日韩欧美一二三区| 久久久国产精品不卡| 国产精品美女久久久久av爽李琼| 亚洲色图丝袜美腿| 亚洲成人午夜电影| 久久国产精品99精品国产| 国产精品一区久久久久| 成人91在线观看| 欧美日韩国产大片| 精品国产sm最大网站免费看| 久久夜色精品国产欧美乱极品| 国产精品午夜久久| 亚洲午夜羞羞片| 久88久久88久久久| 国产成人午夜99999| 91黄色免费网站| 欧美va亚洲va在线观看蝴蝶网| 国产精品你懂的| 亚洲成人动漫av| 成人激情综合网站| 欧美肥妇free| 欧美极品少妇xxxxⅹ高跟鞋 | 欧美国产禁国产网站cc| 一级精品视频在线观看宜春院| 日本视频在线一区| 99久久99久久精品国产片果冻| 欧美高清视频不卡网| 国产精品素人一区二区| 日韩国产高清在线| 99久久伊人精品| 日韩欧美色电影| 一区二区三区日韩欧美| 高清视频一区二区| 91精品在线麻豆| 欧美久久久久中文字幕| 国产区在线观看成人精品| 日韩黄色在线观看| 99国内精品久久| 精品免费日韩av| 亚洲电影一区二区三区| 成人精品国产一区二区4080| 91精品国产欧美一区二区 | 欧美激情一区在线观看| 蜜臀av性久久久久蜜臀aⅴ| 色悠悠久久综合| 国产欧美日韩另类一区| 不卡一区二区三区四区| 欧美一区二区在线免费播放| 亚洲老妇xxxxxx| 成人福利电影精品一区二区在线观看| 欧美剧在线免费观看网站 | 欧美影视一区在线| 亚洲女同ⅹxx女同tv| 成人一级视频在线观看| 精品动漫一区二区三区在线观看| 午夜激情久久久| 欧美中文字幕亚洲一区二区va在线 | 国产精品一区二区久久不卡| 91精品国产福利| 亚洲国产精品久久艾草纯爱| 一本色道**综合亚洲精品蜜桃冫| 日本一区二区免费在线| 国产精品一二三四五| 久久美女高清视频| 国产xxx精品视频大全| 国产午夜精品一区二区| 国产精品一区一区三区| 国产亚洲精品资源在线26u|