Пример #1
0
char *GetRecExtension(void)
{
  TRACEENTER();

  dword                 i;
  tToppyInfo           *ToppyInfo;
  tFWDATHeader         *FWDatHeader;
  static char          *RecExtension = NULL;

  if(RecExtension == NULL)
  {
    if(LoadFirmwareDat(&FWDatHeader, &ToppyInfo, NULL))
    {
      for(i = 0; i < FWDatHeader->NrOfToppyInfoEntries; i++, ToppyInfo++)
      {
        if(ToppyInfo->SysID == TAP_GetSystemId())
        {
          switch(ToppyInfo->RecExtension)
          {
            case 0: RecExtension = ".rec"; break;
            case 1: RecExtension = ".mpg"; break;
              default:
                break;
          }
          break;
        }
      }
    }
  }

  TRACEEXIT();
  return RecExtension ? RecExtension : ".rec";
}
Пример #2
0
word GetSysID(void)
{
  TRACEENTER();

  word ret = TAP_GetSystemId();

  TRACEEXIT();
  return ret;
}
Пример #3
0
bool KeyTranslate(bool Enable, void *EventHandler)
{
  tTMSTAPTaskTable     *TMSTAPTaskTable;
  dword                 i;
  tToppyInfo           *ToppyInfo;
  tFWDATHeader         *FWDatHeader;

  TRACEENTER();

  //Get toppy information
  if(LoadFirmwareDat(&FWDatHeader, &ToppyInfo, NULL))
  {
    for(i = 0; i < FWDatHeader->NrOfToppyInfoEntries; i++, ToppyInfo++)
    {
      if(ToppyInfo->SysID == TAP_GetSystemId())
      {
        RemoteType = ToppyInfo->RemoteType;
        break;
      }
    }
  }

  //Get the address to the TAP table
  TMSTAPTaskTable = (tTMSTAPTaskTable*)FIS_vTAPTable();
  if(!TMSTAPTaskTable)
  {
    TRACEEXIT();
    return FALSE;
  }

  //The curTapTask variable is not thread safe. Call InitTAPex() if this function will be called from a sub thread
  if(TAP_TableIndex == 0xffffffff)
  {
    dword                *curTapTask;

    curTapTask = (dword*)FIS_vCurTapTask();
    if(!curTapTask)
    {
      TRACEEXIT();
      return -3;
    }
    TAP_TableIndex = *curTapTask;
  }

  if(Enable && (TMSTAPTaskTable[TAP_TableIndex].TAP_EventHandler == (dword)EventHandler))
  {
    Original_TAP_EventHandler = (void*)TMSTAPTaskTable[TAP_TableIndex].TAP_EventHandler;
    TMSTAPTaskTable[TAP_TableIndex].TAP_EventHandler = (dword)&KeyTranslateHook;

    TRACEEXIT();
    return TRUE;
  }
  else if(!Enable && (TMSTAPTaskTable[TAP_TableIndex].TAP_EventHandler == (dword)KeyTranslateHook))
  {
    TMSTAPTaskTable[TAP_TableIndex].TAP_EventHandler = (dword)Original_TAP_EventHandler;
    Original_TAP_EventHandler = NULL;

    TRACEEXIT();
    return TRUE;
  }

  TRACEEXIT();
  return FALSE;
}