  Sound Blaster AWE 32/64 HOWTO
  by Marcus Brinkmann <Marcus.Brinkmann@ruhr-uni-bochum.de>
  v1.2, 11 January 1998
   ǎ  <mailto:kawagisi@yk.rim.or.jp>
  쐬F1998N 615

  ̃hLǵATakashi Iwai ( )쐬 AWE Sound Driver
  Extension g Linux VXe Creative Labs  Sound Blaster 32
  (SB AWE 32, SB AWE 64) J[h̃CXg[Ɛݒ@ɂĉ
  ܂B܂ASB AWE V[Yp̓ʂȃc[ƃv[Ɋւ邱
  Jo[Ă܂BpVXe Debian GNU/Linux VXeł
  ̂قƂǂ Linux fBXgr[VłlɓłB
  ______________________________________________________________________

  ڎ

  1. ͂߂
     1.1 ӎ
     1.2 rW
     1.3 ̃hLg̐Vo[W
     1.4 tB[hobN
     1.5 zz̃|V[

  2. n߂O
     2.1 ͂߂
     2.2 SB AWE J[hɊւʓIȒӓ_
     2.3 Plug and Play J[hɊւʓIȒӓ_
     2.4 [_uEJ[lW[ɊւʓIȒӓ_
     2.5 J[lETEhEhCoɊւʓIȒӓ_

  3. SB AWE TEhT|[g̃CXg[@
     3.1 Ȃׂ
     3.2 Ƃ͂
     3.3 J[l̃RpC
     3.4 u[g

  4. TEhhCõeXg
     4.1 /proc/devices, /dev/sndstat
     4.2 Raw I[fBIfoCX̏o
     4.3 OPL-2/OPL-3 VZ̏o
     4.4 EF[ue[uVZ̏o
     4.5 ~LVO
     4.6 Raw I[fBIfoCX̃TvO
     4.7 MIDI |[g

  5. AWE hCo\tgEFA
     5.1 sfxload
     5.2 drvmidi

  6. t^
     6.1 ǉ
     6.2 \[X
     6.3 isapnp.conf ̃Tv

  ______________________________________________________________________

  1.  ͂߂

   Sound Blaster AWE HOWTO łBSound Blaster 32 ܂͂̏(
  ݊) @̒EF[ue[uVZTCU܂ޖwǂ̏ڍׂȏ
  ɂďĂ܂B̃hLǵASB 32 ȏ̑SĂ SB J[
  hJo[Ă܂B

  Sound Blaster V[Y DOS  Windows ̐Eł͂悭mĂ܂
   Linux [UÃTEhJ[h Linux ŎgƎv
  ܂BcOȂ Creative Labs  Windows  DOS p̃hCo
  ĂȂ̂ŁALinux  SB J[hCXg[Ďgɂ́A
  ƂmKvɂȂ܂B̃hLǵALinux  SB AWE
  V[Y̋@\gɂ͂ǂ΂悢ɂẲ݂܂B

  1.1.  ӎ

  ̃hLgɂ́AAWE Driver FAQ  ISA PnP FAQ 瓾񂪊܂
  Ă܂B̃hLg̍҂ƃAhX ``\[X'' ̍
  BSB AWE T|[g\ł邱Ƃ҂Ɋӂ܂B

  ̂߂ďdvȍƂ Hannu Savolainen <http://www.4front-
  tech.com/usslite> ɂčs܂Bނ Linux J[lɕtĂ
  TEhhCoJ܂BLI

   Nicola Bernardelli <mailto:n.bern@mail.protos.it>  AWE64 ֘A\
  tgeXgƂɊӂ܂BނȂ΁AołȂG[
  RcĂƂł傤B

  SGML Tools pbP[W
  <ftp://sunsite.unc.edu/pub/Linux/utils/text/sgml-tools-0.99.0.tar.gz>
  Ɋӂ܂B HOWTO ͂̃tH[}bgŗpł܂AS
  ċʂ̃\[Xt@C琶܂B

  1.2.  rW

     Version 1.0
        ŏ̃o[W

     Version 1.1
        XẙԈႢC(Curt Ɋ!)B isapnp ̃o[W̏
        Ɋւ邱ƂǉB sunsite Ƒ̃~[TCg痘pł
        悤ɂȂ܂B

     Version 1.2
        tXo[Wł܂IȏCƑ̃XẙԈ
        C (ispell Ɋ)

  1.3.  ̃hLg̐Vo[W

  ŐVo[ẂÃz[y[W Sound Blaster AWE HOWTO
  <http://homepage.ruhr-uni-
  bochum.de/Marcus.Brinkmann/soundblaster.html> ɂ܂B

  ̃hLg̐Vo[ẂAƂ
  <ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini> Ȃǂ̑
  anonymous () FTP TCgɂ܂B

  Ƒ Linux HOWTO ̃nCp[eLXg̃o[ẂA
  <http://sunsite.unc.edu/LDP/> ܂߁A WWW TCgɂ܂B
  Ƃǂ Linux CD-ROM fBXgr[Vɂ HOWTO Ăđ
  ̏ꍇ /usr/doc fBNgɂ܂B

  Arnaud Launay  zoro@lsol.tm.fr LB̃hLg̃tX
  o[Wł܂IŐVo[ẂA http
  <http://www.freenix.fr/linux/HOWTO> ܂ anonymous ftp
  <ftp://ftp.lip6.fr/pub/linux/french/docs/HOWTO> 瓾܂B

  ̃hLg𑼂̌ɖ|󂵂玄ɋĉBΎ
  ŏЉ܂B

  1.4.  tB[hobN

  ͂ HOWTO 𗧂̂ɂ邽߂ɂȂǎ҂𗊂ɂ܂B
  炩̒āACARg΂ Marcus.Brinkmann@ruhr-
  uni-bochum.de ĂɃ[ŉBΎ͎̃o[Wł
  荞ނ悤ɂ܂B

  ̗͑L Linux fBXgr[VAႦ Red Hat Ƃ SuSE
  Linux ̃X^[gAbv(u[gXNvgȂ)Ɋւ
  }܂B

  ̃hLg CD-ROM ܂͏Ђoŕ̂Ŕsꍇ́A
  ꕔ{ƂĒ΍KłBĂɗXĉB܂ALinux
  ̃t[hLg̃T|[g邽߂ Linux Documentation
  Project (LDP) Ɋt邱ƂlĉBڂƂ Linux
  HOWTO ̂܂Ƃߖ Tim Bynum linux-howto@sunsite.unc.edu ɘAĉ
  B

  1.5.  zz̃|V[

  Copyright 1997 Marcus Brinkmann.

   HOWTO ̓t[hLgłBFree Software Foundation ɂ
  sĂ GNU General Public License ̃CZX̃o[WQ
  (Ȃ̑Iɂ)Ȍ̃o[W̉ꂩ̏ɏ]āA
  Ȃ͂ĔzzA/܂ ύX邱Ƃł܂B

  ̃hLǵAɗƂ҂ĔzzĂ܂BA
  Ȃۏ؂܂Biprւ̓KɂĂ̈Öق̕ۏ؂
  炠܂Bڂ́AGNU  General Public License B

  GNU General Public License ̃Rs[肵́AFree Software
  Foundation Free Software Foundation <http://www.fsf.org> Ave,
  Cambridge, MA 02139, USA Ƀ[oĉB

  2.  n߂O

  2.1.  ͂߂

  ̃hLǵAȂ Linux VXe Creative Labs Ђ Sound
  Blaster AWE 32 ܂, Sound Blaster AWE 64 ̃CXg[Ɛݒ
  Ƃ̏ƂȂ邱ƂړIƂĂ܂Bł Intel i586 vbg
  tH[ł  Debian GNU/Linux <http://www.debian.org> VXe
  Đ܂ALinux TEhhCoɂăT|[gǂ
  vbgtH[łA܂قƂǂ Linux fBXgr[Vł
  lɓłB (Ⴂꍇ́AꂪoĂۂɌy܂)

  Linux Sound HOWTO (``ǉ'' ̍AQ)𒍈Ӑ[ǂ݂܂傤 B
  ́ÃhLg Sound HOWTO ̕⑫łƍlĂ܂B܂A
  ɏȂ葽̏𔭌łł傤B

  2.2.  SB AWE J[hɊւʓIȒӓ_

  SB AWE 32 TEhJ[h́Araw I[fBIfoCXAW OPL-2/OPL-3
  VZAMPU-401 MIDI |[gA32{CX EMU 8000 EF[ue[uVZ
  ̋@\܂B(̐⑼̗p̐ Linux Sound HOWTO 
  ) ̃hLg̈̖ڕẂȂSĂ̋@\
  삷悤ɂȂ邽߂̂`邱ƂłB

  y󒍁zraw foCXƂ̂́A͂ɉHȂłꗬfoC
  XAƂӖłB
  y󒍏Iz

  SB AWE 64 ́ASB AWE 32 ̋@\ɉ Creative Labs  WaveGuide
  VZĂ܂BLinux [UɂƂẮ̖Aǉꂽ 32{C
  X̓\tgEFAō쐬 raw I[fBIfoCXoRďo͂
  Ƃ_łBCreative Labs  LinuxhCo̎slĂȂ̂
  Wave Guide VZ̃TEhhCóAWindows 3.1  Windows 95 ɂ
  ݑΉĂ܂B

  ́ALinux [U̎_ SB AWE 32  SB AWE 64 ͖wǓ
  łƂƂӖ܂B́AP SB AWE ƌĂшႢ
  ꍇɂ݂̂̑_ɐG邱Ƃɂ܂B

  2.3.  Plug and Play J[hɊւʓIȒӓ_

  ߍ Intel vbgtH[pJ[h̖wǂ ISA PnP J[hłB
  PnP ``Plug and Play''̗łB̓J[h OS ɂĐݒ肳
  KvAu[gɏ[`ʂčsȂKv
  ƂƂӖ܂BʓIɁAs߂ɂ͍Œł3̕@
  ܂B

  1. PnP BIOS (BIOS  PnP J[hFݒłƂӖ)B
     PnP BIOS ̂ SB AWE PnP ̑SĂ̋@\gƂłƍl
     ĂȂAcOłBBIOS  PnP J[h̃T|[g悤ɗv
     ĂA͒PɃTEhJ[hɂĎg|[gƃAhX
     ̃TuZbg邾Ȃ̂łBႦ΁AԂ raw EF[u
     f[^t邱Ƃ͏oł傤AMIDI ỷt͂łȂ
     傤B̂ PnP BIOS ͑Iɂ͓܂B

  2. PnP J[hT|[g OSB݂̈o[W Linux J[l
     (2.0.x)́Â悤 OS ł͂܂񂩂AB PnP foCX
     T|[gJ[lナ[X̂҂Ȃ΂Ȃ܂
     B

  3. u[g PnP J[h̏JnʂȃvOBꂪ
     Bs@łB

  Linux  PnP J[h邽߂ɎgłʓIȃ\tgEFA
  ́A``isapnptools'' łB (``\[X'' ̍ ``Ƃ͂'' ̍
  )

  2.4.  [_uEJ[lW[ɊւʓIȒӓ_

  foCXhCoɂ́AJ[l̒ɑgݍޑɃW[Ƃăr
  h邱Ƃł̂܂BW[ɊւڂƂ
  Kernel HOWTO  Module HOWTO B(``ǉ'' ̍Q)

  Ȃ PnP J[hȂATEhT|[g̓[_uJ[l
  W[ƂăCXg[Kv܂B́AJ[l̒
  TEhhCogݍނƂ͂łȂAsɃJ[l̒Ƀ[
  hł郂W[ƂărhKvƂƂłB̗R
  ́AISA PnP J[hݒ\ɂȂOɃJ[lCXg[AISA
  PnP J[hݒ肳ꂽŃTEhhCo[hKv邩
  B

  TEhJ[lW[͎蓮

         $ insmod sound        ܂́A
         $ modprobe -a sound   Ƃ邩A

  邢͓K؂ Linux VXeu[gXNvgɂă[hł܂B
  (Debian ł́A/etc/modules  sound ܂1sǉΏ\ł) 
  ̃Av[`́AKvɉăJ[lW[CXg[폜
  f[ł kerneld 𗧂グ邱ƂłB

  kerneld  AWE TEhhCoW[ɂ͍œK̉ł͂Ȃ
  ȂƂƂɒӂĉBƂ̂́AJ[l̒ɃW[
  [hɂ͎ԂƂƂłBɃEF[ue[uEV
  ZgAW[}Ŗ傫 Sound Font oN
  [hȂ΂ȂȂꍇłB kerneld ́AftHgł͖gp
  ̃W[Pɍ폜܂TEhW[ŁA邢
  u[gɑ}Ƃ̂́AԂD܂ƂłBTEhW[
  ŁA邢̓u[gɑ}ꍇAW[VłƂ
   kerneld ́A폜ȂƂ_ɒӂĉBƂŁA
  ŃTEhW[}邱ƂƁAkerneld gp邱Ƃ͓ɏo
  ܂B̂Q̕@͏Փ˂܂Bkerneld ́ATEhW[
  ɂ͉eyڂ܂B

  ͓ɁAW[폜ăCXg[Ń~LT[̐ݒ
  蓖Ăꍇɕ֗łB̖̑΍ ``~LVO'' ̍
  qׂ܂B(ł̓TEhW[}Ƀ~LT[I
  N@܂) Akerneld W[[h
  ASound Font oN[hA~LT[Nɂ͎ԂA
  Ƃ̗̑Rɂău[gɃTEhW[CXg[
  kerneld ɍ폜ȂƂƂ͍D܂ƂȂ̂łB

  2.5.  J[lETEhEhCoɊւʓIȒӓ_

  TEhT|[ǵAJ[l̒ɑgݍŁA邢̓[_u
  W[ƂăCXg[邱Ƃł܂BPnP J[hȂT
  EhT|[gW[ƂăCXg[Kv܂BR
  ́AW[CXg[O PnP J[h isapnptools ŏ
  ĂKv邩łB

  CÂ̂悤ɃJ[lč\zKv܂BɊւĈȉ
  ̃qg܂Bł̓J[l\[X̒̃TEhT|[
  gɂĂb܂傤BJ[l OSS (USS) ̃t[o[W(Lite
  o[W) ̃TEhhCotŔzz܂B̃hCǒ݂
  o[W(3.5.4) ́ASɂ SB AWE T|[gASB 16 ̋@\̈
  T|[gĂ܂B]āAraw I[fBIfoCXƁAĝ
   OPL-2/OPL-3 VZ삵܂AEF[ue[uVZɂ
  MIDI ̉t͂ł܂B

  EF[ue[ufoCXĝł΁A 4Front Technologies
  <http://www.4front-tech.com> 珤p̃TEhhCo𔃂Ƃ
  邵(ꂩꂪ\ǂɋĂ) 邢͊ 
   AWE 32 Sound Driver Extension ŃJ[lɃpb`Ă܂BO҂
  ̃hLg͈̔͊OŁA͂Ȃ҂]ł̂ƌ􂵂
  B

  AWE32 Sound Driver Extension (``\[X'' ̍) GNU R
  s[CgCZX̂ƂŔ\ĂāASB AWE J[h EMU 8000
  EF[uVZg߂̑̃c[ƋɌJĂ܂B

  awedrv \tgEFÁAɐVJ[l\[Xc[(2.1.x ̂ǂꂩ
  ~̃J[l) ɂ͓Ă܂A͌Â̂łԂ񂠂Ȃ̓J[l
  c[̃\[XAbvO[hƎvł傤B

  3.  SB AWE TEhT|[g̃CXg[@

  3.1.  Ȃׂ

  ȉ́ALinux ̉ SB AWE T|[g邽߂̏łF

  o  Ɠ삷 Linux VXe(Ⴆ Debian GNU/Linux fBXg
     r[V)

  o  SB AWE 32 ܂͌݊J[h(Ⴆ SB32, SB32 PnP, SB AWE64, ...)

  o  TEhhCo OSS/Free ܂ Linux J[l̃\[X(ʏ͓
     Ă܂B/usr/src/linux/drivers/sound/Readme mFĂ)

  o  AWE 32 Sound Driver Extension

  PnP J[h̏ꍇ͉L̂̂KvłB

  o  isapnptools \tgEFApbP[W

  ̃vOǂ肷邩 ``\[X'' ̍B

  Debian GNU/Linux VXȅꍇA kernel-source-<version>, awe-
  drv ĂԂ isapnptools ̃pbP[WKvł邱ƂӖ
  Bsł͂ȂǑ awe-* pbP[W~Ȃł傤BJ[
  l̃RpCƃCXg[ȒPɍs߂ɁA kernel-package g
  Ƃ܂B

  3.2.  Ƃ͂

  Ȃ̓J[h}U[{[hɐtAԂ񂷂ł DOS 邢
   Windows ŃeXgς݂ł̂ƌ􂵂܂B

  PnP J[h̏ꍇÃXebv̓u[gɃJ[h邱ƂłB
  isapnptools \[XpbP[W̃hLgɏ]āARpCC
  Xg[܂B (܂ Debian oCipbP[Wgł)

  y󒍁z Slackware 3.4.0 ̏ꍇAfBXNZbg diska5 ̒ pnp Ƃ
  pbP[W isapnptools-1.10 ƂoCipbP[WĂ
  BȂAŐVo[W1998N5݁A1.15 łB
  y󒍏Iz

   root Ŏ̂悤ɂ܂B

       # pnpdump > /etc/isapnp.conf

  ͂܂ΓK؂ PnP J[hp̐ݒt@CĂ܂
  ASẴfoCX̓RgAEg܂B̃t@C𒍈Ӑ[ҏW
  ĉ\ł DOS 邢 Windows ł̃J[h DMA `l
  AI/O x[XAhXA荞(IRQ)̐ݒlƔׂĂ݂ĉ
  B(Win95 ̏ꍇfoCX}l[W̃\[X̏ŃJ[hgĂ
  \[X) 肪ꍇ́Aisapnptools ̃hLg
  ŉB

  F isapnptools  SB AWE EF[ue[ufoCX̂R I/O |[g
  ̌oɎs邱Ƃ悭܂B HOWTO ̍ŌɎƔ
  Ȃ炠Ȃ isapnp.conf t@C WaveTable  entry 𒍈Ӑ[
  ĉBKvɉ I/O x[XAhX𒲐ĉB

  F isapnp-faq ɂƁA܂ isapnp _foCX̔ԍvO
  ̂Ɏs邱Ƃ܂Bȉ̂悤ȃG[bZ[Wo
  F

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

  isapnp.conf ̐擪 (VERIFYLD N) ǉĂ݂ĉB𓮂
  ͏ȂƂo[W 1.10 ȏgKv܂Bo[W 1.10
  ȏgƂłȂꍇA_foCX̔ԍ𒼐 POKE 邱Ƃ
  ł܂B̃Av[`Ɋւڂ isapnp-faq 
  Bꂪ܂ȂƂ͎( isapnp ̐lBƎ
  ͎v܂)ɘAĉB

  F pnpdump ̌Âo[Wł́AŌ̍s (WAITFORKEY)Ƃ
  Ăꍇ܂vӂłB

  PnP J[h(TEhJ[h)  isapnp.conf ̃TvA
  hLg̍Ōɂ܂B (``isapnp.conf ̃Tv''̍
  )

  Debian VXȅꍇAȏ͕̒Kv܂Bȉ̃XNv
  gR[h̒fЂu[gXNvg̒ɃCN[hĂ
  /etc/init.d/boot ̒ isapnp u[gɃX^[g܂B

  ______________________________________________________________________
  # 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
  ______________________________________________________________________

  /etc/init.d/isapnp ͉L̂悤ɂ܂B

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

   Linux fBXgr[V̏ꍇ͕ʂłB͂ǂ΂悢
  m܂B(ꂩA̓Iȏ񋟂Ă܂񂩁H) isapnp
  ̓W[[hOɃX^[gȂ΂ȂȂƂ_ɒ
  ĉB(ȉ)

  y󒍁z Linux ̋NAVXȅƐݒ Slackware ̏ꍇA
  /etc/rc.d/rc.S  /etc/rc.d/rc.M XNvgɏꂽeɏ]Ď
  悤ȏōs܂B(Ȃ̂ɗL܂)

  1. /etc/rc.d/rc.S  # VXeXNvg SysVinit (܂ Debian,
  RedHat, Caldera) ̏ꍇ /etc/rc.d/rc.sysinit Aɑ܂B

         (/sbin/kerneld)
         /etc/rc.d/rc.modules   (W[)
         /etc/rc.d/rc.pcmcia    (PCMCIA)
         /etc/rc.d/rc.serial    (VA)

  2. /etc/rc.d/rc.M  # }`[U[hXNvg

              Screen blanks ̐ݒ
              /etc/rc.d/rc.cdrom     (CDROM)
              crond ̋N
              HOSTNAME ̐ݒ
              NET subsystem ̏ (/etc/rc.d/rc.inet1  /etc/rc.d/rc.inet2)
              /etc/rc.d/rc.font      (JX^EXN[tHg̃[h)
              /etc/rc.d/rc.ibcs2     (CeEoCi݊dl)
              /etc/rc.d/rc.keymap    (JX^EL[}bv)
              /etc/rc.d/rc.local     ([Jݒ)

  gu邽߂ɁAlbg[N̐ݒ̑O (/etc/rc.d/rc.M ł̓z
  Xg̃Zbǧ) isapnp 𑖂点ǂm܂B
  Asound.o W[ɂ /etc/rc.d/rc.modules gݍޏꍇA
  isapnp  rc.modules ̌Ă΂Oɑgݍޕ肪ȂƎv
   /etc/rc.d/rc.S ̒ rc.modules Ă΂O
  /sbin/isapnp /etc/isapnp.conf
  (܂ /usr/local/bin/isapnp /etc/isapnp.conf)
  Ƃ̂悢ł傤BȂARedHatn(isapnpzz)̏ꍇ
  ́Arc.serial̑O rc.sysinit ̒œ̂ʂłB

  QlF JF  PnP-FAQ (Linux Plug-and-Play FAQ)
  <http://jf.linux.or.jp/JF/JF-ftp/euc/PnP-FAQ.euc>
  y󒍏Iz

  3.3.  J[l̃RpC

  J[l̃RpCOɁATEhhCoɑ΂ AWE Driver
  Extension KpKv܂BJ[l\[Xc[̒Ɋ
  awedrv extension Ă (
  /usr/src/linux/drivers/sound/lowlevel/ mFĉ) ꍇł
  awedrv \tgEFAAbvO[h邱Ƃł܂Bawedrv \[X
  fBNg̒̃CXg[@ɏ]ĉBvɃJ[l\[
  XɃpb`ĂCXg[EXNvgsKv̂łB

  CXg[EXNvgsŃJ[l\[Xc[AbvO
  [hꍇ͒ӂĉB̃CXg[EXNvg̓t@C
  ݂邩`FbN邾ŁAKvȃpb`Ă邱Ƃ͂܂B

  y󒍁z ̃XNvǵÃt@C݂邩ǂ
  `FbN(肪)삷̂ŁÃt@Cłɑ
  ݂(܂)ƕKvȃt@CɃpb`ĂȂAƂӖ
  łB
  y󒍏Iz

  J[l\[XAbvO[hAXNvgsO
  drivers/sound/lowlevel/awe_wav.c t@C폜悤AhoCX
  B

  ɁATEhT|[ĝ߂ɃJ[l̍\zKv܂B
  J[l̍\zɊւďmĂ邱Ƃ҂܂Aڂ
   Sound HOWTO  Kernel HOWTO BJ[l\[X̃fBN
  g(Ⴆ /usr/src/linux) ɈړÂ悤ɂ܂B

       # make config

  ܂ make menuconfig 邢 make xconfig Ƃ܂Bɒʏʂ
  J[l̐ݒ܂BʂɂȂ̃VXeɍ킹AĊ
  ͂ȃJ[lCN邽߂ɂ̋@g܂傤BTEhhC
  o[_uW[ƂăCXg[ (PnPJ[h̏ꍇ͕K
  {ł)ȂA(ƂȂ͂ł傤) "Enable loadable
  module support" ŕK Y ƓĂB

  ƂŃTEhJ[hT|[g邩ijǂ₳
  ܂B PnP J[hł͂Ȃꍇ́AY ܂ M ̉𓚂Ă\܂
  B PnP J[h̏ꍇ́AW[ɂ邽߂ M ƓKv
  B PnP J[h̏ꍇ́ATEhJ[hT|[gW[ƂăR
  pCKv܂ÁAPnP J[h̓W[[h
  OɏȂ΂ȂȂłB

  L̎ɂ Y ƓAȊOɂ͑S N ƓKv܂B

  ______________________________________________________________________
  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/?]
  ______________________________________________________________________

  Ō̂̂ۂ Wave Table VẐ߂̂̂łBȊO
  OSS/Free TEhhCo SB 16 IvVłB

  ɃTEhJ[h I/O |[gݒ肷Kv܂BqgƂ
   isapnp.conf t@CȂ炻ĉB̏ꍇ͉L̃f
  tHgl OK łBJ[lRtBO[VXNvg̃f
  tHgl͂߂Ȃ̂ŒӂĉB( SBC_IRQ  SB_MPU_BASE 
  ĺAقƂǂ̃J[hɂ͕sKƎv܂)

  ______________________________________________________________________
  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]
  ______________________________________________________________________

  ł̓J[l̍č\z܂傤BDebian ̃[U kernel-package
  gׂłB̃pbP[ẂADebian pbP[WCXg[
  ̂Ɠ炢ȒPɃJ[l̃RpCł܂B/usr/doc/kernel-
  package/ ̃hLgBɂ̓qg܂F

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

  Ď̂悤ɂ܂B

       # dpkg -i /usr/src/kernel-image-2.0.29_custom.1.0_i386.d

   Linux fBXgr[V̏ꍇ́AVJ[lRpC
  WIȕ@ɏ]ĉB܂AL̂QYꂸɁB

       # make modules
       # make modules_install

  y󒍁zSlackware ̏ꍇA# make config (܂ menuconfig , xconfig)
  ̂Ǝ̂悤ɂ܂B

       # cd /usr/src/linux
       # make dep
       # make clean
       # make
       # make zlilo (J[l̃CXg[BLILO gĂꍇ)
       # make modules
       # make modules_install
       # depmod -a

  y󒍏Iz

  ڂ Sound HOWTO Kernel HOWTO B

  3.4.  u[g

  VJ[lCXg[̓u[gKv܂B(茳
  ɓ삷u[gfBXNpӂĂ) N邱ƂF܂
  B

  PnP J[h̏ꍇ́A(Oq̂悤)u[gXNvg̒ŁA邢͎蓮
   isapnp N邱ƁB

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

  TEhhCoW[ƂăRpĈł΁Â悤
  ăCXg[ł܂B

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

  ̌oȂƍlȂ(l񍐂󂯂̂łA
  ̐l AWE64  4096KB ̃ςłɂ炸A28672KB
  Ɓwoꂽxł) awedrv \tgEFÃAbvO[h
  A܂͉L̂悤
  /usr/src/linux/drivers/sound/lowlevel/awe_config.h t@CɃ
  ʂ`邩̉ꂩĂ݂ĉB

       #define AWE_DEFAULT_MEM_SIZE  4096   /* kbytes */

  \ȂǁAJ[lăRpCKv܂B(Ԃ
  W[̃RpCŏ\Ƃ͎v܂Amł͂܂)

  ꂪATEhW[IɃ[hƎvł
  B kerneld g (ꂪȂǂȂ 2.4 Ő܂) A
   /etc/modules (Debian ̏ꍇ) sound Ƃ 1sǉ邩A
  ͋NXNvg /sbin/modprobe -a sound Ƃǉ܂B

  4.  TEhhCõeXg

  4.1.  /proc/devices, /dev/sndstat

  TEhT|[gJ[lɑgݍ񂾏ꍇ̓u[gɁALpȏ񂪓
  ܂B[_uW[ƂăTEhT|[gCXg[
  ꍇɁA𓾂ɂ(܂ # modprobe -r sound ŃTEhW[
  폜Ă)L̂悤ɂ܂B

       # 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)

  /proc zt@CVXe΁ATEhfoCXȉ̂悤ɂ
  TƂł܂B

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

   /dev/ ̉ɐfoCXCXg[mFĉB
   Sound HOWTO BăTEhW[̏Ԃ
  /dev/sndstat Œׂ܂B

  # 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

  o͂̂悤ɂȂȂꍇ́AԂݒɊԈႢ܂B
  ĂȂĂA``Ƃ͂'' ̃Xebvɖ߂SĂ`FbN
  ĂB

  4.2.  Raw I[fBIfoCX̏o

  *.au t@C(Sun [NXe[V)܂ raw Tvt@C
  ȉ̂悤ɓ͂܂B

  *.au t@C̏ꍇF

       # cat bell.au > /dev/audio

  sample t@C̏ꍇF

       # cat sample > /dev/dsp

  I[fBIfoCX 0: Sound Blaster 16 (4.3) oRăt@C̓e
  锤łB

  4.3.  OPL-2/OPL-3 VZ̏o

  TEhJ[h MIDI t@Ct邽߂ OPL-2/OPL-3 FM VZ
  gꍇ́Aplaymidi ƂvOĉB(t^̃\[X
  ̍Q) ȉ̂悤ɂ܂B

       # playmidi -f dance.mid

  ܂

       # playmidi -4 dance.mid

  O҂ OPL-2 A҂ OPL-3 MIDI łBTEhɊւĂ肵
  ̂ł΁Aplaymidi ȂŉB FM VZ̉
  ǂȂ̂łB

  OSS/Free Sound Driver ĂȂƂ΁A(\tgEFAV
  ZƂ͔rɂȂȂقǒႢ) ̃NIeBEȂ̂łBA
  Ȃ SB AWE Ă邩 AWE Sound Driver Extension ŃEF[u
  e[ű@\ĝłB悩ł˂B

  4.4.  EF[ue[uVZ̏o

  AWE Driver Extension ɂ EMU 8000 EF[ue[uVZg߂
  ʂȃc[Q (awesfx) tĂ܂BŏɃJ[h Sound Font
  Bank [hKv܂BROM TvĝłĂI
  CXg[ς݂ Windows (̃fBXN̒)t@Cł
  Bt@C̍Ōオ *.sfb ܂ *.sf2 ̃t@CTĉB

  ROM Tv SYNTHGM.SBK Ń[hł܂Bۂ̃Tv
   SYNTHGS.SBK  SYNTHMT.SBK łB SAMPLE.SBK TvłB
  Sound Font Bank  ftp  WWW 肷邱Ƃł܂BEMŨz[
  y[WACreative Labs ̃EFuTCgKˁAChaos ̃TvTĂ
  ܂傤B͖{ɑf炵łB(AWE Driver ̃EFuTCgK
  `FbN邱)

  X^_[h GM (ROM) Zbg[hɂ͎̂悤ɂ܂B

  # sfxload -i synthgm.sbk

   SB AWE  MIDI t@Ct܂B

       # drvmidi dance.mid

  4.5.  ~LVO

  Cɓ̃~LT[vO肵gĂ݂܂傤Braw I[fBI
  ̃TvƂQ MIDI t@C𓯎ɃX^[gA~LT[̐ݒ
  Ă݂܂傤BƂtĂÂȒPȂ͂
  BȉɁAfoCXƂ炪ǂ̂悤ɌĂ΂Ă邩̈ꗗ
  B

     Yamaha OPL-3
        VZ ܂ FM

     AWE32 Driver
        VZ ܂ FM  (~LT[͍Ō̂Q炨݂ɕĂ
        ̂AꂩmĂ܂H)

     Sound Blaster 16 (4.13)
        PCM ܂ DSP

     PC Speaker (still alive)
        Spkr

  ~LT[̑̐ݒ CD-ROMiTEhJ[hɂȂĂ邩
   ܂jƁAꂼ̓̓Cɂ郁C{[A BassA
   TrebleA ^x\Ă܂Bǂ̃C^邩w肷邱
  Ƃł܂B

  4.6.  Raw I[fBIfoCX̃TvO

  قȂ鉹AႦ΁AڑĂ CD ROMAmic RlN^ɐڑꂽ}
  CNA line in RlN^ɐڑ\Ȃ́AȂǂ^邱Ƃ
  ܂B~LT[K؂ȃ|WVɐݒ肵ĉBtA
  t@Cɘ^ARaw I[fBIfoCXǂݍ݂܂BႦ΁A

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

  ̂悤ɂƁA̓foCXTbԘ^ĉt܂B

  4.7.  MIDI |[g

  ƂȂAMIDI |[gɊւĂ͂܂񂪂܂B

  5.  AWE hCo\tgEFA

  5.1.  sfxload

  sfxload c[gƃTEhJ[h DRAM ɃTv[h邱
  Ƃł܂BftHgł̓oNOŁAPoNP̃Tv
  t@Ĉ݃[hłƂƂɒӂĉBł sfxload
  synthgs.sbk ̌ŃTEhJ[h̗B̃Tv GS Tv
  BSound Font Bank ǉ[hꍇ́A-b IvVg
  BႦΎ̂悤ɂ܂B

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

  W[CXg[邱ƂɂAftHg Sound Font Bank
  IɃ[h邱Ƃł܂Bȉ̂悤ȍs /etc/conf.modules
  t@Cɒǉ܂B

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

  sfxload Ɋւڍׂ́AhLgB

  5.2.  drvmidi

  drvmidi vOŁAMIDI t@Ct邽߂ AWE hCogp
  邱Ƃł܂BR}ȟ MIDI t@Cw肵܂B

       # drvmidi waltz.mid

  drvmidi Ɋւڍׂ́AhLgB

  6.  t^

  6.1.  ǉ

     Linux Sound HOWTO
        ҁF Jeff Tranter, <jeff_tranter@pobox.com>

        ŏIo[WF v1.17, 4 August 1997

        Sound HOWTO ͂悭ǂŉB(sunsite.unc.edu ё̃TC
        gł܂)

        y󒍁z {ɖ|󂵂̂ JF ɂ܂B
        <http://jf.linux.or.jp/JF/JF-ftp/euc/Sound-HOWTO.euc>
        y󒍏Iz

        ɂ́ATEhT|[gt̃J[l̃RpCATEhfo
        CXɊւ鑽̗AAvP[VȂ̃f[^ʂɊ
        ܂Ă܂B

         HOWTO ́A Sound HOWTO ̕⑫łƍlĂ܂B

     Linux Sound Playing HOWTO
        ҁF Yoo C. Chung, <wacko@laplace.snu.ac.kr> ŏIo[WF
        v1.4, 13 May 1997

        y󒍁z {ɖ|󂵂̂ JF ɂ܂B
        <http://jf.linux.or.jp/JF/JF-ftp/euc/Sound-Playing-HOWTO.euc>
        y󒍏Iz

        Sound Playing HOWTO ǂނׂłBɂ͗lXȃTEhtH[
        }bgAvP[V̎gɂďĂ܂B

     AWE Driver FAQ
        ҁF Takashi Iwai ( ) <iwai@dragon.mm.t.u-tokyo.ac.jp>

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

        AWE hCõCXg[ Sound Blaster J[h̃EF[ue[
        uVZ̎gŖ肪鎞͂B

        y󒍁z䂳̃z[y[Wɂ AWE hCoȊOɂFXȃT
        Eh֘ApbP[WR܂BSB AWE pƂ_
        ͂߂ƂKłB{ FAQ 
        <http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/midi-ja.html> łB
        y󒍏Iz

     ISA PnP FAQ
        ҁF Peter Fox <fox@roestock.demon.co.uk>

        F
        <http://www.roestock.demon.co.uk/isapnptools/isapnpfaq.html>

        ISA PnP J[h̐ݒŖ肪鎞́Amb̖{(your book
        of wisdom)łB

     Kernel HOWTO
        y󒍁zɂ͂ Kernel HOWTO ̃|C^Ă܂B
        F {ɖ|󂵂̂ JF ɂ܂B
        <http://jf.linux.or.jp/JF/JF-ftp/euc/Kernel-HOWTO.euc>
        y󒍏Iz

  6.2.  \[X

     isapnptools

        ҁF Peter Fox <fox@roestock.demon.co.uk>

        ŏIo[WF 1.11
        y󒍁z1998N5݂̍ŐVo[W 1.15 łB
        y󒍏Iz

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

        pb`AoO񍐁ARg[ő鎞́Asubject ̍ŝǂ
        'isapnp' Ƃ isapnp@roestock.demon.co.uk ɑ
        ĉB

     awedrv

        ҁF Takashi Iwai ( ) <iwai@dragon.mm.t.u-tokyo.ac.jp>

        ŏIo[WF 0.4.2c
        y󒍁z1998N5݂̍ŐVo[W 0.4.2d łB
        y󒍏Iz

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

     Linux kernel

        ҁF Linus Torvald  ̐l

        ŏIo[WF _ł͂Ԃ 2.0.29
        y󒍁z1998N5݂̍ŐVo[W 2.0.34 łB
        y󒍏Iz

        F Linux ł鏊Ȃǂł :)

     OSS/Free
        ҁF Hannu Savolainen (Ƀ[oO
        <http://www.4front-tech.com/usslite> `FbNĉ).

        ŏIo[WF 3.5.5-beta1 Ă܂B
        y󒍁z1998N5݂̍ŐVo[W 3.9c łB
        y󒍏Iz

        F  Linux J[l\[XpbP[W̒

        F   <http://www.4front-tech.com/usslite> ܂ [bp
        ̃~[ <http://personal.eunet.fi/pp/voxware>.

  6.3.  isapnp.conf ̃Tv

  pnpdump ō ISA PnP RtBO[Vt@Cł́APnP J[
  h̃foCXɈ̃ZNVƂĕ\܂Bȉ̏o͗ł͈
  ̃J[h(TEhJ[h)ƁA̒̂S̘_foCXoĂ
  ܂B

  o  LD 0: Audio Device

  o  LD 1: IDE Device

  o  LD 2: WaveTable Device

  o  LD 3: Gameport Device

   LD 1 ͖ݒ̂܂܂ɂ܂B̓TEhJ[h IDE |[g
  ɂ CD ROM ڑĂȂłBȂ SB  IDE |[g
  Ȃ LD 1  Game |[gfoCXɂȂ LD 3 ͌Ȃł傤B

  ̃t@CɊւāAȏ̏(dvI) ``Ƃ͂'' ̍
  B

  ______________________________________________________________________
  # $Id: Soundblaster-AWE.sgml,v 1.5 2004/02/24 11:24:35 mdk 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)
  ______________________________________________________________________
  |ɍۂA Y <nakano@apm.seikei.ac.jp>ƁA Masayoshi
  Nakano <sx3m-nkn@asahi-net.or.jp>񂩂AhoCX𒸂܂B
  Ƃ܂B

