Znalazlem taki oto player zalaczony do Energy Zin'a, problem w tym ze nie ma o nim wzmianki w instrukcji, nie wiadomo jak go zaincjowac, jak go uzywac.
Pisalem do Jaskiera, ale nie odpowiada, wiec moze ktos z Was wie jak to ugryżć ?
*----------------*
*TMC short player*
*Jaskier/Taquart *
*----------------*
opt 6
org $a000
bajt equ $fb
addr equ $fc
adrsng equ $fe
play lda czygrc
bne *+3
rts
bit pozptr
bvc r1
dec ltempo
beq *+5
jmp sound
ldx #7
lda #0
p1 sta pozwpt,x
sta delay,x
dex
bpl p1
sta pozptr
tax
ldy #15
p2 lda (adrsng),y
bpl p3
dey
lda (adrsng),y
bpl *+5
jmp stop
stx addr
asl @
asl @
rol addr
asl @
rol addr
asl @
rol addr
zm0 adc #0
sta adrsng
lda addr
zm1 adc #0
sta adrsng+1
bcc p2-2
p3 sta numptr,x
dey
lda (adrsng),y
sta poddzw,x
inx
dey
bpl p2
clc
lda adrsng
adc #16
sta adrsng
bcc *+4
inc adrsng+1
jmp sound
r1 dec ltempo
bpl r1-3
inc pozptr
lda tempo
sta ltempo
ldx #7
r2 dec delay,x
bmi *+5
jmp r14
ldy numptr,x
zm2 lda $ffff,y
sta addr
zm3 lda $ffff,y
sta addr+1
ldy pozwpt,x
r3 lda (addr),y
bne r4
iny
inc pozwpt,x
lda (addr),y
lsr @
lsr @
lsr @
lsr @
sta adcvol,x
jmp r13
r4 cmp #$40
bcs r5
adc poddzw,x
sta wysdzw,x
iny
inc pozwpt,x
lda (addr),y
lsr @
lsr @
lsr @
lsr @
sta adcvol,x
ldy numdzw,x
jsr dzwiek
jmp r13
r5 bne r8
iny
inc pozwpt,x
lda (addr),y
bpl r6
sta bajt
iny
inc pozwpt,x
lda (addr),y
lsr @
lsr @
lsr @
lsr @
sta adcvol,x
lda bajt
r6 and #$7f
bne r7
lda #64
sta pozptr
bne r13
r7 sta tempo
sta ltempo
bne r13
r8 cmp #$80
bcs r11
and #$3f
adc poddzw,x
sta wysdzw,x
iny
inc pozwpt,x
lda (addr),y
and #$7f
bne r9
lda #64
sta pozptr
bne r10
r9 sta tempo
sta ltempo
r10 iny
inc pozwpt,x
lda (addr),y
lsr @
lsr @
lsr @
lsr @
sta adcvol,x
ldy numdzw,x
jsr dzwiek
jmp r13
r11 cmp #$c0
bcs r12
and #$3f
sta numdzw,x
iny
inc pozwpt,x
jmp r3
r12 and #$3f
sta delay,x
r13 inc pozwpt,x
r14 dex
bmi sound
jmp r2
sound ldx #7
lda #0
sta aud1
p5 lda czygrx,x
beq p4
jsr graj
lda aud1
and audtab,x
beq p4
ldy #71
lda (addr),y
clc
adc aktwys,x
sta aktwys+2,x
tay
lda frqtab,y
sec
adc pomoc1,x
sta frq+2,x
p4 cpx #4
bne p6
lda aud1
sta aud2
dex
bpl sound+2
p6 dex
bpl p5
lda #3
sta $d21f
sta $d20f
ldx frq+4
ldy frq
stx $d210
sty $d200
lda volume+4
ora znksz+4
sta $d211
lda volume
ora znksz
sta $d201
ldx frq+5
ldy frq+1
stx $d212
sty $d202
lda volume+5
ora znksz+5
sta $d213
lda volume+1
ora znksz+1
sta $d203
ldx frq+6
ldy frq+2
stx $d214
sty $d204
lda volume+6
ora znksz+6
sta $d215
lda volume+2
ora znksz+2
sta $d205
ldx frq+7
ldy frq+3
stx $d216
sty $d206
lda volume+7
ora znksz+7
sta $d217
lda volume+3
ora znksz+3
sta $d207
ldx aud2
ldy aud1
stx $d218
sty $d208
rts
graj lda adrsnl,x
sta addr
lda adrsnh,x
sta addr+1
lda slupy,x
cmp #63
bcs n6
tay
adc #3
sta slupy,x
lda (addr),y
and #$f0
sta znksz,x
lda (addr),y
and #15
sec
sbc adcvol,x
bpl n1
lda #0
n1 sta volume,x
iny
lda (addr),y
and #$f0
beq n8
bpl n3
ldy #73
lda (addr),y
ora aud1
sta aud1
ldy slupy,x
dey
dey
n3 lda (addr),y
and #$70
beq n9
lsr @
lsr @
sta n5+1
lda #0
sta pomoc1,x
iny
lda (addr),y
n5 bcc *
nop
nop
nop
nop
jmp a1
nop
jmp a2
nop
jmp a3
nop
jmp a4
nop
jmp a5
nop
jmp a6
nop
jmp a7
n6 lda opad,x
beq n8
dec lopad,x
bne n8
sta lopad,x
lda volume,x
beq n8
dec volume,x
n8 ldy #72
lda (addr),y
ora aud1
sta aud1
n9 lda aperm,x
clc
adc #63
tay
lda (addr),y
adc wysdzw,x
sta aktwys,x
tay
lda frqtab,y
sta frq,x
dec lperm,x
bpl m1
lda dperm,x
sta lperm,x
lda kolejn,x
bne m6
inc aperm,x
lda ilperm,x
cmp aperm,x
bcs m1
lda #0
sta aperm,x
beq m1
m6 clc
adc aperm,x
sta aperm,x
bne m7
lda #1
sta kolejn,x
bne m1
m7 cmp ilperm,x
bne m1
lda #$ff
sta kolejn,x
m1 lda czekaj,x
beq m2
dec czekaj,x
rts
m2 dec ltyp,x
bpl m2-1
lda dtyp,x
sta ltyp,x
lda typ,x
sta m5+1
m5 bpl *
jmp typ0
nop
jmp typ1
nop
jmp typ2
nop
jmp typ3
nop
jmp typ4
nop
jmp typ5
nop
jmp typ6
nop
jmp typ0
typ1 lda pomoc2,x
inc pomoc2,x
and #3
lsr @
bcc t2
beq t1
typ6 lda frq,x
sec
sbc param,x
sta frq,x
lda #0
sec
sbc param,x
sta pomoc1,x
rts
t1 lda param,x
sta pomoc1,x
clc
adc frq,x
sta frq,x
typ0 rts
t2 lda #0
sta pomoc1,x
rts
typ2 ldy pomoc2,x
lda param,x
bmi t3
iny
iny
t3 dey
tya
sta pomoc2,x
cmp param,x
bne t4
lda param,x
eor #$ff
sta param,x
tya
t4 sta pomoc1,x
clc
adc frq,x
sta frq,x
rts
typ3 ldy pomoc2,x
lda param,x
bmi t5
iny
iny
t5 dey
tya
sta pomoc2,x
cmp param,x
bne t6
lda param,x
eor #$ff
sta param,x
tya
t6 clc
adc aktwys,x
sta aktwys,x
tay
lda frqtab,y
sta frq,x
rts
typ4 lda pomoc2,x
sta pomoc1,x
tay
clc
adc frq,x
sta frq,x
tya
clc
adc param,x
sta pomoc2,x
rts
typ5 lda aktwys,x
sec
sbc pomoc2,x
sta aktwys,x
tay
lda frqtab,y
sta frq,x
lda pomoc2,x
clc
adc param,x
sta pomoc2,x
rts
a2 adc frq,x
a1 sta frq,x
rts
a3 ldy wysdzw,x
adc frqtab,y
sta frq,x
tya
sta aktwys,x
rts
a4 and $d20a
sta frq,x
rts
a7 adc wysdzw,x
a5 sta aktwys,x
tay
lda frqtab,y
sta frq,x
rts
a6 sta aktwys,x
tay
lda frq,x
adc frqtab,y
sta frq,x
rts
d1 sta volume,x
lda wysdzw,x
sta aktwys,x
rts
dzwiek lda #0
sta czygrx,x
zm8 lda $ffff,y
sta adrsnl,x
sta addr
zm9 lda $ffff,y
sta adrsnh,x
sta addr+1
ora addr
beq d1
ldy #74
lda (addr),y
sta opad,x
sta lopad,x
ldy #76
lda (addr),y
tay
and #$70
lsr @
lsr @
sta typ,x
tya
bmi d2
and #15
bpl d3
d2 and #15
eor #$ff
clc
adc #1
d3 sta param,x
d7 ldy #77
lda (addr),y
sta czekaj,x
ldy #79
lda (addr),y
tay
and #$80
beq d8
lda #1
d8 sta kolejn,x
tya
and #$70
lsr @
lsr @
lsr @
lsr @
sta ilperm,x
bne d6
sta kolejn,x
d6 tya
and #15
sta dperm,x
sta lperm,x
ldy #78
lda (addr),y
tay
and #$3f
sta dtyp,x
sta ltyp,x
tya
and #$c0
clc
adc wysdzw,x
sta wysdzw,x
sta aktwys,x
tay
lda frqtab,y
sta frq,x
lda #0
sta slupy,x
sta pomoc1,x
sta pomoc2,x
sta aperm,x
lda #1
sta czygrx,x
rts
init sty addr
stx addr+1
ldy #30
lda (addr),y
sta tempo
lda addr
clc
adc #32
sta zm8+1
bcc *+3
inx
stx zm8+2
clc
adc #$40
sta zm9+1
bcc *+3
inx
stx zm9+2
clc
adc #$40
sta zm2+1
bcc *+3
inx
stx zm2+2
clc
adc #$80
sta zm3+1
bcc *+3
inx
stx zm3+2
clc
adc #$80
sta adrsng
sta zm0+1
bcc *+3
inx
stx adrsng+1
stx zm1+1
jsr stop
lda #64
sta pozptr
lda #1
sta ltempo
sta czygrc
rts
stop lda #0
sta czygrc
ldy #7
d9 sta $d200,y
sta $d210,y
sta volume,y
sta czygrx,y
dey
bpl d9
sta $d208
sta $d218
sta aud1
sta aud2
rts
frqtab dta b(0),b($f1),b($e4),b($d7)
dta b($cb),b($c0),b($b5),b($aa)
dta b($a1),b($98),b($8f),b($87)
dta b($7f),b($78),b($72),b($6b)
dta b($65),b($5f),b($5a),b($55)
dta b($50),b($4b),b($47),b($43)
dta b($3f),b($3c),b($38),b($35)
dta b($32),b($2f),b($2c),b($2a)
dta b($27),b($25),b($23),b($21)
dta b($1f),b($1d),b($1c),b($1a)
dta b($18),b($17),b($16),b($14)
dta b($13),b($12),b($11),b($10)
dta b(15),b(14),b(13),b(12)
dta b(11),b(10),b(9),b(8)
dta b(7),b(6),b(5),b(4)
dta b(3),b(2),b(1),b(0)
dta b(0),b($f2),b($e6),b($da)
dta b($ce),b($bf),b($b6),b($aa)
dta b($a1),b($98),b($8f),b($89)
dta b($80),b($7a),b($71),b($6b)
dta b($65),b($5f),b($5c),b($56)
dta b($50),b($4d),b($47),b($44)
dta b($3e),b($3c),b($38),b($35)
dta b($32),b($2f),b($2d),b($2a)
dta b($28),b($25),b($23),b($21)
dta b($1f),b($1d),b($1c),b($1a)
dta b($18),b($17),b($16),b($14)
dta b($13),b($12),b($11),b($10)
dta b(15),b(14),b(13),b(12)
dta b(11),b(10),b(9),b(8)
dta b(7),b(6),b(5),b(4)
dta b(3),b(2),b(1),b(0)
dta b(0),b($ff),b($f1),b($e4)
dta b($d8),b($ca),b($c0),b($b5)
dta b($ab),b($a2),b($99),b($8e)
dta b($87),b($7f),b($79),b($73)
dta b($70),b($66),b($61),b($5a)
dta b($55),b($52),b($4b),b($48)
dta b($43),b($3f),b($3c),b($39)
dta b($37),b($33),b($30),b($2d)
dta b($2a),b($28),b($25),b($24)
dta b($21),b($1f),b($1e),b($1c)
dta b($1b),b($19),b($17),b($16)
dta b($15),b($13),b($12),b($11)
dta b($10),b(15),b(14),b(13)
dta b(12),b(11),b(10),b(9)
dta b(8),b(7),b(6),b(5)
dta b(4),b(3),b(2),b(1)
dta b(0),b($f3),b($e6),b($d9)
dta b($cc),b($c1),b($b5),b($ad)
dta b($a2),b($99),b($90),b($88)
dta b($80),b($79),b($72),b($6c)
dta b($66),b($60),b($5b),b($55)
dta b($51),b($4c),b($48),b($44)
dta b($40),b($3c),b($39),b($35)
dta b($32),b($2f),b($2d),b($2a)
dta b($28),b($25),b($23),b($21)
dta b($1f),b($1d),b($1c),b($1a)
dta b($18),b($17),b($16),b($14)
dta b($13),b($12),b($11),b($10)
dta b(15),b(14),b(13),b(12)
dta b(11),b(10),b(9),b(8)
dta b(7),b(6),b(5),b(4)
dta b(3),b(2),b(1),b(0)
audtab dta b(4),b(2),b(0),b(0)
dta b(4),b(2),b(0),b(0)
aud1 dta b(0)
aud2 dta b(0)
tempo dta b(0)
ltempo dta b(0)
pozptr dta b(0)
czygrc dta b(0)
volume dta d' '
aktwys dta d' '
numdzw dta d' '
znksz dta d' '
frq dta d' '
pozwpt dta d' '
delay dta d' '
numptr dta d' '
poddzw dta d' '
wysdzw dta d' '
czygrx dta d' '
adrsnl dta d' '
adrsnh dta d' '
adcvol dta d' '
slupy dta d' '
opad dta d' '
lopad dta d' '
typ dta d' '
param dta d' '
pomoc1 dta d' '
pomoc2 dta d' '
czekaj dta d' '
dtyp dta d' '
ltyp dta d' '
ilperm dta d' '
aperm dta d' '
dperm dta d' '
lperm dta d' '
kolejn dta d' '
end
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C