Missing Module in IOMD ROM
David Pitt (102) 743 posts |
The current IOMD ROM 2011-10-28 11:56:11 is missing the SoundControl module. Using rpcemu 0.8.8-devel on Mac Lion. (It is present in Tom Walker’s dUI300-00.) |
Jeffrey Lee (213) 6048 posts |
That’s intentional. SoundControl was introduced in RISC OS 5 to provide an interface to the audio mixing hardware, for setting individual volume controls for the system audio, CD audio, line in, etc. But IOMD hardware doesn’t provide any user control over the mixing hardware. This means that if we included the module it wouldn’t provide any functionality – so it makes more sense just to not include it. The only problem is that the sound setup plugin in Configure expects SoundControl to be present, so currently won’t work on IOMD builds. I think the plan was that we would make the plugin revert to the old 3.5 code/interface if SoundControl wasn’t present, but I don’t think anyone’s made that change yet. This should also allow RiscPC users to select between the 8 & 16 bit sound systems (although I don’t think anyone’s tested if 8 bit sound hardware works under RISC OS 5). |
David Pitt (102) 743 posts |
What showed the issue was a SndSetup file in PreDesk containing several *MixVolume commands, that command being previously supplied by the SoundControl module. I have now deleted that file. Many thanks. |
Ben Avison (25) 445 posts |
It’s worth noting that there’s a separate implementation of !SndSetup for VIDC/IOMD machines – see http://www.riscosopen.org/viewer/view/castle/RiscOS/Sources/SystemRes/Configure2/PlugIns/SndSetupVIDC/ I can quite believe that the necessary work to !Boot hasn’t been done to ensure the correct !Configure plugin is used for the hardware in use – traditionally it has only supported different plugins for different OS versions, but now we have the same OS version running on radically different hardware. An alternative would be to merge the functionality of the two plugins. A nice little job for someone with a moderate amount of C and Toolbox experience. |