Subversion Repositories tsfmpro

Rev

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

  1. ;--------------------------------------------------------------------
  2. ; Описание: Анимация спрайта цифры 8
  3. ; Автор порта: Тарасов М.Н.(Mick),2010
  4. ;--------------------------------------------------------------------
  5. Animation_init:
  6.                 xor     a
  7.                 ld      (Animation_step),a
  8.                 ld      (Animation_phase),a
  9. Animation_view:
  10.                 ld      a,(Animation_step)
  11.                 inc     a
  12.                 and     03h
  13.                 ld      (Animation_step),a
  14.                 ret     nz
  15.                 ld      a,(Animation_phase)
  16.                 inc     a      
  17.                 cp      1Eh
  18.                 jr      c,Animation_next_phase
  19.                 xor     a
  20. Animation_next_phase:
  21.                 ld      (Animation_phase),a
  22.                 cp      02h
  23.                 jr      c,Animation_skip_page
  24.                 ld      bc,7ffdh
  25.                 ld      e,90h
  26.                 out     (c),e
  27. Animation_skip_page:
  28.                 ld      l,a
  29.                 ld      c,a
  30.                 ld      h,0
  31.                 ld      b,h
  32.                 add     hl,hl
  33.                 add     hl,hl
  34.                 add     hl,bc
  35.                 ld      bc,Animation_table_phase
  36.                 add     hl,bc
  37.                 ld      b,(hl)                          ;число строк
  38.                 inc     hl
  39.                 ld      e,(hl)                          ;адрес экрана
  40.                 inc     hl
  41.                 ld      d,(hl)                          ;адрес экрана
  42.                 inc     hl
  43.                 ld      a,(hl)                          ;адрес фазы
  44.                 inc     hl
  45.                 ld      h,(hl)                          ;адрес фазы
  46.                 ld      l,a
  47. Animation_loop_Y:
  48.                 ld      c,32
  49.                 push    de
  50.                 ldi
  51.                 ldi
  52.                 ldi
  53.                 ldi
  54.                 ldi
  55.                 ldi
  56.                 ldi
  57.                 ldi
  58.                 ldi
  59.                 ldi
  60.  
  61.                 pop     de
  62.                 inc     d
  63.                 ld      a,d
  64.                 and     7
  65.                 jr      nz,Animation_next_line
  66.                 ld      a,e
  67.                 add     20h
  68.                 ld      e,a
  69.                 jr      c,Animation_next_line
  70.                 ld      a,d
  71.                 sub     8
  72.                 ld      d,a
  73. Animation_next_line:
  74.                 dec     b
  75.                 jp      nz,Animation_loop_Y
  76.                 ret        
  77.  
  78. Animation_step:
  79.                 db      0
  80. Animation_lstep:
  81.                 db      0
  82. Animation_phase:
  83.                 db      0
  84. Animation_lphase:
  85.                 db      0
  86.  
  87. Animation_table_phase:
  88.                 db      56
  89.                 dw      43CBh                   ;+1
  90.                 dw      Animation_phase_00     
  91.                 db      56
  92.                 dw      43CBh                   ;+1
  93.                 dw      Animation_phase_01     
  94.                 db      56
  95.                 dw      43CBh                   ;+1
  96.                 dw      Animation_phase_02     
  97.                 db      57
  98.                 dw      43CBh                   ;+1
  99.                 dw      Animation_phase_03     
  100.                 db      56
  101.                 dw      44CBh                   ;+2
  102.                 dw      Animation_phase_04     
  103.                 db      56
  104.                 dw      44CBh                   ;+2
  105.                 dw      Animation_phase_05     
  106.                 db      57
  107.                 dw      44CBh                   ;+2    
  108.                 dw      Animation_phase_06     
  109.                 db      58
  110.                 dw      44CBh                   ;+2
  111.                 dw      Animation_phase_07     
  112.                 db      57
  113.                 dw      45CBh                   ;+3
  114.                 dw      Animation_phase_08     
  115.                 db      58
  116.                 dw      44CBh                   ;+2
  117.                 dw      Animation_phase_09     
  118.                 db      57
  119.                 dw      44CBh                   ;+2
  120.                 dw      Animation_phase_10     
  121.                 db      56
  122.                 dw      44CBh                   ;+2
  123.                 dw      Animation_phase_11     
  124.                 db      56
  125.                 dw      44CBh                   ;+2
  126.                 dw      Animation_phase_12     
  127.                 db      56
  128.                 dw      44CBh                   ;+2
  129.                 dw      Animation_phase_13     
  130.                 db      56
  131.                 dw      43CBh                   ;+1
  132.                 dw      Animation_phase_14     
  133.                 db      56
  134.                 dw      43CBh                   ;+1
  135.                 dw      Animation_phase_15     
  136.                 db      56
  137.                 dw      43CBh                   ;+1
  138.                 dw      Animation_phase_16     
  139.                 db      56
  140.                 dw      43CBh                   ;+1
  141.                 dw      Animation_phase_17     
  142.                 db      57
  143.                 dw      42CBh                   ;+0
  144.                 dw      Animation_phase_18     
  145.                 db      58
  146.                 dw      42CBh                   ;+0
  147.                 dw      Animation_phase_19     
  148.                 db      58
  149.                 dw      42CBh                   ;+0
  150.                 dw      Animation_phase_20     
  151.                 db      58
  152.                 dw      42CBh                   ;+0
  153.                 dw      Animation_phase_21     
  154.                 db      59
  155.                 dw      42CBh                   ;+0
  156.                 dw      Animation_phase_22     
  157.                 db      59
  158.                 dw      42CBh                   ;+0
  159.                 dw      Animation_phase_23     
  160.                 db      59
  161.                 dw      42CBh                   ;+0
  162.                 dw      Animation_phase_24     
  163.                 db      58
  164.                 dw      42CBh                   ;+0
  165.                 dw      Animation_phase_25     
  166.                 db      58
  167.                 dw      42CBh                   ;+0
  168.                 dw      Animation_phase_26     
  169.                 db      58
  170.                 dw      42CBh                   ;+0
  171.                 dw      Animation_phase_27     
  172.                 db      57
  173.                 dw      42CBh                   ;+0
  174.                 dw      Animation_phase_28     
  175.                 db      56
  176.                 dw      43CBh                   ;+1
  177.                 dw      Animation_phase_29     
  178.  
  179. Animation_phase_00:
  180.                 db      00h,00h,00h,00h,1Ch,00h,00h,00h,00h,00h
  181.                 db      00h,00h,00h,00h,32h,00h,00h,00h,00h,00h
  182.                 db      00h,00h,00h,00h,41h,60h,00h,00h,00h,00h
  183.                 db      00h,00h,00h,03h,0C0h,0E0h,00h,00h,00h,00h
  184.                 db      00h,00h,00h,06h,05h,0C0h,00h,00h,00h,00h
  185.                 db      00h,00h,00h,08h,07h,0FCh,00h,00h,00h,00h
  186.                 db      00h,00h,00h,1Ah,33h,0FFh,0C0h,00h,00h,00h
  187.                 db      00h,00h,00h,16h,13h,0FFh,0F0h,00h,00h,00h
  188.                 db      00h,00h,00h,13h,21h,0FFh,0FCh,00h,00h,00h
  189.                 db      00h,00h,00h,32h,33h,0FFh,0FEh,00h,00h,00h
  190.                 db      00h,00h,00h,63h,21h,0FFh,0FFh,80h,00h,00h
  191.                 db      00h,00h,00h,0E0h,01h,0FFh,0FFh,0C0h,00h,00h
  192.                 db      00h,00h,01h,0C0h,01h,0FFh,0FFh,0E0h,00h,00h
  193.                 db      00h,00h,03h,80h,00h,0FFh,0FFh,0F0h,00h,00h
  194.                 db      00h,00h,07h,01h,0C0h,7Fh,0FFh,0F8h,00h,00h
  195.                 db      00h,00h,0Fh,00h,00h,7Fh,0FFh,0FCh,00h,00h
  196.                 db      00h,00h,1Fh,00h,00h,3Fh,0FFh,0FCh,00h,00h
  197.                 db      00h,00h,3Eh,00h,80h,20h,0FFh,0FEh,00h,00h
  198.                 db      00h,00h,3Fh,01h,0C0h,60h,3Fh,0FFh,00h,00h
  199.                 db      00h,00h,3Fh,01h,0C0h,40h,0FFh,0FFh,00h,00h
  200.                 db      00h,00h,7Fh,80h,00h,0C1h,0FFh,0FFh,0F0h,00h
  201.                 db      00h,00h,7Fh,80h,20h,83h,0FFh,0FFh,0B0h,00h
  202.                 db      00h,00h,0FFh,0C0h,0C0h,07h,0FFh,0FEh,60h,00h
  203.                 db      00h,00h,0FFh,00h,00h,1Fh,0FFh,0F8h,0C0h,00h
  204.                 db      00h,00h,0FEh,00h,00h,3Fh,0FFh,0D0h,0C0h,00h
  205.                 db      00h,00h,0FEh,00h,00h,0FFh,0FEh,01h,0C0h,00h
  206.                 db      00h,01h,0FCh,00h,01h,0FFh,0FCh,01h,0F8h,00h
  207.                 db      03h,81h,0F8h,00h,03h,0FFh,0F0h,00h,0Ch,00h
  208.                 db      07h,0F1h,0F0h,00h,0Fh,0FFh,0FCh,00h,74h,00h
  209.                 db      03h,9Dh,0E0h,00h,1Fh,0FFh,88h,00h,0F8h,00h
  210.                 db      00h,0C7h,0C0h,00h,7Fh,0FFh,10h,44h,60h,00h
  211.                 db      01h,80h,0C0h,00h,0FFh,0FEh,11h,0FFh,20h,00h
  212.                 db      03h,00h,00h,31h,0FFh,0F8h,17h,0FFh,0F0h,00h
  213.                 db      03h,0E0h,00h,0F7h,0FFh,0F0h,0Ch,3Fh,0E0h,00h
  214.                 db      00h,60h,01h,0FFh,0FFh,0C0h,00h,7Fh,0C0h,00h
  215.                 db      00h,0B0h,03h,0FFh,0FFh,80h,00h,7Fh,0C0h,00h
  216.                 db      00h,0FFh,1Fh,0FFh,0FFh,00h,00h,7Fh,0C0h,00h
  217.                 db      00h,03h,9Fh,0FFh,0FCh,00h,00h,0FFh,80h,00h
  218.                 db      00h,00h,5Fh,0FFh,0F8h,00h,01h,0FFh,80h,00h
  219.                 db      00h,00h,7Fh,0FFh,0F0h,00h,01h,0FFh,80h,00h
  220.                 db      00h,00h,7Fh,0FFh,0FFh,00h,03h,0FFh,00h,00h
  221.                 db      00h,00h,3Fh,0FFh,0E3h,0E0h,03h,0FFh,00h,00h
  222.                 db      00h,00h,3Fh,0FFh,0E0h,00h,07h,0FEh,00h,00h
  223.                 db      00h,00h,1Fh,0FFh,0C0h,00h,1Fh,0FEh,00h,00h
  224.                 db      00h,00h,1Fh,0FFh,80h,00h,3Fh,0FCh,00h,00h
  225.                 db      00h,00h,0Fh,0FFh,0C0h,00h,0FFh,0F8h,00h,00h
  226.                 db      00h,00h,07h,0FFh,0F0h,07h,0FFh,0F0h,00h,00h
  227.                 db      00h,00h,03h,0FFh,0FFh,0FFh,0FFh,0E0h,00h,00h
  228.                 db      00h,00h,01h,0FFh,0FFh,0FFh,0FFh,0C0h,00h,00h
  229.                 db      00h,00h,00h,0FFh,0FFh,0FFh,0FFh,80h,00h,00h
  230.                 db      00h,00h,00h,7Fh,0FFh,0FFh,0FFh,00h,00h,00h
  231.                 db      00h,00h,00h,3Fh,0FFh,0FFh,0FEh,00h,00h,00h
  232.                 db      00h,00h,00h,0Fh,0FFh,0FFh,0FCh,00h,00h,00h
  233.                 db      00h,00h,00h,03h,0FFh,0FFh,0E0h,00h,00h,00h
  234.                 db      00h,00h,00h,00h,7Fh,0FFh,80h,00h,00h,00h
  235.                 db      00h,00h,00h,00h,0Fh,0F8h,00h,00h,00h,00h
  236.  
  237. Animation_phase_01:
  238.                 db      00h,00h,00h,00h,04h,00h,00h,00h,00h,00h
  239.                 db      00h,00h,00h,00h,3Ah,00h,00h,00h,00h,00h
  240.                 db      00h,00h,00h,00h,61h,60h,00h,00h,00h,00h
  241.                 db      00h,00h,00h,00h,0E0h,0E0h,00h,00h,00h,00h
  242.                 db      00h,00h,00h,01h,81h,0C0h,00h,00h,00h,00h
  243.                 db      00h,00h,00h,06h,07h,0FFh,00h,00h,00h,00h
  244.                 db      00h,00h,00h,04h,33h,0FFh,0F0h,00h,00h,00h
  245.                 db      00h,00h,00h,0Ah,13h,0FFh,0F8h,00h,00h,00h
  246.                 db      00h,00h,00h,0Ah,01h,0FFh,0FEh,00h,00h,00h
  247.                 db      00h,00h,00h,1Bh,31h,0FFh,0FFh,80h,00h,00h
  248.                 db      00h,00h,00h,13h,31h,0FFh,0FFh,0C0h,00h,00h
  249.                 db      00h,00h,00h,30h,01h,0FFh,0FFh,0E0h,00h,00h
  250.                 db      00h,00h,00h,0E0h,01h,0FFh,0FFh,0F8h,00h,00h
  251.                 db      00h,00h,01h,0E0h,00h,0FFh,0FFh,0F8h,00h,00h
  252.                 db      00h,00h,01h,0C0h,0C0h,7Fh,0FFh,0FCh,00h,00h
  253.                 db      00h,00h,03h,80h,80h,7Fh,0FFh,0FEh,00h,00h
  254.                 db      00h,00h,07h,80h,00h,37h,0FFh,0FFh,00h,00h
  255.                 db      00h,00h,0Fh,80h,0C0h,20h,3Fh,0FFh,80h,00h
  256.                 db      00h,00h,0Fh,80h,0C0h,40h,7Fh,0FFh,80h,00h
  257.                 db      00h,00h,0Fh,80h,0C0h,40h,0FFh,0FFh,0B8h,00h
  258.                 db      00h,00h,1Fh,0C0h,00h,0C1h,0FFh,0FFh,0FCh,00h
  259.                 db      00h,00h,1Fh,0C0h,20h,83h,0FFh,0FFh,88h,00h
  260.                 db      00h,00h,3Fh,0E0h,0C0h,0Fh,0FFh,0FFh,30h,00h
  261.                 db      00h,00h,3Fh,80h,00h,1Fh,0FFh,0FCh,60h,00h
  262.                 db      00h,00h,3Fh,00h,00h,7Fh,0FFh,50h,60h,00h
  263.                 db      00h,00h,3Fh,00h,00h,0FFh,0FEh,00h,0E0h,00h
  264.                 db      00h,00h,7Eh,00h,01h,0FFh,0FCh,00h,0FEh,00h
  265.                 db      00h,20h,7Ch,00h,03h,0FFh,0F0h,00h,03h,00h
  266.                 db      00h,5Ch,7Ch,00h,0Fh,0FFh,0FCh,00h,1Dh,00h
  267.                 db      00h,33h,0F8h,00h,1Fh,0FFh,88h,00h,7Eh,00h
  268.                 db      00h,18h,0F0h,00h,7Fh,0FFh,18h,04h,70h,00h
  269.                 db      00h,28h,00h,00h,0FFh,0FEh,10h,0FFh,98h,00h
  270.                 db      00h,50h,00h,11h,0FFh,0F8h,17h,0FFh,0F8h,00h
  271.                 db      00h,7Ch,00h,7Bh,0FFh,0F0h,1Eh,3Fh,0F8h,00h
  272.                 db      00h,18h,00h,0FFh,0FFh,0C0h,00h,3Fh,0F0h,00h
  273.                 db      00h,1Eh,03h,0FFh,0FFh,80h,00h,3Fh,0E0h,00h
  274.                 db      00h,19h,0CFh,0FFh,0FFh,00h,00h,7Fh,0E0h,00h
  275.                 db      00h,00h,37h,0FFh,0FCh,00h,00h,7Fh,0E0h,00h
  276.                 db      00h,00h,1Fh,0FFh,0F0h,00h,00h,0FFh,0E0h,00h
  277.                 db      00h,00h,1Fh,0FFh,0F0h,00h,00h,0FFh,0C0h,00h
  278.                 db      00h,00h,1Fh,0FFh,0FFh,00h,01h,0FFh,0C0h,00h
  279.                 db      00h,00h,0Fh,0FFh,0E3h,0E0h,03h,0FFh,80h,00h
  280.                 db      00h,00h,0Fh,0FFh,0E0h,00h,07h,0FFh,80h,00h
  281.                 db      00h,00h,07h,0FFh,0C0h,00h,0Fh,0FFh,00h,00h
  282.                 db      00h,00h,07h,0FFh,80h,00h,1Fh,0FFh,00h,00h
  283.                 db      00h,00h,03h,0FFh,0E0h,00h,7Fh,0FEh,00h,00h
  284.                 db      00h,00h,01h,0FFh,0FCh,07h,0FFh,0FCh,00h,00h
  285.                 db      00h,00h,00h,0FFh,0FFh,0FFh,0FFh,0F8h,00h,00h
  286.                 db      00h,00h,00h,7Fh,0FFh,0FFh,0FFh,0F0h,00h,00h
  287.                 db      00h,00h,00h,3Fh,0FFh,0FFh,0FFh,0E0h,00h,00h
  288.                 db      00h,00h,00h,1Fh,0FFh,0FFh,0FFh,0C0h,00h,00h
  289.                 db      00h,00h,00h,0Fh,0FFh,0FFh,0FFh,80h,00h,00h
  290.                 db      00h,00h,00h,03h,0FFh,0FFh,0FEh,00h,00h,00h
  291.                 db      00h,00h,00h,00h,0FFh,0FFh,0F8h,00h,00h,00h
  292.                 db      00h,00h,00h,00h,1Fh,0FFh,0E0h,00h,00h,00h
  293.                 db      00h,00h,00h,00h,03h,0FEh,00h,00h,00h,00h
  294.  
  295.  
  296.