Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- static Message MessagePollResponse = new Message(DeviceAddress.CDChanger, DeviceAddress.Broadcast, 0x02, 0x00);
- static Message MessageAnnounce = new Message(DeviceAddress.CDChanger, DeviceAddress.Broadcast, 0x02, 0x01);
- static Message MessagePlayingDisk1Track1 = new Message(DeviceAddress.CDChanger, DeviceAddress.Radio, 0x39, 0x00, 0x09, 0x00, 0x3F, 0x00, 0x01, 0x01);
- static byte[] DataPollRequest = new byte[] { 0x01 };
- static byte[] DataCurrentDiskTrackRequest = new byte[] { 0x38, 0x00, 0x00 };
- static void ProcessCDCMessage(Message m)
- {
- if (m.Data.Compare(MessageAnnounce.Data))
- {
- if (announceThread.ThreadState == ThreadState.Suspended)
- {
- announceThread.Resume();
- }
- Debug.Print("iBus activated");
- }
- else if (m.Data.Compare(DataPollRequest))
- {
- /*if (announceThread.ThreadState != ThreadState.Suspended)
- {
- announceThread.Suspend();
- }*/
- Manager.EnqueueMessage(MessagePollResponse);
- Manager.EnqueueMessage(MessagePlayingDisk1Track1);
- Debug.Print("Radio polled");
- }
- else if (m.Data.Compare(DataCurrentDiskTrackRequest))
- {
- Manager.EnqueueMessage(MessagePlayingDisk1Track1);
- Debug.Print("Radio requested disk&track");
- }
- }
- static void announce()
- {
- while (true)
- {
- Manager.EnqueueMessage(MessageAnnounce);
- Manager.EnqueueMessage(MessagePollResponse);
- Thread.Sleep(30000);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment