home *** CD-ROM | disk | FTP | other *** search
- ; SETATTR.ASM
- ;
- ; procedure setattr(y,x,anzahl,att: byte);
-
- public setattr
-
- data segment word public
- assume ds:data
-
- extrn crt_screen: dword
-
- data ends
-
-
- code segment word public
- assume cs:code
-
- setattr proc far
-
- lng equ 6 ; BP + Rücksprung-AD
- att equ byte ptr ss:[bp+lng]
- anzahl equ byte ptr ss:[bp+lng+2]
- x equ byte ptr ss:[bp+lng+4]
- y equ byte ptr ss:[bp+lng+6]
- param_bytes equ 8
-
- push bp
- mov bp,sp
- push ds
- cld
-
- les di,crt_screen
- assume es:nothing
- mov al,x
- xor ah,ah
- shl ax,1
- add di,ax
- mov al,y
- mov bx,160
- mul bx
- add di,ax ; ES:DI zeigt auf Bildschirm
-
- mov cl,anzahl
- xor ch,ch
- mov al,att
- schleife:
- inc di
- stosb
- loop schleife
-
- pop ds
- pop bp
- ret param_bytes
-
- setattr endp
-
- code ends
- end