![]() |
1. Заголовок или название темы должно быть информативным
2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE]
3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора.
5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM!
6. Проверяйте программы перед тем, как выложить их на форум!!
![]() |
Shadow |
![]()
Сообщение
#1
|
![]() Lonely_Raven ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 640 Пол: Мужской Репутация: ![]() ![]() ![]() |
ПРИВЕТ!!! ALL!!
================ ВОт реализовано позиционирование сама строка и атрибуты ================== Procedure InitTV; assembler;
asm
mov ax,0003h
int 10h
end
Procedure WK;Assembler;
asm
mov ax,0
int 16h
xor ax,ax
end
Procedure OS(x,y : Byte; S : String; c : Byte);
Begin
asm
push ds
mov ax,ss
mov ds,ax
lea si,y
mov ax,80
mov cx,[si]
mul cx
lea si,x
mov cx,[si]
add ax,cx
mov cx,0002h
mul cx
mov di,ax
mov ax,0b800h
mov es,ax
lea si,S
mov ah,0
mov al,[si]
mov cx,ax
inc si
@out:
mov al,[si] {Symbol}
mov ah,c {attribut}
inc si {nex symbol}
mov es:[di],ax {to video memory}
inc di {movenau to video memory}
inc di {increment 2 se also for 1 symbol 2 byte memory}
loop @out
pop ds
end
end;
BEGIN
InitTV;
OS(36,10,'Hello',254);
WK;
END.
-------------------- Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ --------------------- RTFM - Read the fucking manual --------------------- http://www.livejournal.com/users/lonley_raven/ |
![]() ![]() |
![]() |
Текстовая версия | 25.07.2025 22:27 |