;--------------------------------------------------------------------
; Описание: Анимация спрайта цифры 8
; Автор порта: Тарасов М.Н.(Mick),2010
;--------------------------------------------------------------------
Animation_init:
xor a
ld (Animation_step),a
ld (Animation_phase),a
ld hl,Animation_table_data
ld (Animation_table_addr),hl
ret
Animation_view:
ld a,(Animation_step)
inc a
and 07h
ld (Animation_step),a
ret nz
ld a,(Animation_phase)
inc a
cp 28h
jr c,Animation_next_phase
ld hl,Animation_table_data
ld (Animation_table_addr),hl
xor a
Animation_next_phase:
ld (Animation_phase),a
ld hl,(Animation_table_addr)
ld de,40ECh
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
ld de,480Dh
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
ld de,482Dh
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
ld de,484Dh
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
inc de
inc de
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
ld de,486Dh
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
inc de
inc de
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
ld de,488Dh
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
inc de
ld a,(hl)
call Animation_view_data
inc hl
ld (Animation_table_addr),hl
ret
;-------------------------------------------------------------------
; описание: Оотбражение одной фазы
; параметры: нет
; возвращаемое значение: нет
;---------------------------------------------------------------------
Animation_view_data
push hl
push de
ld l,a
ld h,0
add hl,hl
ld bc,Animation_table_phase
add hl,bc
ld a,(hl)
inc hl
ld h,(hl)
ld l,a
ld b,7
Animation_loop_Y:
ld a,(hl)
ld (de),a
inc hl
inc d
ld a,d
and 7
jr nz,Animation_next_line
ld a,e
add 20h
ld e,a
jr c,Animation_next_line
ld a,d
sub 8
ld d,a
Animation_next_line:
djnz Animation_loop_Y
pop de
pop hl
ret
Animation_step:
db 0
Animation_phase:
db 0
Animation_table_addr:
dw 0
Animation_table_phase:
dw Animation_phase_00
dw Animation_phase_01
dw Animation_phase_02
dw Animation_phase_03
dw Animation_phase_04
Animation_phase_00:
db 6Ch,0D6h,0AAh,54h,0AAh,0D6h,6Ch
Animation_phase_01:
db 6Ch,92h,0AAh,54h,0AAh,92h,6Ch
Animation_phase_02:
db 6Ch,82h,0AAh,10h,0AAh,82h,6Ch
Animation_phase_03:
db 6Ch,82h,82h,10h,82h,82h,6Ch
Animation_phase_04:
db 6Ch,82h,82h,00h,82h,82h,6Ch
Animation_table_data:
db 0,0,0, 0,0,0,0 ;0
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0, 0,0
db 0,0, 0,0
db 0,0, 0,0,0,0
db 1,1,1, 1,1,1,1 ;1
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0, 0,0
db 0,0, 0,0
db 0,0, 0,0,0,0
db 2,2,2, 2,2,2,2 ;2
db 1,1, 1,1
db 0,0, 0,0,0,0
db 0,0, 0,0
db 0,0, 0,0
db 0,0, 0,0,0,0
db 3,3,3, 3,3,3,3 ;3
db 2,2, 2,2
db 1,1, 1,1,1,1
db 0,0, 0,0
db 0,0, 0,0
db 0,0, 0,0,0,0
db 4,4,4, 4,4,4,4 ;4
db 3,3, 3,3
db 2,2, 2,2,2,2
db 1,1, 1,1
db 0,0, 0,0
db 0,0, 0,0,0,0
db 4,4,4, 4,4,4,4 ;5
db 4,4, 4,4
db 3,3, 3,3,3,3
db 2,2, 2,2
db 1,1, 1,1
db 0,0, 0,0,0,0
db 3,3,3, 3,3,3,3 ;6
db 4,4, 4,4
db 4,4, 4,4,4,4
db 3,3, 3,3
db 2,2, 2,2
db 1,1, 1,1,1,1
db 2,2,2, 2,2,2,2 ;7
db 3,3, 3,3
db 4,4, 4,4,4,4
db 4,4, 4,4
db 3,3, 3,3
db 2,2, 2,2,2,2
db 1,1,1, 1,1,1,1 ;8
db 2,2, 2,2
db 3,3, 3,3,3,3
db 4,4, 4,4
db 4,4, 4,4
db 3,3, 3,3,3,3
db 0,0,0, 0,0,0,0 ;9
db 1,1, 1,1
db 2,2, 2,2,2,2
db 3,3, 3,3
db 4,4, 4,4
db 4,4, 4,4,4,4
db 0,0,0, 0,0,0,0 ;A
db 0,0, 0,0
db 1,1, 1,1,1,1
db 2,2, 2,2
db 3,3, 3,3
db 4,4, 4,4,4,4
db 0,0,0, 0,0,0,0 ;B
db 0,0, 0,0
db 0,0, 0,0,0,0
db 1,1, 1,1
db 2,2, 2,2
db 3,3, 3,3,3,3
db 0,0,0, 0,0,0,0 ;C
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0, 0,0
db 1,1, 1,1
db 2,2, 2,2,2,2
db 0,0,0, 0,0,0,0 ;D
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0, 0,0
db 0,0, 0,0
db 1,1, 1,1,1,1
db 0,0,0, 0,0,0,0 ;E
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0, 0,0
db 0,0, 0,0
db 0,0, 0,0,0,0
db 1,0,1, 0,1,0,1 ;F
db 0,1, 0,1
db 0,1, 0,1,0,1
db 0,1, 0,1
db 0,1, 0,1
db 0,1, 0,1,0,1
db 2,1,2, 1,2,1,2 ;10
db 1,2, 1,2
db 1,2, 1,2,1,2
db 1,2, 1,2
db 1,2, 1,2
db 1,2, 1,2,1,2
db 3,2,3, 2,3,2,3 ;11
db 2,3, 2,3
db 2,3, 2,3,2,3
db 2,3, 2,3
db 2,3, 2,3
db 2,3, 2,3,2,3
db 4,3,4, 3,4,3,4 ;12
db 3,4, 3,4
db 3,4, 3,4,3,4
db 3,4, 3,4
db 3,4, 3,4
db 3,4, 3,4,3,4
db 4,4,4, 4,4,4,4 ;13
db 4,4, 4,4
db 4,4, 4,4,4,4
db 4,4, 4,4
db 4,4, 4,4
db 4,4, 4,4,4,4
db 3,4,3, 4,3,4,3 ;14
db 4,3, 4,3
db 4,3, 4,3,4,3
db 4,3, 4,3
db 4,3, 4,3
db 4,3, 4,3,4,3
db 2,3,2, 3,2,3,2 ;15
db 3,2, 3,2
db 3,2, 3,2,3,2
db 3,2, 3,2
db 3,2, 3,2
db 3,2, 3,2,3,2
db 1,2,1, 2,1,2,1 ;16
db 2,1, 2,1
db 2,1, 2,1,2,1
db 2,1, 2,1
db 2,1, 2,1
db 2,1, 2,1,2,1
db 0,1,0, 1,0,1,0 ;17
db 1,0, 1,0
db 1,0, 1,0,1,0
db 1,0, 1,0
db 1,0, 1,0
db 1,0, 1,0,1,0
db 0,0,0, 0,0,0,0 ;18
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0, 0,0
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0,0, 0,0,0,0 ;19
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0, 0,0
db 0,0, 0,0
db 1,0, 0,0,0,0
db 0,0,0, 0,0,0,0 ;1A
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0, 0,0
db 1,0, 0,0
db 2,1, 0,0,0,0
db 0,0,0, 0,0,0,0 ;1B
db 0,0, 0,0
db 0,0, 0,0,0,0
db 1,0, 0,0
db 2,1, 0,0
db 3,2, 1,0,0,0
db 0,0,0, 0,0,0,0 ;1C
db 0,0, 0,0
db 1,0, 0,0,0,0
db 2,1, 0,0
db 3,2, 0,0
db 4,3, 2,1,0,0
db 1,0,0, 0,0,0,0 ;1D
db 1,0, 0,0
db 2,1, 0,0,0,0
db 3,2, 0,0
db 4,3, 0,0
db 0,4, 3,2,1,0
db 2,1,0, 0,0,0,0 ;1E
db 2,1, 0,0
db 3,2, 0,0,0,0
db 4,3, 0,0
db 0,4, 0,0
db 0,0, 4,3,1,0
db 3,2,1, 0,0,0,0 ;1F
db 3,2, 0,0
db 4,3, 1,0,0,0
db 0,4, 0,0
db 0,0, 1,0
db 0,0, 4,3,2,1
db 4,3,2, 0,0,0,0 ;20
db 4,3, 1,0
db 0,4, 2,1,0,0
db 0,0, 1,0
db 0,0, 2,1
db 0,0, 0,4,3,2
db 0,4,3, 1,0,0,0 ;21
db 0,4, 2,1
db 0,0, 3,2,1,0
db 0,0, 2,1
db 0,0, 3,2
db 0,0, 0,0,4,3
db 0,0,4, 2,1,0,0 ;22
db 0,0, 3,2
db 0,0, 4,3,2,1
db 0,0, 3,2
db 0,0, 4,3
db 0,0, 0,0,0,4
db 0,0,0, 3,2,1,0 ;23
db 0,0, 4,3
db 0,0, 0,4,3,2
db 0,0, 4,3
db 0,0, 0,4
db 0,0, 0,0,0,0
db 0,0,0, 4,3,2,1 ;24
db 0,0, 0,4
db 0,0, 0,0,4,3
db 0,0, 0,4
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0,0, 0,4,3,2 ;25
db 0,0, 0,0
db 0,0, 0,0,0,4
db 0,0, 0,0
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0,0, 0,0,4,3 ;26
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0, 0,0
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0,0, 0,0,0,4 ;27
db 0,0, 0,0
db 0,0, 0,0,0,0
db 0,0, 0,0
db 0,0, 0,0
db 0,0, 0,0,0,0