#ifndef __OPENSDK_API_H__ #define __OPENSDK_API_H__ typedef uint32_t (*func0)(void); typedef uint32_t (*func1)(uint32_t p1); typedef uint32_t (*func2)(uint32_t p1, uint32_t p2); typedef uint32_t (*func3)(uint32_t p1, uint32_t p2, uint32_t p3); typedef uint32_t (*func4)(uint32_t p1, uint32_t p2, uint32_t p3, uint32_t p4); typedef uint32_t (*funcx)(char *format, ...); #ifdef FEATURE_SUBSYS_PCM_RECORD_ENABLE #define audioRecordAdpcm ((func1)(*((uint32_t *)syscallTable + 659))) #define audioRecordG726 ((func1)(*((uint32_t *)syscallTable + 658))) #endif #define audioPlayMp3 ((func4)(*((uint32_t *)syscallTable + 657))) #define audioPlayWav ((func2)(*((uint32_t *)syscallTable + 656))) #define audioPlayPcm ((func3)(*((uint32_t *)syscallTable + 655))) #define audioPlayTts ((func2)(*((uint32_t *)syscallTable + 654))) #define audioAdjustVolume ((func1)(*((uint32_t *)syscallTable + 653))) #define audioIsReady ((func0)(*((uint32_t *)syscallTable + 652))) #define audioIsBusy ((func0)(*((uint32_t *)syscallTable + 651))) #define audioGetVolume ((func0)(*((uint32_t *)syscallTable + 650))) #define mountApp ((func2)(*((uint32_t *)syscallTable + 641))) #define setActiveApp ((func1)(*((uint32_t *)syscallTable + 640))) #define file_remove ((func1)(*((uint32_t *)syscallTable + 623))) #define file_fopen ((func2)(*((uint32_t *)syscallTable + 622))) #define file_fclose ((func1)(*((uint32_t *)syscallTable + 621))) #define file_fread ((func4)(*((uint32_t *)syscallTable + 620))) #define file_fwrite ((func4)(*((uint32_t *)syscallTable + 619))) #define file_fseek ((func3)(*((uint32_t *)syscallTable + 618))) #define file_ftell ((func1)(*((uint32_t *)syscallTable + 617))) #define file_rewind ((func1)(*((uint32_t *)syscallTable + 616))) #define file_fstat ((func2)(*((uint32_t *)syscallTable + 615))) #define file_truncate ((func2)(*((uint32_t *)syscallTable + 614))) #define fsDirOpen ((func2)(*((uint32_t *)syscallTable + 613))) #define fsDirClose ((func1)(*((uint32_t *)syscallTable + 612))) #define fsDirRead ((func2)(*((uint32_t *)syscallTable + 611))) #define fsStatFs ((func1)(*((uint32_t *)syscallTable + 610))) #define globalmapInit ((func3)(*((uint32_t *)syscallTable + 602))) #define globalItemSet ((func2)(*((uint32_t *)syscallTable + 601))) #define globalItemGet ((func1)(*((uint32_t *)syscallTable + 600))) #define slpManPlatVoteDisableSleep ((func2)(*((uint32_t *)syscallTable + 309))) #define slpManPlatVoteEnableSleep ((func2)(*((uint32_t *)syscallTable + 308))) #define slpManApplyPlatVoteHandle ((func2)(*((uint32_t *)syscallTable + 307))) #define GPIO_pinRead ((func2)(*((uint32_t *)syscallTable + 306))) #define GPIO_pinWrite ((func3)(*((uint32_t *)syscallTable + 305))) #define GPIO_pinConfig ((func3)(*((uint32_t *)syscallTable + 304))) #define PAD_setPinPullConfig ((func2)(*((uint32_t *)syscallTable + 303))) #define PAD_setPinConfig ((func2)(*((uint32_t *)syscallTable + 302))) #define PAD_getDefaultConfig ((func1)(*((uint32_t *)syscallTable + 301))) #define pwrKeyStartPowerOff ((func0)(*((uint32_t *)syscallTable + 300))) #define osKernelInitialize ((func0)(*((uint32_t *)syscallTable + 275))) #define osKernelGetInfo ((func3)(*((uint32_t *)syscallTable + 274))) #define osKernelGetState ((func0)(*((uint32_t *)syscallTable + 273))) #define osKernelStart ((func0)(*((uint32_t *)syscallTable + 272))) #define osKernelLock ((func0)(*((uint32_t *)syscallTable + 271))) #define osKernelUnlock ((func0)(*((uint32_t *)syscallTable + 270))) #define osKernelRestoreLock ((func1)(*((uint32_t *)syscallTable + 269))) #define osKernelGetTickCount ((func0)(*((uint32_t *)syscallTable + 268))) #define osTimerGetExpiryTime ((func1)(*((uint32_t *)syscallTable + 267))) #define osKernelGetTickFreq ((func0)(*((uint32_t *)syscallTable + 266))) #define osKernelGetSysTimerCount ((func0)(*((uint32_t *)syscallTable + 265))) #define osKernelGetSysTimerFreq ((func0)(*((uint32_t *)syscallTable + 264))) #define osThreadNew ((func3)(*((uint32_t *)syscallTable + 263))) #define osThreadGetNumber ((func1)(*((uint32_t *)syscallTable + 262))) #define osThreadGetName ((func1)(*((uint32_t *)syscallTable + 261))) #define osThreadGetId ((func0)(*((uint32_t *)syscallTable + 260))) #define osThreadGetState ((func1)(*((uint32_t *)syscallTable + 259))) #define osThreadGetStackSpace ((func1)(*((uint32_t *)syscallTable + 258))) #define osThreadSetPriority ((func2)(*((uint32_t *)syscallTable + 257))) #define osThreadGetPriority ((func1)(*((uint32_t *)syscallTable + 256))) #define osThreadYield ((func0)(*((uint32_t *)syscallTable + 255))) #define osThreadSuspend ((func1)(*((uint32_t *)syscallTable + 254))) #define osThreadIsSuspendAll ((func0)(*((uint32_t *)syscallTable + 253))) #define osThreadResume ((func1)(*((uint32_t *)syscallTable + 252))) #define osThreadSuspendAll ((func0)(*((uint32_t *)syscallTable + 251))) #define osThreadResumeAll ((func0)(*((uint32_t *)syscallTable + 250))) #define osThreadExit ((func0)(*((uint32_t *)syscallTable + 249))) #define osThreadTerminate ((func1)(*((uint32_t *)syscallTable + 248))) #define osThreadGetCount ((func0)(*((uint32_t *)syscallTable + 247))) #define osThreadEnumerate ((func2)(*((uint32_t *)syscallTable + 246))) #define osThreadFlagsSet ((func2)(*((uint32_t *)syscallTable + 245))) #define osThreadFlagsClear ((func1)(*((uint32_t *)syscallTable + 244))) #define osThreadFlagsGet ((func0)(*((uint32_t *)syscallTable + 243))) #define osThreadFlagsWait ((func3)(*((uint32_t *)syscallTable + 242))) #define osDelay ((func1)(*((uint32_t *)syscallTable + 241))) #define osDelayUntil ((func1)(*((uint32_t *)syscallTable + 240))) #define osTimerNew ((func4)(*((uint32_t *)syscallTable + 239))) #define osTimerGetName ((func1)(*((uint32_t *)syscallTable + 238))) #define osTimerStart ((func2)(*((uint32_t *)syscallTable + 237))) #define osTimerStop ((func1)(*((uint32_t *)syscallTable + 236))) #define osTimerIsRunning ((func1)(*((uint32_t *)syscallTable + 235))) #define osTimerDelete ((func1)(*((uint32_t *)syscallTable + 234))) #define osEventFlagsNew ((func1)(*((uint32_t *)syscallTable + 233))) #define osEventFlagsSet ((func2)(*((uint32_t *)syscallTable + 232))) #define osEventFlagsClear ((func2)(*((uint32_t *)syscallTable + 231))) #define osEventFlagsGet ((func1)(*((uint32_t *)syscallTable + 230))) #define osEventFlagsWait ((func4)(*((uint32_t *)syscallTable + 229))) #define osEventFlagsDelete ((func1)(*((uint32_t *)syscallTable + 228))) #define osMutexNew ((func1)(*((uint32_t *)syscallTable + 227))) #define osMutexAcquire ((func2)(*((uint32_t *)syscallTable + 226))) #define osMutexRelease ((func1)(*((uint32_t *)syscallTable + 225))) #define osMutexGetOwner ((func1)(*((uint32_t *)syscallTable + 224))) #define osMutexDelete ((func1)(*((uint32_t *)syscallTable + 223))) #define osSemaphoreNew ((func3)(*((uint32_t *)syscallTable + 222))) #define osSemaphoreAcquire ((func2)(*((uint32_t *)syscallTable + 221))) #define osSemaphoreRelease ((func1)(*((uint32_t *)syscallTable + 220))) #define osSemaphoreGetCount ((func1)(*((uint32_t *)syscallTable + 219))) #define osSemaphoreDelete ((func1)(*((uint32_t *)syscallTable + 218))) #define osMessageQueueNew ((func3)(*((uint32_t *)syscallTable + 217))) #define osMessageQueuePut ((func4)(*((uint32_t *)syscallTable + 216))) #define osMessageQueuePutToFront ((func4)(*((uint32_t *)syscallTable + 215))) #define osMessageQueueGet ((func4)(*((uint32_t *)syscallTable + 214))) #define osMessageQueueGetCapacity ((func1)(*((uint32_t *)syscallTable + 213))) #define osMessageQueueGetMsgSize ((func1)(*((uint32_t *)syscallTable + 212))) #define osMessageQueueGetCount ((func1)(*((uint32_t *)syscallTable + 211))) #define osMessageQueueGetSpace ((func1)(*((uint32_t *)syscallTable + 210))) #define osMessageQueueReset ((func1)(*((uint32_t *)syscallTable + 209))) #define osMessageQueueDelete ((func1)(*((uint32_t *)syscallTable + 208))) #define ostaskENTER_CRITICAL ((func0)(*((uint32_t *)syscallTable + 207))) #define ostaskEXIT_CRITICAL ((func0)(*((uint32_t *)syscallTable + 206))) #define ostaskENTER_CRITICAL_ISR ((func0)(*((uint32_t *)syscallTable + 205))) #define ostaskEXIT_CRITICAL_ISR ((func1)(*((uint32_t *)syscallTable + 204))) #define osIsInISRContext ((func0)(*((uint32_t *)syscallTable + 203))) #define osTaskSetTimeOutState ((func1)(*((uint32_t *)syscallTable + 202))) #define osTaskCheckForTimeOut ((func2)(*((uint32_t *)syscallTable + 201))) #define osTaskGetFreeHeapSize ((func0)(*((uint32_t *)syscallTable + 200))) #define printf ((funcx)(*((uint32_t *)syscallTable + 1))) #define apiVersion ((uint32_t *)syscallTable) #endif