IPB
ЛогинПароль:

> ПРАВИЛА РАЗДЕЛА!!!

1. Заголовок или название темы должно быть информативным
2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE]
3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора.
5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM!
6. Проверяйте программы перед тем, как выложить их на форум!!

 
 Ответить  Открыть новую тему 
> вылет строка по буквам, может кому сгодится
сообщение
Сообщение #1


Lonely_Raven
****

Группа: Пользователи
Сообщений: 640
Пол: Мужской

Репутация: -  1  +


привет
вот может кому пригодится для оформления
чего нибудь smile.gif
-------------
я не стал заниматься оптимизацией цель немного другая
-------------
Uses Crt;
Var
sss    :       Byte;
Procedure OS(S : String);
Var
ls     :       Byte;
 begin
   asm
     push ds
     mov ax,ss
     mov ds,ax

     shl bh,8         {load zero this register t/k/ bx poor enter Procedure}

     mov ah,09h       {DOS function out string}
     lea dx,S         {load area adres}
     inc dx           {+1}

     lea si,S         {}
     mov bl,[si]      {Load values length string}
     mov ls,bl        {save adres S to variable ls}

     add si,bx        {si+bx}
     inc si           {correctly for first symbol key lenght string}

     mov bl,24h       (*24h this code ASCII symbol $ end string*)
     mov [si],bl
     int 21h
     pop ds
     mov ah,ls
   end;
 end;

procedure PC_XY(nvs,x,y : Byte);assembler;
 asm
  push ds
  mov ah,02h
  mov bh,nvs
  mov dh,y
  mov dl,x
  int 10h
  pop ds
 end;

Procedure FlyS(S : String;xx,yy : Byte; wt : Integer);{0..79  0..49}
Var
 str : array  [0..255] of Char;
 x,ls  : byte;
 x_c   : Byte;
 begin
 x_c:=0;
  asm
   push ds
   mov ax,ss
   mov ds,ax
   lea si,S {--------------------------------------}
   lea di,str
   mov cl,[si]
   mov ls,cl   {len string}
   inc si
@a:
   mov bl,[si]
   mov [di],bl
   inc si
   inc di
   dec cx
   cmp cx,0
   jnz @a
   pop ds
  end;
  x_c:=xx;
while ls <> 0 do
 begin
     dec(ls);
     for xx:=0 to x_c do
       begin
        PC_XY(0,xx,yy);
        Write(str[ls]);
        Delay(wt);
        PC_XY(0,xx-1,yy);
        Write(' ');
     end;
       dec(x_c);
 end;
end;
Procedure WK;Assembler;
 asm
   mov ax,0
   int 16h
   xor ax,ax
 end;
Begin
ClrScr;
WK;
PC_XY(0,10,10);
OS('Veeeetttt');
FlyS('..::This CopyRight [c] Lonely_Raven 2004::..',57,15,400);
{The FlyS = String, x - last symbol out,y - pos symbol,wt wait symbool out}
WK;
end.


--------------------
Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ
---------------------
RTFM - Read the fucking manual
---------------------
http://www.livejournal.com/users/lonley_raven/
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Пионер
**

Группа: Пользователи
Сообщений: 112
Пол: Мужской

Репутация: -  0  +


спасибо, сейчас все это испытаем :D


--------------------
Я люблю этот форум!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 30.11.2020 17:57
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name