commit
fd5e7e94ff
3 changed files with 165 additions and 165 deletions
0
Makefile
Executable file → Normal file
0
Makefile
Executable file → Normal file
|
|
@ -87,7 +87,7 @@ Start: cld ;make STOSW count up
|
|||
mov es,bx
|
||||
mov cx,[bp].BufSize ;load CX with buffer size
|
||||
rep stosw ;fill the buffer
|
||||
Bye:mov sp,bp ;restore original stack pointer
|
||||
Bye: mov sp,bp ;restore original stack pointer
|
||||
pop bp ; and caller's BP
|
||||
ret EndMrk-RetAddr-2 ;return, clearing the parms from the stack
|
||||
ClearS endp
|
||||
|
|
@ -240,7 +240,7 @@ ClearS proc near
|
|||
cmp word ptr [bp].BufOfs,0
|
||||
je Bye
|
||||
Start: cld ;make STOSW count up
|
||||
mov ah,byte ptr [bp].Attrib[1];load AH with attribute
|
||||
mov ah,byte ptr [bp].Attrib[1] ;load AH with attribute
|
||||
mov al,byte ptr [bp].Filler ;load AL with fill char
|
||||
les di,dword ptr [bp].BufOfs ;load ES:DI with target buffer segment:offset
|
||||
mov cx,[bp].BufSize ;load CX with buffer size
|
||||
|
|
@ -274,7 +274,7 @@ ClearS proc near
|
|||
or ax,di ;is it a null pointer?
|
||||
je Bye ;yes, so we're done
|
||||
Start: cld ;make STOSW count up
|
||||
mov ah,byte ptr [bp].Attrib[1];load AH with attribute
|
||||
mov ah,byte ptr [bp].Attrib[1] ;load AH with attribute
|
||||
mov al,byte ptr [bp].Filler ;load AL with fill char
|
||||
mov cx,[bp].BufSize ;load CX with buffer size
|
||||
rep stosw ;fill the buffer
|
||||
|
|
@ -327,7 +327,7 @@ With that problem dealt with, Listing 22.7 shows the Zenned version of
|
|||
**LISTING 22.7 L22-7.ASM**
|
||||
|
||||
```nasm
|
||||
ClearS procnear
|
||||
ClearS proc near
|
||||
pop dx ;get the return address
|
||||
pop ax ;put fill char into AL
|
||||
pop bx ;get the attribute
|
||||
|
|
|
|||
Loading…
Reference in a new issue