Welcome, Guest. Please login or register.


Author Topic: Zeneprogramozás (Read 148473 times)

Offline gafz

  • EP lover
  • *
  • Posts: 703
  • Country: hu
    • View Profile
    • http://gafz.atw.hu
Re: Zeneprogramozás
« Reply #30 on: 2005.December.16. 14:09:08 »
3.2. A burkolómeghatározás formája

A burkolókat egy, a hangcsatornához küldött escape-szekvenciával határozzuk meg az alábbiak szerint:

esc E <en> <ep> <er> [<cp> <cl> <cr> <pd>]

<en> burkoló száma 0 ... 254 (8 bit)
<ep> a burkolóban lévõ összes fázis száma 1 ... 40 (8 bit)
<er> = a lecsengés elõtti fázisok száma (8 bit). Ha nincs szükség lecsengés_ fázisra, akkor ez az érték 0FFh, amelynek eredményeként a hang azonnal befejezõdik, amikor az idõtartama lejár.
<cp> frekvenciaváltozás (16 bit) Minden egyes fázisra
a fentiek szerint
Legfeljebb 40-szer
ismételve (l. EP).
<cl> bal amplitúdó változás (8 bit)
<cr> jobb amplitúdó változás (8 bit)
<pd> fázis idõtartam (16 bit)

Ha a rendszer egy új burkolódefiníciót kap, akkor a régi meghatározás törlõdik az új definició pedig rákerül a listára. Ha nincs elég hely a tároláshoz, akkor hibakódot küld a rendszer. Ebben az esetben a szóban forgó burkoló régi definíciója is elvész.
Enterprise Forever

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13070
  • Country: hu
    • View Profile
    • http://enterprise.iko.hu/
Re: Zeneprogramozás
« Reply #31 on: 2005.December.16. 14:13:22 »
Quote from: "gafz"
Egyébként az exos könyvben csak 5 byte a "fejléc"...

Szerintem 6 :-)
frekvenciaváltozás (16 bit)
bal amplitúdó változás (8 bit)
jobb amplitúdó változás (8 bit)
fázis idõtartam (16 bit)

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13070
  • Country: hu
    • View Profile
    • http://enterprise.iko.hu/
Re: Zeneprogramozás
« Reply #32 on: 2005.December.16. 14:15:00 »
8-as számú burkolót definiálod, de a hang kiadásnál az 5-ösre hivatkozol!

Offline tigrian

  • EP user
  • *
  • Posts: 401
  • Country: hu
    • View Profile
Re: Zeneprogramozás
« Reply #33 on: 2005.December.16. 14:22:30 »
Quote from: "gafz"

esc E <en> <ep> <er> [<cp> <cl> <cr> <pd>]

Én a fázisokról beszéltem: <cp> <cl> <cr> <pd>
Az "esc E <en> <ep> <er>" -t nevezheted fejlécnek, ha gondolod.
Egy burkoló 5 + <ep>*6 byte-ból kell álljon.

A gond az, hogyha kevesebbet adsz ki, akkor a köv. byte-okat, amit küldesz a csatornának (esc S) is a burkoló részének értelmezi majd.
Szerintem ezt a részt kicsit elrontották, jobb lett volna talán tisztán 7bites számokat engedélyezni csak. A legfelsõ bit pedig egyértelmûen új csomag elejét jelölhetné. De ez persze csak okoskodás, mit sem változtat a helyzeten.  :o
re' mi' do' do sol

Offline gafz

  • EP lover
  • *
  • Posts: 703
  • Country: hu
    • View Profile
    • http://gafz.atw.hu
Re: Zeneprogramozás
« Reply #34 on: 2005.December.16. 14:25:28 »
A fenébe, akkor az egyik 0 16 bites 0 :)
Enterprise Forever

Offline gafz

  • EP lover
  • *
  • Posts: 703
  • Country: hu
    • View Profile
    • http://gafz.atw.hu
Re: Zeneprogramozás
« Reply #35 on: 2005.December.16. 14:34:12 »
Quote from: "gafz"
A fenébe, akkor az egyik 0 16 bites 0 :)


          ORG 0100H
          DI
          LD SP,0100H
          EI
          LD A,103
          EXOS 4         ;SOUND: MEGSZUNTETESE
          LD B,1
          LD C,15
          LD D,20
          EXOS 16        ;BUF_SND 20
          LD A,103
          LD DE,SNDTEXT
          EXOS 2         ;SOUND: LETREHOZASA
          LD C,20
CIK1      LD A,103
          LD HL,ENV1
          LD B,(HL)
          EXOS 7         ;CHARACTER IRASA
          DEC C
          JR NZ,CIK1
          LD A,103
CIK2      LD C,10
          LD HL,SND1
          LD B,(HL)
          EXOS 7         ;CHARACTER IRASA
          DEC C
          JR NZ,CIK2
VEGE      JR VEGE

SNDTEXT   DB 6,"SOUND:"
ENV1      DB 27,69,8,3,0FFH  ;BURKOLO NO 8
          DW 0000H
          DB 63,63
          DW 0001H
          DW 0000H
          DB 0,0
          DW 0003H
          DW 0000H
          DB -63,-63
          DW 0004H

SND1      DB 27,83,8,37,0FFH,0FFH,0,0,8,0,0  ;C HANG 8 HOSSZBAN 8 BURKOLOVAL


Viszont így sem mukkan meg...
Enterprise Forever

Offline Povi

  • EP addict
  • *
  • Posts: 1697
  • Country: hu
    • View Profile
    • http://povi.fw.hu
Re: Zeneprogramozás
« Reply #36 on: 2005.December.16. 14:42:16 »
Na és wav file-okat (8 bites) nem lehet valahogy átkonvertálni? (Nem a wav playert akarom használni).
Mert digizni lehetne pc-vel is, azon van hangkártya, nem kell plusz hardver.
*** Speicherplatz zu klein

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13070
  • Country: hu
    • View Profile
    • http://enterprise.iko.hu/
Re: Zeneprogramozás
« Reply #37 on: 2005.December.16. 14:44:09 »
Quote from: "gafz"


SND1      DB 27,83,8,37,0FFH,0FFH,0,0,8,0,0  ;C HANG 8 HOSSZBAN 8 BURKOLOVAL

szerintem:
DB 27,"S"
DB 8
DW 37
DB 255,255,0,0
DW 8
DB 0

Offline tigrian

  • EP user
  • *
  • Posts: 401
  • Country: hu
    • View Profile
Re: Zeneprogramozás
« Reply #38 on: 2005.December.16. 14:47:35 »
Quote from: "Zozosoft"
A DTM zenelejátszóhoz készült anno külsõ 4x8 bites D/A (FC-FF portokon), ezt talán tudná nekünk reprodukálni Tigrian kolléga, ha szépen megkérjük :-)

Tervezhetünk D/A-t is a panelra, de az analóg részt is tartalmaz, tehát mindenképpen plusz csipet jelent. És nem értem, mit nyernénk vele. Szerintem ehhez lassú az EP. Hiszen még beolvasni is alig tud ennyi adatot a vinyóról.
re' mi' do' do sol

Offline tigrian

  • EP user
  • *
  • Posts: 401
  • Country: hu
    • View Profile
Re: Zeneprogramozás
« Reply #39 on: 2005.December.16. 14:53:15 »
Quote from: "gafz"

          LD C,20
CIK1      LD A,103
          LD HL,ENV1
          LD B,(HL)
          EXOS 7         ;CHARACTER IRASA
          DEC C
          JR NZ,CIK1

Ez is rossz, a burkoló nem 20 byte hosszú.
De nem is érdemes számolgatni, erre való a fordító.

          LD C,ENV1_LEN
CIK1      LD A,103
.....
ENV1 DB 27,69,8,3,0FFH ;BURKOLO NO 8
DW 0000H
DB 63,63
DW 0001H
DW 0000H
DB 0,0
DW 0003H
DW 0000H
DB -63,-63
DW 0004H
ENV1_LEN EQU $-ENV1
re' mi' do' do sol

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13070
  • Country: hu
    • View Profile
    • http://enterprise.iko.hu/
Re: Zeneprogramozás
« Reply #40 on: 2005.December.16. 14:55:11 »
Egyrészt nem a lemezrõl olvassa, hanem memóriából :-) Hiszen ehhez már kész program is van, a DTM vagy 10 lemeznyi zenével.

Offline tigrian

  • EP user
  • *
  • Posts: 401
  • Country: hu
    • View Profile
Re: Zeneprogramozás
« Reply #41 on: 2005.December.16. 14:57:36 »
Quote from: "Zozosoft"
Egyrészt nem a lemezrõl olvassa, hanem memóriából

És mennyi digizett hang fér bele az 1M-ba, és milyen minõségben?
re' mi' do' do sol

Offline tigrian

  • EP user
  • *
  • Posts: 401
  • Country: hu
    • View Profile
Re: Zeneprogramozás
« Reply #42 on: 2005.December.16. 15:01:15 »
Nyitottam új topikot a D/A konverternek, hogy ne a zeneprogramozásba firkáljunk.  :D
re' mi' do' do sol

Offline gafz

  • EP lover
  • *
  • Posts: 703
  • Country: hu
    • View Profile
    • http://gafz.atw.hu
Re: Zeneprogramozás
« Reply #43 on: 2005.December.16. 15:29:57 »
Átszámolt ciklushosszal sem ad hangot...

Nem lehetne egy pár soros - hangot is adó :) - mintaprogramot feldobni ide?
Enterprise Forever

Offline Zozosoft

  • EP addict
  • *
  • Posts: 13070
  • Country: hu
    • View Profile
    • http://enterprise.iko.hu/
Re: Zeneprogramozás
« Reply #44 on: 2005.December.16. 15:32:38 »
Az SND1-et kijavítottad?