SoundSystem prototype implementation

by gerph secret
macOS ◆ xterm-256color ◆ fish 162 views

After the talk I decided to try to throw together some parts of the SoundSystem module to see how much I could get done and to help me understand the interfaces enough to be able to give some feedback.

I didn’t get too far - there’s a lot to take in, and it was already late - but I’ve got the hardware registration and deregistration implemented (and enumeration, probably). I’ve implemented a stub module that just registers itself and handles the service calls.

In the process I’ve read more of the spec and understood how some parts of the system fit together.

The recording shows the system starting up and some commands being run. The system starts with the SoundSystem module and the SoundPyromaniac (the fake ‘device’ module, that registers with the equally fake SoundSystem module). In the recording debug for both modules is enabled, and service call dispatch debug is also enabled.

As I didn’t get a huge amount implemented, this is literally just demonstrating that some lists can be manipulated and service calls acted on… but it’s at least helped with understanding.

You can see that SoundPyromaniac starts up before SoundSystem, so it gets an error, and so goes dormant. Then SoundSystem starts, announces itself and SoundPyromaniac is registered. The reinitialisation of both modules is shown to (seemingly) do the right thing.