From: M. R. B. <mr...@0x...> - 2002-02-05 01:53:38
|
* Adrian McMenamin <ad...@mc...> on Tue, Feb 05, 2002: >=20 > Generally speaking the Maple reply string is: >=20 > "Maple reply (1, 1) cmd=3D9 =3D> -3" >=20 > Which I take to mean that the microphone just doesn't understand the "Get= =20 > condition" command (ie returns -3 meaning "Unknown command"). >=20 It may be that you must first use "set condition" before issuing a "get condidtion", or that "get condition" isn't supported at all. I see that you get 0x0f from the device information call ... this kinda corresponds to the values I have for the mic: GETSAMPLEDATA 1 MICCONTROL 2 AMPCONTROL 4 TESTMODE 8 Are these indicators of what interfaces the mic supports? That's highly likely, since 0x0f would be the bitwise OR of all of them. I don't know *anything* more about the format of the calls (I haven't started reversing more than just the basic stuff), but I'll have more later. It does seem that the mic supports 8Khz and 11Khz sampling, with 16-bit linear (signed) and 8-bit muLaw samples. Try sending these (32-bit value) on "set condition" calls and see what you come up with (and if "get condition" now works on the next frame). They'll probably fail if they need accompanying data. > The first four values of recvbuf are -3, 64, 65, 0. Meaning (I think):=20 > Unknown command reposnse sent to Port B from subperipherial 1 on Port B, = no=20 > further words in frame: all of which makes sense. (Stop me if I am going= =20 > wrong here!) >=20 Not to nitpick, but could you dump the values in hex form? It makes it a bit easier to pick apart the bits :P. > But this leaves me with a problem - viz: if it doesn't send data in respo= nse=20 > to this command what does it send it in response to?! >=20 I'll have more information later. M. R. |