Here is a preliminary release of the (dual) YM-2203 player for Saturn, if anyone wants to try it.
This is a demonstration program. Press A to start playing a VGM, B to stop, C to play the other VGM. Up/down/left/right shows different register dumps on the screen (OPN or SCSP). The 1943 arcade track uses two OPNs, but doesn't use the SSG portion so I don't know if both of those are working. The noise generator is not emulated in any case.
This is the bare 68K driver. The sequence for starting a VGM is like this:
1) load driver at $5A00000
2) wait until the word at $25A0010C is 0 (this is the status word, 1 means busy)
3) read the dword at $25A00100 to find out the end address of the driver. Be sure to add $5A00000 to obtain the SH2 address.
4) write a VGM file to a free area in sound RAM (after the address calculated in step 3)
5) write the address (dword) of the VGM file to $5A00104 (subtract $5A00000 or mask off the upper bits first so it becomes a 68000 address)
6) write a word=1 to $5A00108
to stop: wait for the status word, then write a word=2 to $5A00108
Hopefully I got the instructions correct

The source code is also here, of course it is written in NOWUT