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

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

?? brkctl.asm

?? Dos6.0
?? ASM
字號:
	page	,132
	title	brkctl - C system call for memory
;***
;brkctl.asm - DOS brkctl memory allocation
;
;	Copyright (c) 1985-1988, Microsoft Corporation.  All rights reserved.
;
;Purpose:
;	DOS brkctl memory allocation
;
;*******************************************************************************

include	version.inc
.xlist
include	cmacros.inc
include	msdos.inc
.list
include	brkctl.inc


sBegin	data
assumes	ds,data

externW _psp			; PSP paragraph number
externW _abrktb
externW	_abrktbe
externW	_abrkp

extrn	b$nmalloc_end:word	;[1] offset of last word of nmalloc space

externW	_aseglo			;[1] defined in CDATA3.INC

sEnd	data

sBegin	code
assumes	ds,data
assumes	cs,code

page
;***
;brkctl(command,incr,saddr) - memory allocation routine
;
;Purpose:
;	Allocate memory from OS.  Based on Xenix brkctl routine.
;	This is the work-horse OS interface routine for the C runtime
;	memory allocation package.
;
;Entry:
;
;	command - brkctl command: BR_ARGSEG or BR_NEWSEG 
;		BR_NEWSEG:	allocate a new data segment
;		BR_ARGSEG:	expand or shrink existing segment
;	incr - increment: for BR_ARGSEG, increment specified seg
;			  for BR_NEWSEG, allocate new seg of size incr
;	saddr - segment: segment address of block to operate on
;
;	command		incr	seg	action
;	-------		----	---	------
;	BR_ARGSEG	0	NULL	report on last seg
;	BR_ARGSEG	other	other	increment specified seg
;	BR_NEWSEG	0	-	allocate new seg, size 0
;	BR_NEWSEG	other	-	allocate new seg, size incr
;					up empty segs
;
;	IMPORTANT note:  The above documentation is taken from the Xenix
;	sources.  It may not be completely accurate for the DOS version
;	of brkctl.  
;
;Exit:
;	DX:AX  	segment:offset address of affected memory block on success
;		-1 on error
;
;Uses:
;
;Exceptions:
;
;*******************************************************************************

cProc	brkctl,<PUBLIC>,<si,di,es>

	parmw	command
	parmd	incr
	parmd	saddr

cBegin
	cmp	word ptr (incr+2),0 ; ???  for now allow 0-FFFF
	jnz	reterr		;   die

	mov	di,dataoffset _abrktb ; di = start of segment table (DGROUP)
	mov	dx,word ptr (incr) ; dx = incr
	mov	ax,command	; ax = command
	errnz	BR_ARGSEG-1
	dec	ax
	jnz	tryNEW

doARG:
	call	argseg		; try specified segment
	jc	reterr
	jmp	short return	; done

tryNEW:
	mov	si,[_abrkp]	; si = current segment entry
	errnz	BR_NEWSEG-2
	dec	ax
	jz	doNEW

doIMP:
	cmp	si,di		; IMP with current segment = DGROUP
	je	doNEW		;   yes - allocate new segment
	mov	ax,[si].sg	; ax = last allocated segment
	mov	Seg_saddr,ax	; use for argseg attempt
	push	si		; save segment for possible NEW
	call	argseg		; try specified segment
	pop	si
	jnc	return		; successful

doNEW:
	add	si,size segrec
	cmp	si,dataoffset _abrktbe ; check for end of segtab
	jae	reterr

	or	dx,dx		; is it 0?
	jnz	okNEW		;   no

reterr:
	mov	ax,-1
	cwd			; dx:ax = -1
	jmp	short return

okNEW:
	mov	bx,dx		; compute # paragraphs
	add	bx,15
	rcr	bx,1
	mov	cl,3
	shr	bx,cl		; bx = # paragraphs
@@:
	callos	allocmem
	jc	reterr

	cmp	ax,_aseglo	;* Check to see if we ignore this segment
	jbe	@B		;* Yes -- get a new segment

	xchg	ax,dx		; dx:ax = seg:size
	mov	[si].sz,ax	; save new segment size
	mov	[si].sg,dx	; save new segment value
	mov	[_abrkp],si	; save new last segment pointer
	xor	ax,ax		; return seg:0

return:

cEnd

page
;***
;argseg - helper routine for changing size of requested segment
;
;Purpose:
;
;Entry:
;
;Exit:
;
;Uses:
;
;Exceptions:
;
;*******************************************************************************

argseg:
	mov	cx,Seg_saddr	; get segment to find
	mov	si,di		; si = start of segment table

segloop:
	cmp	[si].sg,cx
	je	segfound	;   found it
	add	si,size segrec	; skip to next
	cmp	si,dataoffset _abrktbe
	jne	segloop		; keep looping
	stc			; set 'C' for error
	jmp	short toobig	; bad entry

segfound:
	mov	bx,dx
	add	bx,[si].sz	; add in current size
	jc	toobig		;   carry - too big
	mov	dx,bx		; dx = current size
	mov	es,cx		; set up segment

	cmp	si,di		; check if DS
	jne	getmem		;   no

 	cmp	[b$nmalloc_end],bx ;[1] DS - do we need more memory?
 	jnb	setsize 	;[1] no
;[1] 	stc			;[1]
 	jmp	short toobig	;[1] need to grow near heap -- error

getmem:

	add	bx,15		; round up to paragraph (17 bits)
	rcr	bx,1
	shr	bx,1
	shr	bx,1
	shr	bx,1		; bx = # paragraphs (1-1000h)


	callos	setmem		; set memory block size
	jc	toobig		;   too big


setsize:
	xchg	ax,dx		; ax = newsize
	xchg	[si].sz,ax	; ax = base
	mov	dx,cx		; dx:ax = seg:base
				; carry clear
toobig:
	ret


sEnd	code

	end

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲免费在线观看视频| 国产电影一区二区三区| 亚洲国产一二三| 亚洲欧洲制服丝袜| 亚洲人成网站在线| 亚洲人123区| 亚洲一区二区五区| 亚洲国产精品久久人人爱蜜臀| 亚洲精品一二三| 亚洲福利国产精品| 青青草国产精品亚洲专区无| 日韩精品一级中文字幕精品视频免费观看| 亚洲第一二三四区| 日韩电影在线观看电影| 另类小说欧美激情| 国产精品一二三四五| 国产91精品在线观看| 成人av午夜影院| 91网站最新地址| 欧美日韩国产一级片| 欧美一区二区三区在线视频| 日韩精品一区在线| 久久精品免视看| 亚洲欧洲精品一区二区精品久久久 | 92国产精品观看| 一本色道久久综合亚洲91 | 日韩欧美中文字幕精品| 日韩免费观看2025年上映的电影| 日韩三级伦理片妻子的秘密按摩| 久久毛片高清国产| 成人欧美一区二区三区白人| 亚洲资源中文字幕| 久久疯狂做爰流白浆xx| 大陆成人av片| 欧美日韩亚洲综合| 26uuu国产电影一区二区| 国产精品毛片久久久久久| 亚洲欧美一区二区不卡| 午夜欧美2019年伦理| 九色综合狠狠综合久久| 91在线丨porny丨国产| 欧美精品一级二级| 国产精品久久一卡二卡| 婷婷夜色潮精品综合在线| 国产精品资源网| 欧美体内she精视频| 国产亚洲精久久久久久| 亚洲丰满少妇videoshd| 风间由美一区二区三区在线观看 | 国产成人av电影在线播放| 欧美性三三影院| 亚洲精品一区二区三区四区高清| 亚洲天天做日日做天天谢日日欢| 免费高清在线视频一区·| 成人高清免费观看| 日韩欧美高清一区| 一区二区在线观看免费| 国产裸体歌舞团一区二区| 欧美亚洲动漫精品| 欧美国产日韩亚洲一区| 天天av天天翘天天综合网| 成人综合在线观看| 欧美一级免费观看| 伊人一区二区三区| 国产成人亚洲综合a∨婷婷| 欧美日韩视频在线第一区| 国产免费观看久久| 热久久国产精品| 欧美性三三影院| 亚洲天堂免费看| 国产成人在线影院| 91精品福利在线一区二区三区 | 国产精品国产自产拍高清av | 91免费国产视频网站| www国产亚洲精品久久麻豆| 亚洲成人精品在线观看| 波多野结衣视频一区| 久久久综合九色合综国产精品| 亚洲成人激情综合网| 日本精品免费观看高清观看| 久久精品在线观看| 韩国理伦片一区二区三区在线播放 | 激情五月播播久久久精品| 欧美日韩一区二区三区在线看| 国产精品成人午夜| 国产超碰在线一区| 久久久久国产免费免费| 久久精品免费看| 欧美一区2区视频在线观看| 亚洲在线视频免费观看| 色欧美片视频在线观看在线视频| 亚洲国产精华液网站w| 国产一区福利在线| 精品久久久久久久久久久久包黑料| 午夜欧美大尺度福利影院在线看| 欧美又粗又大又爽| 一区2区3区在线看| 欧美系列一区二区| 一区二区三区四区蜜桃| 色婷婷综合激情| 亚洲精品亚洲人成人网| 欧洲色大大久久| 亚洲一区二区三区视频在线| 91国产精品成人| 亚洲最新在线观看| 欧美日韩视频在线观看一区二区三区 | 国产99久久久国产精品免费看| 久久天天做天天爱综合色| 国产毛片一区二区| 欧美国产综合色视频| 成人a区在线观看| 国产精品成人网| 91成人看片片| 五月婷婷欧美视频| 欧美一级日韩不卡播放免费| 久久精品国产99久久6| 亚洲精品一线二线三线| 久久综合九色综合97婷婷| 国产麻豆一精品一av一免费| 久久免费美女视频| 成人av在线观| 一区二区三区四区五区视频在线观看 | 欧美在线免费视屏| 图片区小说区区亚洲影院| 日韩女优av电影在线观看| 激情综合色丁香一区二区| 国产色一区二区| 91毛片在线观看| 亚洲6080在线| 久久蜜桃香蕉精品一区二区三区| 丁香亚洲综合激情啪啪综合| 亚洲少妇30p| 欧美日韩三级在线| 国产精品88888| 亚洲最新视频在线播放| 欧美成人福利视频| 成人黄色网址在线观看| 一区二区三区成人在线视频| 欧美挠脚心视频网站| 国产永久精品大片wwwapp| 国产精品久久看| 欧美日韩美少妇| 国产激情偷乱视频一区二区三区| 亚洲免费av在线| 日韩一卡二卡三卡四卡| 成人免费看的视频| 午夜国产精品影院在线观看| 久久久.com| 欧美私模裸体表演在线观看| 狠狠狠色丁香婷婷综合激情| 国产精品国产自产拍高清av| 欧美高清性hdvideosex| 国产91精品精华液一区二区三区| 一区二区三区国产精品| 久久婷婷国产综合精品青草| 在线视频一区二区三区| 国产在线视频精品一区| 亚洲国产精品人人做人人爽| 精品久久久久久久久久久久久久久 | 成人综合在线观看| 肉肉av福利一精品导航| 综合激情网...| 精品国产一二三| 欧美色国产精品| 大胆亚洲人体视频| 日本不卡一区二区三区| 亚洲免费毛片网站| 久久久精品一品道一区| 欧美久久久久久蜜桃| av电影在线观看一区| 久久电影网电视剧免费观看| 一卡二卡三卡日韩欧美| 国产精品九色蝌蚪自拍| 久久综合视频网| 日韩三级.com| 欧美日韩国产一区二区三区地区| 99在线精品免费| 国产精品18久久久久| 日本成人在线不卡视频| 亚洲不卡在线观看| 亚洲欧美另类久久久精品2019| 国产丝袜美腿一区二区三区| 午夜视频一区二区三区| 亚洲欧洲性图库| 国产精品卡一卡二| 国产目拍亚洲精品99久久精品| 精品欧美黑人一区二区三区| 5月丁香婷婷综合| 欧美日韩国产乱码电影| 在线视频国内一区二区| 不卡欧美aaaaa| 成人精品国产福利| 国产精品一区2区| 国产风韵犹存在线视精品| 国产美女一区二区| 国产精品中文欧美| 国产麻豆视频一区二区| 国产呦萝稀缺另类资源| 国产精品一区二区你懂的| 狠狠色狠狠色综合系列|