Sound Blaster AWE 32/64 HOWTO
  apo ton Marcus Brinkmann <Marcus.Brinkmann@ruhr-uni-
  bochum.de>
  v1.2, 11 Ianoyarioy 1998

  To keimeno ayto perigrafei thn egkatastash kai ru8mish mias kartas
  Sound Blaster 32 (SB AWE 32, SB AWE 64) ths Creative Labs se ena
  susthma Linux, xrhsimopoiwntas to AWE Sound Driver Extension apo ton
  Takashi Iwai. Epishs, kaluptei merika eidika ergaleia kai programmata
  ekteleshs hxwn (playres) gia thn seira SB AWE. To susthma anaforas
  einai ena Debian GNU/Linux, alla 8a prepei na doyleuei kai gia
  opoiadhpote allh dianomh Linux.
  ______________________________________________________________________

  Table of Contents


  1. Eisagwgh

     1.1 Eyxaristies
     1.2 Istoria Ana8ewrhsewn
     1.3 Nees ekdoseis aytou toy keimenoy
     1.4 Feedback
     1.5 Politikh Dianomhs

  2. Prin arxisete

     2.1 Eisagwgh
     2.2 Merikes genikes shmeiwseis gia tis kartes SB AWE
     2.3 Merikes genikes shmeiwseis gia tis Plug and Play kartes
     2.4 Merikes genikes shmeiwseis gia ta loadable kernel modules
     2.5 Merikes genikes shmeiwseis gia ton driver hxoy toy pyrhna

  3. Pws na egkatasthsete thn yposthrijh hxoy gia SB AWE

     3.1 Pragmata poy 8a xreiasteite
     3.2 Arxizontas
     3.3 Compile toy pyrhna
     3.4 Epanekkinhsh

  4. Elegxos toy Driver Hxoy

     4.1 /proc/devices, /dev/sndstat
     4.2 Ejodos - The Raw Audio Device
     4.3 Ejodos - Sun8esh OPL-2/OPL-3
     4.4 Ejodos - Sun8esh me pinaka kymatomorfwn (Wave Table Synthesis)
     4.5 Mijh
     4.6 Eisodos - Deigmatolhcia me to Raw Audio Device
     4.7 H 8ura MIDI

  5. Logismiko toy AWE Driver

     5.1 sfxload
     5.2 drvmidi

  6. Pararthma

     6.1 Epipleon Plhrofories
     6.2 Phges
     6.3 Protypo - Deigma


  ______________________________________________________________________



  1.  Eisagwgh



  Ayto einai to Sound Blaster AWE HOWTO. Sas dinei mia leptomerh
  plhroforhsh gia to pws 8a ekmetalleyteite sto epakro thn Sound Blaster
  32 sas h kai kaluteres ayths, symperilambanomenhs kai ths Sun8eshs me
  Pinaka Kymatomorfwn (Wave Table synthesis). To keimeno ayto kaluptei
  oles tis kartes SB, arxizontas apo thn SB 32 kai panw.  H seira Sound
  Blaster einai polu gnwsth sthn koinothta twn xrhstwn DOS kai Windows,
  kai polloi xrhstes Linux 8eloyn na xrhsimopoihsoyn aythn thn karta
  hxoy kai katw apo Linux epishs.  Dystyxws, h Creative Labs parexei
  odhgo hxoy mono gia ta Windows kai to DOS, kai etsi den einai
  tetrimmenh h egkatastash kai xrhsh ths kartas SB sto Linux. Ayto to
  keimeno prospa8ei na perigracei pws mporei kaneis na xrhsimopoihsei
  tis dynatothtes ths seiras SB AWE katw apo periballon Linux.



  1.1.  Eyxaristies




  To keimeno ayto periexei plhrofories poy phra apo to AWE Driver FAQ
  kai to ISA PnP FAQ.  Deite to tmhma ``Sources'' gia toys syggrafeis
  kai tis diey8unseis twn keimenwn aytwn.  Xarh stoys syggrafeis aytous,
  einai dynath h yposthrijh ths SB AWE.  Arketh anagkaia doyleia exei
  ginei apo ton Hannu Savolainen <http://www.4front-tech.com/usslite>,
  poy aneptyje ton driver hxoy poy erxetai me ton pyrhna toy Linux
  kernel. Se eyxaristoume!


  8elw na eyxaristhsw ton Nicola Bernardelli
  <mailto:n.bern@mail.protos.it> gia elegxoys poy ekane sta ths AWE64.
  Xwris ayton, polla la8h 8a emenan anentopista.

  Xarh sto paketo SGML Tools SGML Tools
  <ftp://sunsite.unc.edu/pub/Linux/utils/text/sgml-tools-0.99.0.tar.gz>,
  ayto to HOWTO einai dia8esimo se diafora format, poy ola
  dhmioyrgh8hkan apo to idio phgaio arxeio.


  1.2.  Istoria Ana8ewrhsewn




     Ekdosh 1.0
        prwth ekdosh

     Ekdosh 1.1
        dior8wmenh or8ografia (eyxaristw Curt!), pros8hkh apaithsewn
        ekdoshs gia isapnp, dia8esimo pleon sto sunsite kai se polla
        mirrors

     Ekdosh 1.2
        Dia8esimh h Gallikh ekdosh!, mikrodior8wseis, arketa or8ografika
        dior8wmena (xarh sto ispell)







  1.3.  Nees ekdoseis aytou toy keimenoy


  Gia sxolia, parathrhseis, dior8wseis, enhmerwseis peri ths Ellhnikhs
  metafrashs aytou toy HOWTO, steilte email sthn Boula Sanida :
  voulariba@hellug.gr h ston Eyripidh Papakwsta : evris@hellug.gr kai
  enallaktika : ep@rocketmail.com

  H neoterh ekdosh mporei na bre8ei sthn Home Page moy , Sound Blaster
  AWE HOWTO <http://homepage.ruhr-uni-
  bochum.de/Marcus.Brinkmann/soundblaster.html>.

  Nees ekdoseis aytou toy keimenoy 8a ginontai upload se diafora
  anonymous ftp sites poy arxeio8etoun tetoies plhrofories that archive,
  symperilambanomenoy kai toy
  <ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini>.


  Ekdoseis se Hypertext aytou kai allwn Linux HOWTOs einai dia8esimes se
  polla World-Wide-Web sites, kai sto  <http://sunsite.unc.edu/LDP/>. Oi
  perissoteres dianomes se CD-ROM toy Linux symperilambanoyn ta HOWTOs,
  syxna katw apo to directory /usr/doc.

  Xarh ston Arnaud Launay zoro@lsol.tm.fr, mia Gallikh ekdosh aytou toy
  keimenoy einai pleon dia8esimh!  H teleytaia ekdosh mporei na bre8ei
  mesw http <http://www.freenix.fr/linux/HOWTO> h anonymous ftp
  <ftp://ftp.lip6.fr/pub/linux/french/docs/HOWTO>.

  An kanete mia metafrash aytou toy keimenoy se mia allh glwssa,
  eidopoihste me kai 8a symperilabw mia anafora se aythn edw.



  1.4.  Feedback

  Basizomai se esas, ton anagnwsth, na kanete xrhsimo ayto to HOWTO. An
  exete opoiadhpote protash, dior8wsh, h sxolio, parakalw steilte ta se
  mena, Marcus.Brinkmann@ruhr-uni-bochum.de, kai 8a prospa8hsw na ta
  enswmatwsw sthn epomenh ana8ewrhsh.

  Kalwsorizw idiaitera plhrofories sxetika me thn diadikasia ekkinhshs
  (boot scripts klp.) allwn gnwstwn dianomwn Linux, p.x. Red Hat h SuSE
  Linux.

  An ekdwsete ayto to keimeno se CD-ROM h se entyph morfh, 8a ektimousa
  thn apostolh enos antigrafoy. Gracte moy gia ton taxydromiko moy
  kwdika.  Epishs analogis8eite thn periptwsh dwreas pros to Linux
  Documentation Project gia na sthrijete thn yposthrijh ths dwrean
  tekmhriwshs.  Epikoinwnhste me ton syntonisth toy Linux HOWTO, linux-
  howto@sunsite.unc.edu, gia perissoteres plhrofories.


  1.5.  Politikh Dianomhs


  Copyright 1997 Marcus Brinkmann.  Ayto to HOWTO einai mia dwrean
  dianomh; mporeite na to epanadianeimete kai/h tropopoihsete sumfwna me
  thn GNU General Public License opws ayth dhmosieuetai apo to Free
  Software Foundation, h sumfwna me thn Ekdosh 2 ths adeias, h (kata thn
  gnwmh sas) sumfwna me opoiadhpote metepeita ekdosh ths adeias.  Ayto
  to keimeno dianemetai me thn elpida pws 8a fanei xrhsimo, alla xwris
  kamia egguhsh. Xwris oute kan na yponoeitai egguhsh xrhshs h
  katallhlothtas gia kapoion sygkekrimeno skopo.  Deite thn adeia GNU
  General Public License gia perissoteres leptomereies.


  Mporeite na apokthsete antigrafo ths ¢deias GNU General Public License
  grafontas sto Free Software Foundation Free Software Foundation
  <http://www.fsf.org>,Inc., 675 Mass Ave, Cambridge, MA 02139, USA.


  2.  Prin arxisete



  2.1.  Eisagwgh


  Ayto to keimeno prospa8ei na sas boh8hsei na egkatasthsete thn Sound
  Blaster AWE 32 h thn Sound Blaster AWE 64 ths Creative Labs sto Linux
  susthma sas. To susthma anaforas einai ena GNU/Linux Debian GNU/Linux
  <http://www.debian.org> se platforma Intel i586 , alla 8a prepei na
  doyleuei kai gia ka8ebut allh dianomh Linux ka8ws kai platforma poy
  yposthrizetai apo ton driver hxoy toy Linux (oi diafores anaferontai
  opoy kai an yparxoyn).

  Bebaiw8eite pws diabasate to Linux Sound HOWTO (des ``Epipleon
  Plhrofories'') prosektika. 8ewrw to keimeno moy ws symplhrwmatiko toy
  Sound HOWTO, kai syxna 8a breite ekei, perissoteres plhrofories gia
  pragmata poy exw afhsei ektos.


  2.2.  Merikes genikes shmeiwseis gia tis kartes SB AWE


  H karta hxoy SB AWE 32 parexei ena raw audio device, klassiko sun8esh
  OPL-2/OPL-3 ,mia 8ura MPU-401 MIDI kai 32 fwnes EMU 8000 me Sun8esh
  Pinaka Kymatomorfwn (gia mia ejhghsh panw se aytous alla kai alloys
  oroys deite to Linux Sound HOWTO). Enas apo toys skopous aytou toy
  keimenoy einai na sas boh8hsei wste na kanete ola ayta ta
  xarakthristika na doyleuoyn swsta.

  H  SB AWE 64 exei tis dynatothtes ths SB AWE 32 kai epipleon thn
  sun8esh Wave Guide gia thn opoia h Creative Labs einai perhfanh.  To
  problhma gia toys xrhstes toyLinux einai, pws oi epipleon 32 fwnes
  dhmioyrgountai apo logismiko kai dinoyn ejodo mesw  twn raw wave
  devices.  Epeidh h Creative Labs den blepei emporiko endiaferon gia
  Linux drivers, o driver hxoy Wave Guide synthesis einai dia8esimos
  mono gia ta Windows 3.1 kai ta  Windows 95.


  Ayto shmainei pws, apo thn skopia toy xrhsth Linux, h SB AWE 32 kai h
  SB AWE 64 einai sxedon isodunames. Apo twra kai sto ejhs, 8a
  anaferomai mono sthn SB AWE genika kai 8a anaferw mono diafores opoy
  emfanizontai (an yparxoyn).



  2.3.  Merikes genikes shmeiwseis gia tis Plug and Play kartes


  Oi perissoteres monternes kartes gia thn platforma ths Intel einai ISA
  PnP kartes, poy einai h suntmhsh gia to``Plug and Play''. Ayto
  shmainei, pws h karta prepei na ry8mistei apo to leitoyrgiko susthma,
  kai pws ayto prepei na ginei mesw mias diadikasias arxikopoihshs kata
  thn ekkinhsh. Genika, yparxoyn toylaxiston treis dynatoi tropoi na
  ginei ayto:


  1. Dia8etete ena PnP Bios, pragma poy shmainei pws to Bios sas einai
     enhmero gia tis  PnP kartes kai mporei na tis ry8misei. An nomizete
     pws mporeite na xrhsimopoihsete ola ta xarakthristika ths SB AWE
     PnP sas,, apla kai mono epeidh exete ena PnP Bios, eiste atyxoi.
     Akoma kai an to Bios isxyrizetai pws yposthrizei kartes PnP
     arxikopoiei mono ena yposunolo twn 8yrwn kai diey8unsewn poy
     xrhsimopoiountai apo thn karta hxoy sas. To pio pi8ano einai pws 8a
     mporeite na paizete dedomena raw wave, alla den 8a mporeite na
     paizete moysikh MIDI, gia paradeigma. Gia ayto to logo, ena PnP
     Bios den einai h epilogh sas.


  2. Dia8etete leitoyrgiko susthma poy yposthrizei kartes PnP. O trexwn
     sta8eros pyrhnas Linux kernel (2.0.x) den einai ena tetoio
     leitoyrgiko opote 8a prepei na perimenoyme mellontikes ekdoseis toy
     pyrhna, ,poy 8a yposthrizoyn syskeyes PnP.

  3. Dia8etete kapoio eidiko programma, poy jekinaei kata thn ekkinhsh,
     kai arxikopoiei tis kartes PnP. Aytos einai o tropos poy to
     kanoyme.



  To syxnotera xrhsimopoioumeno logismiko arxikopoihshs PnP kartwn se
  Linux einai ta ``isapnptools'' (des tmhma ``Phges'' kai tmhma
  ``Arxizontas''). Parexoyn enan ka8orismeno tropo ru8mishs olwn twn
  kartwn ISA PnP sthn mhxanh sas, kai oxi mono ths kartas hxoy.


  2.4.  Merikes genikes shmeiwseis gia ta loadable kernel modules


  Merikoi device drivers mporoun na xtistoun san modules anti na ginoyn
  compile ston pyrhna. Mporeite na breite perissoteres plhrofories gia
  modules sto Kernel HOWTO kai to Module HOWTO (des tmhma ``Epipleon
  Plhrofories'').

  An exete mia PnP karta, prepei na egkatasthsete thn yposthrijh hxoy
  san ena loadable kernel module. Ayto shmainei pws den mporeite na
  xtisete ton driver hxoy ston pyrhna, alla 8a prepei na to xtisete ws
  module poy mporei na fortw8ei apo ton pyrhna kata thn ektelesh. Ayto
  ginetai epeidh o pyrhnas prepei na fortw8ei prin oi ISA PnP ry8mistoun
  , kai o driver hxoy prepei na fortw8ei afou ry8mistei h ISA PnP karta.

  To module hxoy mporei na fortw8ei xeirokinhta me  insmod sound h
  modprobe -a sound h to katallhlo script ekkinhshs toy Linux (sto
  Debian, arkei na pros8esete mono mia grammh poy na grafei sound sto
  /etc/modules). Mia allh proseggish einai na shkwsete to kerneld, ena
  daimona poy egka8ista kai apegka8ista modules pyrhna.

  Shmeiwste pws o kerneld mporei na mhn einai h katallhloterh lush gia
  to module hxoy ths AWE, epeidh pairnei xrono na fortwsei to module
  ston pyrhna, eidika an 8elete na xrhsimopoihsete sun8esh Wave Table
  kai na fortwsete megales trapezes deigmatwn hxwn, pragma to opoio 8a
  prepei na kanete ka8e fora afou shkwsete to module. Epeidh o kerneld
  diwxnei ta axrhsimopoihta modules meta apo ena lepto apo default,
  einai isws kalutero na eisagete to module hxoy xeirokinhta h kata thn
  ekkinhsh.

  Shmeiwste pws eisagontas to module hxoy xeirokinhta h kata thn
  ekkinhsh apagoreuei ston pyrhna na to apomakrunei otan ayto einai
  anenergo.  Parempiptontws: Mporeite xeirokinhta na eisagete to module
  hxoy kai na xrhsimopoihsete ton kerneld taytoxrona. Aytes oi duo
  me8odoi den sygkrouontai, alla apla o kerneld den noiazetai pleon gia
  to module toy hxoy.

  Ayto einai polu xrhsimo an oi ry8miseis toy mixer sas xalane meta thn
  apomakrynsh kai epaneisagwgh toy module. Mia lush gia ayto to problhma
  8a do8ei sto tmhma ``Mijh'' (ekei perigrafetai pws mporeite na
  arxisete ton mixer sas aytomata otan to module hxoy eisagetai).
  Parola ayta, pairnei xrono ston kerneld na fortwsei to module, tis
  trapezes hxwn kai na arxisei ton mixer, kai gi'ayto kai alloys logoys
  einai kalutero na eisagete to module hxoy kata thn ekkinhsh kai na mhn
  afhnete ton kerneld na to apomakrunei.



  2.5.  Merikes genikes shmeiwseis gia ton driver hxoy toy pyrhna


  Mporeite na egkatasthsete yposthrijh hxoy enswmatwmenh ston pyrhna h
  san loadable module. An exete mia karta PnP card,8a prepei na
  egkatasthsete thn yposthrijh san module, epeidh h karta PnP xreiazetai
  na arxikopoih8ei me ta isapnptools prin to module egkatasta8ei..

  Opws mporeite na fantasteite, 8a prepei na kanete jana compile ton
  pyrhna.  8a sas dwsw merikes symboyles gi' ayto parakatw. Pros to
  paron, as milhsoyme gia thn yposthrijh hxoy ston kwdika toy pyrhna. O
  pyrhnas erxetai me thn Dwrean Lite Ekdosh toy OSS (USS) driver hxoy. H
  trexoysa ekdosh aytou toy driver (3.5.4) den yposthrizei plhrws thn SB
  AWE, alla to SB 16 kommati ths.  Etsi, mporeite na exete raw audio
  device kai sun8esh OPL-2/OPL-3 an thn xrhsimopoieite, alla den 8a
  eisaste se 8esh na paizete MIDI me sun8esh Wave Table.

  An 8elete na xrhsimopoihsete to Wave Table device, mporeite h na
  agorasete ton emporiko driver hxoy apo thn 4Front Technologies
  <http://www.4front-tech.com> (kapoios as moy epibebaiwsei pws ontws
  doyleuei, parakalw), h na kanete  patch ton pyrhna sas me to AWE 32
  Sound Driver Extension toy Takashi Iwai. To prwto einai ejw apo toys
  skopous toy keimenoy kai ypo8etw pws 8a 8elhsete na xrhsimopoihsete to
  deutero.

  To AWE32 Sound Driver Extension (des enothta ```Phges'') bgainei katw
  apo  adeia xrhshs GNU kai erxetai me ena plh8os ergaleiwn gia na kanei
  xrhsh ths sun8eshs EMU 8000 twn kartwn SB AWE.

  To logismiko awedrv hdh symperilambanetai sta dentra kwdika twn
  neoterwn pyrhnwn (arxizontas apo kapoioys pyrhnes 2.1.x) alla isws 8a
  8elete na anaba8misete ton kwdika toy paliou sas pyrhna poy mporei na
  einai palio.


  3.  Pws na egkatasthsete thn yposthrijh hxoy gia SB AWE



  3.1.  Pragmata poy 8a xreiasteite


  Aytes einai oi apaithseis gia yposthrijh SB AWE katw apo Linux:


  ·  ena susthma Linux en leitoyrgia (p.x. thn dianomh  Debian GNU/Linux
     ),

  ·  mia  SB AWE 32 h symbath karta (p.x.. SB32, SB32 PnP, SB AWE64,
     ...),

  ·  ton phgaio kwdika toy pyrhna toy Linux, kai twn odhgwn hxoy
     OSS/Free (logika symperilambanetai, koitajte sto
     /usr/src/Linux/drivers/sound/Readme),

  ·  Ta AWE 32 sound driver extensions.


  An exete mia karta PnP, 8a xreiasteite epishs:


  ·  to paketo logismikou isapnptools.

  Deite sto tmhma ``Phges'' gia plhrofories sxetika me to apo poy
  mporeite na to apokthsete.

  An exete ena susthma Debian GNU/Linux , shmainei pws 8a xreiasteite
  kai ta paketa kernel-source-<version>, awe-drv kai isws to paketo
  isapnptools.  8a 8elhsete kai merika apo ta alla awe-* paketa parolo
  poy den einai anagkaia. Systhnw to kernel-package gia eukolo compile
  kai egkatastash toy pyrhna.


  3.2.  Arxizontas


  As ypo8esoyme pws exete katasthsei kanonika thn karta sthn ypodoxh ths
  sthn mhtrikh kai pws pi8ana hdh thn dokimasate se periballon DOS h
  Windows.

  To epomeno bhma einai na arxikopoihsete thn karta kata thn ekkinhsh an
  kai mono an einai mia karta PnP. Akoloy8hste thn tekmhriwsh sto paketo
  toy source gia na kanete compile kai na egkatasthsete ta isapnptools
  (h apla xrhsimopoihste to Debian binary paketo), kai kante:



       # pnpdump > /etc/isapnp.conf





  san root. Ayto 8a dhmioyrghsei ena kat' elpida kalo arxeio ry8misewn
  gia tis PnP kartes sas, alla me ola ta devices se sxolia. Parakalw
  dior8wste to arxeio ayto prosektika, kai sygkrinete tis times gia ta
  kanalia DMA, IO kai interrupts me tis ry8miseis tis kartas sas katw
  apo periballon DOS h Windows an ayto einai dynaton (me ta Win95,
  koitajte ta resources poy xrhsimopoiountai apo thn karta, katw apo to
  resources ston device manager). An exete problhmata diabaste
  prosektika thn tekmhriwsh poy erxetai mazi me ta isapnptools.

  PROSOXH: ta isapnptools syxna apotygxanoyn na entopisoyn kai tis treis
  8ures I/O ths syskeyhs SB AWE Wave Table . Sygkrinete prosektika thn
  eggrafh sxetika me WaveTable sto isapnp.conf sas me to paradeigma sto
  telos aytou toy HOWTO.  An einai anagkaio tropopoihste tis  I/O base
  diey8unseis.


  PROSOXH: Sumfwna me to isapnp-faq, merikes fores ta isapnp
  apotygxanoyn na programmatisoyn ton ari8mo ths logikhs syskeyhs
  (logical device). An antimetwpisete mhnumata la8oys opws to akoloy8o:



       Error occurred executing request 'LD 2' on or around line...




  tote prospa8hste na pros8esete (VERIFYLD N) sthn arxh toy isapnp.conf.
  8a prepei na xrhsimopoihsete toylaxiston thn ekdosh1.10 gia na
  doylecei ayto.  An den mporeite na xrhsimopoihsete ekdosh 1.10 h
  newterh, mporeite epishs na kanete POKE toys ari8mous toy logical
  device apey8eias. Anafer8eite sto isapnp-faq gia perissoteres
  plhrofories sxetika me ayth thn proseggish. An den sas doylecei,
  epikoinwnhste mazi moy (8ewrw pws kai oi an8rwpoi twn isapnp 8a
  endiaferontai epishs).

  PROSOXH: Bebaiw8eite pws h teleytaia grammh einai (WAITFORKEY), h
  opoia mporei na paraleipetai se merikes palioteres ekdoseis toy
  pnpdump.

  Ena deigma isapnp.conf gia mono mia karta PnP (thn karta hxoy)
  brisketai sto telos aytou toy keimenoy (des tmhma ``Protypo - Deigma
  <tt>isapnp.conf</tt>'').

  An exete ena susthma Debian, den xreiazontai epipleon ry8miseis.  Ta
  isapnp 8a arxisoyn kata thn ekkinhsh sto /etc/init.d/boot me ayto to
  kommataki kwdika, poy mallon 8a 8elate na symperilabete sta scripts
  ekkinhshs sas:


  ______________________________________________________________________
  # Configure the isa plug and play boards before loading
  # modules. Need to do this before loading modules to get
  # a chance of configuring and starting PnP boards before
  # the drivers mess all this up.
  #
  if [ -x /etc/init.d/isapnp ]
  then
    /etc/init.d/isapnp start
  fi
  ______________________________________________________________________



  opoy to /etc/init.d/isapnp einai


  ______________________________________________________________________
  #! /bin/sh
  # /etc/init.d/isapnp: configure Plug and Play boards
  test -x /sbin/isapnp || exit 0
  /sbin/isapnp /etc/isapnp.conf
  exit 0
  ______________________________________________________________________




  An exete kapoia allh dianomh Linux, eisaste monoi sas. Den jerw ti na
  kanw (kaneis pro8ymos na ypoballei pio sygkekrimenes plhrofories?).
  Mono bebaiw8eite pws ta isapnp arxizoyn prin ta  modules fortw8oun(des
  parakatw).




  3.3.  Compile toy pyrhna


  Prin arxisete na kanete jana compile ton pyrhna 8a prepei na
  efarmosete to AWE Driver Extension patch ston driver hxoy. Akoma kai
  an to dentro kwdika toy pyrhna sas periexei to awedrv extension (gia
  na to deite ayto tsekarete to /drivers/sound/lowlevel/ ), mporei na
  8elhsete na anaba8misete to logismiko toy awedrv . Akoloy8hste tis
  odhgies egkatastashs directory toy kwdika toy awedrv. En syntomia,  8a
  prepei na trejete ena script egkatastashs poy efarmozei ta patches
  ston kwdika toy pyrhna.
  Na eisaste prosektikos gia to an pragmati exete anaba8misei ton pyrhna
  afou trejate to script egkatastashs. To script elegxei apla an kapoio
  arxeio yparxei kai an nai, den efarmozei to apaitoumeno patch. Sas
  symboyleuw na apomakrunete to arxeio drivers/sound/lowlevel/awe_wav.c
  prin trejete to script afou anaba8misete ton kwdika toy pyrhna.

  Meta 8a prepei na ry8misete ton pyrhna gia yposthrijh hxoy. Elpizw na
  gnwrizete ta basika gia to compile toy pyrhna, deite to Sound HOWTO
  kai to Kernel HOWTO gia leptomereies. Proxwrhste sto directory toy
  kwdika toy pyrhna sas (/usr/src/linux gia paradeigma), kai kante:



       # make config





  h make menuconfig h make xconfig. Meta exete na ry8misete ton pyrhna
  sas me ton gnwsto tropo. Ekmetalleyteite aythn thn eykairia gia na
  kanete ena mikro kai isxyro pyrhna, eidika sxediasmeno gia to susthma
  sas.  Bebaiw8eite pws apanthsate sto Enable loadable module support me
  Y, an 8elete na egkatasthsete ton driver hxoy san loadable module
  (anagkastiko an exete karta PnP), alla eimai sigoyros pws etsi kai
  alliws 8a 8elhsete na to kanete ayto.

  Se kapoio shmeio, 8a erwth8eite gia to an 8elete yposthrijh kartwn
  hxoy.  Apanthste me Y h me M an den exete karta PnP.  Prepei na
  apanthsete me M, gia module, an exete karta PnP.  8a prepei na kanete
  compile thn yposthrijh hxoy san module an exete karta PnP giati h
  karta PnP prepei na arxikopoih8ei prin to module fortw8ei.

  Oi akoloy8es erwthseis 8a prepei na apanth8oun me Y , oles oi alles me
  N :


  ______________________________________________________________________
  Sound Blaster (SB, SBPro, SB16, clones) support (CONFIG_SB) [Y/n/?]
  Generic OPL2/OPL3 FM synthesizer support (CONFIG_ADLIB) [Y/n/?]
  /dev/dsp and /dev/audio support (CONFIG_AUDIO) [Y/n/?]
  MIDI interface support (CONFIG_MIDI) [Y/n/?]
  FM synthesizer (YM3812/OPL-3) support (CONFIG_YM3812) [Y/n/?]
  lowlevel sound driver support [Y/n/?]
  AWE32 support (CONFIG_AWE32_SYNTH) [Y/n/?]
  ______________________________________________________________________




  Mono h teleytaia einai pragmatika gia thn sun8esh Wave Table. Oi
  ypoloipes einai epiloges gia SB 16 apo ton driver hxoy toy OSS/Free.

  Epipleon, prepei na ry8misete 8ura I/O ths kartas. Koitajte sto arxeio
  isapnp.conf gia symboyles, an bebaia exete. Gia mena , oi parakatw
  default times, arkoun.

  Shmeiwste pws oi proka8orismenes times toy ru8mishs toy pyrhna mporei
  na einai la8os (eidika gia oi times SBC_IRQ kai SB_MPU_BASE fainetai
  na einai la8os gia tis perissoteres kartes






  ______________________________________________________________________
  I/O base for SB Check from manual of the card (SBC_BASE) [220]
  Sound Blaster IRQ Check from manual of the card (SBC_IRQ) [5]
  Sound Blaster DMA 0, 1 or 3 (SBC_DMA) [1]
  Sound Blaster 16 bit DMA (_REQUIRED_for SB16, Jazz16, SMW) 5, 6 or 7
  (use 1 for 8 bit cards) (SB_DMA2) [5]
  MPU401 I/O base of SB16, Jazz16 and ES1688 Check from manual of the card
  (SB_MPU_BASE) [330]
  SB MPU401 IRQ (Jazz16, SM Wave and ES1688) Use -1 with SB16 (SB_MPU_IRQ) [-1]
  ______________________________________________________________________




  Twra kante jana compile ton pyrhna. Oi xrhstes Debian 8a prepei na
  xrhsimopoihsoyn to paketo kernel-package. Ayto to paketo kanei to
  compile oso eukolo oso kai thn egkatastash enos paketoy gia debian.
  Koitajte sthn tekmhriwsh sto /usr/doc/kernel-package/.  Akoloy8ei mia
  symboylh:



       # make-kpkg clean
       # make-kpkg -revision custom.1.0 kernel_image




  kai meta dpkg -i /usr/src/kernel-image-2.0.29_custom.1.0_i386.deb.

  An exete kapoia allh dianomh Linux, akoloy8eiste ton klassiko tropo
  gia to compile enos neoy pyrhna. Mhn jexasete na kanete make modules
  kai make modules_install. Koitajte sto Sound HOWTO isws kai sto Kernel
  HOWTO gia perissoteres plhrofories.


  3.4.  Epanekkinhsh


  Afou egkatasthsete ton neo pyrhna, 8a prepei na kanete epanekkinhsh
  (bebaiw8eite pws exete proxeirh mia disketa epanekkinhshs poy
  doyleuei). Kai proseyxh8eite.

  An exete mia karta PnP bebaiw8eite pws jekinate ta isapnp eite sta
  script ekkinhshs (opws perigrafthke parapanw), eite xeirokinhta:



       # /sbin/isapnp /etc/isapnp.conf
       Board 1 has Identity 74 00 00 e3 10 48 00 8c 0e:  CTL0048 Serial No 58128
       [checksum 74]




  Twra mporeite na egkatasthsete ton driver hxoy, an ton exete kanei
  compiled san module:



       # modprobe -a sound
       AWE32 Sound Driver v0.3.3e (DRAM 2048k)




  An nomizete pws o entopismos ths mnhmhs den htan swstos (exw mia
  anafora kapoioy poy eixe mia AWE64 me 4096k, kai ``entopismena'' htan
  28672k), dokimaste eite na anaba8misete to logismiko awedrv h na
  ka8orisete to poso ths mnhmhs sto arxeio
  /usr/src/linux/drivers/sound/lowlevel/awe_config.h, gia paradeigma:



       #define AWE_DEFAULT_MEM_SIZE  4096   /* kbytes */




  Lypamai, alla prepei na kanete jana compile ton pyrhna (isws mono ta
  modules arkei, alla den eimai sigoyros).

  An doylecei, isws na 8elete na fortwnete to module hxoy aytomata.
  Mporeite na xrhsimopoihsete ton kerneld (to giati ayto einai asxhmh
  idea ejhgh8hke sto tmhma1.4) h na eisagete mia mono grammh sto poy
  periexei th lejh sound sto /etc/modules sas (se Debian) h pros8este
  /sbin/modprobe -a sound sto script ekkinhshs sas.



  4.  Elegxos toy Driver Hxoy



  4.1.  /proc/devices, /dev/sndstat


  An exete enswmatwmenh yposthrijh hxoy, 8a deite kapoies xrhsimes
  plhrofories kata thn ekkinhsh. An exete thn yposthrijh hxoy ws
  loadable module, 8a parete tis idies plhrofories (isws afou
  apomakrunete to module hxoy me thn modprobe -r sound prwta) me



       # modprobe -a sound trace_init=1
       Sound initialization started

       <Sound Blaster 16 (4.13)> at 0x220 irq 5 dma 1,5
       <Sound Blaster 16> at 0x330 irq 5 dma 0
       <Yamaha OPL3 FM> at 0x388
       Sound initialization complete
       AWE32 Sound Driver v0.3.3e (DRAM 2048k)




  An exete ena eikoniko susthma arxeiwn /proc, mporeite na koitajete to
  arxeio me



       # cat /proc/devices
       Character devices:
       [...]
       14 sound
       [...]






  Meta sigoyreyteite pws exete ta swsta devices egkatesthmena sto /dev/.
  Koitajte sto Sound HOWTO gia leptomereies. Meta deite to /dev/sndstat
  gia thn katastash toy module toy hxoy:



       # cat /dev/sndstat
       Sound Driver:3.5.4-960630 (Sat Oct 11 19:35:14 CEST 1997 root,
       Linux flora 2.0.29 #1 Sat Oct 11 19:12:56 CEST 1997 i586 unknown)
       Kernel: Linux flora 2.0.29 #1 Sat Oct 11 19:36:23 CEST 1997 i586
       Config options: 0

       Installed drivers:
       Type 1: OPL-2/OPL-3 FM
       Type 2: Sound Blaster
       Type 7: SB MPU-401

       Card config:
       Sound Blaster at 0x220 irq 5 drq 1,5
       SB MPU-401 at 0x330 irq 5 drq 0
       OPL-2/OPL-3 FM at 0x388 drq 0

       Audio devices:
       0: Sound Blaster 16 (4.13)

       Synth devices:
       0: Yamaha OPL-3
       1: AWE32 Driver v0.3.3e (DRAM 2048k)

       Midi devices:
       0: Sound Blaster 16

       Timers:
       0: System clock

       Mixers:
       0: Sound Blaster
       1: AWE32 Equalizer




  An den deite kati san kai ayto, isws yparxei la8os me tis ry8miseis
  sas.  Proxwrhste kai deite ti de doyleuei, meta epistrecte sto bhma
  ``Arxizontas'', elegxontas ta panta.



  4.2.  Ejodos - The Raw Audio Device


  Prospa8hste na breite ena arxeio .au (Sun workstation) h ena arxeio
  raw file, kai kante



       # cat bell.au > /dev/audio




  antistoixa.




  # cat sample > /dev/dsp




  8a prepei na akousete ta periexomena toy arxeioy mesw toy Audio Device
  0: Sound Blaster 16 (4.3).



  4.3.  Ejodos - Sun8esh OPL-2/OPL-3


  An 8elete na xrhsimopoihsete thn sun8esh OPL-2/OPL-3 FM gia na paijete
  arxeia MIDI apo thn karta hxoy sas, dokimaste to programma playmidi
  (des Appendix B).  Arxiste to me



       # playmidi -f dance.mid





  h





       # playmidi -4 dance.mid





  To prwto 8a sas dwsei OPL-2, to teleytaio OPL-3 moysikh MIDI . An o
  hxos einai xalia, mhn kathgoreite to playmidi: Einai h sun8esh FM poy
  akougetai asxhma.

  Fantasteite pws 8a eixate mono ton Driver Hxoy ths OSS/Free Sound
  Driver: Loipon ayth einai h poiothta moysikhs MIDI poy 8a epituxete
  (ektos ths sun8eshs mesw logismikou).  Eytyxws, exete mia SB AWE, kai
  mporeite na xrhsimopoieite tis dynatothtes gia Wave Table me to AWE
  Sound Driver Extension.


  4.4.  Ejodos - Sun8esh me pinaka kymatomorfwn (Wave Table Synthesis)


  To AWE Driver Extension erxetai me kapoia eidika ergaleia (awesfx) gia
  na kanete xrhsh ths sun8eshs toy EMU 8000 Wave Table. Prwta, prepei na
  fortwsete mia Trapeza Deigmatwn Hxwn sthn karta sas - akoma kai an
  skopeuete na akousete ta deigmata poy yparxoyn sthn ROM !  Mporeite na
  parete ta arxeia apo ta Windows - koitajte gia arxeia me katalhjeis
  *.sfb h *.sf2.

  Ta deigmata ths ROM mporoun na fortw8oun me SYNTHGM.SBK, alh8ina
  deigmata einai sto SYNTHGS.SBK kai sto SYNTHMT.SBK, ka8ws epishs kai
  sto SAMPLE.SBK. Mporeite na parete ki alles Trapezes Deigmatwn Hxwn
  mesw ftp h www. Dokimaste thn EMU Homepage, to web site ths Creative
  Labs, kai koitajte kai ta deigmata toy Chaos, einai alh8ina polu kala
  (na tsekarete sigoyra kai to site ths AWE Driver).


  Prospa8hste na fortwsete to stantart GM (ROM) me



       # sfxload -i synthgm.sbk




  kai meta paijte ena arxeio midi poy erxetai mazi me thn SB AWE sas:



       # drvmidi dance.mid






  4.5.  Mijh


  Parte to agaphmeno sas programma mijhs kai arxiste to. 3ekinhste ena
  deigma raw audio kai duo arxeia MIDI taytoxrona, kai dokimaste tis
  ry8miseis toy mixer.

  Paijte gia ligo, 8a prepei na einai polu eukolo. Na h lista me ta
  devices kai pws legontai:



     Yamaha OPL-3
        Synth or FM

     AWE32 Driver
        Synth or FM (does anyone know a mixer were the last two are
        separated from each other?)

     Sound Blaster 16 (4.13)
        PCM or DSP

     PC Speaker (still alive)
        Spkr

  Alles ry8miseis toy mikth anaferontai sto CD ROM, poy einai pi8ana
  syndedemeno me th karta hxoy, thn Kuria Entash Hxoy, Mpasa, Prima, kai
  eyais8hsia hxografhshs twn diaforwn grammwn eisodoy. Mporeite na
  prosdiorisete poies eisodoi 8a hxografountai.



  4.6.  Eisodos - Deigmatolhcia me to Raw Audio Device


  Mporeite na hxografhsete apo diaforetikes phges: ena syndedemeno CD
  ROM, ena mikrofwno sto mic, kai otidhpote mporei na synde8ei sto line
  in. Balte ton mikth sthn katallhlh 8esh.  Paijte enan hxo kai
  hxografhste se kapoio arxeio, diabazontas apo to Raw Audio Device, gia
  paradeigma:






  # cdplay
  # dd bs=8k count=5 </dev/dsp >music.au
  5+0 records in
  5+0 records out
  # cat music.au >/dev/dsp




  hxografei kai paizei pente deyterolepta hxoy apo th syskeyh eisodoy.



  4.7.  H 8ura MIDI


  Lypamai, den yparxoyn plhrofories gia th 8ura MIDI akoma!


  5.  Logismiko toy AWE Driver



  5.1.  sfxload


  Mporeite na fortwsete deigmata sthn DRAM ths kartas hxoy sas me to
  ergaleio sfxload.  Shmeiwste pws mporeite na fortwsete mono ena
  arxeio-deigma ana trapeza (bank), me thn bank 0 ws default. Etsi, meta
  to sfxload synthgs.sbk, ta mona deigmata sthn karta sas einai ta GS.
  An 8elete na fortwsete epipleon Trapezes Deigmatwn Hxoy (Sound Font
  Banks), 8a prepei na xrhsimopoihsete thn epilogh -b, gia paradeigma:



       # sfxload synthgs.sbk
       # sfxload -b1 sample.sbk
       # drvmidi sfx.mid




  Mporeite na fortwsete mia default Sound Font Bank aytomata
  egka8istwntas to module.  Apla pros8este mia grammh opws h:



       post-install sound /usr/bin/sfxload synthgm.sbk




  sto arxeio sas /etc/conf.modules.

  Gia perissoteres plhrofories deite thn tekmhriwsh gia to sfxload.



  5.2.  drvmidi


  Me to programma drvmidi, mporeite na xrhsimopoieite ton AWE Driver sas
  gia na paizete arxeia MIDI. Apla ka8oriste to onoma toy midi arxeioy
  sas meta thn entolh:


       # drvmidi waltz.mid




  Gia perissoteres plhrofories deite thn tekmhriwsh gia to drvmidi.



  6.  Pararthma



  6.1.  Epipleon Plhrofories



     To Linux Sound HOWTO
        Syggrafeas: Jeff Tranter, <jeff_tranter@pobox.com> Teleytaia
        ekdosh: v1.17, 4 Aygoustoy 1997 Parakalw koitajte prosektika to
        Sound HOWTO (dia8esimo sto sunsite.unc.edu kai alla sites).
        Periexei polla stoixeia gia to compile toy pyrhna me yposthrijh
        hxoy, kai ejhgei polla gia tasound devices, tis efarmoges klp.

        8ewrw ayto to HOWTO ws symplhrwmatiko toy Sound HOWTO.



     To Linux Sound Playing HOWTO
        Syggrafeas: Yoo C. Chung, <wacko@laplace.snu.ac.kr> Teleytaia
        ekdosh: v1.4, 13 Maioy 1997 8a prepei epishs na koitajete to
        Sound Playing HOWTO. Sas leei gia diafora formats hxoy kai
        efarmoges poy ta ekteloun.



     To AWE Driver FAQ
        Syggrafeas: Takashi Iwai <iwai@dragon.mm.t.u-tokyo.ac.jp> Phgh:
        <http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/awedrv/awedrv-faq.html>
        An exete problhmata sthn egkatastash toy AWE Driver h
        xrhsimopoieite sun8esh Wave Table sthn Sound Blaster sas, tote
        koitajte to.



     To ISA PnP FAQ
        Syggrafeas: Peter Fox <fox@roestock.demon.co.uk> Phgh:
        <http://www.roestock.demon.co.uk/isapnptools/isapnpfaq.html> An
        exete problhmata sthn ru8mish twn ISA PnP kartwn sas, tote ayto
        einai h biblos sas.




  6.2.  Phges




     isapnptools
        Syggrafeas: Peter Fox <fox@roestock.demon.co.uk>

        Teleytaia ekdosh: 1.11

        Phgh:  <http://www.roestock.demon.co.uk/isapnptools/index.html>

        An steilete patches, anafores bugs h sxolia, gracte kapoy mesa
        sto 8ema 'isapnp' kai steilte to sto
        isapnp@roestock.demon.co.uk.



     awedrv
        Syggrafeas: <iwai@dragon.mm.t.u-tokyo.ac.jp>

        Teleytaia ekdosh: 0.4.2c

        Phgh:   <http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/awedrv/>


     Linux kernel
        Syggrafeas: Linus Torvald kai polloi alloi

        Teleytaia ekdosh: Pros to paron, 8a prepei na xrhsimopoieite thn
        2.0.29

        Phgh: pantou, apo opoy mporeis na breis Linux :)



     OSS/Free
        Syggrafeas: Hannu Savolainen (Parakalw koitajte to
        <http://www.4front-tech.com/usslite  prin steilete e-mail>).

        Teleytaia ekdosh: Exw thn 3.5.5-beta1

        Phgh: me to paketo toy kwdika toy pyrhna toy Linux

        Plhrofories:    <http://www.4front-tech.com/usslite> h to
        Eyrwpaiko mirror <http://personal.eunet.fi/pp/voxware>.



  6.3.  Protypo - Deigma isapnp.conf


  Sto arxeio ry8misewn gia ISA PnP poy dhmiourghse to pnpdump, ta
  devices twn kartwn PnP sas emfanizontai ws tmhmata. Sto parakatw, mia
  karta entopisthke (h karta hxoy), me tessera logika devices:



  ·  LD 0: Audio Device

  ·  LD 1: IDE Device

  ·  LD 2: WaveTable Device

  ·  LD 3: Gameport Device


  Afhsa to LD 1 arru8misto, epeidh den exw CD ROM enwmeno me thn 8ura
  IDE ths kartas hxoy moy.  An den exete 8ura IDE sthn SB sas, tote h LD
  1 8a einai to Gameport Device kai to LD 3 den 8a emfanizetai.

  Parakalw, anafer8eite sto tmhma ``Arxizontas'' gia peraiterw
  (shmantikes!)  plhrofories sxetika me ayto to arxeio.





  ______________________________________________________________________
  # $Id: pnpdump.c,v 1.9 1997/06/10 21:37:32 fox Exp $
  # This is free software, see the sources for details.
  # This software has NO WARRANTY, use at your OWN RISK
  #
  # For details of this file format, see isapnp.conf(5)
  #
  # For latest information on isapnp and pnpdump see:
  # http://www.roestock.demon.co.uk/isapnptools/
  #
  # Compiler flags: -DREALTIME -DNEEDSETSCHEDULER

  (READPORT 0x0203)
  (ISOLATE)
  (IDENTIFY *)

  # Try the following if you get error messages like
  # Error occurred executing request 'LD 2' on or around line...

  #(VERIFYLD N)

  # ANSI string -->Creative SB32 PnP<--

  (CONFIGURE CTL0048/58128 (LD 0
  #     ANSI string -->Audio<--

    (INT 0 (IRQ 5 (MODE +E)))
    (DMA 0 (CHANNEL 1))
    (DMA 1 (CHANNEL 5))
    (IO 0 (BASE 0x0220))
    (IO 1 (BASE 0x0330))
    (IO 2 (BASE 0x0388))

    (ACT Y)
  ))

  (CONFIGURE CTL0048/58128 (LD 1
  #     ANSI string -->IDE<--

  # (INT 0 (IRQ 10 (MODE +E)))
  # (IO 0 (BASE 0x0168))
  # (IO 1 (BASE 0x036e))

  # (ACT Y)
  ))

  (CONFIGURE CTL0048/58128 (LD 2
  #     ANSI string -->WaveTable<--

    (IO 0 (BASE 0x0620))
    (IO 1 (BASE 0x0A20))
    (IO 2 (BASE 0x0E20))

    (ACT Y)
  ))

  (CONFIGURE CTL0048/58128 (LD 3
  #     ANSI string -->Game<--

    (IO 0 (BASE 0x0200))
    (ACT Y)
  ))

  # Returns all cards to the "Wait for Key" state
  (WAITFORKEY)
  ______________________________________________________________________