Author Topic: SndDevSearch: a sound debugging tool  (Read 5864 times)

Offline Daniel

  • Gold Member
  • *****
  • Posts: 300
  • Programmer, Hacker, Thinker
SndDevSearch: a sound debugging tool
« on: November 18, 2018, 10:59:03 AM »
Hi everyone,

I just wrote a small utility to help figure out sound issues on (previously) unsupported Macs. It tells you what sound output drivers are currently active.

Here is the output on a Mac Mini.
Code: [Select]
SndDevSearch 1.1 starting up

1 sound output device detected
sdev #1
SubType 'awgc' Manufacturer 'appl' flags 0x8000000c name 'Built-in'

0 audio components detected

This is enough information to find the driver code in the System File, given knowledge on the Sound Manager and Component Manager (hint: look for a 'thng' resource which contains the strings 'sdev', 'awgc', and 'appl').

Here is the utility. May it be useful.

Offline whoisthisguy

  • Enthusiast Member
  • ***
  • Posts: 45
  • Nyaaa
Re: SndDevSearch: a sound debugging tool
« Reply #1 on: May 26, 2019, 03:51:37 AM »
Hi everyone,

I just wrote a small utility to help figure out sound issues on (previously) unsupported Macs. It tells you what sound output drivers are currently active.

Here is the output on a Mac Mini.
Code: [Select]
SndDevSearch 1.1 starting up

1 sound output device detected
sdev #1
SubType 'awgc' Manufacturer 'appl' flags 0x8000000c name 'Built-in'

0 audio components detected

This is enough information to find the driver code in the System File, given knowledge on the Sound Manager and Component Manager (hint: look for a 'thng' resource which contains the strings 'sdev', 'awgc', and 'appl').

Here is the utility. May it be useful.

Hey Daniel, did you successfully fixed the Mini's sound issues: low volume level, non-working volume slider and freeze while moving input volume slider?
=^__^=

Offline Daniel

  • Gold Member
  • *****
  • Posts: 300
  • Programmer, Hacker, Thinker
Re: SndDevSearch: a sound debugging tool
« Reply #2 on: May 26, 2019, 05:49:35 AM »
Not at all. I only have a vague understanding of what the problem is.

A sound component thinks it can talk to the mini sound chip, and is is only somewhat correct.

To fix this, we would need to either patch the old sound component or (more likely) make a new one.

Info on the mini sound chip might be found in opensource.apple.com, but it could definitely be found inside the mini's bootROM.

Offline whoisthisguy

  • Enthusiast Member
  • ***
  • Posts: 45
  • Nyaaa
Re: SndDevSearch: a sound debugging tool
« Reply #3 on: May 26, 2019, 06:31:44 AM »
Not at all. I only have a vague understanding of what the problem is.

A sound component thinks it can talk to the mini sound chip, and is is only somewhat correct.

To fix this, we would need to either patch the old sound component or (more likely) make a new one.

Info on the mini sound chip might be found in opensource.apple.com, but it could definitely be found inside the mini's bootROM.

Interesting! Do you know what extensions responsible for this? I disabled Apple Audio Extension, Sound Manager and still can hear the sound.
=^__^=

Offline Daniel

  • Gold Member
  • *****
  • Posts: 300
  • Programmer, Hacker, Thinker
Re: SndDevSearch: a sound debugging tool
« Reply #4 on: May 26, 2019, 06:41:03 AM »
It is in the system file itself.

Open it up in ResEdit or something. Look inside 'thng' resources until you find one that has all 3 of 'sdev', 'awgc', and 'appl'. Then read documentation on the Component Manager (find info inside Inside Macintosh: More Macintosh Toolbox) to read the 'thng' and figure out what resource the actual component code is in.

I did this a while ago, but it's been so long and I don't remember exactly which resource it was.

Offline whoisthisguy

  • Enthusiast Member
  • ***
  • Posts: 45
  • Nyaaa
Re: SndDevSearch: a sound debugging tool
« Reply #5 on: May 26, 2019, 07:15:09 AM »
It is in the system file itself.

Open it up in ResEdit or something. Look inside 'thng' resources until you find one that has all 3 of 'sdev', 'awgc', and 'appl'. Then read documentation on the Component Manager (find info inside Inside Macintosh: More Macintosh Toolbox) to read the 'thng' and figure out what resource the actual component code is in.

I did this a while ago, but it's been so long and I don't remember exactly which resource it was.

Thanks, Daniel! I will try to figure this out.
=^__^=