Re: [Alsa-user] YMF744 and OPL3 FM Synthesis.(Long)

2002-10-03 Thread Bill Allen

On Wed, 2 Oct 2002, Philip Thiem wrote:

 --
 I have been working on and off for sometime trying to get OPL3 FM
 Synth (NOT the WaveTable Synth) to work under ALSA with a AOpen
 (I'm fairly sure) Ymf744B Card. I have even gone as far as writing
 some simple code to communicate directly with the /dev/dmfm
 (/dev/sound/dmfm) device and thus at least verify that the OPL3 was
 reachable.

This is a FAQ. I have the same card and same problem. Read on.

On Mon, 15 Jul 2002, Takashi Iwai wrote:


 unfortunately the hardware MIDI is not supported on ALSA.
 ymfpci doesn't provide a function like sb live or sb awe, which
 capable to change effects on each stream.

 i'm not sure how the windows driver is implemented.  possibly major
 part of midi synth is done on software.  or, possibly it uses more
 better dsp images. at least, the dsp image provided by yamaha has no
 (direct) MIDI functionality.


 Takashi





---
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
___
Alsa-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-user



[Alsa-user] YMF744 and OPL3 FM Synthesis.(Long)

2002-10-02 Thread Philip Thiem

--
I have been working on and off for sometime trying to get OPL3 FM
Synth (NOT the WaveTable Synth) to work under ALSA with a AOpen
(I'm fairly sure) Ymf744B Card. I have even gone as far as writing
some simple code to communicate directly with the /dev/dmfm
(/dev/sound/dmfm) device and thus at least verify that the OPL3 was
reachable.

My basic setup is the default asound startup script, modified to
modprobe oss modules and snd-opl3-synth.  The kernel driver is the
latest CVS as of The End of August, and the sbiload is the latest
cvs version.  When I am trying to get the OPL3 FM Synth to work,
I use a simple script to run sbiload with the std and drum patches
as follows:

/usr/bin/sbiload -p65:0 -v $1 --opl3 \
 /usr/share/alsa/banks/opl3/drums.o3 \
 /usr/share/alsa/banks/opl3/std.o3

Once the Patches are loaded, then I try to run pmidi and playmidi
to see if ALSA and OSS midi is now working.
pmidi -p 65:0 W2Humans.mid
and
playmidi [-r] W2Humans.mid
Both seem to hang for 3 minutes(the length of the clip) and
playmidi -r seems to indicate that indeed the player thinks
the midi file is playing.  No sound. :(

It seemed like the midi channel might be muted.  So I have double
checked to make sure all the mixer controls were turned on and up,
just in case.  I recall some previous post mentioning a synth, midi,
or a FM mixer control;  none of which I can manage to find, and the
ones I have found (master*,wave,pcm,external,cd,etc) are unmuted and
have been tested turned all the way up.

If anyone can help/share experiences it would be appreciated.
It seems that there is at least one person out there on this list
with a similar problem with the same card(first appearing in April),
and I was curious how far he had managed to get with the OPL3.

I have tried to include text/links of various pieces of information,
which might help in a diagnosis.  And a Test program for accessing
the direct FM device, in a last ditch attempt to make sure I could
talk to the OPL3 at least.  The error output I get is included.

Thanks

Philip Thiem

Loaded Modules
--
snd-seq-midi
snd-seq-oss
snd-seq-midi-event
snd-pcm-oss
snd-mixer-oss
snd-opl3-synth
snd-seq-instr
snd-seq-midi-emul
snd-seq
snd-ainstr-fm
snd-ymfpci
snd-pcm
snd-mpu401-uart
snd-rawmidi
snd-opl3-lib
snd-hwdep
snd-seq-device
snd-timer
snd-ac97-codec
snd
soundcore

/etc/modutils.conf(relavent)
--
###
#ALSA Core
###
# ALSA portion
alias char-major-116 snd
options snd snd_cards_limit=1 snd_device_mode=660 snd_device_gid=29
# OSS/Free portion
alias char-major-14 soundcore

###
#ALSA Drivers
###
# ALSA portion
alias snd-card-0 snd-ymfpci

# OSS/Free portion
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss

pmidi -l gives
--
 Port Client name   Port name
 64:0 External MIDI 0   MIDI 0-0
 65:0 OPL3 FM synth OPL3 Port

/proc/pci and /proc/ioports output
--
Bus  0, device   9, function  0:
  Multimedia audio controller: Yamaha Corporation YMF-744B [DS-1S Audio 
Controller] (rev 2).
IRQ 5.
Master Capable.  Latency=32.  Min Gnt=5.Max Lat=25.
Non-prefetchable 32 bit memory at 0xdb00 [0xdb007fff].
I/O at 0xdc00 [0xdc3f].
I/O at 0xe000 [0xe003].

dc00-dc3f : Yamaha Corporation YMF-744B [DS-1S Audio Controller]
dc00-dc01 : OPL2/3 (left)
dc02-dc03 : OPL2/3 (right)
dc20-dc21 : MPU401 UART
e000-e003 : Yamaha Corporation YMF-744B [DS-1S Audio Controller]
e400-e43f : 3Com Corporation 3c905 100BaseTX [Boomerang]
e400-e43f : 00:0a.0

/proc/asound/version
--
Advanced Linux Sound Architecture Driver Version 0.9.0rc3.
Compiled on Sep  4 2002 for kernel 2.4.19-xfs with versioned symbols.

/prov/asound/seq/clients
--
Client info
  cur  clients : 4
  peak clients : 5
  max  clients : 192

Client   0 : System [Kernel]
  Port   0 : Timer (Rwe-)
  Port   1 : Announce (R-e-)
Connecting To: 63:0
Client  63 : OSS sequencer [Kernel]
  Port   0 : Receiver (-we-)
Connected From: 0:1
Client  64 : External MIDI 0 [Kernel]
  Port   0 : MIDI 0-0 (RWeX)
Client  65 : OPL3 FM synth [Kernel]
  Port   0 : OPL3 Port (-We-)
  Port   1 : OPL3 OSS Port (-we-)