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

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

?? ddraw.asm

?? 一個用純匯編 寫的操作系統 源代碼 是用 TASM 編譯器寫的
?? ASM
字號:

; DirectDraw programming example

format PE GUI 4.0
entry start

include 'win32a.inc'

include 'ddraw.inc'

section '.data' data readable writeable

  _title db 'flat assembler DirectDraw application',0
  _class db 'FDDRAW32',0

  _error db 'Error',0
  _ddraw_error db 'Direct Draw initialization failed.',0
  _open_error db 'Failed opening data file.',0

  picture db 'DDRAW.GIF',0

section '.bss' readable writeable

  hinstance dd ?
  hwnd dd ?
  wc WNDCLASS
  msg MSG

  ddsd DDSURFACEDESC
  ddscaps DDSCAPS

  DDraw DirectDraw
  DDSPrimary DirectDrawSurface
  DDSBack DirectDrawSurface

  DDSPicture DirectDrawSurface
  DDPalette DirectDrawPalette

  bytes_count dd ?
  last_tick dd ?
  frame db ?
  active db ?
  LZW_bits db ?
  LZW_table rd (0F00h-2)*2
  buffer rb 40000h
  rect RECT

section '.code' code readable executable

  start:

	invoke	GetModuleHandleA,NULL
	mov	[hinstance],eax

	invoke	LoadIconA,NULL,IDI_APPLICATION
	mov	[wc.hIcon],eax

	invoke	LoadCursorA,NULL,IDC_ARROW
	mov	[wc.hCursor],eax

	mov	[wc.style],0
	mov	[wc.lpfnWndProc],WindowProc
	mov	[wc.cbClsExtra],0
	mov	[wc.cbWndExtra],0
	mov	eax,[hinstance]
	mov	[wc.hInstance],eax
	mov	[wc.hbrBackground],0
	mov	dword [wc.lpszMenuName],NULL
	mov	dword [wc.lpszClassName],_class
	invoke	RegisterClassA,wc

	invoke	CreateWindowExA,\
		0,_class,_title,WS_POPUP+WS_VISIBLE,0,0,0,0,NULL,NULL,[hinstance],NULL
	mov	[hwnd],eax

	invoke	DirectDrawCreate,NULL,DDraw,NULL
	or	eax,eax
	jnz	ddraw_error

	cominvk DDraw,SetCooperativeLevel,\
		[hwnd],DDSCL_EXCLUSIVE+DDSCL_FULLSCREEN
	or	eax,eax
	jnz	ddraw_error

	cominvk DDraw,SetDisplayMode,\
		640,480,8
	or	eax,eax
	jnz	ddraw_error

	mov	[ddsd.dwSize],sizeof.DDSURFACEDESC
	mov	[ddsd.dwFlags],DDSD_CAPS+DDSD_BACKBUFFERCOUNT
	mov	[ddsd.ddsCaps.dwCaps],DDSCAPS_PRIMARYSURFACE+DDSCAPS_FLIP+DDSCAPS_COMPLEX
	mov	[ddsd.dwBackBufferCount],1
	cominvk DDraw,CreateSurface,\
		ddsd,DDSPrimary,NULL
	or	eax,eax
	jnz	ddraw_error

	mov	[ddscaps.dwCaps],DDSCAPS_BACKBUFFER
	cominvk DDSPrimary,GetAttachedSurface,\
		ddscaps,DDSBack
	or	eax,eax
	jnz	ddraw_error

	mov	esi,picture
	call	load_picture
	jc	open_error

	mov	esi,picture
	call	load_palette
	jc	open_error

	cominvk DDSPrimary,SetPalette,eax

	invoke	GetTickCount
	mov	[last_tick],eax

	jmp	paint

main_loop:

	invoke	PeekMessageA,msg,NULL,0,0,PM_NOREMOVE
	or	eax,eax
	jz	no_message
	invoke	GetMessageA,msg,NULL,0,0
	or	eax,eax
	jz	end_loop
	invoke	TranslateMessage,msg
	invoke	DispatchMessageA,msg

	jmp	main_loop

    no_message:

	cmp	[active],0
	je	sleep

	cominvk DDSPrimary,IsLost
	or	eax,eax
	jz	paint
	cmp	eax,DDERR_SURFACELOST
	jne	end_loop

	cominvk DDSPrimary,Restore

paint:

	mov	[rect.top],0
	mov	[rect.bottom],480
	mov	[rect.left],0
	mov	[rect.right],640

	cominvk DDSBack,BltFast,\
		0,0,[DDSPicture],rect,DDBLTFAST_SRCCOLORKEY
	or	eax,eax
	jnz	paint_done

	movzx	eax,[frame]
	xor	edx,edx
	mov	ebx,10
	div	ebx

	sal	eax,6
	add	eax,480
	mov	[rect.top],eax
	add	eax,64
	mov	[rect.bottom],eax
	sal	edx,6
	mov	[rect.left],edx
	add	edx,64
	mov	[rect.right],edx

	cominvk DDSBack,BltFast,\
		288,200,[DDSPicture],rect,DDBLTFAST_SRCCOLORKEY

	cominvk DDSPrimary,Flip,0,0

    paint_done:

	invoke	GetTickCount
	mov	ebx,eax
	sub	ebx,[last_tick]
	cmp	ebx,20
	jb	main_loop
	add	[last_tick],20

	inc	[frame]
	cmp	[frame],60
	jb	main_loop
	mov	[frame],0
	jmp	main_loop

sleep:
	invoke	WaitMessage
	jmp	main_loop

ddraw_error:
	mov	eax,_ddraw_error
	jmp	error
open_error:
	mov	eax,_open_error
    error:
	invoke	MessageBoxA,[hwnd],eax,_error,MB_OK
	invoke	DestroyWindow,[hwnd]
	invoke	PostQuitMessage,1
	jmp	main_loop

end_loop:
	invoke	ExitProcess,[msg.wParam]

include 'gif87a.inc'

proc WindowProc hwnd,wmsg,wparam,lparam
	push	ebx esi edi
	mov	eax,[wmsg]
	cmp	eax,WM_CREATE
	je	wmcreate
	cmp	eax,WM_DESTROY
	je	wmdestroy
	cmp	eax,WM_ACTIVATE
	je	wmactivate
	cmp	eax,WM_SETCURSOR
	je	wmsetcursor
	cmp	eax,WM_KEYDOWN
	je	wmkeydown
    defwindowproc:
	invoke	DefWindowProcA,[hwnd],[wmsg],[wparam],[lparam]
	jmp	finish
    wmcreate:
	xor	eax,eax
	jmp	finish
    wmkeydown:
	cmp	[wparam],VK_ESCAPE
	jne	finish
    wmdestroy:
	cominvk DDraw,RestoreDisplayMode
	cominvk DDraw,Release
	invoke	PostQuitMessage,0
	xor	eax,eax
	jmp	finish
    wmactivate:
	mov	eax,[wparam]
	mov	[active],al
	jmp	finish
    wmsetcursor:
	invoke	SetCursor,0
	xor	eax,eax
    finish:
	pop	edi esi ebx
	ret
endp

section '.idata' import data readable

  library kernel,'KERNEL32.DLL',\
	  user,'USER32.DLL',\
	  ddraw,'DDRAW.DLL'

  import kernel,\
	 GetModuleHandleA,'GetModuleHandleA',\
	 CreateFileA,'CreateFileA',\
	 ReadFile,'ReadFile',\
	 CloseHandle,'CloseHandle',\
	 GetTickCount,'GetTickCount',\
	 ExitProcess,'ExitProcess'

  import user,\
	 RegisterClassA,'RegisterClassA',\
	 CreateWindowExA,'CreateWindowExA',\
	 DestroyWindow,'DestroyWindow',\
	 DefWindowProcA,'DefWindowProcA',\
	 GetMessageA,'GetMessageA',\
	 PeekMessageA,'PeekMessageA',\
	 TranslateMessage,'TranslateMessage',\
	 DispatchMessageA,'DispatchMessageA',\
	 LoadCursorA,'LoadCursorA',\
	 LoadIconA,'LoadIconA',\
	 SetCursor,'SetCursor',\
	 MessageBoxA,'MessageBoxA',\
	 PostQuitMessage,'PostQuitMessage',\
	 WaitMessage,'WaitMessage'

  import ddraw,\
	 DirectDrawCreate,'DirectDrawCreate'

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
www精品美女久久久tv| www久久久久| 亚洲最新在线观看| 粉嫩aⅴ一区二区三区四区| 欧美一区二区观看视频| 天天综合色天天| 午夜精品在线看| 色视频欧美一区二区三区| 免费成人你懂的| 亚洲色图色小说| 精品三级av在线| 制服丝袜亚洲色图| 蜜桃91丨九色丨蝌蚪91桃色| 欧美精品一区二区三区四区| 国产成人亚洲综合a∨婷婷图片| 国产女人18毛片水真多成人如厕| 91蝌蚪porny| 蜜桃免费网站一区二区三区| 久久一日本道色综合| 丁香激情综合五月| 亚洲电影中文字幕在线观看| 亚洲精品一区二区三区香蕉| 99久久综合国产精品| 午夜亚洲国产au精品一区二区| 日韩欧美在线不卡| 99久久伊人网影院| 麻豆成人久久精品二区三区红| 久久综合精品国产一区二区三区| 色综合天天综合色综合av| 日韩av网站在线观看| 亚洲成人精品影院| 久久久久久黄色| 欧美日韩在线播| jiyouzz国产精品久久| 麻豆高清免费国产一区| 一区二区三区.www| 欧美极品少妇xxxxⅹ高跟鞋| 欧美美女网站色| 99精品久久久久久| 国产精品一区二区黑丝| 亚洲国产欧美日韩另类综合| 久久精品亚洲精品国产欧美 | 国产一区二区三区在线观看精品| 国产精品久久综合| 欧美α欧美αv大片| 日本久久一区二区三区| 成人国产电影网| 久久9热精品视频| 日一区二区三区| 亚洲精品成人精品456| 国产精品黄色在线观看| 中文字幕av一区 二区| 国产精品九色蝌蚪自拍| 17c精品麻豆一区二区免费| ●精品国产综合乱码久久久久| 成人欧美一区二区三区视频网页| 亚洲丝袜美腿综合| 五月天激情小说综合| 激情综合色综合久久综合| 丁香桃色午夜亚洲一区二区三区| 色婷婷综合久色| 日韩欧美一级片| 久久久影院官网| 欧美日本在线视频| 日韩欧美国产电影| 久久日一线二线三线suv| 久久久亚洲国产美女国产盗摄| 国产日韩欧美不卡在线| 久久精品免费在线观看| 亚洲影院理伦片| 久久疯狂做爰流白浆xx| 国产成人亚洲综合a∨猫咪| 91在线播放网址| 精品久久久久久综合日本欧美| 中文字幕欧美区| 日本免费在线视频不卡一不卡二| 国产一区二区免费视频| 久久久www免费人成精品| 亚洲电影一级黄| 成人免费看视频| 日韩午夜在线播放| 玉米视频成人免费看| 国产专区欧美精品| 91精品国产一区二区三区 | 色综合久久天天综合网| 精品欧美一区二区在线观看| 亚洲最大成人综合| 99久久综合国产精品| 久久久久久久精| 精品一区二区三区香蕉蜜桃| 欧美日韩一二三区| 亚洲一区二区高清| 欧美亚洲综合在线| 亚洲另类春色国产| 91激情在线视频| 一区二区视频在线看| 色综合久久综合中文综合网| 国产精品蜜臀av| 99re亚洲国产精品| 亚洲欧美另类小说| 91黄色激情网站| 亚洲一区二区高清| 制服.丝袜.亚洲.中文.综合| 日本aⅴ精品一区二区三区| 7777精品久久久大香线蕉| 丝袜诱惑亚洲看片| 精品国产一区二区三区久久影院| 狠狠色综合播放一区二区| 精品国产乱子伦一区| 成人在线视频一区| 一区二区欧美在线观看| 777亚洲妇女| 国产一区福利在线| 亚洲精品中文在线影院| 日韩一区二区视频在线观看| 国模套图日韩精品一区二区| 日本一区二区不卡视频| 91福利社在线观看| 国产尤物一区二区| 中文字幕在线观看不卡视频| 欧美日韩激情一区二区| 国产麻豆精品视频| 亚洲综合激情另类小说区| 日韩免费福利电影在线观看| 91美女视频网站| 久久国产夜色精品鲁鲁99| 亚洲美腿欧美偷拍| 久久久夜色精品亚洲| 91精品国产综合久久蜜臀| 国产乱子伦一区二区三区国色天香| 一区精品在线播放| 国产调教视频一区| 欧美精品乱码久久久久久| 91免费国产在线| 成人免费毛片嘿嘿连载视频| 99久精品国产| 高清国产一区二区| 国产高清不卡一区二区| 丝袜亚洲另类丝袜在线| 亚洲bdsm女犯bdsm网站| 亚洲影院理伦片| 天天爽夜夜爽夜夜爽精品视频| 亚洲欧洲另类国产综合| 国产精品久久久久久户外露出| 久久影音资源网| 国产婷婷色一区二区三区在线| 日韩一区二区三区三四区视频在线观看| 欧洲中文字幕精品| 欧美日韩精品三区| 欧美日本免费一区二区三区| 在线视频国内自拍亚洲视频| 欧洲激情一区二区| 欧美主播一区二区三区美女| 色婷婷久久久亚洲一区二区三区 | 日产国产高清一区二区三区| 亚洲va国产va欧美va观看| 伦理电影国产精品| 成人精品gif动图一区| 成人黄色av网站在线| 99久久久久免费精品国产| 91国偷自产一区二区三区成为亚洲经典 | 国产在线一区二区| av一二三不卡影片| 欧美一区二区私人影院日本| 26uuu欧美| 亚洲理论在线观看| 亚洲欧美视频在线观看| 奇米影视在线99精品| 成人高清视频在线| 日韩午夜电影av| 亚洲精品中文在线| 国产成人在线观看免费网站| 在线观看国产91| 亚洲欧美综合在线精品| 九九热在线视频观看这里只有精品| 成人激情小说乱人伦| 日韩美女一区二区三区四区| 国产嫩草影院久久久久| 欧美激情中文字幕| 久久久亚洲欧洲日产国码αv| 亚洲最大色网站| 成人动漫视频在线| xfplay精品久久| 亚洲自拍偷拍网站| 天堂一区二区在线免费观看| 色综合欧美在线视频区| 久久综合成人精品亚洲另类欧美| 午夜精品久久久久久久 | 亚洲国产日日夜夜| av在线不卡电影| 亚洲欧洲日韩av| aaa国产一区| 亚洲少妇屁股交4| 成人免费电影视频| 久久久噜噜噜久久人人看 | 国产三区在线成人av| 免费久久99精品国产| 91麻豆精品国产自产在线 | 亚洲图片欧美视频| 欧美伦理影视网|