Subversion Repositories tsfmpro

Rev

Rev 544 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed | ?url?

  1. ;--------------------------------------------------------------------
  2. ; Описание: Бегущая строка
  3. ; Автор порта: Тарасов М.Н.(Mick),2010
  4. ;--------------------------------------------------------------------
  5. Str_reload:
  6.                 ld      a,(Str_flg_end)
  7.                 and     a
  8.                 jr      z,Str_init
  9.                 xor     a
  10.                 ld      (Str_flg_end),a
  11.                 scf
  12.                 ret
  13. Str_init:
  14.                 ld      hl,Str_addr_text
  15.                 ld      (Str_addr_work),hl
  16.                 ret
  17.  
  18. Str_init_load:
  19.                 ld      hl,Str_addr_load
  20.                 ld      (Str_addr_work),hl
  21.                 ld      a,1
  22.                 ld      (Str_flg_end),a
  23.                 ld      a,(hl)
  24.                 ret    
  25. Str_play:
  26.                 ld      a,(Str_count_bit)
  27.                 or      a
  28.                 call    z,Str_next_symol
  29.                 ret     c
  30.                 call    Str_update_symbol
  31.                 jp      Str_draw_symbol
  32.  
  33. Str_next_symol:
  34.                 ld      hl,(Str_addr_work)
  35.                 ld      a,(hl)
  36.                 and     a
  37.                 jr      z,Str_reload
  38.                 ret     c
  39.                 inc     hl
  40.                 ld      (Str_addr_work),hl
  41.                 sub     20h
  42.                 ld      l, a
  43.                 ld      h, 0
  44.                 ld      de,Str_addr_font
  45.                 add     hl,hl
  46.                 add     hl,hl
  47.                 add     hl,hl
  48.                 add     hl,de
  49.                 ld      de,Str_symbol_buf
  50.                 ldi    
  51.                 ldi    
  52.                 ldi    
  53.                 ldi    
  54.                 ldi    
  55.                 ldi    
  56.                 ldi    
  57.                 ldi    
  58.                 ld      a, 8
  59.                 ld      (Str_count_bit),a
  60.                 ret    
  61.  
  62. Str_update_symbol:
  63.                 ld      de, Str_symbol_buf
  64.                 ld      bc, 800h
  65.                 ld      hl, 507Eh
  66. loc_0_9BA8:
  67.                 ld      a,(de)
  68.                 rlca
  69.                 ld      (de),a
  70.                 jr      c,loc_0_9C03
  71.  
  72.                 ld      (hl),c
  73.                 inc     h
  74.                 ld      a,h
  75.                 and     7
  76.                 jr      nz,loc_0_9BC2
  77.                 ld      a,l
  78.                 add     a,20h
  79.                 ld      l,a
  80.                 jr      c,loc_0_9BC2
  81.                 ld      a,h
  82.                 sub     8
  83.                 ld      h,a
  84. loc_0_9BC2:
  85.                 ld      (hl),20h
  86.                 inc     h
  87.                 ld      a,h
  88.                 and     7
  89.                 jr      nz,loc_0_9BD6
  90.                 ld      a,l
  91.                 add     a,20h
  92.                 ld      l,a
  93.                 jr      c,loc_0_9BD6
  94.                 ld      a,h
  95.                 sub     8
  96.                 ld      h,a
  97.  
  98. loc_0_9BD6:
  99.                 ld      (hl),c
  100.                 inc     h
  101.                 ld      a,h
  102.                 and     7
  103.                 jr      nz,loc_0_9BE9
  104.                 ld      a,l
  105.                 add     a,20h
  106.                 ld      l,a
  107.                 jr      c,loc_0_9BE9
  108.                 ld      a,h
  109.                 sub     8
  110.                 ld      h,a
  111.  
  112. loc_0_9BE9:
  113.                 ld      (hl),c
  114.                 inc     h
  115.                 ld      a,h
  116.                 and     7
  117.                 jr      nz,loc_0_9BFC
  118.                 ld      a,l
  119.                 add     a,20h
  120.                 ld      l,a
  121.                 jr      c,loc_0_9BFC
  122.                 ld      a,h
  123.                 sub     8
  124.                 ld      h,a
  125.  
  126. loc_0_9BFC:
  127.                 inc     de
  128.                 djnz    loc_0_9BA8
  129.                 ld      a,(Str_count_bit)
  130.                 dec     a
  131.                 ld      (Str_count_bit),a
  132.                 ret
  133.  
  134. loc_0_9C03:
  135.                 ld      (hl),70h
  136.                 inc     h
  137.                 ld      a,h
  138.                 and     7
  139.                 jr      nz,loc_0_9C18
  140.                 ld      a,l
  141.                 add     a,20h
  142.                 ld      l,a
  143.                 jr      c,loc_0_9C18
  144.                 ld      a,h
  145.                 sub     8
  146.                 ld      h,a
  147.  
  148. loc_0_9C18:
  149.                 ld      (hl),70h
  150.                 inc     h
  151.                 ld      a,h
  152.                 and     7
  153.                 jr      nz,loc_0_9C2B
  154.                 ld      a,l
  155.                 add     a,20h
  156.                 ld      l,a
  157.                 jr      c, loc_0_9C2B
  158.                 ld      a,h
  159.                 sub     8
  160.                 ld      h,a
  161.  
  162. loc_0_9C2B:
  163.                 ld      (hl),70h
  164.                 inc     h
  165.                 ld      a,h
  166.                 and     7
  167.                 jr      nz,loc_0_9BE9
  168.                 ld      a,l
  169.                 add     a,20h ; ' '
  170.                 ld      l,a
  171.                 jr      c,loc_0_9BE9
  172.                 ld      a,h
  173.                 sub     8
  174.                 ld      h,a
  175.                 jp      loc_0_9BE9
  176.  
  177. Str_draw_symbol:
  178.                 ld      hl,507Eh
  179.                 ld      b,32
  180.                 ld      c,l
  181.  
  182. loc_0_9C59:
  183.                 sub     a
  184.                 rld    
  185.                 dec     l
  186.                 rld    
  187.                 dec     l
  188.                 rld    
  189.                 dec     l
  190.                 rld    
  191.                 dec     l
  192.                 rld    
  193.                 dec     l
  194.                 rld    
  195.                 dec     l
  196.                 rld    
  197.                 dec     l
  198.                 rld    
  199.                 dec     l
  200.                 rld    
  201.                 dec     l
  202.                 rld    
  203.                 dec     l
  204.                 rld    
  205.                 dec     l
  206.                 rld    
  207.                 dec     l
  208.                 rld    
  209.                 dec     l
  210.                 rld    
  211.                 dec     l
  212.                 rld    
  213.                 dec     l
  214.                 rld    
  215.                 dec     l
  216.                 rld    
  217.                 dec     l
  218.                 rld    
  219.                 dec     l
  220.                 rld    
  221.                 dec     l
  222.                 rld    
  223.                 dec     l
  224.                 rld    
  225.                 dec     l
  226.                 rld    
  227.                 dec     l
  228.                 rld    
  229.                 dec     l
  230.                 rld    
  231.                 dec     l
  232.                 rld    
  233.                 dec     l
  234.                 rld    
  235.                 dec     l
  236.                 rld    
  237.                 dec     l
  238.                 rld    
  239.                 dec     l
  240.                 rld    
  241.                 ld      l,c
  242.                 inc     h
  243.                 ld      a,h
  244.                 and     7
  245.                 jr      nz,loc_0_9BEA
  246.                 ld      a,l
  247.                 add     a,20h
  248.                 ld      l,a
  249.                 ld      c,a
  250.                 jr      c,loc_0_9BEA
  251.                 ld      a,h
  252.                 sub     8
  253.                 ld      h,a
  254. loc_0_9BEA:
  255.                 djnz    loc_0_9C59
  256.                 ret    
  257.  
  258. Str_symbol_buf:
  259.                 db      0,0,0,0,0,0,0,0
  260.  
  261.  
  262. Str_flg_end:
  263.                 db      0
  264.  
  265. Str_count_bit:
  266.                 db      0
  267. Str_addr_work:
  268.                 dw      0
  269.  
  270. Str_addr_load:
  271.                 db      '  LOADING',0
  272. Str_addr_text:
  273.                 db      '           ПРИВЕТ, ВОТ И ОПЯТЬ ВСТРЕТИЛИСЬ!!!       '
  274.                 db      'ВСТРЕЧАЙТЕ ТРЕТИЙ ВЫПУСК ДЕМО ПРОГРАММЫ "E-TUNES".'
  275.                 db      ' ЭТОТ ВЫПУСК, КАК И ПРЕДЫДУЩИЙ ВКЛЮЧАЕТ В СЕБЯ 40 МУЗЫКАЛЬНЫХ КОМПОЗИЦИЙ РАЗНОЙ ПРОДОЛЖИТЕЛЬНОСТИ.'
  276.                 db      ' НАПОМНЮ ЧТО ДАННЫЕ МУЗЫКАЛЬНЫЕ КОМПОЗИЦИИ СОЗДАНЫ В РЕДАКТОРЕ'
  277.                 db      ' "E-TRACKER" И ПОЗАИМСТВОВАНЫ С КОМПЬЮТЕРА "SAM COUPE".'
  278.                 db      ' ПО СУММЕ ТРЕХ ВЫПУСКОВ ПОЛУЧАЕТСЯ УЖЕ 100 КОМПОЗИЦИЙ ДОСТУПНЫХ ДЛЯ ПРОСЛУШИВАНИЯ.'
  279.                 db      ' ПРОСЛУШАТЬ МУЗЫКУ МОЖНО  ЧЕРЕЗ ЗВУКОВУЮ КАРТУ "ZXM-SOUNDCARD" ИЛИ В ЭМУЛЯТОРЕ "UNREAL SPECCY",'
  280.                 db      ' ПРОПАТЧЕННЫЙ МОЛОДЦОВЫМ АЛЕКСАНДРОМ.    '
  281.                 db      ' НЕМНОГО ОБ УПРАВЛЕНИИ. ПЕРЕХОД К СЛЕДУЮЩЕМУ ПРОИЗВЕДЕНИЮ ОСУЩЕСТВЛЯЕТСЯ ПРИ ПОМОЩИ КЛАВИШИ'
  282.                 db      ' "SPACE", ВЫХОД В TR-DOS ПРИ ПОМОЩИ КЛАВИШИ "BREAK"'
  283.                 db      ' О ПРОГРАММЕ: ГРАФИКА НАРИСОВАНА ПО МОТИВАМ ОДНОИМЕННОЙ ПРОГРАММЫ С КОМПЬЮТЕРА "SAM COUPE",'
  284.                 db      ' БЕГУЩАЯ СТРОКА СОДРАНА С ДЕМО ПРОГРАММЫ ВИТАЛИЯ ГАМАЗОВА "VDEMO" И НЕМНОГО ПОДПРАВЛЕНА ДЛЯ'
  285.                 db      ' МОИХ НУЖД, ОСТАЛЬНОЕ КОЧУЕТ С ПРЕДЫДЫУЩИХ ВЫПУСКОВ "E-TUNES".'
  286.                 db      ' ВСЕ ЭТО СОБИРАЛОСЬ НА РС ПРИ ПОМОЩИ АССЕМБЛЕРА  SJASMPLUS.'
  287.                 db      '           НУ И ПО ТРАДИЦИИ ПОКИДАЕМСЯ ПРИВЕТАМИ.     '
  288.                 db      ' ААА ГРОМАДНЫЙ ПРИВЕТ ПО ОПРЕДЕЛЕНИЮ,'
  289.                 db      ' БОЛЬШУЩИЙ РЕСПЕКТ MOLODCOV_ALEX (МОЛОДЦОВ АЛЕКСАНДР) ЗА ЭМУЛЯТОР.'
  290.                 db      ' ПРИВЕТ ВЛАДЕЛЬЦАМ КАРТЫ "ZXM-SOUNDCARD". НАЗОВЕМ ИХ ПОИМЕННО: AAA, PIROXILIN И КИРЛИАН.'
  291.                 db      ' ПРИВЕТ ТАКЖЕ ВСЕМ СПЕКТРУМИСТАМ, БЫВШИМ, НАСТОЯЩИМ И ВОЗМОЖНО БУДУЩИМ.'
  292.                 db      ' НУ ВСЕ, ПОРА ЗАВЕРШАТЬ ИБО НЕ ОСОБО СИЛЕН В ПОЭЗИИ :).'
  293.                 db      ' ПОРА ПРОЩАТЬСЯ. ПОКА, ПОКА.......                   '
  294.                 db      '            MAY *2010*    GRAPHICS AND CODE BY MICK         '
  295.                 db      ' АХ ДА, СОВСЕМ ЗАБЫЛ - ОТКРЫЛСЯ САЙТ WWW.MICKLAB.NAROD.RU ТАМ МОЖНО НАЙТИ ПОСЛЕДНЮЮ ИНФОРМАЦИЮ'
  296.                 db      ' ПО МОИМ ПРОЕКТАМ. СВЯЗАТСЯ СО МНОЙ МОЖНО ЧЕРЕЗ САЙТ WWW.ZX.PK.RU - НИКНЕЙМ MICK, ТАКЖЕ ЧЕРЕЗ'
  297.                 db      ' МЫЛО MICKLAB@MAIL.RU НУ ТЕПЕРЬ ВСЕ, ДО ВСТРЕЧИ'
  298.                 db      '                                             ',0                      
  299. Str_addr_font:
  300.                 incbin "font.fnt"
  301.  
  302. ;               .end
  303.