Yamaha YMF7x4 Guide

Discussion about old sound cards, MIDI devices and sound related accessories.

Yamaha YMF7x4 Guide

Postby Tertz » 2016-5-15 @ 18:02

  Yamaha YMF7x4 Guide
  ~~~~~~~~~~~~~~~
  
  
  Contents
  
  Introduction
  1. General
   1.1. Basic features of YMF7x4 cards
   1.2. The comparison with other cards
   1.3. Drivers
   1.4. Games
   1.5. The work with DOS applications
   1.6. DOSBox FM paththrough mode
   1.7. The quality of sounding
   1.8. Several sound cards in the computer
   1.9. Fake "Yamahas"
   1.10. MIDI
   1.11. Music composing
  2. Problems and solutions
   2.1. Hardware which can cause problems
   2.2. Crackling
   2.3. Changeable noise
   2.4. The system hangs with the BSOD
   2.5. Resampling 44.1 -> 48 kHz
   2.6. Windows after reboot reverts volume level
   2.7. System freezing during MIDI playback on resourceful task
   2.8. No or reversed sound from CD
   2.9. No sound from LineIn on YMF744
   2.10. There are no 3D Wide regulators
   2.11. MIDI track's position change makes the music a mess
   2.12. After long computer work MIDI playing gets crackling
   2.13. More free RAM is wanted
   2.14. Sound from CD does not output on 4 channels
   2.15. There is no 4-channel output in Win2000
   2.16. Can not record to MiniDisc from card's S/PDIF
  3. Do it Yourself
   3.1. Hardware volume control
   3.2. The digital connection of YMF to SB Live
   3.3. The connection of CD to S/PDIF on XWave 6000
   3.4. Connecting 4 speakers to YMF724
  4. Other
   4.1. The table of PnP codes of YMF chips
  Links
  
  
  Introduction
  
  YMF7x4 (724, 744, 754) are the only common PCI sound cards with genuine OPL3 chip. With SB-Link they have good SB Pro compatibility in DOS. When have good codec they produce not bad sound via LineOut. Also these cards have 3D sound in Win9x games and good GM.
  This makes YMF7x4 cards interesting for DOS-Win9x retrogaming machines as universal solution. Also with these cards you may get quality SB Pro sounding on machines without ISA slots, like Pentium 4. And real OPL3 FM with DOSBox paththrough in WinXP on later CPUs.
  This guide is initially based on "YMF7x4 FAQ" by Andrey Revvo *, site by N.Shima & Vivas *, Vogons and other sources.
  For some links you'll need to use archive.org
  
  
  1. General
  
  
  1.1. Basic features of YMF7x4 cards
  
  YMF7x4 - PCI sound cards, based on Yamaha chips YMF724, 740, 744, 754. YMF cards, made by brands, are of close class to SB Live and Vortex.
  Features:
  - genuine OPL3 FM, SB Pro compatibility
  - 3D sound by Sensaura: DS3D, A3D 1.0, EAX 1.0 and 2.0
  - 73 DirectSound streams
  - 8 (724) or 16 (744/754) DS3D streams
  - DirectMusic hardware acceleration: less latency, DLS-1 up to 8 MB
  - 64 voices hardware assisted wavetable MIDI (GM/GS/XG)
  - 4-channel sound (YMF744, YMF754), only in Win9x
  - full duplex and simultaneous audio streams
  - S/PDIF for output and input
  - MPU-401 UART MIDI
  - AC97 standard
  
  System requirements:
  CPU: Pentium 133 for XG MIDI, Pentium II 300 for Sondius-XG
  RAM: 16 MB
  OS: Win95/98/ME/NT4/2000/XP, DOS, Linux, FreeBSD, BeOS
  Without MIDI effects and 3D sound YMF may to work on 486.
  
  YMF chips *:
  YMF724 (DS-1) - 2-channel sound, 64 MIDI voices, 73 audio streams, S/PDIF Out
  YMF740 (DS-1L) - cut-down version of 724: 32 MIDI voices, 41 audio streams, no S/PDIF Out. This chip is used in system boards and notebooks.
  YMF744 (DS-1S) - 4-channel sound + S/PDIF In + all features of 724
  YMF754 (DS-1E) - same as 744 + S/PDIF In recording without resampling 44.1->48 kHz (needs driver 2013 or later)
  YMF724 has variants: _,B,C,D,E,F. They differ by support of real DOS. For example, D-DMA on 440BX is supported only on E, F of 724. Also beware, that some cards have no SB-Link connector.
  FM part of YMF7x4 is based on YMF289 core *, not on YMF262 as original OPL3 of SB Pro.
  Cards: Genius Sound Maker 128XG (YMF724), Yamaha Waveforce 192 XG (YMF724), AOpen AW724, AW744 Pro, Labway XWave 5000 (YMF724), 6000 (YMF754), Guillemot Maxi Sound Fortissimo (YMF744), Minton SP401F (YMF724), Hoontech SoundTrack Digital XG (YMF754/YMF744), etc. ** Also there are many noname cards.
  
  YMF drivers include 8-bit 2 MB MIDI bank. By Power YMF utility * you may replace the standard bank to better 16-bit 4 MB bank.
  The codec (small square 7x7 mm chip) used on a card is important for sound quality, as noise level and AFC linearity strongly depend on it. The recommended codecs are STAC9708, STAC9704 by SigmaTel. Also look on the quantity of condensers, throttles, etc. parts which should be soldered, as some cards have low quality.
  Codecs:
   SigmaTel:
  STAC9700 - all features of 9704, but is noisier
  STAC9701(03) - no additional features
  STAC9704(07) - 3D-Wide (3DW), LNLVL_OUT, low noise
  STAC9708(11) - 3DW, SDAC, LNLVL_OUT/SDAC_OUT, the most quality codec with low noise (used on SB Live 5.1, MX300)
  STAC9721(23) - 3DW, LNLVL_OUT (used on SB Live Platinum)
  STAC9744(45) - 3DW, LNLVL_OUT
   Texas Instruments:
  TLC320AD91 - no additional features, crackling on recording with some system boards
   Avance Logic:
  ALC100 - 3DW, LNLVL_OUT
   AKM (Asahi Kasei Microsystems):
  AK4542 - 3DW, LNLVL_OUT
  AK4543 - 3DW, LNLVL_OUT
  AK4540 - no additional features
   Yamaha:
  YMF730
  YMF752 - 3DW, LNLVL_OUT
   Winbond:
  W83971d - 3DW
   ESS:
  ES1918S - low noise
   Wolfson Microelectronics:
  WM9701A
  There is the list of which codecs are used in different YMF cards *. Take into account, that different samples of the same manufacturer's model may to have different codecs.
  YMF7x4 chips have no regulators of timbre or equalizer. But some codecs support this and card's vendor drivers may allow this. For example, Genius Sound Maker 128XG has it on its 1040 drivers.
  
  1.2. The comparison with other cards
  
  General: The main advantage of YMF7x4 among PCI cards is real OPL3. The cards without hardware FM have it much worse. SB-Link allows higher games compatibility in real DOS than other ways. Cards made by serious brands have better sound quality than many models of YMF cards. Newer drivers of other cards might to have better later games support.
  OPL3-SAx (like YMF719) - much more limited 3D sound, higher CPU load, no hardware assisted MIDI, sound quality is a little worse, issues with MPEG 48 kHz. Unlike 7x4, they often have wavetable header and WSS compatibility.
  SB Live - better EAX support, lesser CPU load, 32 hardware DS3D streams. Higher games compatibility because of drivers and hence less issues with 3D sound. Some people, using headphones, like Sensaura's 3D effects more.
  Diamond MX300 (Vortex 2) - better A3D support, has A3D 2.0. 16 hardware DS3D streams. Worse MIDI.
  Turtle Beach Santa Cruz (CS4630) - another Sensaura based, but with Virtual Ear in the bundle and ZoomFX. Has equalizer. 32 hardware DS3D streams.
  Philips Seismic Edge PSC705 (SAA7785) - QSound based, 5.1 speakers, 64 hardware DS3D streams, lesser CPU load, better reverb effects, strong HQ amplifier.
  M-audio Revolution 7.1 (ENVY24) - Sensaura based. 24 bit/96 kHz, good SRC to 44.1, higher sound quality. Higher CPU load with 3D sound in games. No A3D 1.0 support.
  
  1.3. Drivers
  
  Win9x use VxD drivers. WDM are for Win98/2000/XP.
   Features in different OS:
  Win9x/ME: all with VxD;
  WinNT4/2000: no 3D sound, no DOS support, no Sondius-XG, no 4-channel sound;
  WinXP with native driver: basic play/record, FM, no XG MIDI.
  Versions of VxD drivers for YMF724/740 are 10xx, for YMF744/754 are 20xx. WDM drivers for Win98/2000 are: 21xx for YMF724, 22xx for all 724/744/754. WinNT4 drivers are ver1xxx-ver7xxx, where version is written by 2 last digits (so ver1235 is newer than ver6018). XP drivers are 5xxx.
  Meaningful changes:
   VxD:
  1023: MMX is not required still
  1031: less CPU load
  1040: support of EAX 2.0 and DirectX 7, the best version for quality MIDI
  2008: the last version for quality MIDI on YMF744/754
  2013: support of DirectX 7
  2020: the last version
   WDM:
  2220: support for Win2000
  2228: support of DirectX 8
  2230: the last with wavetable bank * which work in XP
  5244: support for WinXP, no FM
  5245: was corrected the bug with Win2000, the last version.
  VxD drivers 2013 and above have some crackling in MIDI, while 2004, 2005, 2008 sound good. Driver 2020 has no 4-channel mode, but this may be fixed by registry editing or by Power YMF. All WDM drivers tend to have issues with MIDI: chorus plays with a noise, crackling caused by overload, levels of effects are too high.
  For games it's better to use the latest VxD drivers, - 2018 and later. For VxD driver you may install Sensaura update *, - solves issues in later games like Thief 2.
  As there is no support for A3D 2 and A3D 3 in drivers, you may use A3D->DS3D wrapper * to get partial functionality: positioning, occlusions, geometrical reverb, but not wavetracing and early reflections. Probably better support, including early reflections, is possible by wrapper A3D-Live **.
  DOS driver 3.16 has dsdma TSR (needs emm386) which is useful on systems without D-DMA and SB-Link. YMF754 is supported since 3.12. DOS drivers use dos4gw which is not in their package.
  For Win7 32-bit there is unofficially adopted XP driver 5244 *. It has no FM support. For 64-bit OS there is no driver still.
  For Linux there are 4Front drivers (commercial and trial) * and freeware ALSA drivers *. Since 2.2.16 the drivers are inside the distribution. In kernel 2.4.3-20mdk (Mandrake 8.0) there is alsa 0.5.10. FreeBSD 4.1-RELEASE has the driver for Yamaha DS-1, - you only need to add into config: device pcm.
  
  1.4. Games
  
  YMF7x4 are HSP with 3D sound by Sensaura algorithms. They support APIs: DirectSound3D, A3D 1, EAX 1, EAX 2.
  CPU load with 3D sound is close to Vortex 1 on Pentium II: 5-10% with DS3D **, while EAX and A3D should rise it. On-board YMF chips like 740 may give higher CPU load.
  Using of newest drivers is important for games, though sometimes older version works better. If 3D sound effects work wrongly or do not at all, or there is strange noise then try to update sound driver and install recent game's patches. Also you may try to disable secondary buffer: Control Panel > Yamaha DS-XG > DirectSound > Secondary Buffer - Off (for this some cards may need YMF7x4Utilities *).
  To play Quake 3 and other A3D 2 games allow A3D->DS3D wrappers.
  If you get low fps with using MIDI then disable Sondius-XG.
  Some games may work especially good on Sensaura cards. The example is Unreal, Unreal Tournament.
  Note: 3D sound positioning is better perceived when the sound is familiar and when it moves (or you are moving).
  Games with 3D sound support: ***
  
  1.5. The work with DOS applications
  
  For real DOS support these cards use 3 DMA modes: PC/PCI (SB-Link) *, Distributed DMA (D-DMA), TSR; and 3 IRQ modes (ISA, S-IRQ, INTA#). The most compatible is PC/PCI + S-IRQ, which available only with SB-Link cable connected to the system board. If the card's package had no SB-Link cable *, it can be made (2 socket IDC flat ribbon cable, 6 pins 2x3 2.54mm pitch) or bought separately; five wires of it are connected. TSR (dsdma utility) may be tried if other methods fail.
  Intel chipsets 430TX and 440 support D-DMA and PC/PCI *. Chipsets i8xx for Pentium 3 and IV (note: ASRock made 865G boards like 775I65G R3.0 which supported early Core 2) support PC/PCI by their southbridge, but not D-DMA *. On i8xx, without SB-Link and TSR, in real DOS you may get only FM. Some MBs have no SB-Link connector, but have solder pads for it, and if you'll solder there SB-Link header sometimes it may to work (at least, up to i845 MBs).
  TSR allows to get complete sound in DOS on systems without SB-Link and D-DMA *. There is a report about working by TSR in real DOS even on 486 computer with SiS496 chipset.
  As DOS driver has no official support for Pentium IV chipsets, its setupds.exe may don't recognise correctly possible card's settings. To solve this, setupds.exe may be patched *.
  Some of non-Intel chipsets with D-DMA support: ALi Aladdin4/5; SiS 5/6/7 *; AMD AMD-750 *, AMD-760 MPX; VIA Apollo VP2/VP3/MVP3, Pro-Plus/133, P4X266/333/400 *, KT133/266. There is no guarantee PCM will work by D-DMA with something not listed in DOS driver's manual, even if the chipset supports it.
  The example of settings for real DOS.
   In BIOS:
  IRQ5 = Legacy ISA
  DMA1 = Legacy ISA
  PCI Slot # (with the card) = IRQ11
  Check there is no other devices using same resources. To find resources conflicts in DOS may to help HWiNFO *. Perhaps, will be necessary to change/remove in BIOS assignment of IRQs and addresses of some ports, controllers, USB, VGA, etc. * During boot in the PCI devices table should be shown "Multimedia device - IRQ11" and IRQ5 has to be free. It needs to configure setupds and DOS boot *:
   In SETUPDS (v3.10):
  LEGACY AUDIO: Enable
  SB PORT ADDRESS: 220h
  DMA CHANNEL: 1
  FM PORT ADDRESS: 388h
  MPU PORT ADDRESS: 330h
  IRQ MODE: INTA#
  INTA# IRQ: 5
  DMA MODE: D-DMA
  D-DMA BASE: 8000h
   In AUTOEXEC.BAT:
  SET BLASTER=A220 I5 D1 T4 P330
  setupds.exe /s
  Some PCI slots (closer to CPU) allow changing of INTA# IRQ in SETUPDS on 440BX, while other slots in the same MB - not. To set SB IRQ with a slot of 2nd type you may by assigning IRQ to the slot in BIOS.
  Besides real DOS, the applications may also work in Win9x DOS box with resources' settings of "Yamaha DS-XG Legacy Sound System" in Device Manager **. In this mode you may also use GM MIDI with 4 MB bank from Power YMF which is close to DB50XG. SB Pro support in DOS box works also on i8xx boards. The problem is a lot of games do not work in Win9x DOS box *.
  The example of settings for Win9x DOS box. The SB resources are needed to be set in BIOS as "Legacy/ISA", and then assigned to Legacy Device:
  CODEC: 220h IRQ5 DMA1
  FM: 388h
  MPU401: 330h IRQ5
  If a game does not work by D-DMA, then try Win9x DOS box. Games which work by D-DMA on 440BX: Tie Fighter, Dune (run install.exe and make autoconfig befor the game's start). Din't work: Dune 2, Flashback. Games which did not work by SB-Link: Descent 2, Larry I VGA, Police Quest 3, Quarantine, Space Quest I VGA. Also some games have own sound problems: Dyna Blaster (needs <486 50 MHz), Dune 2 (may not to play the music with less free base RAM).
  Doom needs dos32a * to work by SB-Link. Run "dos32a.exe doom.exe". Same for Descent.
  Examples of potentially problematic games to test different methods of DOS support: Commander Keen 6, Descent 1 & 2, Doom, Duke Nukem 3D, Dune, Epic Pinball, Jill of the Jungle, Larry I VGA, Laura Bow: Dagger of Amon Ra, Mega Man X, Police Quest 3, Prince of Persia, Quarantine, Sam & Max - Hit The Road, Space Quest I VGA, Wing Commander 2.
  Besides PCI->ISA problems, it needs to mention that YMF7xx chips are not 100% compatible with SB Pro PCM as some ADPCM functions are not implemented (see SB Pro section in YMF datasheets), what causes issues in some games like Duke Nukem II. There is also a possibility that FM will play sometimes noticably differenly (lower pitch), than on SB Pro **, because YMF use 289 OPL, but not original 262.
  
  1.6. DOSBox FM paththrough mode
  
  DOSBox's OPL emulation is not perfect, so hardware OPL is better. You need DOSBox port with OPL paththrough mode. It's good to have official OS drivers with legacy support and system board with native 5V PCI *, as in other case the working is not guaranteed. It was reported YMF754 plays PCM on Z77 board (ASRock Z77M) and other YMF worked on H67 board. Probably it's common for YMF754/YMF744 (and maybe 724) cards to work on MBs with chipsets up to Intel 9 series. Also YMF cards may work at 40 MHz PCI.
  Win9x VxD drivers have FM and Yamaha's MIDI bank (which may be improved by Power YMF). Windows XP has native DS1 driver 5.2.3662.0 * with FM support, but without Yamaha's MIDI bank. While reference Yamaha's XP driver 5.12.01.5244 has no FM support (on some WDM drivers and systems legacy support with FM may be enabled by Power YMF). When using native XP driver you may to have Yamaha's MIDI by S-YXG50 *, and also check S-YXG50 VSTi *.
  After installing YMF driver, it needs to set "Yamaha PCI FM Synthesizer" as default MIDI in Control Panel > Multimedia > Audio. Then set FM volume level by MIDI volume regulator. Now FM may be checked by playing a midi file, for example from c:\windows\media\
  ykhwong's DOSBox port * has paththrough mode. Its versions are: 2014-01-27 - the last with good DOS games compatibility, 2013-11-17 - the last checked by the author to work in Win2000, 2011-05-25 - the last working in Win98. As the alternative there is DOSBox Megabuild6 *.
  DOSBox on modern computers typically allows the emulation performance of Pentium II, what is fast enough for almost any DOS game. It may be used even on old computers, as Pentium 3 1000 MHz gives level at 386DX 40 MHz (~9000 cycles) up to 486 50 MHz, depending on a game and emulator's settings. Generally, it's better to set cycles not higher than 19000 for games released befor 1994.
  As example was used ykhwong's port 2014-01-27, YMF754, P35 chipset, WinXP SP3 with driver 5.2.3662.0
  dosbox.conf with params:
  rate=48000
  blocksize=256 (for action games)
  sbtype=sb16
  oplmode=hardware
  oplrate=49716
  In Win7 blocksize less than 1024 may cause garbage instead of music, but to overcome this is possibly with setting rate=11025. If you'll want to use OPL emulation, it's important to set oplrate=49716 as other values give wrong pitch of some FM instruments (the example is Commander Keen 6, level 6; W+F10 for changing levels). As YMF works maximum with rate=48000 and there is no card natively supporting 49716 Hz, then will be SRC from 49716 what makes FM emulation sounding a little "noisy".
  Note: If you'll use hardware OPL with CRT monitor in 640x400 (this mode may be added to video driver's settings) and DOSBox params: output=surface, fullresolution=original, scaler=normal2x, - then your experience with 320x200 games will be close to real PC. In case refresh rate in fullscreen differs from which you want, then preliminarily set desktop's refresh to that value.
  Now it needs to initialize legacy FM. Every time after computer reboots, when you want to use DOSBox with hardware OPL, you need to run diagnose.exe (a single time) inside DOSBox, to press "enter" in this utility until you'll get to window with "Synthesized music" (you may test it there). diagnose.exe exists in "Sound Blaster 16/SB32/AWE32 Basic Disk for DOS" package *: unzip contents, run DOSBox and do the installation inside to get diagnose.exe. Without this FM initialization some games (Commander Keen 4, for a example) will have no FM sound.
  ykhwong's port allows to change between hardware OPL and emulation on the fly in its menu. This makes easier to notice the difference. Main FM emulation problem seems to be with percussions. For the comparison you need to set same volumes and provide ingame silence in the moment of FM device changing, so a music was initialized from the beginning. For checking the authenticity of FM emulation try, for example, Dyna Blaster.
  For some games you may prefer MT32 * or GM music. The etalon device for GM is SC-55 and you may use the close bank * or Sound Canvas VA (in Win7 and later) **, or to experiment with other MIDI banks **. Edit dosbox.conf with:
  mididevice=synth
  midiconfig=bankname.sf2
  You may also install S-YXG50 or other MIDI device driver (VirtualMIDISynth, BASSMIDI) with some bank, and associate it with DOSBox. It needs to type inside DOSBox: mixer /listmidi, and to check what is the number near the needed MIDI device. Then set:
  mididevice=default
  midiconfig=<device number>
  Alternative PCI cards with hardware FM are with chips: C-Media CMI8738 **, ForteMedia FM801, Avance Logic ALS4000, ALS300, ESS ES1938, ES1946, ES1969, Crystal CS4281, S3 Sonic Vibes, Aztech AZT3328, Riptide RACC010 *. The problems of OPL-compatibles, compared to genuine OPL, is commonly worse * sounding as composing was done for differing OPL chip. Sometimes their instruments sound annoyingly wrongly and it's hard to predict where you'll get it. Probably DOSBox's FM emulation is more correct than by these OPL-like chipsets.
  
  1.7. The quality of sounding
  
  Noise and AFC linearity depends on quality of: codec, built-in amplifier, scheme of amplifier's connection (nominals of components and difference from typical circuit), power supply of the card (analog rails). Typically the sound of YMF cards through built-in amplifier is bad. To get less noise and more linear AFC, it's recommended to switch the card to LineOut mode (by jumpers). In this case an external amplifier is required.
  Win9x has SRC settings in Control Panel > Multimedia > Advanced > Performance.
  You may also improve SRC by enabling unofficial "HiFi mode" in registry:
  HKEY_LOCAL_MACHINE\Software\YAMAHA\YMF724\
  ShowWaveOut = 01
  ShowMisc = 01 (not necessary for this situation)
  Then go to Control Panel > Yamaha Audio Config and set checkbox "HiFi Mode" in the new appeared "Wave Out" tab (sets SRC=1). This makes MIDI cymbals to sound cleaner and more softly, 22050 Hz and 44100 Hz files to sound better. In SpectraLab SRC distortion looks as many harmonicas with level up to -10 dB at frequencies over 10 kHz. The negative side is that setting "HiFi" may cause slowing down in games with 3D sound and issues with other PCI devices. Native Microsoft drivers have no this possibility.
  
  1.8. Several sound cards in the computer
  
  If you have several sound cards, you may connect YMF's LineOut to LineIn of other card or vice versa. Then it's possible to regulate the volume of sound from the connected card in Volume Control > Play section by LineIn regulator there. Also the sound of 2 cards may be mixed by Y-cable.
  To get the sound from YMF you need to configure it as default device in Control Panel > Multimedia > Audio.
  If after rebooting you get a hissing which can be removed by changing LineIn regulator position, then try to set this regulator a little below max level.
  It's better to leave legacy SB support only for one of your cards or to disable other cards in the Device Manager on time when you are using Win9x DOS box. Legacy functions of YMF may be switched off in Device Manager or by writing to the registry: HKEY_LOCAL_MACHINE\Software\YAMAHA\Driver\YMF724\LoadLegacy=00
  
  1.9. Fake "Yamahas"
  
  Unfortunately, there are many Chinese fake "Yamahas". You can buy a fake card on which will be written YMF724, 740, 744 or even 754. These fake cards are generally based on chips: C-Media CMI8738, ForteMedia FM801, Crystal CS4281. Chips are relabeled - original text is grinded away and replaced. Drivers of fake cards similarly contain software XG MIDI synthesizer Yamaha S-YXG. INF file of drivers installation is edited.
  The ways to identify a fake card:
  1) Visually:
  - Index: G, H, I, etc. which does not exist (like YMF724G, YMF724G-V). "YMF724G" is the most popular.
  - Some fake cards have no codec, unlike real cards.
  - The chip's size, though it's possible to mistake. CMI8738: 20x15 mm, FM801: 15x15 mm. YMF sizes (mm): 724/740 - 20x20, 744/754 - 14x14 or 20x14.
  2) By VendorID which is shown by BIOS during computer boot: Yamaha - 1073, C-Media - 13F6, ForteMedia - 1319.
  3) By drivers:
  - Installation shows "YMF724G Audio", "YMF740F-V Audio" or other non-existent model.
  - You can't install drivers for YMF cards (note: VxD drivers for 724 are 10xx, for 744/745 are 20xx).
  - With fake cards it's always installed software XG MIDI synthesizer. It allows to set the quantity of MIDI voices, for example, more than 64.
  - In the Control Panel of real cards there should be a red-blue icon labeled "Yamaha DS-** Audio Config". It opens a window with these tabs: About/Synthesizer/MIC Echo/../DirectSound3D (with Sensaura) etc.
  
  1.10. MIDI
  
  YMF7x4 support MIDI standards: GM, GS, XG.
  XG is the standard of MIDI files, offered by Yamaha and supported by some vendors (Korg). XG MIDI has rich choice of effects and instruments, what allows using standard bank to play modern music: ambient, house, techno, trance, etc. The other advantage of XG is that parameters of sounding like effects are written inside of MIDI file.
  YMF7x4 support XG-Level 1 with some additions (Sondius-XG, part of DB50XG extensions). The majority of XG MIDIs is written for DB50XG and SW60XG. Generally, they sound correctly on YMF7x4, if there are no QS300 instruments and some effects. The examples of good XG MIDI players are: vanBasco's MIDI Player * and Microsoft Media Player (it's part of IE5 and Win98SE).
  The standard bank of YMF drivers is 8-bit with mostly 22 kHz samples for constructing instruments by placement tables. Many instruments use the same samples, only with different effects, and some are the sum of 2 waves (AWM2). The standard 2 MB bank contains 676 instruments and special effects, and also 21 sets of percussions. From them 480 instruments, 9 percussions and 2 sets of special effects are available in XG mode, while others are used for GM and GS. The quality of standard bank is in the middle between software XG synthesizer S-YXG100 and board DB50XG *. DB50XG is better on percussions, especially. Compared to softsynth, YMF7x4 sound more softly and clearly, without stuttering and delays. Power YMF allows to use better 16-bit 4 MB bank with the quality close to DB50XG. In WinXP may be used software synthesizer S-YXG50.
  There is also software synthesizer S-VA (Software Virtual Acoustic) on the basis of Sondius-XG, allowing to play up to 256 monophonic voices of string and wind instruments (128 instruments in total). S-VA is compatible with VL synthesizer of tone generator MU120, but allows to play only one VL instrument at the same time.
  YMF have hardware assisted XG MIDI, so effects are mostly done in software. The CPU load during XG MIDI playing on Pentium II 300 is <5%, and <40% with Sondius-XG.
  YMF7x4 support effects: changing of attack times, rising, fading, frequency pitch of phases for attack and fading, resonance cutoff filter, modulation via phase, frequency, amplitude, octave changing, fine tuning of tone of separate notes. Overlay of 3 effects at the same time: chorus (8 types), reverb (8 types), variation (36 types). Effect "variation" includes: delays, stereo panning, celeste, karaoke, flanger, rotary speaker, symphonic, tremolo, phaser, distortion, overdrive, equalization, changing of panning, wah-wah, echo, additional variants of reverb and chorus. Each effect's type has manipulators, allowing to receive different sounding of the same effect *.
  Hardware opportunities of YMF chips: read/write in system memory with buffers processing, 256 buffers mixing per cycle; dynamic processing of buffers with modification parameters: amplitude, pitch of frequency (Doppler's effect), cutoff frequency; mixing of the main stereo buffer and 3 effects buffers (reverb, chorus, variation) for every voice (744/754 also have 2 mono rear channels); pitch change, LPF, gain; playing of 8/16-bit sample's region in the loop mode; synchronization of buffers with CPU; play buffers with loop in the WAV format. These operations are made independently from CPU in RAM by pieces-buffers (slots).
  
  1.11. Music composing
  
  To compose XG MIDI music you need programs:
  1) Sequencer.
  - Yamaha XG-Works - supports all XG cards. However it's not good, as does not work with MIDI keyboard emulators and has a peculiar style of working with tracks.
  - Cakewalk Pro Audio 8.x/Sonar (not 9.x as it has problems with Sondius-XG) - good choice, as it interfaces with XG-Edit most completely and works with virtual MIDI keyboard driver.
  - Any other...
  2) XG editor.
  - XG-Edit - the most complete XG editor
  - XG-Gold - not bad
  3) Multi-MIDI driver which allows to work simultaneously with one MIDI port from several applications and emulate serial/parallel connections.
  - Multi-Midi Driver - commercial, older versions 1.x work perfectly in the unregistered mode
  - Hoobis Loop-back Driver - has the problem of swallowing MIDI stream sometimes
  4) Power YMF - allows to use better 16-bit 4 MB banks: Extended (for improved XG sounding) and Dance (with modern percussions). Also it has banks editor by which you may create own MIDI banks from WAV files.
  Generally you may be sure that MIDI files created by you, will sound correctly on other XG compatible card on the level of timbre and effects. However, if you used fine-tuned or boundary values of effects' manipulators, - there may to be the difference. For example, in some MIDI files you may meet creaking caused by going out of bits grid limits at high Q-factor levels of resonant filters.
  For normal work you need to set the card to XG mode. It is possible by sending SYSEX message "XG RESET". In Cakewalk you should open SYSEX Editor and to load SYSEX bank xg-reset.syx, which you may find in the application's folder.
  XG Edit stores all changes of all controllers and internal XG parameters, and has functions to write them into SYSEX file which can be attached to MIDI file, so these parameters be played. If something changes, then these MIDI messages go to the synthesizer during the sounding in real time. Therefore usually XG editors are connected with sequencer simultaneously.
  If you want to use Sondius-XG, it's in banks 10480-10487 and 12528-12535 (proxy). Numbers of instruments are different, for example: 57, 63, 72, 75. Instruments have to be on the 1st track (1 part). There are definitions of Sondius-XG instruments for Cakewalk Sonar *
  Techno-percussions may be created by taking Analog Drum Kit and then changing the octave to lower one by XG-Edit. Then increase the average phase until the needed sound is gotten. For normal sound of cymbals you'll need to use the second Drum Kit, i.e. there will be 2 tracks with percussions in your MIDI. There are other methods also, for example, simultaneous sounding of several instruments. Power YMF has special Dance bank with "modern" percussions.
  To record MIDI to WAV without noise you may by methods: 1) connect your card's S/PDIF Out to other card's S/PDIF In, 2) YMF754 allows to connect own S/PDIF Out to own S/PDIF In.
  There are examples of MIDIs created on YMF7x4 card * and articles about composing with YMF7x4 *.
  
  
  2. Problems and solutions
  
  
  2.1. Hardware which can cause problems
  
  - S3 Trio64V+ : YMF can refuse to record from LineIn and microphone because of strong impulse interference, - drops of signal for a short time. Similar happens on some codecs (tlc320ad91).
  In Win95 may be tried to edit system.ini:
  [display]
  Busthrottle=1
  In Win98 and newer add to the registry:
  HKLM\Config\xxxx\Display\Settings\
  "BusThrottle" "On"
  "CommandDMA" "On"
  Note: The exact registry key depends on the video driver. Look at HKLM\Software\S3V\Display\ Also if you are using utilities for software CPU cooling (like CPU Idle), then it's better to disable them.
  - Nvidia Geforce 2 MX : On "Start" button appears a garbage. May be solved by removing MIDI bank of Yamaha (c:\windows\system\ydsxg.dat), what disables MIDI. For Vanta, TNT2 M64 use Detonator 2.x or 3.x (2.31, 3.68, for example), as later may cause the issue. Also try newer sound card driver.
  - Some system boards : Hang-up of a computer is possible during sound playback. Try to set in BIOS section "Chipset Features Setup", the parameter "16 bit I/O Recovery Time" to 2, 3 or 4. The card should start working, but some games may to work slower.
  - Epox 8KTA3 *: The YMF card may not work with VxD driver and be unstable with WDM.
  
  2.2. Crackling
  
  Crackling may be caused by too high maximum volume. Sometimes it's because driver allows to set the volume too high, when it was taken from another card. With VxD drivers you may fix it in registry: HKEY_LOCAL_MACHINE\Software\YAMAHA\Driver\YMF724\VolumeMax, or by YMF7x4Utilities.
  If you hear crackling during MIDI play, the other reason can be VxD drivers higher than 2008 or WDM drivers. If MIDI also gives stuttering, then computer's performance is below the needed and you may to turn off some of effects (variation, reverb, chorus) and Sondius-XG.
  
  2.3. Changeable noise
  
  Identify the type of noise: 1) when you move the mouse and HDD works, or 2) when the screen updates. Having the 1st type, try to mute unused inputs on the card like CD-Audio. Also the problem may to be in low quality of the card or bad power subsystem of the system board.
  With 2nd type may to be issues with video or sound card drivers, so you need to update them. Also you may try to change PCI slot, especially if it has shared IRQ.
  
  2.4. The system hangs with the BSOD
  
  It needs to check are the resources used by the card, shared with other device. Lavalys Everest 2.20 * may be helpful. Besides changing devices resources, may be useful to change PCI slot's IRQ in BIOS or change the card's slot. And it's better not to place the card in slave PCI slots.
  Also may be tried to update video driver, chipset drivers. Some non-Intel chipsets have IRQ routing patches.
  If nothing helps, then try to remove all PCI cards except sound and video and to switch off any unnecessary devices and controllers in BIOS. Windows re-installation also helps sometimes.
  If BSOD happens during MIDI play try to disable Sondius-XG in "Yamaha DS-XG Config" and the methods above.
  
  2.5. Resampling 44.1 -> 48 kHz
  
  The hardware resampling from 44.1 to 48 kHz may to work incorrectly on YMF7x4. If to listen 44.1 kHz music, then some sounds are vanished. But if you'll convert the music to 48 kHz by software like Cool Edit, then it plays normally.
  May be helpful to set "HiFi mode".
  Solution for Winamp: use SSRC plugin and WaveOut. Also in Winamp it's better to use in_mp3.dll from its version 2.22. Check other players like Foobar2000 *.
  
  2.6. Windows after reboot reverts volume level
  
  Use drivers 1036 and later.
  If does not help, try FaderController *
  
  2.7. System freezing during MIDI playback on resourceful task
  
  System may to freeze if during MIDI playback some resourceful task is run, like Photoshop or compilator's compiling. This happens on some configurations. It does not depend on the size of RAM and sound driver's version (for 1029 - 1040, at least).
  Helps BIOS update sometimes. For example, on Soltek SL-62B with bios M1 - freezed, with M4 - no.
  
  2.8. No or reversed sound from CD
  
  Check is the cable connected correctly.
  Sometimes signal wires L,R,G are messed up. Channels left and right can be reversed. Cards by A-Trend and Hoontech were reported having this. In this case connect L,R wires in reversed way.
  
  2.9. No sound from LineIn on YMF744
  
  Cards like AOpen AW744S can't have LineIn and rear speakers output active at the same time. Set the card to 2-channel mode in "Yamaha DS-XG Config".
  
  2.10. There are no 3D Wide regulators
  
  Not all codec have this possibility. Anyway, it is better do not use this as the sound becomes worse. Instead place the speakers farther.
  
  2.11. MIDI track's position change makes the music a mess
  
  When listening XG MIDI, after manual changing of track's position, the instruments may be confused and the music to become a mess.
  Some players, when the track's position is manually changed, send MIDI command "reset" which switches YMF7x4 to GM mode. For example, early Winamp versions had this problem.
  Anyway, it's not recommended to change the position during MIDI play as important MIDI commands may be passed and the sounding will become wrong.
  
  2.12. After long computer work MIDI playing gets crackling
  
  If MIDI is playing with Sondius-XG and a computer works for long, then on systems with <128 MB RAM may appear whistle and crackling. Rebooting helps. Also may to help a regular RAM defragmentation by Plaxoft FreeMem * utility, which increases the size of free RAM and the performance of applications.
  
  2.13. More free RAM is wanted
  
  There is 2 MB MIDI bank in RAM + tables, what takes in total 4 MB. You may disable MIDI and thus to free the memory. For this it's needed to rename or delete MIDI bank and then reboot. The bank for VxD drivers in Win9x: c:\windows\system\ydsxg.dat, for WDM in WinXP: c:\windows\system32\drivers\dsxgwave.tbl. Power YMF may be also used for this.
  
  2.14. Sound from CD does not output on 4 channels
  
  Pseudo 4-channel sound (front and rear are same) is possible on YMF744 from CD.
  In Winamp may be used plugins: Digital CD Player *, Winamp CD Reader Plugin *.
  
  2.15. There is no 4-channel output in Win2000
  
  The 4-channel sound may work for AC3 in Novac DVD/MP3 Jet-Audio. Use drivers 2234 or newer, driver for S/PDIF may also has the influence. 4-channel output using 3D sound API is not supported there.
  
  2.16. Can not record to MiniDisc from card's S/PDIF
  
  If you can not record the digital signal to MD from card's S/PDIF then check the card's volume settings. Also MD may need 44.1 kHz on input, while YMF724/YMF744 digital output is 48 kHz only. The solution is MD recorder with built-in resampler or external resampler.
  
  
  3. Do it Yourself
  
  
  3.1. Hardware volume control
  
Code: Select all
   Vol Up    ___ 1k        ___ 1k     To chip YMF754
   +--/ ----|___|---+-----|___|-----o 53(56)
   |               _|_
   |               --- 1000pF
   |               _|_
   |         ___ 1k        ___ 1k     To chip YMF754
   +--/ ----|___|---+-----|___|-----o 52(55)
   |Vol Down       _|_
   |               --- 1000pF
  _|_              _|_
  

  Outputs for YMF754 are specified for the square body chip, while for rectangular chip's variant are specified in brackets.
  For YMF724F-V and YMF740C-V: Up - 8, Down - 7. For 724 these outputs go also to the place of the not installed 8-legged chip (Up - 2, Down - 3).
  For XWave 6000: to the left of PCI-connector there is the place for not soldered 8-legged chip. Near to it there is text "U2", and in the center of that place for the not soldered chip is the text "93C46". It's better to solder to platforms of this not soldered chip: Up - 2, Down - 3.
  
  3.2. The digital connection of YMF to SB Live
  
  It's possible to connect YMF to SB Live with the digital connector. In this case, the quality of YMF card's codec and analog rail will be not important.
  For the connection of YMF to SB Live you will need to solder only a single wire to S/PDIF signal wire (this signal goes from the chip to the matching transformer) and to let the digital signal go via TTL level to SB Live's comb *.
  Then in "Yamaha DS-XG Config" to set S/PDIF "ON (Digital Sources Only)". Thus the codec and analog inputs of the card will be switched off and their noises will go away. The volume levels of MIDI Out and Wave Out should be set to maximum. In SB Live's drivers you need to switch on S/PDIF In.
  
  3.3. The connection of CD to S/PDIF on XWave 6000
  
  Put the card by components on top, so that speakers, mic, etc connectors were on the left side. You'll receive such picture:
   _
  |o|4 SPDIF Out
  |o|3 GND (ground)
  |o|2 GND (ground)
  |o|1 SPDIF In
  |_|
  Connect CD-ROM cable to the pins 1 and 2.
  
  3.4. Connecting 4 speakers to YMF724
  
  This opportunity depends on the codec. For example, STAC9708 has full-fledged 4 channels to get real 4-channel surround. But we simply have an additional independent stereo-channel to which someone should send the signal. YMF724 drivers do not support this and there is no software for this.
  For those who want 4 channels anyway, there is simple method - to connect to LNLVL_OUT. Then download from codec's vendor site the software for managing the additional output. All codecs (including STAC9708 when its surround-channel is not used) send to LNLVL_OUT the same signal as to main output, i.e. rear speakers will sound same as front ones. The only difference is the possibility of independent volume level for rear channels (STAC9708 also allows 3D-Wide). So this method does not give real surround.
  
  
  4. Other
  
  
  4.1. The table of PnP codes of YMF chips
  
  Device/VendorID/DeviceID/SubSystemVendorID/SubSystemID
  
  YMF724 / 0x1073 / 0x0004 / 0x1073 / 0x0004
  YMF724B / 0x1073 / 0x0004 / 0x1073 / 0x0004
  YMF724C / 0x1073 / 0x0004 / 0x1073 / 0x0004
  YMF724D / 0x1073 / 0x0004 / 0x1073 / 0x0004
  YMF724E / 0x1073 / 0x0004 / 0x1073 / 0x0004
  YMF724F / 0x1073 / 0x000D / 0x1073 / 0x000D
  YMF740 / 0x1073 / 0x000A / 0x1073 / 0x0004
  YMF740B / 0x1073 / 0x000A / 0x1073 / 0x000A
  YMF740C / 0x1073 / 0x000C / 0x1073 / 0x000C
  YMF744 / 0x1073 / 0x0010 / 0x1073 / 0x0010
  YMF754 / 0x1073 / 0x0012 / 0x1073 / 0x0012
  
  
  Links
  
   Info:
  http://www.ixbt.ru - about YMF7x4 and composing (do the search "7x4|YMF724|YMF744|YMF754")
  http://YMF724.da.ru
  http://www.scargo.com/nshim/ymf/
  http://www.yamaha-xg.com - about XG
  http://www.xgfactory.com
  http://www.3dss.com/drivers/utils.html
  http://www.sigmatel.com/datasheets/9704spec.pdf - STAC9704
   Forums:
  http://groups.yahoo.com/neo/groups/YamahaYMF7x4/info
  http://forum.ixbt.com/?id=12&name=yamaha+724%20|%20744%20|%20754%20|%207x4
  http://www.3dsoundsurge.com/cgi-bin/wwwthreads/postlist.pl?Cat=&Board=Forum20
   Drivers:
  http://www.yamaha.co.jp/english/product/lsi/download/
  ftp://ftp.dyu.edu.tw/pub/Hardware/stuff/multimedia/Yamaha/, /pub/Hardware/vendor/Labway
  http://ftp.isu.edu.tw/pub/Hardware/multimedia/Yamaha/
  http://www.3dsoundsurge.com/drivers/Yamaha/
  http://www.scargo.com/nshim/ymf/drivers.html - drivers of different vendors
  http://www.fcc.gov/oet/fccid/ - to identify the vendor of your card by FCC ID code
  http://cdgenp01.csd.toshiba.com/content/support/downloads/t820snd95.exe - drivers VxD 2020 from Toshiba
  http://xwave6000.narod.ru - WinXP 5244 driver with the fix for 4-channels and legacy
  http://www.driverguide.com/driver/company/Yamaha/Sound-Audio/index.html - press "See all" there
   Utils:
  http://www.sigmatel.com/downloads/st3dlnlv.zip - tool for surround sound management
  http://www.sigmatel.com/downloads/st3d.zip - another tool for surround
  http://www.upsystems.com.ua/support/alexmina/click.php?url=ac97mix.zip - AC97 Mixer, for codecs management
   XG MIDI:
  http://www.midi.ru/new_xg.php
  http://www.xgcentral.com
  http://xg.midi.ru
  http://xgmidi.wtal.de
   OPL:
  ftp://ftp.modland.com/pub/modules/Ad%20Lib/
  http://www.adlibtracker.net
  http://adplug.sourceforge.net
  http://fm801.kewl.org
  
  
  The questions which still need to be answered:
  - Does YMF FM works in XP on MBs with chipsets Intel 6x-9x? The last officially supporting XP was 7x chipset. The native XP driver 5.2.3662.0 maybe used.
  - A method to make FM working in Win7.
Last edited by Tertz on 2016-9-19 @ 16:47, edited 21 times in total.
Tertz
Oldbie
 
Posts: 796
Joined: 2015-1-22 @ 21:44

Re: Yamaha YMF7x4 Guide

Postby ZanQuance » 2016-5-15 @ 20:25

Nice guide, lot's of good info there.
Just one correction I see, the Aureal Vortex2 cards support more than 16 DS3D channels, they can handle 80 DS3D/96 DS sources with the Aureal drivers.
The 16 stated in most reviews were confusing the 16 channels in the A3D audio block as the entire cards limit.
All projects are currently on the backburner, but ARE being worked on.
User avatar
ZanQuance
Member
 
Posts: 350
Joined: 2015-1-01 @ 23:47
Location: Aureal HQ

Re: Yamaha YMF7x4 Guide

Postby Tertz » 2016-5-15 @ 22:23

ZanQuance wrote:Aureal Vortex2 cards support more than 16 DS3D channels, they can handle 80 DS3D


The principle limit is 76, but practically this is limited by drivers. In the beginning, when most review were done, the drivers allowed only 16 hardware DS3D streams. Later 2048 driver, according to ZD Audio Winbench, allowed on MX300 same 16 hardware DS3D streams. Previous driver 2041 allowed 32 hardware DS3D streams, but seems this appeared not optimum and 16 were returned. Only faster SQ2500 was allowed to keep 32 streams, but the classic Vortex 2 is the version by Diamond. Similar situation was on YMF, when some 20xx driver allowed 32 streams, but newer version switched back to 16 (VxD initially had 8 streams, I still need to find info about 1040 driver). I may speculate that this is related to chips performance, drivers optimizations and that games used not only DS3D, but also EAX or A3D; so to allow all 76 streams they'd need to make special driver for games which use DS3D only. So that 76 hardware DS3D streams of Vortex 2 are only on a paper.
Last edited by Tertz on 2016-5-19 @ 08:32, edited 1 time in total.
Tertz
Oldbie
 
Posts: 796
Joined: 2015-1-22 @ 21:44

Re: Yamaha YMF7x4 Guide

Postby ZanQuance » 2016-5-15 @ 23:35

Tertz wrote:
ZanQuance wrote:Aureal Vortex2 cards support more than 16 DS3D channels, they can handle 80 DS3D


The principle limit is 76, but practically this is limited by drivers. In the beginning, when most review were done, the drivers allowed only 16 hardware DS3D streams. Later 2048 driver, according to ZD Audio Winbench, allowed on MX300 same 16 hardware DS3D streams. Previous driver 2041 allowed 32 hardware DS3D streams, but seems this appeared not optimum and 16 were returned. Only faster SQ2500 was allowed to keep 32 streams, but the classic Vortex 2 is the version by Diamond. Similar situation was on YMF, when some WDM driver allowed 32 streams, but newer version switched back to 16 (VxD initially had 8 streams, I still need to find info about 1040 driver). I may speculate that this is related to chips performance, drivers optimizations and that games used not only DS3D, but also EAX or A3D; so to allow all 76 streams they'd need to make special driver for games which use DS3D only. So that 76 hardware DS3D streams of Vortex 2 are only on a paper.


There is no need to speculate as I have the original Aureal documentation on hand and have been using it extensively to write new drivers for the cards. I have a very good understanding of the chips now (I'm saving most the information for the new Website launch).
The SQ2500 AU8830B0 is not actually faster in audio channels than the MX300's AU8830A2 in which it would allow more audio channels to be piped through.
The drivers always support all 96 audio streams but there were bugs that misreported what was available, a few channels are also typically reserved for recording. The 80 DS3D channels are derived from the internal hardware Sample Rate Converters count, 64 in the WT block and 16 in the SRC block itself.
76 were stated as it reserves 4 SRC channels for input/recording sources.

The 12% performance gained in the AU8830B0 revision from the AU8830A2 is related to the Vortex audio Data Bus (VDB), it appears they corrected some VDB stalls that occur from various configurations when using the WT cell for directsound streams (reflections).

The AU8830 has always had 96 DMA channels and 4 sub buffers for each available. There are 64 dedicated channels feeding the WT block and 32 more channels that connect directly to the VDB bus. Each are dynamically routed so whatever WT voices aren't being used for midi can be used for DirectSound 2D/3D playback.
DS3D should report whatever the drivers aren't reserving, so most of the time it's 92 available DS channels and 76 DS3D.
I don't see the channel bug using the 2041 drivers, but the 2048 drivers had an issue noted in the readme that only 16 DS3D channels are reported when A3DVerb is enabled, and this was fixed in the 2050 drivers.
So this isn't a limitation of the card, just driver bugs. I also now know what causes the Stereo flipping and pop/crackling bugs, it's incorrect VDB chain routing and correlation settings in the mixer and Sample Rate Converter aggravated by DMA misses. They tried to multiplex the audio streams and that's why they flip sometimes or are completely reversed from the get go.

The AU8820 is what was limited to 8 3D audio channels and these were rendered in software, but it supported 32 for Direct Sound.
It should be noted that the MX300 is just as powerful as the SQ2500 and there should not be any preference to have the AU8830B0 over the AU8830A2 just for the newer chip (although I understand the feeling of newer is better).
All projects are currently on the backburner, but ARE being worked on.
User avatar
ZanQuance
Member
 
Posts: 350
Joined: 2015-1-01 @ 23:47
Location: Aureal HQ

Re: Yamaha YMF7x4 Guide

Postby Kamerat » 2016-5-16 @ 07:09

Modified the SETUPDS utility so I'm now able to use DDMA mode on a VIA KT133E/686B platform. Used the version on Yamaha's site and modified offset AEC0 and AEC1 from 96 05 to 86 06 (the PCI ID of the "PCI-to-ISA bridge").

Nice guide BTW. :)
User avatar
Kamerat
Oldbie
 
Posts: 856
Joined: 2014-3-14 @ 19:09
Location: Oslo, Norway

Re: Yamaha YMF7x4 Guide

Postby FaSMaN » 2016-5-16 @ 08:31

Kamerat wrote:Modified the SETUPDS utility so I'm now able to use DDMA mode on a VIA KT133E/686B platform. Used the version on Yamaha's site and modified offset AEC0 and AEC1 from 96 05 to 86 06 (the PCI ID of the "PCI-to-ISA bridge").

Nice guide BTW. :)


Can you upload the patched version somewhere, I have been having a terrible time getting it to work for several weeks now?
User avatar
FaSMaN
Member
 
Posts: 192
Joined: 2012-3-13 @ 06:52
Location: South Africa

Re: Yamaha YMF7x4 Guide

Postby Kamerat » 2016-5-16 @ 13:36

FaSMaN wrote:Can you upload the patched version somewhere, I have been having a terrible time getting it to work for several weeks now?

Here you go. Remember that it only makes any difference for systems using the VIA VT82C686A/B southbridge. I had to change the DMA mode to DDMA in the SETDUPDS utility and set DMA to 0 for get things going. :)
Attachments
SETUPDS.7z
(68.32 KiB) Downloaded 124 times
User avatar
Kamerat
Oldbie
 
Posts: 856
Joined: 2014-3-14 @ 19:09
Location: Oslo, Norway

Re: Yamaha YMF7x4 Guide

Postby PhilsComputerLab » 2016-5-16 @ 14:17

This write up comes handy :)

Got my first YMF7x4 card today:

But I'm confident the Vortex 2 will remain my go-to Windows 98 SE sound card :blush:

Image
User avatar
PhilsComputerLab
Hardware Mod
 
Posts: 6179
Joined: 2014-9-28 @ 03:33
Location: Western Australia

Re: Yamaha YMF7x4 Guide

Postby brostenen » 2016-5-16 @ 19:45

PhilsComputerLab wrote:This write up comes handy :)

Got my first YMF7x4 card today:

But I'm confident the Vortex 2 will remain my go-to Windows 98 SE sound card :blush:

Image


Nice.... I think you will be using it more than you plan. And perhaps recommend it in some of the Dos/Win hybrids that you are doing on Youtube.
You will be surprised that something this flimsy looking, can deliver that much. Personally, I have no Vortex of any kind. Nor have had one ever.

On the YMF-724... I am a warm speaker for this card, compared to SB-Live and other PCI cards. And still acknowledge that in some cases, an Vortex is actually a way better choice. Depends on what the need's are.

SB-Live are way inferior by design if you ask me. It's not a true Stereo card, and you really want to have an stereo card when doing some pre 99/00 build for gaming all the old games. Second. It has "real instruments" sound cabability (wavetable/midi/whatever you want to name and call it), just as well as the Live has. The thing that really sets it apart from the Live. Is that the YMF-724 has OPL core build into the XG chip.
Wavetable/midi combined with OPL3-Core in one package, SB-Link and in some cases XMS cabable setup in pure MS-Dos...

Yes... YMF-724 is one of the top 3 retro-cards when dealing with PCI soundcards. Can't go wrong on this card as a collection item or in multi soundcard build's.
Don't eat stuff off a 15 year old never cleaned cpu cooler.
Those cakes make you sick I tell.... (never tried though)

My blog: http://to9xct.blogspot.dk

001100 010010 011110 100001 101101 110011
User avatar
brostenen
l33t
 
Posts: 4689
Joined: 2014-5-07 @ 21:13
Location: Northern Jutland, Denmark.

Re: Yamaha YMF7x4 Guide

Postby HighTreason » 2016-5-16 @ 20:23

I love my 724, not only is it a great sound card in both DOS and Windows with the bonus of SPDIF output, but it allows me to quickly test things without having to power up the MU90R.

Someone ought to take this write-up and put it in a PDF with a linked Table of Contents. I would, but I'm doing other things right now and don't have the software on hand. It is a very good write-up.
User avatar
HighTreason
Oldbie
 
Posts: 1186
Joined: 2014-7-08 @ 14:50
Location: Hull, UK

Re: Yamaha YMF7x4 Guide

Postby Stretch » 2016-5-16 @ 22:50

Tertz, is it better for me to set Dosbox-Daum OPL and mixer to 48000 since my YMF-744 has a different clock than the YMF-724? Or do I leave the OPL rate at 49716?
PC1: Win98SE - Via Apollo Pro Mobo - Pentium II 233 - 256 MB - Voodoo 3 1000 - Soundblaster 32
PC2: Win98SE - ASRock 775i65G R3.0 - Celeron 2.2 GHz - 2048 MB - Geforce FX5700 - Vortex 2 - SBLive SB0100 - YMF744
Stretch
Member
 
Posts: 313
Joined: 2013-11-16 @ 00:57

Re: Yamaha YMF7x4 Guide

Postby FaSMaN » 2016-5-17 @ 09:29

Kamerat wrote:
FaSMaN wrote:Can you upload the patched version somewhere, I have been having a terrible time getting it to work for several weeks now?

Here you go. Remember that it only makes any difference for systems using the VIA VT82C686A/B southbridge. I had to change the DMA mode to DDMA in the SETDUPDS utility and set DMA to 0 for get things going. :)



Amazing thank you!!

Its a Jetway 993AN with a Via Apollo 133 Pro and a Via 82C596B so I am praying it will work XD , all other attempts have failed lol

Worse part is the modern case covers the ISA slot els I would have just fitted a SB16 and called it a day....
User avatar
FaSMaN
Member
 
Posts: 192
Joined: 2012-3-13 @ 06:52
Location: South Africa

Re: Yamaha YMF7x4 Guide

Postby j^aws » 2016-5-17 @ 16:29

Great info in this thread.

Tertz wrote:Games which were reported to don't work with YMF7x4 by SB-Link: Quarantine. Examples of potentially problematic games to try different methods of DOS support: Commander Keen 6, Descent 1 & 2, Doom, Duke Nukem 3D, Dune, Epic Pinball, Jill of the Jungle, Larry I VGA, Laura Bow: Dagger of Amon Ra, Mega Man X, Police Quest 3, Prince of Persia, Quarantine, Sam & Max - Hit The Road, Space Quest I VGA, Wing Commander 2.

I recall testing most of those games in the past, and they worked fine in pure DOS 6.22 with SB-Link. I'll check those out when I get sometime and post the results in my compatibility thread:
viewtopic.php?f=46&t=44742
j^aws
Oldbie
 
Posts: 665
Joined: 2013-2-02 @ 19:39
Location: UK

Re: Yamaha YMF7x4 Guide

Postby FaSMaN » 2016-5-17 @ 18:34

Kamerat wrote:
FaSMaN wrote:Can you upload the patched version somewhere, I have been having a terrible time getting it to work for several weeks now?

Here you go. Remember that it only makes any difference for systems using the VIA VT82C686A/B southbridge. I had to change the DMA mode to DDMA in the SETDUPDS utility and set DMA to 0 for get things going. :)


Still a no go for me, if I use the modified one it doesnt detect the sound card at all. The default one detects the sound card when I select D-DMA , I have to select DMA 0, I set the IRQ to either 5 or 7 when I run the test , 8-bit , 16-bit and FM works 100% , games like Wolfenstein 3d Flawless, Doom, duke nukem etc... says there is a DMA conflict :/ and just refuses to work at all.

But thank you for uploading, maybe it will help some one els?
User avatar
FaSMaN
Member
 
Posts: 192
Joined: 2012-3-13 @ 06:52
Location: South Africa

Re: Yamaha YMF7x4 Guide

Postby Kamerat » 2016-5-17 @ 22:33

FaSMaN wrote:Still a no go for me, if I use the modified one it doesnt detect the sound card at all. The default one detects the sound card when I select D-DMA , I have to select DMA 0, I set the IRQ to either 5 or 7 when I run the test , 8-bit , 16-bit and FM works 100% , games like Wolfenstein 3d Flawless, Doom, duke nukem etc... says there is a DMA conflict :/ and just refuses to work at all.

But thank you for uploading, maybe it will help some one els?

Try my modified SETUPDS utility with the DSDMA TSR with the drivers provided on the Yamaha website, I think it actually disables DDMA support for the VIA 82C596B as I exchange it's PCI ID with the one that belongs to the VIA VT82C686A/B. Also use the YMFIRQ utility to change the PCI IRQ to the same as the SB IRQ. You can find the YMFIRQ utility in the driver package provided here: http://vsynchmame.mameworld.info/ Just remember to load YMFIRQ after the SETUPDS utility and DSDMA TSR.

Maybe DSDMA is the way to go on your board instead on DDMA.
User avatar
Kamerat
Oldbie
 
Posts: 856
Joined: 2014-3-14 @ 19:09
Location: Oslo, Norway

Re: Yamaha YMF7x4 Guide

Postby Tertz » 2016-5-18 @ 21:43

Stretch wrote:is it better for me to set Dosbox-Daum OPL and mixer to 48000 since my YMF-744 has a different clock than the YMF-724? Or do I leave the OPL rate at 49716?


Param oplrate= relates only to OPL emulation. When you have oplmode=hardware, then oplrate= has no effect.

Now about mixer. To set rate=49716 has sense only when you are using OPL emulation. In case of oplmode=hardware, the param rate= relates only to PCM in DOS games, wich is either aliquot to 11025 or below with ugly quality. Thus, it's better if the final upsampling will be aliquot to 11025, hence to use rate=44100. If your card supports 44100 without SRC. In case it does not support this, then you'll need to test and choose between SRC to 48000 done by DOSBox (rate=48000) or by your sound card (rate=44100). Practically PCM sound in DOS games is not good, so you may don't notice the difference.
When you wish to use OPL emulation with oplrate=49716, then you need to try and choose between SRC done by DOSBox (rate=48000) or by your sound card (rate=49716). If for some games you'll think more erratic OPL play is lesser evil than SRC artifacts, then you are using oplrate=48000 and hence should be used rate=48000.
Tertz
Oldbie
 
Posts: 796
Joined: 2015-1-22 @ 21:44

Re: Yamaha YMF7x4 Guide

Postby archsan » 2016-5-23 @ 08:43

Tertz, thanks for the nice writeup there!

As for the STAC codec chips, is the difference in sound quality significant between the 9700 and the 9704/9708?
Sometimes the "sigma" logo is all you can perceive (barely) from photos since the print is very small and of low contrast. I'll ask the seller anyway, but still would like to know if the STAC9700-equipped ones are worth buying. Opinion?
"Any sufficiently advanced technology is indistinguishable from magic."—Arthur C. Clarke
"No way. Installing the drivers on these things always gives me a headache."—Guybrush Threepwood (on cutting-edge voodoo technology)
User avatar
archsan
Oldbie
 
Posts: 985
Joined: 2009-6-28 @ 15:30

Re: Yamaha YMF7x4 Guide

Postby Stretch » 2016-5-23 @ 11:29

Seems like the YMF7x4 cards all have bad quality, check these links out comparing RightMark Audio Analyzer tests:

PK-UG-X013
Waveforce192

compared to cards from the same period

SoundBlaster PCI128
Santa Cruz
montegoⅡ HomeStudio
PC1: Win98SE - Via Apollo Pro Mobo - Pentium II 233 - 256 MB - Voodoo 3 1000 - Soundblaster 32
PC2: Win98SE - ASRock 775i65G R3.0 - Celeron 2.2 GHz - 2048 MB - Geforce FX5700 - Vortex 2 - SBLive SB0100 - YMF744
Stretch
Member
 
Posts: 313
Joined: 2013-11-16 @ 00:57

Re: Yamaha YMF7x4 Guide

Postby Tertz » 2016-5-23 @ 13:00

Stretch wrote:Seems like the YMF7x4 cards all have bad quality


In SpeakerOut mode - yes, in LineOut - acceptable for games. Also some cards have mediocre codecs what makes the situation worse. YMF730 used on that two cards is probably worse than STAC9704. YMF7x4 cards, when were new, costed ~$20-30 - to wait from them same as from Santa Cruz which costed $100 is excessively. Also there was used 44.1 kHz, while SRC may be improved by settings or other version of drivers. The better example there is Hoontech SoundTrack Digital XG YMF754.

archsan wrote:As for the STAC codec chips, is the difference in sound quality significant between the 9700 and the 9704/9708?


This part of the guide is from Revvo's text, so I don't know. The difference should not be big.

Sometimes the "sigma" logo is all you can perceive (barely) from photos since the print is very small and of low contrast.


9704 is rather more common, at least at branded cards.

I'll ask the seller anyway, but still would like to know if the STAC9700-equipped ones are worth buying. Opinion?


Besides codec, it's important is that card branded or from nameless Chinese basement. So it's good to try identify the card by the pictures. Some cards look very similar to branded ones - these should be good ones, just sold by other brand or original OEM with some cost-cut. The example are Diamond MX300 and Aureal SQ2200 - the later just has no the chip for one of connectors. Or Genius 128XG and A301-G50 (nonbranded made by Labway) - the only difference seems to be in additional capacitor on retail 128XG.
Also is the card extremely cut-costed bare textolite or has elements like capacitors in a good quantity. Is it in well condition or with damages and rusted. Some such guesses and card's comparisions you may do without special knowledge of electronics (I have no it).
YMF7x4 are not rare cards. If there is no good model - wait a little or better dig what is selling. The price of $10-20 or lower is common. If the prices are higher - look for other selling place or more adequate seller. For common cards (YMF are such) I dealed only with local markets, though.
Last edited by Tertz on 2016-5-25 @ 11:27, edited 4 times in total.
Tertz
Oldbie
 
Posts: 796
Joined: 2015-1-22 @ 21:44

Re: Yamaha YMF7x4 Guide

Postby archsan » 2016-5-24 @ 08:37

@Stretch
At least the results you linked above say that the noise levels are "good". Also, could you explain/give example of how "poor IMD" ("intermodulation distortion" if I'm not mistaken) sounds like?

Anyways, considering it's not exactly a quality SB-pro compatible card I'm replacing (ISA Aztech SG NX something), I think I wouldn't complain to be honest. I do have the MX300 though. But it's the XG I'm looking for, it should satisfy me until I get one of the better MU-EX modules. I found some games really do sound better on XG than on Roland SC/GS.

@Tertz
OK, thanks for the advice. :) I found some very cheap YMF724F-V cards (all off-brand it seems) at about $4 per card local, so I'll give it a shoot anyway. There's also a YMF744B-R but it doesn't have the PC/PCI connector. I have an ASUS P2B with SB-Link which I'd like to try. I'll post some photos after I received the card.
"Any sufficiently advanced technology is indistinguishable from magic."—Arthur C. Clarke
"No way. Installing the drivers on these things always gives me a headache."—Guybrush Threepwood (on cutting-edge voodoo technology)
User avatar
archsan
Oldbie
 
Posts: 985
Joined: 2009-6-28 @ 15:30

Next

Return to Sound

Who is online

Users browsing this forum: Cyberdyne, Exabot [Bot] and 1 guest