home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World 1999 October
/
PCWorld_1999-10_cd1.bin
/
Novinky
/
expert
/
INTRO256
/
BURNING.ZIP
/
burning.asm
next >
Wrap
Assembly Source File
|
1999-08-23
|
1KB
|
117 lines
.386
cra segment use16
assume es:cra,cs:cra,ss:cra,ds:cra
org 100h
all:
mov al,13h
int 10h
mov dx,03C8h
mov cl,3Fh
@p:
mov al,cl
out dx,al
inc dx
out dx,al
out dx,al
shr al,1
out dx,al
dec dx
loop @p
; mov dx,03C8h
; xor al,al
; out dx,al
; inc dx
; mov cx,300h
;@p1:
; out dx,al
; inc ax
; loop @p1
mov ah,9
mov dx,offset napis
int 21h
;skopiruje 2560 bytu z A000h:0000h do cs:0400h
PUSH DS
push cs
pop es
mov di,0400h
push 0A000h
pop ds
xor si,si
mov ch,0Ah
@m1:
lodsb
shl al,3
stosb
loop @m1
POP DS
push 0A000h
pop es
xor di,di
mov ch,0Ah
rep stosb
xor bx,bx ;bx-offset textu
@main:
;prdne text z cs:0400h na A000:bx
PUSH DS
push 0A000h
pop es
push cs
pop ds
mov si,0400h
add bx,0140h
cmp bx,64000-8*320
jb @1
xor bx,bx
@1:
mov di,bx
mov ch,0Ah
@k1:
lodsb
or al,al
jz @k2
mov es:[di],al
@k2:
inc di
loop @k1
POP DS
call @inportsub
in al,60h
dec al
jnz @main
xor ax,ax
int 16h
mov ax,3
int 10h
retn
napis db 9,'I''m burning! I''m burning!$'
@inportsub:
push 0A000h
pop es
xor di,di
mov dh,200 ;radky
@2:
in al,40h
mov ah,al
mov cx,320
@3:
inc ah
and ah,argument
mov al,es:[di]
sub al,ah
jns @4
xor al,al
@4:
stosb
loop @3
dec dh
jnz @2
retn
argument equ 15
cra ends
end all