;--------------------------------------------------------------------
; Описание: Бегущая строка
; Автор порта: Тарасов М.Н.(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:
ld hl,Str_addr_text
ld (Str_addr_work),hl
ret
Str_init_load:
ld hl,Str_addr_load
ld (Str_addr_work),hl
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_symol
ret c
call Str_update_symbol
jp Str_draw_symbol
Str_next_symol:
ld hl,(Str_addr_work)
ld a,(hl)
and a
jr 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_symbol:
ld de, Str_symbol_buf
ld bc, 800h
ld hl, 507Eh
loc_0_9BA8:
ld a,(de)
rlca
ld (de),a
jr c,loc_0_9C03
ld (hl),c
inc h
ld a,h
and 7
jr nz,loc_0_9BC2
ld a,l
add a,20h
ld l,a
jr c,loc_0_9BC2
ld a,h
sub 8
ld h,a
loc_0_9BC2:
ld (hl),20h
inc h
ld a,h
and 7
jr nz,loc_0_9BD6
ld a,l
add a,20h
ld l,a
jr c,loc_0_9BD6
ld a,h
sub 8
ld h,a
loc_0_9BD6:
ld (hl),c
inc h
ld a,h
and 7
jr nz,loc_0_9BE9
ld a,l
add a,20h
ld l,a
jr c,loc_0_9BE9
ld a,h
sub 8
ld h,a
loc_0_9BE9:
ld (hl),c
inc h
ld a,h
and 7
jr nz,loc_0_9BFC
ld a,l
add a,20h
ld l,a
jr c,loc_0_9BFC
ld a,h
sub 8
ld h,a
loc_0_9BFC:
inc de
djnz loc_0_9BA8
ld a,(Str_count_bit)
dec a
ld (Str_count_bit),a
ret
loc_0_9C03:
ld (hl),70h
inc h
ld a,h
and 7
jr nz,loc_0_9C18
ld a,l
add a,20h
ld l,a
jr c,loc_0_9C18
ld a,h
sub 8
ld h,a
loc_0_9C18:
ld (hl),70h
inc h
ld a,h
and 7
jr nz,loc_0_9C2B
ld a,l
add a,20h
ld l,a
jr c, loc_0_9C2B
ld a,h
sub 8
ld h,a
loc_0_9C2B:
ld (hl),70h
inc h
ld a,h
and 7
jr nz,loc_0_9BE9
ld a,l
add a,20h ; ' '
ld l,a
jr c,loc_0_9BE9
ld a,h
sub 8
ld h,a
jp loc_0_9BE9
Str_draw_symbol:
ld hl,507Eh
ld b,32
ld c,l
loc_0_9C59:
sub a
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
dec l
rld
ld l,c
inc h
ld a,h
and 7
jr nz,loc_0_9BEA
ld a,l
add a,20h
ld l,a
ld c,a
jr c,loc_0_9BEA
ld a,h
sub 8
ld h,a
loc_0_9BEA:
djnz loc_0_9C59
ret
Str_symbol_buf:
db 0,0,0,0,0,0,0,0
Str_flg_end:
db 0
Str_count_bit:
db 0
Str_addr_work:
dw 0
Str_addr_load:
db ' LOADING',0
Str_addr_text:
db ' ПРИВЕТ, ВОТ И ОПЯТЬ ВСТРЕТИЛИСЬ!!! '
db 'ВСТРЕЧАЙТЕ ТРЕТИЙ ВЫПУСК ДЕМО ПРОГРАММЫ "E-TUNES".'
db ' ЭТОТ ВЫПУСК, КАК И ПРЕДЫДУЩИЙ ВКЛЮЧАЕТ В СЕБЯ 40 МУЗЫКАЛЬНЫХ КОМПОЗИЦИЙ РАЗНОЙ ПРОДОЛЖИТЕЛЬНОСТИ.'
db ' НАПОМНЮ ЧТО ДАННЫЕ МУЗЫКАЛЬНЫЕ КОМПОЗИЦИИ СОЗДАНЫ В РЕДАКТОРЕ'
db ' "E-TRACKER" И ПОЗАИМСТВОВАНЫ С КОМПЬЮТЕРА "SAM COUPE".'
db ' ПО СУММЕ ТРЕХ ВЫПУСКОВ ПОЛУЧАЕТСЯ УЖЕ 100 КОМПОЗИЦИЙ ДОСТУПНЫХ ДЛЯ ПРОСЛУШИВАНИЯ.'
db ' ПРОСЛУШАТЬ МУЗЫКУ МОЖНО ЧЕРЕЗ ЗВУКОВУЮ КАРТУ "ZXM-SOUNDCARD" ИЛИ В ЭМУЛЯТОРЕ "UNREAL SPECCY",'
db ' ПРОПАТЧЕННЫЙ МОЛОДЦОВЫМ АЛЕКСАНДРОМ. '
db ' НЕМНОГО ОБ УПРАВЛЕНИИ. ПЕРЕХОД К СЛЕДУЮЩЕМУ ПРОИЗВЕДЕНИЮ ОСУЩЕСТВЛЯЕТСЯ ПРИ ПОМОЩИ КЛАВИШИ'
db ' "SPACE", ВЫХОД В TR-DOS ПРИ ПОМОЩИ КЛАВИШИ "BREAK"'
db ' О ПРОГРАММЕ: ГРАФИКА НАРИСОВАНА ПО МОТИВАМ ОДНОИМЕННОЙ ПРОГРАММЫ С КОМПЬЮТЕРА "SAM COUPE",'
db ' БЕГУЩАЯ СТРОКА СОДРАНА С ДЕМО ПРОГРАММЫ ВИТАЛИЯ ГАМАЗОВА "VDEMO" И НЕМНОГО ПОДПРАВЛЕНА ДЛЯ'
db ' МОИХ НУЖД, ОСТАЛЬНОЕ КОЧУЕТ С ПРЕДЫДЫУЩИХ ВЫПУСКОВ "E-TUNES".'
db ' ВСЕ ЭТО СОБИРАЛОСЬ НА РС ПРИ ПОМОЩИ АССЕМБЛЕРА SJASMPLUS.'
db ' НУ И ПО ТРАДИЦИИ ПОКИДАЕМСЯ ПРИВЕТАМИ. '
db ' ААА ГРОМАДНЫЙ ПРИВЕТ ПО ОПРЕДЕЛЕНИЮ,'
db ' БОЛЬШУЩИЙ РЕСПЕКТ MOLODCOV_ALEX (МОЛОДЦОВ АЛЕКСАНДР) ЗА ЭМУЛЯТОР.'
db ' ПРИВЕТ ВЛАДЕЛЬЦАМ КАРТЫ "ZXM-SOUNDCARD". НАЗОВЕМ ИХ ПОИМЕННО: AAA, PIROXILIN И КИРЛИАН.'
db ' ПРИВЕТ ТАКЖЕ ВСЕМ СПЕКТРУМИСТАМ, БЫВШИМ, НАСТОЯЩИМ И ВОЗМОЖНО БУДУЩИМ.'
db ' НУ ВСЕ, ПОРА ЗАВЕРШАТЬ ИБО НЕ ОСОБО СИЛЕН В ПОЭЗИИ :).'
db ' ПОРА ПРОЩАТЬСЯ. ПОКА, ПОКА....... '
db ' MAY *2010* GRAPHICS AND CODE BY MICK '
db ' АХ ДА, СОВСЕМ ЗАБЫЛ - ОТКРЫЛСЯ САЙТ WWW.MICKLAB.NAROD.RU ТАМ МОЖНО НАЙТИ ПОСЛЕДНЮЮ ИНФОРМАЦИЮ'
db ' ПО МОИМ ПРОЕКТАМ. СВЯЗАТСЯ СО МНОЙ МОЖНО ЧЕРЕЗ САЙТ WWW.ZX.PK.RU - НИКНЕЙМ MICK, ТАКЖЕ ЧЕРЕЗ'
db ' МЫЛО MICKLAB@MAIL.RU НУ ТЕПЕРЬ ВСЕ, ДО ВСТРЕЧИ'
db ' ',0
Str_addr_font:
incbin "font.fnt"
; .end