;--------------------------------------------------------------------
 
; Описание: Бегущая строка
 
; Автор порта: Тарасов М.Н.(Mick),2010
 
;--------------------------------------------------------------------
 
Str_reload:
 
                ld      a,(Str_flg_end)
 
                and     a
 
                jr      z,Str_init
 
                xor     a
 
                ld      (Str_flg_end),a
 
                scf
 
                ret
 
Str_init:
 
                xor     a
 
                ld      (Str_count_step),a
 
                ld      hl,Str_addr_text
 
                ld      (Str_addr_work),hl
 
                ld      a,(hl)
 
                ret
 
 
 
Str_init_load:
 
                ld      hl,Str_addr_load
 
                ld      (Str_addr_work),hl
 
                xor     a
 
                ld      (Str_count_step),a
 
                ld      a,1
 
                ld      (Str_flg_end),a
 
                ld      a,(hl)
 
                ret     
 
 
 
Str_play:
 
                ld      a,(Str_count_step)
 
                inc     a
 
                ld      (Str_count_step),a
 
                and     7
 
                ret     nz
 
                ld      hl,(Str_addr_work)
 
                ld      a,(hl)
 
                and     a
 
                call    z,Str_reload
 
                ret     c
 
                inc     hl
 
                ld      (Str_addr_work),hl
 
                sub     20h
 
                ld      l, a
 
                ld      h, 0
 
                ld      de,Str_addr_font
 
                add     hl,hl
 
                add     hl,hl
 
                add     hl,hl
 
                add     hl,de
 
                ex      hl,de
 
                ld      hl,Str_table_line
 
 
 
                ld      b,8
 
Str_draw_line:
 
                push    bc
 
                push    de
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
                ld      c,e
 
                ld      b,d
 
                ld      e,(hl)
 
                inc     hl
 
                ld      d,(hl)
 
                inc     hl
 
                ld      a,(de)
 
                ld      (bc),a
 
 
 
 
 
                ld      c,e
 
                ld      b,d
 
                pop     de
 
                ld      a,(de)
 
                inc     de
 
                ld      (bc),a
 
                pop     bc
 
                dec     b
 
                jp      nz,Str_draw_line
 
                ld      a,(Str_count_bit)
 
                dec     a
 
                ld      (Str_count_bit),a
 
                ret     
 
 
 
;-------------------------------------------------------------------
 
; описание: Очистка поля основной строки
 
; параметры: нет
 
; возвращаемое  значение: нет
 
;---------------------------------------------------------------------
 
Str_clear_buff: 
 
                ld      a,(Str_count_step)
 
                cp      8
 
                ret     nz
 
                ld      (Str_addr_sp),sp
 
                ld      b,24
 
                ld      hl,40F6h
 
Str_clear_loop: 
 
                ld      sp,hl
 
                ld      de,0
 
                push    de
 
                push    de
 
                push    de
 
                push    de
 
                push    de
 
                push    de
 
                push    de
 
                inc     h
 
                ld      a,h
 
                and     7
 
                jr      nz,Str_next_line3
 
                ld      a, l
 
                add     a,20h
 
                ld      l, a
 
                jr      c,Str_next_line3
 
                ld      a,h
 
                sub     8
 
                ld      h,a
 
Str_next_line3: 
 
                djnz    Str_clear_loop
 
                ld      sp,(Str_addr_sp)
 
                ret
 
 
 
Str_table_line:
 
                dw      40E8h
 
                dw      43E9h
 
                dw      46EAh
 
                dw      480Bh
 
                dw      46ECh
 
                dw      43EDh
 
                dw      40EEh
 
                dw      43EFh
 
                dw      46F0h
 
                dw      4811h
 
                dw      46F2h
 
                dw      43F3h
 
                dw      40F4h
 
                dw      43F5h
 
 
 
                dw      41E8h
 
                dw      44E9h
 
                dw      47EAh
 
                dw      490Bh
 
                dw      47ECh
 
                dw      44EDh
 
                dw      41EEh
 
                dw      44EFh
 
                dw      47F0h
 
                dw      4911h
 
                dw      47F2h
 
                dw      44F3h
 
                dw      41F4h
 
                dw      44F5h
 
 
 
                dw      42E8h
 
                dw      45E9h
 
                dw      480Ah
 
                dw      4A0Bh
 
                dw      480Ch
 
                dw      45EDh
 
                dw      42EEh
 
                dw      45EFh
 
                dw      4810h
 
                dw      4A11h
 
                dw      4812h
 
                dw      45F3h
 
                dw      42F4h
 
                dw      45F5h
 
 
 
                dw      43E8h
 
                dw      46E9h
 
                dw      490Ah
 
                dw      4B0Bh
 
                dw      490Ch
 
                dw      46EDh
 
                dw      43EEh
 
                dw      46EFh
 
                dw      4910h
 
                dw      4B11h
 
                dw      4912h
 
                dw      46F3h
 
                dw      43F4h
 
                dw      46F5h
 
 
 
                dw      44E8h
 
                dw      47E9h
 
                dw      4A0Ah
 
                dw      4C0Bh
 
                dw      4A0Ch
 
                dw      47EDh
 
                dw      44EEh
 
                dw      47EFh
 
                dw      4A10h
 
                dw      4C11h
 
                dw      4A12h
 
                dw      47F3h
 
                dw      44F4h
 
                dw      47F5h
 
 
 
                dw      45E8h
 
                dw      4809h
 
                dw      4B0Ah
 
                dw      4D0Bh
 
                dw      4B0Ch
 
                dw      480Dh
 
                dw      45EEh
 
                dw      480Fh
 
                dw      4B10h
 
                dw      4D11h
 
                dw      4B12h
 
                dw      4813h
 
                dw      45F4h
 
                dw      4815h
 
 
 
                dw      46E8h
 
                dw      4909h
 
                dw      4C0Ah
 
                dw      4E0Bh
 
                dw      4C0Ch
 
                dw      490Dh
 
                dw      46EEh
 
                dw      490Fh
 
                dw      4C10h
 
                dw      4E11h
 
                dw      4C12h
 
                dw      4913h
 
                dw      46F4h
 
                dw      4915h
 
 
 
                dw      47E8h
 
                dw      4A09h
 
                dw      4D0Ah
 
                dw      4F0Bh
 
                dw      4D0Ch
 
                dw      4A0Dh
 
                dw      47EEh
 
                dw      4A0Fh
 
                dw      4D10h
 
                dw      4F11h
 
                dw      4D12h
 
                dw      4A13h
 
                dw      4714h
 
                dw      4A15h
 
 
 
Str_count_step:
 
                db      0
 
 
 
Str_flg_end:
 
                db      0
 
 
 
Str_count_bit:
 
                db      0
 
Str_addr_work:
 
                dw      0
 
Str_addr_sp:
 
                dw      0
 
 
 
Str_addr_load:
 
                db      'LOADING   ',0
 
Str_addr_text:
 
                db      '                     ПРИВЕТ! И ЕЩЕ РАЗ ПРИВЕТ ОТ MICK!!!!       '
 
                db      'ПОСЛЕ ТОГО КАК БЫЛА ПРОЙДЕНА ИГРА HALO REACH, УБРАЛ В ШКАФ СВОЙ XBOX360.'
 
                db      ' НАЧАЛ ДУМАТЬ КАК ПРОДОЛЖИТЬ ТЕМУ СТРЕЛОЧНЫХ АНАЛИЗАТОРОВ. И СПУСТЯ НЕКОТОРОЕ'
 
                db      ' ВРЕМЯ, НАВЕОРНОЕ НАКАТИЛО ПОСЛЕ ПОКРАСКИ СТЕНЫ В ГАРАЖЕ, ПРИДУМАЛ.'
 
                db      ' И ОСТАНОВИЛСЯ НА ИДЕЕ САМОПИСЦЕВ. ТАКИХ Я ЕЩЕ НИ РАЗУ НЕ ДЕЛАЛ В ЖИЗНИ.'
 
                db      ' НАЧАЛ ИХ РЕАЛИЗОВЫВАТЬ - РЕЗУЛЬТАТ ВЫ МОЖЕТЕ УВИДЕТЬ НА ЭКРАНЕ.'
 
                db      ' ПО ПРАВДЕ СКАЗАТЬ, Я ОТ НИХ ТАЩУСЬ, ОНИ МЕНЯ САМОГО ВПЕЧАТЛИЛИ.'
 
                db      ' ТАК ЧТО В ЭТОМ ВЫПУСКЕ ГЛАВНАЯ ТЕМА, ЭТО АНАЛИЗАТОРЫ. ВПРОЧЕМ НАЧАЛЬНАЯ'
 
                db      ' МЕЛОДИЯ ОТ ESI КАК ВСЕГДА ЗВУЧИТ КРУТО :). ЭТОТ ВЫПУСК ТОЖЕ НЕ ОБОШЕЛСЯ БЕЗ'
 
                db      ' АНИМАЦИИ. НА ЭТОТ РАЗ РАСКРУТИЛ НОМЕР ВЫПУСКА АЖ В ДВУХ ВАРИАЦИЯХ.' 
 
                db      ' ПОЭТОМУ ДЛЯ ПРОСМОТРА АНИМАЦИИ В ПОЛНОМ ОБЪЕМЕ ДОСТАТОЧНО КОМПА С 128КБ ПАМЯТИ.'
 
                db      ' ИТАК, ЭТО УЖЕ ОДИНАДЦАТЫЙ ВЫПУСК ДЕМО-ПРОГРАММЫ "E-TUNES".'
 
                db      ' ЭТОТ ВЫПУСК ВКЛЮЧАЕТ В СЕБЯ 30 МУЗЫКАЛЬНЫХ КОМПОЗИЦИЙ РАЗНОЙ ПРОДОЛЖИТЕЛЬНОСТИ.'
 
                db      ' НАПОМНЮ ЧТО ДАННЫЕ МУЗЫКАЛЬНЫЕ КОМПОЗИЦИИ СОЗДАНЫ В РЕДАКТОРЕ'
 
                db      ' "E-TRACKER" И ПОЗАИМСТВОВАНЫ С КОМПЬЮТЕРА "SAM COUPE".'
 
                db      ' ИТОГО УЖЕ НА СПЕККИ 330 КОМПОЗИЦИЙ ДОСТУПНЫХ ДЛЯ ПРОСЛУШИВАНИЯ.'
 
                db      ' ПРОСЛУШАТЬ МУЗЫКУ МОЖНО  ЧЕРЕЗ ЗВУКОВУЮ КАРТУ "ZXM-SOUNDCARD" ИЛИ В ЭМУЛЯТОРЕ "UNREAL SPECCY",'
 
                db      ' ПРОПАТЧЕННЫЙ МОЛОДЦОВЫМ АЛЕКСАНДРОМ.' 
 
                db      ' НЕМНОГО ОБ УПРАВЛЕНИИ. ПЕРЕХОД К СЛЕДУЮЩЕМУ ПРОИЗВЕДЕНИЮ ОСУЩЕСТВЛЯЕТСЯ ПРИ ПОМОЩИ КЛАВИШИ'
 
                db      ' "SPACE", ВЫХОД В TR-DOS ПРИ ПОМОЩИ КЛАВИШИ "BREAK"'
 
                db      ' О ПРОГРАММЕ: АНИМАЦИЯ СОЗДАНА В ПРОГРАММЕ "BLUFFTITLER" И СКОНВЕРЧЕНА  В ФОРМАТ ДАННЫХ ДЛЯ АССЕМБЛЕРА'
 
                db      ' ПРИ ПОМОЩИ МАЛЕНЬКИХ ПРОГРАММ-ПОМОШНИКОВ, НЕКОТОРЫЕ ИЗ НИХ НАПИСАЛ НА VISUAL C ОТ МЕЛКОМЯГКИХ(КУДА ЖЕ'
 
                db      ' БЕЗ НИХ).  ОСТАЛЬНОЕ ВЗЯТО ИЗ ПРЕДЫДУЩИХ ВЫПУСКОВ "E-TUNES" ИЛИ ПРИДУМАНО.'
 
                db      ' ВСЕ ЭТО СОБИРАЛОСЬ НА РС ПРИ ПОМОЩИ АССЕМБЛЕРА  SJASMPLUS.'
 
                db      '             ПРИВЕТЫ И СПАСИБЫ!     '
 
                db      ' ААА, КАК ВСЕГДА И ВЕЗДЕ ГРОМАДНЫЙ ПРИВЕТИЩЕ. СНОВА ДЛЯ ТЕБЯ ЗВУЧИТ МУЗЫКА ESI :)' 
 
                db      ' ПРИВЕТ ВСЕЙ ГРУППЕ AAA BAND, МОЛОДЦЫ ЧТО РАДУЕТЕ НАС СВОИМИ ДЕМКАМИ, ТАК ДЕРЖАТЬ.'
 
                db      ' БОЛЬШУЩИЙ РЕСПЕКТ MOLODCOV_ALEX (МОЛОДЦОВ АЛЕКСАНДР) ЗА ЭМУЛЯТОР.'
 
                db      ' RINDEX ПРИВЕТ И СПАСИБО ЗА КРИТИКУ И РЕДАКТОР "BLUFFTITLER".'
 
                db      ' ОТДЕЛЬНОЕ СПАСИБО PIROXILIN ЗА СВОЙ ТОП ЛИСТ МУЗЫКИ ИЗ ВЫПУСКОВ E-TUNES.'
 
                db      ' ПРИВЕТ ВЛАДЕЛЬЦАМ КАРТЫ "ZXM-SOUNDCARD". НАЗОВЕМ ИХ ПОИМЕННО: AAA, PIROXILIN, КИРЛИАН И LUZANOV.'
 
                db      ' ВСЕМ ФЕНИКСОИДАМ ОТДЕЛЬНЫЙ ПРИВЕТ :).'
 
                db      ' ПРИВЕТ ТАКЖЕ ВСЕМ СПЕКТРУМИСТАМ, БЫВШИМ, НАСТОЯЩИМ И ВОЗМОЖНО БУДУЩИМ.'
 
                db      '        ЧАСТЬ РЕКЛАМЫ И АНОНСОВ.      '
 
                db      ' ВЕДЕТСЯ ОТЛАДКА КОМПЬЮТЕРА "ZXM-PHOENIX 4096 TURBO".'
 
                db      ' ОТДАНЫ В ПРОИЗВОДСТВО ТЕСТОВЫЕ ВАРИАНТЫ ВТОРОЙ РЕДАКЦИИ ЗВУКОВОЙ КАРТЫ "ZXM-SOUNDCARD" И ВИДЕОКАРТЫ'
 
                db      ' "ZXM-VIDEOCARD". НАДЕЮСЬ К КОНЦУ ОКТЯБРЯ Я ИХ ЗАРЕЛИЖУ.'
 
                db      ' НЕ ЗАБЫВАЕМ ПОСЕЩАТЬ САЙТ WWW.MICKLAB.NAROD.RU ТАМ МОЖНО НАЙТИ ПОСЛЕДНЮЮ ИНФОРМАЦИЮ'
 
                db      ' ПО МОИМ ПРОЕКТАМ. СВЯЗАТСЯ СО МНОЙ МОЖНО ЧЕРЕЗ САЙТ WWW.ZX.PK.RU - НИКНЕЙМ MICK ИЛИ ЧЕРЕЗ МЫЛО'
 
                db      ' MICKLAB@MAIL.RU    '
 
                db      ' ПОРА ПРОЩАТЬСЯ. ДО НОВЫХ ТЮНЕСОВ. ПОКА, ПОКА.......            '
 
                db      '            OCTOBER *2010*    GRAPHICS AND CODE BY MICK         '
 
                db      '                                             ',0                       
 
Str_addr_font:
 
                incbin "font.fnt"
 
Str_end_font:
 
 
 
;               .end