Hi Lars,
> Driver subfunction 0 is not called by any particular
> DoSound() call. Rather, it is called by the interpreter at initialization
> time. The return value from that subfunction is used to load and lock the
> correct patch file. After that, the driver is queried for its resident
> size, and its memory block resized appropriately - none of which apply to
> us.
OK. Means that, once again, we don't know of any way the scripts
might use to distinguish between output devices.
[Joystick]
> The only subfunction implemented on IBM hardware is 0x0C. It is used to
> set some kind of value, but can also be used to get the current
> value (called when activating the menu system, so I'd guess it's
> some kind of movement constraint). Since this call is unimplemented by
> FreeSCI, it results in a sequence of calls that look like:
>
> (Joystick 12 30)
> (Joystick 12 0)
> (Joystick 12 30)
We might want to fix this for the sake of correctness some time.
> Similarly, it would seem that a return value is missing from one of the
> DoSound() calls. So I went to investigate that (still not done), and I
> found one thing: The SOUND_SET_MUTE call is not complete. It needs to
> handle three cases:
[...]
> (Sound SOUND_GET_MUTE) returns the current mute state
>
> The latter call is not implemented.
Added to the bug list. Thanks!
(Of course, this does not explain the use of invalid handles, but I
agree that this might be caused by other calls not having return
values).
llap,
Christoph
-- Attached file included as plaintext by Listar --
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.4 (GNU/Linux)
Comment: For info see http://www.gnupg.org
iEYEARECAAYFAjqGygQACgkQg4EAPSSqEf+aWwCbB0f7jJkVlvZEZLP6eFBpY1nY
xTQAoImMh39xvLsaOtDeBo6ZHkq3GS1v
=XGTk
-----END PGP SIGNATURE-----