📄 dmem002.asm
字号:
;************************************************************************
;* MODULE INFORMATION*
;**********************
;* FILE NAME: dmem002.asm
;* SYSTEM NAME: devlib
;* ORIGINAL AUTHOR(S): Paul Lemmers
;* VERSION NUMBER:
;* CREATION DATE: 1990/8/14
;*
;* DESCRIPTION: Contains dev_memset
;*
;************************************************************************
;* CHANGES INFORMATION **
;************************
;* REVISION: $Revision: 1.2 $
;* WORKFILE: $Workfile: dmem002.asm $
;* LOGINFO: $Log: D:/CPROG/MYDEV/DEVLIB/VCS/DMEM002.ASV $
;*
;* Rev 1.2 29 Mar 1992 17:06:04 PAUL
;* Changes for masm 6.00 ??
;*
;* Rev 1.1 17 Dec 1990 14:34:00 PAUL
;* Function headers added
;*
;* Rev 1.0 14 Aug 1990 14:40:02 PAUL
;* Initial revision.
;************************************************************************/
;
INCLUDE cdev.inc
_TEXT SEGMENT
;************************************************************************
;* NAME: dev_memset
;* SYNOPSIS: void far *dev_memset(void far *dest, int iCh, unsigned count);
;* DESCRIPTION: See C-runtime memset
;* CALL REGISTERS:
;* UNMODIFIED REGISTERS:
;* ds bp si di
;* RETURNS: See C-runtime memset
;************************************************************************
PUBLIC _dev_memset
dest = 4
iCh = 8
count = 0Ah
_dev_memset PROC NEAR
push bp
mov bp,sp
push di
les di,[bp+dest] ; get ptr to dest string
mov dx,es ; prepare part of return value
mov cx,[bp+count] ; whoops, get max count
mov al,[bp+iCh] ; get character
mov ah,al ; make it fit for word store
shr cx,1 ; calculate # of words
rep stosw ; ax=0 for padding
jnc $L002
stosb ; last byte
$L002: mov ax,[bp+dest] ; get last part of return value
pop di
pop bp
ret
_dev_memset ENDP
_TEXT ENDS
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -