PDA

View Full Version : اقطار مانیتور به ضخامت 3X



leyla
جمعه 21 بهمن 1384, 18:45 عصر
با عرض سلام این برنامه رو چی جوری باید نوشت؟

برنامه ای بنویسید که اقطار یک مانیتور به ضخامت 3x بصورت متناوب و با سرعت 5s پر و خالی نماید.
با وقفه های 10H ، 16H، 21H

aakh1361
سه شنبه 25 بهمن 1384, 00:31 صبح
pixel macro x,y,col
mov ah,0ch
mov al,col
mov cx,X
mov dx,Y
int 10h
endm
ExitOfProgram Macro
mov ah,4ch
int 21h
Endm
Dealy macro N
local l1,l10,NoKey
mov cx,N
l1:
push cx
mov cx,N
l10:
push cx
; mov ax,1
; int 16h
; test al,al
; jz NoKey
; ExitOfProgram
NoKey:
pop cx
loop l10
pop cx
loop l1
endm
.model small
;.data
.code
Org 256
start:
jmp main
X1 dw 0
Y1 dw 0
Col1 db 0
X2 dw 0
Y2 dw 199
Col2 db 0
X3 dw 319
Y3 dw 0
Col3 db 0
X4 dw 319
Y4 dw 199
Col4 db 0
N dw 600H
main:
mov ax,13h
int 10h
mov cx,5
MainLoop:
push cx
mov col1,9
mov col2,10
mov col3,11
mov col4,12
mov cx,99
reply1:
push cx
pixel x1,y1,col1
inc x1
inc y1
pixel x2,y2,col2
inc x2
dec y2
pixel x3,y3,col3
dec x3
inc y3
pixel x4,y4,col4
dec x4
dec y4
Dealy N

pop cx
dec cx
jcxz Exit1
jmp reply1
Exit1:
;************************
; Back Stars
;************************
mov col1,0
mov col2,0
mov col3,0
mov col4,0
mov cx,99
reply2:
push cx
pixel x1,y1,col1
dec x1
dec y1
pixel x2,y2,col2
dec x2
inc y2
pixel x3,y3,col3
inc x3
dec y3
pixel x4,y4,col4
inc x4
inc y4
Dealy N
pop cx
dec cx
jcxz Exit2
jmp reply2
Exit2:


pop cx
;End Main Loop
Dec cx
jcxz Exit
jmp MainLoop
Exit:
xor ax,ax
int 16h
ExitOfProgram
end start