chunky
ZXNet echo conference «code.zx»
From Aleksey Malov → To All 7 August 1999
Greetings, dear All.
Here is the procedure for unpacking 1 kilobyte chunks for this
pop hl:ld c,(hl)
dup 3
ld a,(bc)
ld(de),a
inc d
inc b
edup
ld a,(bc)
ld(de),a
inc e
pop hl:ld c,(hl)
dup 3
ld a,(bc)
ld(de),a
dec d
dec b
edup
ld a,(bc)
ld(de),a
inc e
wrote the conclusion. Maybe it will suit someone...
╔═ chunkys .C ══ ═══ ══ ═ ═
;calculation of chunk images
;at the entrance to d-st. chunks location address byte
_ch_clt ld e,0
i_chun0 ld a,e
and 15
add a,a
ldc,a
ld b,0
ld hl,c_obraz
add hl,bc
ld a,(hl)
inc hl
ld h,(hl)
ld l,a
ld b,4
i_chun2 xor a
ld c,4
i_chun3 add hl,hl
rra
dec c
jr nz,i_chun3
ld(de),a
inc d
djnz i_chun2
ld a,e
and #f0
rrca
rrca
rrca
rrca
ld l,a
ld b,4
i_chun4 dec d
ld h,d
ld a,(hl)
rrca
rrca
rrca
rrca
and 15
ldc,a
ld a,(de)
or c
ld(de),a
djnz i_chun4
inc e
jr nz,i_chun0
ret
c_obraz dw #0000,#8020,#a020,#a0a0
dw #a4a0,#a4a1,#a5a1,#a5a5
dw #b5a5,#e5b5,#f5b5,#f5f5
dw #fdf5,#fdf7,#fff7,#ffff
;length including table - 92 bytes
═ ═ ══ ═══ ═══════════╝
C U l8r. Virtual/Brainwave of X-Project.