;--------------------------------------------------------------------
 
; Описание: Бегущая строка
 
; Автор порта: Тарасов М.Н.(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_bit)
 
                or      a
 
                call    z,Str_next_symbol
 
                ret     c
 
                call    Str_update_string
 
                jp      Str_view_string
 
 
 
Str_next_symbol:
 
                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
 
                ld      de,Str_symbol_buf
 
                ldi
 
                ldi
 
                ldi
 
                ldi
 
                ldi
 
                ldi
 
                ldi
 
                ldi
 
                ld      a,8
 
                ld      (Str_count_bit),a
 
                ret
 
 
 
Str_update_string:
 
                ld      de,Str_symbol_buf
 
                ld      hl,Str_string_buf + 14
 
                ld      b,08h
 
Str_update_loop:
 
                ld      c,0
 
                ld      a,(de)
 
                rlca
 
                ld      (de),a
 
                jr      nc,Str_update_pixel
 
                ld      c,1
 
Str_update_pixel:
 
                ld      a,(hl)
 
                and     0FEh
 
                or      c
 
                ld      (hl),a
 
                push    de
 
                ld      de,15
 
                add     hl,de
 
                pop     de
 
                inc     de
 
                djnz    Str_update_loop
 
                ret             
 
 
 
Str_view_string:
 
                ld      de,5689h
 
                ld      hl,Str_string_buf
 
                ld      b,8
 
Str_draw_line:
 
                push    de
 
                push    hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                pop     hl
 
                pop     de
 
                inc     d
 
                ld      a,d
 
                and     7
 
                jr      nz,Str_next_line02
 
                ld      a,e
 
                add     20h
 
                ld      e,a
 
                jr      c,Str_next_line02
 
                ld      a,d
 
                sub     8
 
                ld      d,a
 
Str_next_line02:
 
                push    de
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                inc     de
 
                inc     hl
 
                ldi
 
                pop     de
 
                inc     d
 
                ld      a,d
 
                and     7
 
                jr      nz,Str_next_line03
 
                ld      a,e
 
                add     20h
 
                ld      e,a
 
                jr      c,Str_next_line03
 
                ld      a,d
 
                sub     8
 
                ld      d,a
 
Str_next_line03:
 
                djnz    Str_draw_line
 
                ld      a,(Str_count_bit)
 
                dec     a
 
                ld      (Str_count_bit),a
 
                ret     
 
 
 
Str_move_string:
 
                ld      hl,Str_flg_end - 1
 
                and     a
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
 
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                dec     hl
 
                rl      (hl)
 
                ret
 
 
 
 
 
Str_count_step:
 
                db      0
 
Str_symbol_buf:
 
                ds      8
 
Str_string_buf:
 
                ds      120
 
Str_flg_end:
 
                db      0
 
 
 
Str_count_bit:
 
                db      0
 
Str_addr_work:
 
                dw      0
 
Str_addr_sp:
 
                dw      0
 
 
 
Str_addr_load:
 
                db      '* L O A D *  ',0
 
Str_addr_text:
 
                db      '                     ПРИВЕТ, ПРИВЕТ! MICK ОПЯТЬ БУДЕТ ПРИСТАВАТЬ С НОВЫМ  ВЫПУСКОМ!!!!       '
 
                db      ' ТАК И НЕ ДОЖДАВШИСЬ НОВОГОДНЕГО ВЫПУСКА "E-TUNES" ОТ ГРУППЫ AAA BAND С ЕЛКОЙ И СНЕГУРКОЙ,'
 
                db      ' РЕШИЛ ВСЕ ЖЕ ИЗОБРАЗИТЬ ВЫПУСК С НОВОГОДНЕЙ ТЕМАТИКОЙ. ХУДОЖЕСТВЕННОЙ ШКОЛЫ НЕ ЗАКАНЧИВАЛ,'
 
                db      ' ПОЭТОМУ СИЛЬНО НЕ БИТЬ. ТАК КАК МУЗЫКА УЖЕ ЗАКАНЧИВАЕТСЯ, ТО В ЭТОМ ВЫПУСКЕ МУЗЫКА ХИТАМИ'
 
                db      ' НЕ ОСОБО БОГАТА. ПАРУ ТРЕКОВ ВЫ УЖЕ МОГЛИ СЛЫШАТЬ В ДЕМО ПРОГРАММЕ "E-DEMO". КСТАТИ УЧАСТВУЯ'
 
                db      ' В ПЕРВОМ СВОЕМ ДЕМОПАТИ AAA DEMO COMPETITION 2010, УМУДРИЛСЯ ЗАНЯТЬ 8 МЕСТО - МЕНЯ ЭТО' 
 
                db      ' ПОРАДОВАЛО. ВСЕ ЖЕ КАК НИКАК, А В ПЕРВОЙ ДЕСЯТКЕ.  '
 
                db      ' НУ ДА ЛАДНО, ЭТОТ ВЫПУСК ПРЕДПОСЛЕДНИЙ. МОЖЕТ ПОТОМ И ВЫПУЩУ СБОРНИК "THE BEST". ПОСМОТРЮ, КАК '
 
                db      ' УДАСТЬСЯ ДОГОВОРИТСЯ С ЛЕНЬЮ :) :) ИЛИ МОЖЕТ AAA BAND ЕГО ВСЕ ЖЕ ВЫПУСТИТ.'
 
                db      ' ПОТОМ ПО ЛОГИКЕ НАДО БЫ ВЫПУСТИТЬ ПЛЕЕР ОТДЕЛЬНО, ЧТОБЫ МОЖНО СЛУШАТЬ ТРЕКИ ПООТДЕЛЬНОСТИ.'
 
                db      ' ОПЯТЬ ЖЕ КАК С ДОГОВОРЮСЬ С ЛЕНЬЮ, ДА И ЖЕЛЕЗКИ  БЫ ДОДЕЛАТЬ, КАКИЕ НАЧАЛ. ВООБЩЕМ СИЛЬНО'
 
                db      ' НЕ ПИНАЕМ ЗА ВЫПУСК, ИДЕЙ НЕТ, А САЙТ ОБНОВЛЯТЬ НАДО. :) :)      '
 
                db      ' ИТАК, ЭТО УЖЕ ПЯТНАДЦАТЫЙ ВЫПУСК ДЕМО-ПРОГРАММЫ "E-TUNES".'
 
                db      ' ЭТОТ ВЫПУСК ВКЛЮЧАЕТ В СЕБЯ 30 МУЗЫКАЛЬНЫХ КОМПОЗИЦИЙ РАЗНОЙ ПРОДОЛЖИТЕЛЬНОСТИ.'
 
                db      ' НАПОМНЮ ЧТО ДАННЫЕ МУЗЫКАЛЬНЫЕ КОМПОЗИЦИИ СОЗДАНЫ В РЕДАКТОРЕ'
 
                db      ' "E-TRACKER" И ПОЗАИМСТВОВАНЫ С КОМПЬЮТЕРА "SAM COUPE".'
 
                db      ' ИТОГО УЖЕ НА СПЕККИ 440 КОМПОЗИЦИЙ ДОСТУПНЫХ ДЛЯ ПРОСЛУШИВАНИЯ.'
 
                db      ' ОСТАЛОСЬ МУЗЫКИ ЕЩЕ НА ОДИН ВЫПУСК. '
 
                db      ' ПРОСЛУШАТЬ МУЗЫКУ МОЖНО  ЧЕРЕЗ ЗВУКОВУЮ КАРТУ "ZXM-SOUNDCARD" ИЛИ В ЭМУЛЯТОРЕ "UNREAL SPECCY",'
 
                db      ' ПРОПАТЧЕННЫЙ МОЛОДЦОВЫМ АЛЕКСАНДРОМ.' 
 
                db      ' НЕМНОГО ОБ УПРАВЛЕНИИ. ПЕРЕХОД К СЛЕДУЮЩЕМУ ПРОИЗВЕДЕНИЮ ОСУЩЕСТВЛЯЕТСЯ ПРИ ПОМОЩИ КЛАВИШИ'
 
                db      ' "SPACE", ВЫХОД В TR-DOS ПРИ ПОМОЩИ КЛАВИШИ "BREAK"'
 
                db      ' О ПРОГРАММЕ: КАРТИНКУ СТЯНУЛ ИЗ ИНЕТА. ПРАВДА НА ТОЙ КАРТИНКЕ БЫЛ ТОЛЬКО ОДИН СНЕГОВИК'
 
                db      ' (КОТОРЫЙ В ЦИЛИНДРЕ), А С ШАПОЧКОЙ САМ ПОДРИСОВАЛ. ОСТАЛЬНОЕ ВЗЯТО ИЗ ПРЕДЫДУЩИХ ВЫПУСКОВ'
 
                db      '"E-TUNES" ИЛИ ПРИДУМАНО. ВСЕ ЭТО СОБИРАЛОСЬ НА РС ПРИ ПОМОЩИ АССЕМБЛЕРА  SJASMPLUS.'
 
                db      '             ПРИВЕТЫ И СПАСИБЫ!     '
 
                db      ' ААА, КАК ВСЕГДА И ВЕЗДЕ ГРОМАДНЫЙ ПРИВЕТИЩЕ. ХВАТИТ БЕЗДЕЛЬНИЧАТЬ. ЕСЛИ ТЫ НА ФОРУМЕ ПОКАЗАЛ' 
 
                db      ' НА АВАТАРКЕ СВОЕ ИСТЕННОЕ ИНОПЛАНЕТНОЕ ЛИЦО, ЭТО НЕ ДАЕТ ТЕБЕ ПРАВО ЗАБРАСЫВАТЬ ДЕМОМЕЙКИНГ :)' 
 
                db      ' ПРИВЕТ ВСЕЙ ГРУППЕ AAA BAND -  ВСЕ ЖЕ ХОЧЕТСЯ НЕМНОГО "E-TUNES THE BEST" КАК ОБЕЩАЛИ!!!!' 
 
                db      ' БОЛЬШУЩИЙ РЕСПЕКТ MOLODCOV_ALEX (МОЛОДЦОВ АЛЕКСАНДР) ЗА ЭМУЛЯТОР.'
 
                db      ' RINDEX ПРИВЕТ И СПАСИБО ЗА КРИТИКУ И СОВЕТЫ.'
 
                db      ' ПРИВЕТ ВЛАДЕЛЬЦАМ КАРТЫ "ZXM-SOUNDCARD". НАЗОВЕМ ИХ ПОИМЕННО: AAA, PIROXILIN, КИРЛИАН, LUZANOV,'
 
                db      ' ДМИТРИЙ И EWGENY7 .'
 
                db      ' ВСЕМ ФЕНИКСОИДАМ ОТДЕЛЬНЫЙ ПРИВЕТ :).'
 
                db      ' ПРИВЕТ ТАКЖЕ ВСЕМ СПЕКТРУМИСТАМ, БЫВШИМ, НАСТОЯЩИМ И ВОЗМОЖНО БУДУЩИМ.'
 
                db      '       НУ ВОТ ПОСЛЕДНИЙ АБЗАЦ ИЛИ ВРОДЕ ТОГО :) :)'
 
                db      ' НЕ ЗАБЫВАЕМ ПОСЕЩАТЬ САЙТ WWW.MICKLAB.NAROD.RU ТАМ МОЖНО НАЙТИ ПОСЛЕДНЮЮ ИНФОРМАЦИЮ'
 
                db      ' ПО МОИМ ПРОЕКТАМ. СВЯЗАТСЯ СО МНОЙ МОЖНО ЧЕРЕЗ САЙТ WWW.ZX.PK.RU - НИКНЕЙМ MICK ИЛИ ЧЕРЕЗ МЫЛО'
 
                db      ' MICKLAB@MAIL.RU    '
 
                db      ' ПОРА ПРОЩАТЬСЯ. ДО НОВЫХ ТЮНЕСОВ. ПОКА, ПОКА.......  16 ТЮНЕС БУДЕТ ПОСЛЕДНИМ.   '
 
                db      '            FEBRUARY *2011*    GRAPHICS AND CODE BY MICK         '
 
                db      '                                             ',0                       
 
Str_addr_font:
 
                incbin "font.fnt"
 
Str_end_font:
 
 
 
;               .end