-
Help: Assembler 8086
Čaute!!!
Potreboval by som help s programom v ASM8086. Mám spraviť program na vykreslenie obdĺžnika pomocou zadaného znaku ( znak môže byť ľubovoľný) štvoricou zadaných súradníc. Niečo som vyplodil, ale v programovaní som dosť lama, takže to nefunguje tak, ako by malo. Poradí niekto???
Je to v 320*200/256 farieb(neviem načo tie farby), je tam oštetrený na konci vstup z klávesnice. Má to vypadať nejak takto
Hviezdičky=ľubovoľný znak.
program odbdlznik;
begin
asm
mov ah,00h
mov al,13h
int 10h
mov ah,02h
mov bh,0
mov dh,10
mov dl,20
int 10h
mov ah,02h
mov dh,15
mov dl,20
int 10h
mov ah,02h
mov dh,15
mov dl,30
int 10h
mov ah,02h
mov dh,20
mov dl,30
mov ah,09h
mov bh,0
mov al,1
mov cx,1
int 10h
mov ah,01h
int 21h
end;
end.
-
Ze si to ty, tak som sa s tym trochu pohral :-)
BTW.: Patri to do programovania.
Kód:
program odbdlznik;
const PosX=4;
PosY=10;
SizeX=10;
SizeY=5;
Line='*';
begin
asm
mov ax,0013h
int 10h
mov ah,02h
xor bh,bh
mov dh,PosY
mov dl,PosX
int 10h
mov ah,09h
mov al,Line
xor bh,bh
mov cx,SizeX
int 10h
mov cx,SizeY
dec cx
dec cx
@rep:
push cx
mov ah,02h
xor bh,bh
mov dh,PosY
add dh,SizeY
sub dh,cl
dec dh
mov dl,PosX
int 10h
mov ah,09h
mov al,Line
xor bh,bh
mov cx,1
int 10h
mov ah,02h
xor bh,bh
add dl,SizeX
dec dl
int 10h
mov ah,09h
mov al,Line
xor bh,bh
mov cx,1
int 10h
pop cx
loop @rep
mov ah,02h
xor bh,bh
mov dh,PosY
add dh,SizeY
dec dh
mov dl,PosX
int 10h
mov ah,09h
mov al,Line
xor bh,bh
mov cx,SizeX
int 10h
mov ah,01h
int 21h
mov ax,0003h
int 10h
end;
end.
-
Fakt díky, máš to u mňa :-)