Next Previous Contents

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:

An exete mia karta PnP, 8a xreiasteite epishs:

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.


Next Previous Contents