[FreeBSD] AWE 32
Gabor Zahemszky
ZGabor at CoDe.hu
2001. Ápr. 4., Sze, 12:10:30 CEST
On Mon, Apr 02, 2001 at 11:05:41AM +0200, Szemző András wrote:
> HI! Olvastam a regebbi subj-eket
> talaltam is awe32 -rol szolot, de vagy
> en vagyok nagyon hulye, vagy nemtom, de
> nem igazan tudtam beloni, pedig mar vagy
> 5x forg. kernel :((
> Amugy a FreeBSD nekem uj, 2 hete van, azota
> viszont nincs Linux, hehe...
> Lehet hogy zargatlak majd benneteket
> a hulye kerdeseimmmel meg, ha nem baj.
> ja 4.2 a BSD.
> tud v.ki help me?
Szoval mi a kerdes? Tamogatja-e es hogyan a 4.2-s FBSD az AWE-dat? A valasz:
az AWE reszet nem. Tehat ha beleteszed a kernel configba, hogy
device pcm
device sbc
(es a kartyad PnP-s), akkor latnia kell. Ha nem PnP, akkor annyi a teendod,
hogy
device sbc0 at isa? port 0x220 irq 5 drq 1 flags 0x15
-t irsz helyette. (Asszem.) A flags, mint az sbc man-jaban benne van, a
masodik DMA csatorna megadasara szolgal, a tobbi ertelemszeru. Ekkor lesz
egy jo kis SB16-od :-). (Ja, ``cd /dev ; sh ./MAKEDEV snd0'' is kell.)
Elvben hasznalhatnad a regi, Linuxbol atvett drivert is:
device snd
device sb0 at isa? port 0x220 irq 5 drq 1
device sbxvi0 at isa? drq 5
device sbmidi0 at isa? port 0x330
device opl0 at isa? port 0x388
device awe0 at isa? port 0x620
ezzel asszem ket baj van:
a) kellett valami options ISA_HACK vagy mi a szar, archivumban megtalalod,
mert megirtam regebben, hogy egyaltalan bele lehessen forditani a kernelbe
b) sajnos az awe-n (az AWE reszet!) osszesen harom porton kell
inicializalni:
0x620, 0xa20, 0xe20. Ezt mar nem tudom melyik ( <4.x? ) verzioban meg
lehetett tenni ugy, hogy bootkor a pnp-drivernek adtal mindenfele parametereket
(ezt a Sziszi olyan szepen megfogalmazta valami korabbi leveleben, hogy fujni
kellett, mint az 1x1-et - jo, O nem ezt irta :-), es ekkor mar latta az a
nyavalyas driver. Azonban ez a kellemes funkcio (pnp driver parametereinek
allitgatasa) megszunt tan 4.0-tol.
Mivel viszont a kutya sem inicializalja (vagy mit is csinal) ezeket a
portokat, csak a 620-t initelik, ettol az awe resze nem megy. (De a tobbi
igen!) A regi driver elonye az volt, hogy tudta kezelni az EMU8K-t, es volt
/dev/sequencer eszkoz (meg betoltheto hangmintak a kartya RAM-jaba,
ilyesmik), pl. nem timidity-vel kellett midi-t lejatszani (CPU!) /dev/dsp-n
keresztul, hanem a sajat kis awemidi nevu eszkozevel az AWE driver irojanak,
vagy a /dev/sequencerre kihegyezett playmidivel, amik joval kevesebb CPU-t
zabaltak.
No szoval:
SB16-kent kene latnod, az AWE resze helyett pedig pkg_add timidity++-XYZ
verzio, valamint valahonnan gyujtsel be GUS hangmintakat, es csinald meg a
timidity-nek megfelelo .cfg-fajeleket. (Nekem van a kozelemben GUS hangminta
is, igy konnyu volt az elet.) A .cfg-hez meg csak annyit, hogy ha felteszed
a kmid nevu KDE-s ketyeret (asszem kdemultimedia csomag szerves resze),
abban _keszen_ van a .cfg fajel is - persze nem oda teszi, ahol a timidity
keresi, meg persze atirod a hangminta konyvtarak helyet, es mar keszen is
vagy.
Kielegito volt?
ZGabor at CoDe dot HU
Ui: en ezert vettem nem tul reg Yamaha 724-es PCI-s kartyat, mert megszunt
az awe tamogatasa (meg fogytak az ISA slotok ...). De a nejem linuxos
(pfuj) gepen meg tegnap ejjel gyonyoru hangja volt
Ui2: tudja valaki, hogy a timidity++ rabeszelheto-e arra, hogy awe-s SF2-s
hangfajlokat hasznaljon? (Ja, ha igen, akkor nemi leirast ...)
-
#!/bin/ksh
Z='21N16I25C25E30, 40M30E33E25T15U!' ;IFS=' ABCDEFGHIJKLMNOPQRSTUVWXYZ ';set $Z ;for i { [[ $i = ? ]]&&print $i&&break;[[ $i = ??? ]]&&j=$i&&i=${i%?};typeset -i40 i=8#$i;print -n ${i#???};[[ "$j" = ??? ]]&&print -n "${j#??} "&&j=;typeset +i i;};IFS=' 0123456789 ';set $Z;X=;for i { [[ $i = , ]]&&i=2;[[ $i = ?? ]]||typeset -l i;X="$X $i";typeset +l i;};print "$X"
További információk a(z) BSD levelezőlistáról