FireBirdLib - Topfield TMS PVR TAP Programming Library
libFireBird.h
Go to the documentation of this file.
1#ifndef __FBLIB__
2 #define __FBLIB__
3
4 #define __FBLIB_RELEASEDATE__ "2020-01-02"
5
6 #define __FBLIB_VERSION__ __FBLIB_RELEASEDATE__
7
8 #define isTMS 1
9
10 // Use -DFB_DEBUG_FULL if you want to activate all debug-like functions,
11 // thus getting debugging and tracing information at runtime.
12 #ifdef FB_DEBUG_FULL
13 #define FB_DEBUG
14 #define STACKTRACE
15 #endif
16
17 // Use -DFB_DEBUG if you want to activate debug-like functions,
18 // thus getting debugging information at runtime.
19 #ifdef FB_DEBUG
20 // Call FBLIB's special check-and-log API wrapper functions.
21 #define FB_DEBUG_CHK
22 // Call LogEntryFBLibPrintf().
23 #define FB_LOG_ENTRY_LIB_PRINTF
24 // Make use of tracing functions.
25 #define FB_CALL_TRACE
26 #endif
27
28 #ifdef STACKTRACE
29 #ifndef FB_CALL_TRACE
30 #define FB_CALL_TRACE
31 #endif
32 #endif
33
34 #ifdef PC_BASED
35 #define inline
36 #define __attribute__(a)
37 #else
38 #include "tap.h"
39 #endif
40
41 #undef __USE_LARGEFILE64
42 #define __USE_LARGEFILE64
43 #undef _LARGEFILE64_SOURCE
44 #define _LARGEFILE64_SOURCE
45 #define _FILE_OFFSET_BITS 64
46
47 #include <sys/types.h>
48
49 #ifdef __cplusplus
50 extern "C" {
51 #endif
52
53 extern word ApplID;
54 extern dword TAP_TableIndex;
55
56
57 /*****************************************************************************************************************************/
58 /* Main */
59 /*****************************************************************************************************************************/
60 #define TAP_MAX 16
61
62 #define DIR_PROGRAMFILES "/ProgramFiles"
63 #define DIR_SETTINGS "Settings"
64
65 typedef enum
66 {
81
82 typedef enum
83 { //Toppy has been bootet by...
84 BOOT_FRONT_PANEL, //... pressing a front panel key
85 BOOT_REMOTE_CONTROL, //... a remote key
86 BOOT_TIMER, //... a timer
87 BOOT_FW_REBOOT, //... Firmware controlled reboot
88 BOOT_RESERVED_4, //... unknown. Possibly used by the front panel, but never seen
89 BOOT_POWER, //... an mains power failure.
90 BOOT_ANTIFREEZE //... an AntiFreeze reboot. Patched front panels only
92
93 typedef enum
94 {
103
104 //Firmware.dat structure
105 typedef struct
106 {
107 dword Magic; //0x12345678
108 dword CompileDate; //yymd
113 } tFWDATHeader;
114
115 typedef enum
116 {
121
122 typedef enum
123 {
127 RT_7260PLUS //Identical to RT_2100, except that the code for the red key is RKEY_F1
129
130 typedef struct
131 {
132 word SysID;
134 char Device [256];
135 char AppType [32];
138 bool EMMA;
140 bool PVR;
141 bool TAPs;
145 byte RecExtension; //0=.rec, 1=.mpg
146 byte unused2[18];
147 } tToppyInfo;
148
149 typedef struct
150 {
151 word SysID;
153 dword FWgp;
154 dword FWDate;
157 dword unused3;
158 bool Beta;
159 byte MD5 [16];
160 byte unused4 [32];
161 } tFWInfo;
162
163 #define LE16(p) (p)
164 #define LE32(p) (p)
165
166 #define XDATA //don't use XDATA on the TMS
167 #define TS_FILE_NAME_SIZE (MAX_FILE_NAME_SIZE + 1)//name and usage have changed: name[TS_FILE_NAME_SIZE] vs. name[MAX_FILE_NAME_SIZE + 1]
168 #define ATTR_PARENT 0xf0 //FindFirst/FindNext doesn't know about ..
169
170 #ifndef PC_BASED
171 extern char PrintNetBuffer[1024];
172 void PrintNet(char *puffer);
173 // Define the following override if you want to stop FBLIB
174 // intercepting TAP_Print() [i.e. printf() from TAPs]. Normally,
175 // FBLIB intercepts these messages to a local pseudo terminal.
176 // Without the interception, TMS directs these to an FTP debug
177 // socket.
178 #ifndef FB_NO_TAP_PRINT_OVERRIDE
179 extern int snprintf(char *, size_t, const char *, ...);
180 #define TAP_PrintNet(...) do { snprintf(PrintNetBuffer, sizeof(PrintNetBuffer), __VA_ARGS__); PrintNet(PrintNetBuffer); } while (0)
181 #define TAP_Print TAP_PrintNet
182 #endif
183 #endif
184
185 bool InitTAPex(void);
186 void InitTAPexFailedMsg(char *ProgramName);
188 dword FirmwareDatMJD(void);
189 void FlushCache(dword *pAddr, int Size);
190 bool FrontPanelEEPROMRead(word Address, byte *Data); //Only supported with a patched front panel
191 bool FrontPanelEEPROMWrite(word Address, byte Data); //Only supported with a patched front panel
192 bool FrontPanelGetPatch(byte *Version, byte *Type);
193 char *GetApplVer(void);
194 byte *GetMacAddress(void);
195 word GetSysID(void);
197 char *GetToppyString(word SysID);
198 dword GetUptime(void);
199 bool isIceTVToppy(void);
200 char *iso639_1(int OSDLan);
201 char *iso639_2(int OSDLan);
202 bool LoadFirmwareDat(tFWDATHeader **FWDatHeader, tToppyInfo **ToppyInfo, tFWInfo **FWInfo);
203 bool PutDevEvent(word Event, dword Param1);
204
205
206 /*****************************************************************************************************************************/
207 /* Audio / Video / OSD */
208 /*****************************************************************************************************************************/
209
210 //Forgotten keys
211 #define RKEY_Red RKEY_NewF1
212 #define RKEY_Green RKEY_F2
213 #define RKEY_Yellow RKEY_F3
214 #define RKEY_Blue RKEY_F4
215 #define RKEY_Option 0x10049
216 #define RKEY_White RKEY_Option
217
218 //In addition to the Service Status Mask defined in tap.h
219 #define SVCSTATUS_MASK_Audio 0x00010000
220
221 #ifndef TAP_ALPHA
222 #define TAP_ALPHA 255
223 #endif
224
225 #define _Clip(a) (a)>255 ? 255 : (a)<0 ? 0 : (a)
226
227 #define YUVR(y,u,v) ((0x2568*(y) + 0x3343*(u)) >>13) //0x2000
228 #define YUVG(y,u,v) ((0x2568*(y) - 0x0c92*(v) - 0x1a1e*(u)) >>13) //0x2000
229 #define YUVB(y,u,v) ((0x2568*(y) + 0x40cf*(v)) >>13) //0x2000
230
231 #define win_w(w) ((w) + 51)
232 #define win_h(h) (((h) / 22 + ((h) % 22 ? 1 : 0)) * 22 + 8)
233 #define win_l(h) ((win_h(h) - 8) / 22)
234
235 #define A1555(x) (((x)>>15)&0x01)
236 #define R1555(x) (((x)>>10)&0x1f)
237 #define G1555(x) (((x)>> 5)&0x1f)
238 #define B1555(x) (((x)>> 0)&0x1f)
239
240 #define A8888(x) (((x)>>24)&0xff)
241 #define R8888(x) (((x)>>16)&0xff)
242 #define G8888(x) (((x)>> 8)&0xff)
243 #define B8888(x) (((x)>> 0)&0xff)
244
245 #define ARGB2TMS(a,r,g,b) ((dword) (((a) ? TAP_ALPHA : 0) << 24 | (byte) ((r) * 8.2258) << 16 | (byte) ((g) * 8.2258) << 8 | (byte) ((b) * 8.2258)))
246 #define ARGBtoTMS(a,r,g,b) a*=0xff;r*=8.2258;g*=8.2258;b*=8.2258
247 #define TMStoARGB(a,r,g,b) a/=0xff;r/=8.2258;g/=8.2258;b/=8.2258
248
249 struct BMP_HEAD
250 {
251 byte id[2];
252 word size_l;
253 word size_h;
254 word reserved[2];
257 };
258
259 struct BMP_INFO
260 {
262 long width;
263 long height;
264 word plane;
268 long x_res;
269 long y_res;
270 long color;
271 long icolor;
272 };
273
274 typedef struct
275 {
276 word x;
277 word y;
278 word Width;
279 word Height;
282 byte lutIdx;
283 byte plane;
285 } tOSDMapInfo;
286
287 // directions
288 typedef enum
289 {
291 Y
293
294 typedef struct
295 {
296 byte unused1[4677];
300 word PID[64];
301 byte StreamType[64];
302 char StreamName[64][32];
303 word unknown1[64];
304 byte unused4[64 * 32];
305 dword unknown2[64];
306 } tAudioTrk;
307
308 typedef enum
309 {
315 } tPvrListType;
316
318 bool CaptureScreen(int BMPwidth, int BMPheight, byte *BMPPixelBuffer, bool bOSD, int Alpha);
319 void DrawOSDLine(word OSDRgn, dword Ax, dword Ay, dword Bx, dword By, dword Color);
320 void DrawScrollbar(word sbRegion, int sbX, int sbY, int sbHeight, int sbCurrent, int sbWindow, int sbMax);
321 void EndMessageWin(void);
322 void FreeOSDRegion(word Region);
323 dword GetOSDMapAddress(void);
324 word GetOSDRegionHeight(word Region);
325 word GetOSDRegionWidth(word Region);
326 bool GetPIPPosition(int *North, int *South, int *East, int *West);
327 byte GetStreamFormat(byte Index);
328 bool isAnyOSDVisible(dword CheckX, dword CheckY, dword CheckW, dword CheckH);
329 bool isAnyOSDVisibleEx(dword CheckX, dword CheckY, dword CheckW, dword CheckH, byte Plane);
330 bool isInfoBoxVisible(void);
331 bool isDirectSvcNumVisible(void);
332 bool isOSDRegionAlive(word Region);
333 bool isPIPActive(void);
334 void OSDCopy(word rgn, dword x, dword y, dword w, dword h, word items, eCopyDirection direction);
335 bool PlayMediaFile(char *MediaFileName);
336 bool SaveBitmap(char *FileName, int width, int height, byte* pBuffer);
337 void SetRemoteMode(byte Mode, byte Index, bool Active);
338 void ShowMessageWin(char* title, char* lpMessage1, char* lpMessage2, dword dwDelay);
339 void ShowMessageWindow(char **content, dword pos_x, dword pos_y, byte fntSize, byte align, dword bdcolor, dword titlecolor, dword msgcolor, dword bgcolor, dword delay);
340 bool ShowPvrList(tPvrListType PvrListType);
341 void SoundSinus(word freq, dword durationInMilliseconds, word Amplitude);
342 bool TAP_GetSysOsdControl(TYPE_TapSysOsdId osdId);
343 int TAP_Osd_PutFreeColorGd(word rgn, int x, int y, TYPE_GrData *gd, bool sprite, dword FilterColor);
344 byte TunerGet(int MainSub);
345 bool TunerSet(byte Tuner);
346
347
348 /*****************************************************************************************************************************/
349 /* Compression */
350 /*****************************************************************************************************************************/
351
352 typedef enum
353 {
360 } TFDTYPE;
361
362 word CompressBlock(byte *pInput, word InBufferSize, byte *pOutput);
363 dword CompressTFD(byte *pSrc, dword SourceBufferSize, byte *pDest, word TFDType, word SysID, void *pPercentFinishedCallback);
364 dword CompressedTFDSize(byte *pSrc, dword SourceBufferSize, void *pPercentFinishedCallback);
365 word CRC16(word StartValue, void *StartAddress, dword Length);
366 dword CRC32(dword StartValue, void *StartAddress, dword Length);
367 bool MD5String(char *inString, byte *Digest);
368 bool MD5File(char *FileName, byte *Digest);
369 dword OATH(register byte *data, int len, dword hash);
370 dword SuperFastHash(register byte *data, int len, dword hash);
371 word UncompressBlock(byte *pInput, word compCount, byte *pOutput, word BufferSize);
372 dword UncompressLoader(byte *pSrc, byte *pDest, void *pPercentFinishedCallback);
373 dword UncompressedLoaderSize(byte *pSrc);
374 dword UncompressFirmware(byte *pSrc, byte *pDest, void *pPercentFinishedCallback);
375 dword UncompressedFirmwareSize(byte *pSrc);
376 dword UncompressTFD(byte *pSrc, byte *pDest, void *pPercentFinishedCallback);
377 dword UncompressedTFDSize(byte *pSrc);
378 dword TFDSize(byte *pTFD);
379
380
381 /*****************************************************************************************************************************/
382 /* curl */
383 /*****************************************************************************************************************************/
384
385 typedef enum
386 {
391 CURLE_NOT_BUILT_IN, /* 4 - [was obsoleted in August 2007 for 7.17.0, reused in April 2011 for 7.21.5] */
396 CURLE_REMOTE_ACCESS_DENIED, /* 9 - a service was denied by the server
397 due to lack of access - when login fails
398 this is not returned. */
399 CURLE_FTP_ACCEPT_FAILED, /* 10 - [was obsoleted in April 2006 for 7.15.4, reused in Dec 2011 for 7.24.0]*/
401 CURLE_FTP_ACCEPT_TIMEOUT, /* 12 - timeout occurred accepting server
402 [was obsoleted in August 2007 for 7.17.0,
403 reused in Dec 2011 for 7.24.0]*/
407 CURLE_OBSOLETE16, /* 16 - NOT USED */
411 CURLE_OBSOLETE20, /* 20 - NOT USED */
412 CURLE_QUOTE_ERROR, /* 21 - quote command failure */
415 CURLE_OBSOLETE24, /* 24 - NOT USED */
416 CURLE_UPLOAD_FAILED, /* 25 - failed upload "command" */
417 CURLE_READ_ERROR, /* 26 - couldn't open/read from file */
419 /* Note: CURLE_OUT_OF_MEMORY may sometimes indicate a conversion error
420 instead of a memory allocation error if CURL_DOES_CONVERSIONS
421 is defined */
422 CURLE_OPERATION_TIMEDOUT, /* 28 - the timeout time was reached */
423 CURLE_OBSOLETE29, /* 29 - NOT USED */
424 CURLE_FTP_PORT_FAILED, /* 30 - FTP PORT operation failed */
425 CURLE_FTP_COULDNT_USE_REST, /* 31 - the REST command failed */
426 CURLE_OBSOLETE32, /* 32 - NOT USED */
427 CURLE_RANGE_ERROR, /* 33 - RANGE "command" didn't work */
429 CURLE_SSL_CONNECT_ERROR, /* 35 - wrong when connecting with SSL */
430 CURLE_BAD_DOWNLOAD_RESUME, /* 36 - couldn't resume download */
434 CURLE_OBSOLETE40, /* 40 - NOT USED */
438 CURLE_OBSOLETE44, /* 44 - NOT USED */
439 CURLE_INTERFACE_FAILED, /* 45 - CURLOPT_INTERFACE failed */
440 CURLE_OBSOLETE46, /* 46 - NOT USED */
441 CURLE_TOO_MANY_REDIRECTS , /* 47 - catch endless re-direct loops */
442 CURLE_UNKNOWN_OPTION, /* 48 - User specified an unknown option */
443 CURLE_TELNET_OPTION_SYNTAX , /* 49 - Malformed telnet option */
444 CURLE_OBSOLETE50, /* 50 - NOT USED */
445 CURLE_PEER_FAILED_VERIFICATION, /* 51 - peer's certificate or fingerprint wasn't verified fine */
446 CURLE_GOT_NOTHING, /* 52 - when this is a specific error */
447 CURLE_SSL_ENGINE_NOTFOUND, /* 53 - SSL crypto engine not found */
448 CURLE_SSL_ENGINE_SETFAILED, /* 54 - can not set SSL crypto engine as default */
449 CURLE_SEND_ERROR, /* 55 - failed sending network data */
450 CURLE_RECV_ERROR, /* 56 - failure in receiving network data */
451 CURLE_OBSOLETE57, /* 57 - NOT IN USE */
452 CURLE_SSL_CERTPROBLEM, /* 58 - problem with the local certificate */
453 CURLE_SSL_CIPHER, /* 59 - couldn't use specified cipher */
454 CURLE_SSL_CACERT, /* 60 - problem with the CA cert (path?) */
455 CURLE_BAD_CONTENT_ENCODING, /* 61 - Unrecognized/bad encoding */
456 CURLE_LDAP_INVALID_URL, /* 62 - Invalid LDAP URL */
457 CURLE_FILESIZE_EXCEEDED, /* 63 - Maximum file size exceeded */
458 CURLE_USE_SSL_FAILED, /* 64 - Requested FTP SSL level failed */
459 CURLE_SEND_FAIL_REWIND, /* 65 - Sending the data requires a rewind that failed */
460 CURLE_SSL_ENGINE_INITFAILED, /* 66 - failed to initialise ENGINE */
461 CURLE_LOGIN_DENIED, /* 67 - user, password or similar was not accepted and we failed to login */
462 CURLE_TFTP_NOTFOUND, /* 68 - file not found on server */
463 CURLE_TFTP_PERM, /* 69 - permission problem on server */
464 CURLE_REMOTE_DISK_FULL, /* 70 - out of disk space on server */
465 CURLE_TFTP_ILLEGAL, /* 71 - Illegal TFTP operation */
466 CURLE_TFTP_UNKNOWNID, /* 72 - Unknown transfer ID */
467 CURLE_REMOTE_FILE_EXISTS, /* 73 - File already exists */
468 CURLE_TFTP_NOSUCHUSER, /* 74 - No such user */
469 CURLE_CONV_FAILED, /* 75 - conversion failed */
470 CURLE_CONV_REQD, /* 76 - caller must register conversion
471 callbacks using curl_easy_setopt options
472 CURLOPT_CONV_FROM_NETWORK_FUNCTION,
473 CURLOPT_CONV_TO_NETWORK_FUNCTION, and
474 CURLOPT_CONV_FROM_UTF8_FUNCTION */
475 CURLE_SSL_CACERT_BADFILE, /* 77 - could not load CACERT file, missing or wrong format */
476 CURLE_REMOTE_FILE_NOT_FOUND, /* 78 - remote file not found */
477 CURLE_SSH, /* 79 - error from the SSH layer, somewhat
478 generic so the error message will be of
479 interest when this has happened */
480
481 CURLE_SSL_SHUTDOWN_FAILED, /* 80 - Failed to shut down the SSL connection */
482 CURLE_AGAIN, /* 81 - socket is not ready for send/recv,
483 wait till it's ready and try again (Added
484 in 7.18.2) */
485 CURLE_SSL_CRL_BADFILE, /* 82 - could not load CRL file, missing or wrong format (Added in 7.19.0) */
486 CURLE_SSL_ISSUER_ERROR, /* 83 - Issuer check failed. (Added in 7.19.0) */
487 CURLE_FTP_PRET_FAILED, /* 84 - a PRET command failed */
488 CURLE_RTSP_CSEQ_ERROR, /* 85 - mismatch of RTSP CSeq numbers */
489 CURLE_RTSP_SESSION_ERROR, /* 86 - mismatch of RTSP Session Ids */
490 CURLE_FTP_BAD_FILE_LIST, /* 87 - unable to parse FTP file list */
491 CURLE_CHUNK_FAILED, /* 88 - chunk callback reported error */
492 CURL_LAST /* never use! */
494
495 /* long may be 32 or 64 bits, but we should never depend on anything else but 32 */
496 #define CURLOPTTYPE_LONG 0
497 #define CURLOPTTYPE_OBJECTPOINT 10000
498 #define CURLOPTTYPE_FUNCTIONPOINT 20000
499 #define CURLOPTTYPE_OFF_T 30000
500
501 #define CINIT(na,t,nu) CURLOPT_ ## na = CURLOPTTYPE_ ## t + nu
502 //#define CINIT(name,type,number) CURLOPT_/**/name = type + number
503 /*
504 * This macro-mania below setups the CURLOPT_[what] enum, to be used with
505 * curl_easy_setopt(). The first argument in the CINIT() macro is the [what]
506 * word.
507 */
508
509 typedef enum
510 {
511 CINIT(FILE, OBJECTPOINT, 1), /* This is the FILE * or void * the regular output should be written to. */
512 CINIT(URL, OBJECTPOINT, 2), /* The full URL to get/put */
513 CINIT(PORT, LONG, 3), /* Port number to connect to, if other than default. */
514 CINIT(PROXY, OBJECTPOINT, 4), /* Name of proxy to use. */
515 CINIT(USERPWD, OBJECTPOINT, 5), /* "name:password" to use when fetching. */
516 CINIT(PROXYUSERPWD, OBJECTPOINT, 6), /* "name:password" to use with proxy. */
517 CINIT(RANGE, OBJECTPOINT, 7), /* Range to get, specified as an ASCII string. */
518 /* not used */
519 CINIT(INFILE, OBJECTPOINT, 9), /* Specified file stream to upload from (use as input): */
520 CINIT(ERRORBUFFER, OBJECTPOINT, 10), /* Buffer to receive error messages in, must be at least CURL_ERROR_SIZE bytes big. If this is not used,
521 error messages go to stderr instead: */
522 CINIT(WRITEFUNCTION, FUNCTIONPOINT, 11), /* Function that will be called to store the output (instead of fwrite). The parameters will use
523 fwrite() syntax, make sure to follow them. */
524 CINIT(READFUNCTION, FUNCTIONPOINT, 12), /* Function that will be called to read the input (instead of fread). The parameters will use fread()
525 syntax, make sure to follow them. */
526 CINIT(TIMEOUT, LONG, 13), /* Time-out the read operation after this amount of seconds */
527
528 /* If the CURLOPT_INFILE is used, this can be used to inform libcurl about
529 * how large the file being sent really is. That allows better error
530 * checking and better verifies that the upload was successful. -1 means
531 * unknown size.
532 *
533 * For large file support, there is also a _LARGE version of the key
534 * which takes an off_t type, allowing platforms with larger off_t
535 * sizes to handle larger files. See below for INFILESIZE_LARGE.
536 */
537
538 CINIT(INFILESIZE, LONG, 14),
539 CINIT(POSTFIELDS, OBJECTPOINT, 15), /* POST static input fields. */
540 CINIT(REFERER, OBJECTPOINT, 16), /* Set the referrer page (needed by some CGIs) */
541 CINIT(FTPPORT, OBJECTPOINT, 17), /* Set the FTP PORT string (interface name, named or numerical IP address) Use i.e '-' to use default address. */
542 CINIT(USERAGENT, OBJECTPOINT, 18), /* Set the User-Agent string (examined by some CGIs) */
543
544 /* If the download receives less than "low speed limit" bytes/second
545 * during "low speed time" seconds, the operations is aborted.
546 * You could i.e if you have a pretty high speed connection, abort if
547 * it is less than 2000 bytes/sec during 20 seconds.
548 */
549
550 CINIT(LOW_SPEED_LIMIT, LONG, 19), /* Set the "low speed limit" */
551 CINIT(LOW_SPEED_TIME, LONG, 20), /* Set the "low speed time" */
552 CINIT(RESUME_FROM, LONG, 21), /* Set the continuation offset.
553 Note there is also a _LARGE version of this key which uses
554 off_t types, allowing for large file offsets on platforms which
555 use larger-than-32-bit off_t's. Look below for RESUME_FROM_LARGE. */
556 CINIT(COOKIE, OBJECTPOINT, 22), /* Set cookie in request: */
557 CINIT(HTTPHEADER, OBJECTPOINT, 23), /* This points to a linked list of headers, struct curl_slist kind */
558 CINIT(HTTPPOST, OBJECTPOINT, 24), /* This points to a linked list of post entries, struct curl_httppost */
559 CINIT(SSLCERT, OBJECTPOINT, 25), /* name of the file keeping your private SSL-certificate */
560 CINIT(KEYPASSWD, OBJECTPOINT, 26), /* password for the SSL or SSH private key */
561 CINIT(CRLF, LONG, 27), /* send TYPE parameter? */
562 CINIT(QUOTE, OBJECTPOINT, 28), /* send linked-list of QUOTE commands */
563
564 /* send FILE * or void * to store headers to, if you use a callback it
565 is simply passed to the callback unmodified */
566 CINIT(WRITEHEADER, OBJECTPOINT, 29),
567
568 /* point to a file to read the initial cookies from, also enables
569 "cookie awareness" */
570 CINIT(COOKIEFILE, OBJECTPOINT, 31),
571
572 /* What version to specifically try to use.
573 See CURL_SSLVERSION defines below. */
574 CINIT(SSLVERSION, LONG, 32),
575
576 /* What kind of HTTP time condition to use, see defines */
577 CINIT(TIMECONDITION, LONG, 33),
578
579 /* Time to use with the above condition. Specified in number of seconds
580 since 1 Jan 1970 */
581 CINIT(TIMEVALUE, LONG, 34),
582
583 /* 35 = OBSOLETE */
584
585 /* Custom request, for customizing the get command like
586 HTTP: DELETE, TRACE and others
587 FTP: to use a different list command
588 */
589 CINIT(CUSTOMREQUEST, OBJECTPOINT, 36),
590
591 /* HTTP request, for odd commands like DELETE, TRACE and others */
592 CINIT(STDERR, OBJECTPOINT, 37),
593
594 /* 38 is not used */
595
596 /* send linked-list of post-transfer QUOTE commands */
597 CINIT(POSTQUOTE, OBJECTPOINT, 39),
598
599 CINIT(WRITEINFO, OBJECTPOINT, 40), /* DEPRECATED, do not use! */
600
601 CINIT(VERBOSE, LONG, 41), /* talk a lot */
602 CINIT(HEADER, LONG, 42), /* throw the header out too */
603 CINIT(NOPROGRESS, LONG, 43), /* shut off the progress meter */
604 CINIT(NOBODY, LONG, 44), /* use HEAD to get http document */
605 CINIT(FAILONERROR, LONG, 45), /* no output on http error codes >= 300 */
606 CINIT(UPLOAD, LONG, 46), /* this is an upload */
607 CINIT(POST, LONG, 47), /* HTTP POST method */
608 CINIT(DIRLISTONLY, LONG, 48), /* bare names when listing directories */
609
610 CINIT(APPEND, LONG, 50), /* Append instead of overwrite on upload! */
611
612 /* Specify whether to read the user+password from the .netrc or the URL.
613 * This must be one of the CURL_NETRC_* enums below. */
614 CINIT(NETRC, LONG, 51),
615
616 CINIT(FOLLOWLOCATION, LONG, 52), /* use Location: Luke! */
617
618 CINIT(TRANSFERTEXT, LONG, 53), /* transfer data in text/ASCII format */
619 CINIT(PUT, LONG, 54), /* HTTP PUT */
620
621 /* 55 = OBSOLETE */
622
623 /* Function that will be called instead of the internal progress display
624 * function. This function should be defined as the curl_progress_callback
625 * prototype defines. */
626 CINIT(PROGRESSFUNCTION, FUNCTIONPOINT, 56),
627
628 /* Data passed to the progress callback */
629 CINIT(PROGRESSDATA, OBJECTPOINT, 57),
630
631 /* We want the referrer field set automatically when following locations */
632 CINIT(AUTOREFERER, LONG, 58),
633
634 /* Port of the proxy, can be set in the proxy string as well with:
635 "[host]:[port]" */
636 CINIT(PROXYPORT, LONG, 59),
637
638 /* size of the POST input data, if strlen() is not good to use */
639 CINIT(POSTFIELDSIZE, LONG, 60),
640
641 /* tunnel non-http operations through a HTTP proxy */
642 CINIT(HTTPPROXYTUNNEL, LONG, 61),
643
644 /* Set the interface string to use as outgoing network interface */
645 CINIT(INTERFACE, OBJECTPOINT, 62),
646
647 /* Set the krb4/5 security level, this also enables krb4/5 awareness. This
648 * is a string, 'clear', 'safe', 'confidential' or 'private'. If the string
649 * is set but doesn't match one of these, 'private' will be used. */
650 CINIT(KRBLEVEL, OBJECTPOINT, 63),
651
652 /* Set if we should verify the peer in ssl handshake, set 1 to verify. */
653 CINIT(SSL_VERIFYPEER, LONG, 64),
654
655 /* The CApath or CAfile used to validate the peer certificate
656 this option is used only if SSL_VERIFYPEER is true */
657 CINIT(CAINFO, OBJECTPOINT, 65),
658
659 /* 66 = OBSOLETE */
660 /* 67 = OBSOLETE */
661
662 /* Maximum number of http redirects to follow */
663 CINIT(MAXREDIRS, LONG, 68),
664
665 /* Pass a long set to 1 to get the date of the requested document (if
666 possible)! Pass a zero to shut it off. */
667 CINIT(FILETIME, LONG, 69),
668
669 /* This points to a linked list of telnet options */
670 CINIT(TELNETOPTIONS, OBJECTPOINT, 70),
671
672 /* Max amount of cached alive connections */
673 CINIT(MAXCONNECTS, LONG, 71),
674
675 CINIT(CLOSEPOLICY, LONG, 72), /* DEPRECATED, do not use! */
676
677 /* 73 = OBSOLETE */
678
679 /* Set to explicitly use a new connection for the upcoming transfer.
680 Do not use this unless you're absolutely sure of this, as it makes the
681 operation slower and is less friendly for the network. */
682 CINIT(FRESH_CONNECT, LONG, 74),
683
684 /* Set to explicitly forbid the upcoming transfer's connection to be re-used
685 when done. Do not use this unless you're absolutely sure of this, as it
686 makes the operation slower and is less friendly for the network. */
687 CINIT(FORBID_REUSE, LONG, 75),
688
689 /* Set to a file name that contains random data for libcurl to use to
690 seed the random engine when doing SSL connects. */
691 CINIT(RANDOM_FILE, OBJECTPOINT, 76),
692
693 /* Set to the Entropy Gathering Daemon socket pathname */
694 CINIT(EGDSOCKET, OBJECTPOINT, 77),
695
696 /* Time-out connect operations after this amount of seconds, if connects are
697 OK within this time, then fine... This only aborts the connect phase. */
698 CINIT(CONNECTTIMEOUT, LONG, 78),
699
700 /* Function that will be called to store headers (instead of fwrite). The
701 * parameters will use fwrite() syntax, make sure to follow them. */
702 CINIT(HEADERFUNCTION, FUNCTIONPOINT, 79),
703
704 /* Set this to force the HTTP request to get back to GET. Only really usable
705 if POST, PUT or a custom request have been used first.
706 */
707 CINIT(HTTPGET, LONG, 80),
708
709 /* Set if we should verify the Common name from the peer certificate in ssl
710 * handshake, set 1 to check existence, 2 to ensure that it matches the
711 * provided hostname. */
712 CINIT(SSL_VERIFYHOST, LONG, 81),
713
714 /* Specify which file name to write all known cookies in after completed
715 operation. Set file name to "-" (dash) to make it go to stdout. */
716 CINIT(COOKIEJAR, OBJECTPOINT, 82),
717
718 /* Specify which SSL ciphers to use */
719 CINIT(SSL_CIPHER_LIST, OBJECTPOINT, 83),
720
721 /* Specify which HTTP version to use! This must be set to one of the
722 CURL_HTTP_VERSION* enums set below. */
723 CINIT(HTTP_VERSION, LONG, 84),
724
725 /* Specifically switch on or off the FTP engine's use of the EPSV command. By
726 default, that one will always be attempted before the more traditional
727 PASV command. */
728 CINIT(FTP_USE_EPSV, LONG, 85),
729
730 /* type of the file keeping your SSL-certificate ("DER", "PEM", "ENG") */
731 CINIT(SSLCERTTYPE, OBJECTPOINT, 86),
732
733 /* name of the file keeping your private SSL-key */
734 CINIT(SSLKEY, OBJECTPOINT, 87),
735
736 /* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") */
737 CINIT(SSLKEYTYPE, OBJECTPOINT, 88),
738
739 /* crypto engine for the SSL-sub system */
740 CINIT(SSLENGINE, OBJECTPOINT, 89),
741
742 /* set the crypto engine for the SSL-sub system as default
743 the param has no meaning...
744 */
745 CINIT(SSLENGINE_DEFAULT, LONG, 90),
746
747 /* Non-zero value means to use the global dns cache */
748 CINIT(DNS_USE_GLOBAL_CACHE, LONG, 91), /* DEPRECATED, do not use! */
749
750 /* DNS cache timeout */
751 CINIT(DNS_CACHE_TIMEOUT, LONG, 92),
752
753 /* send linked-list of pre-transfer QUOTE commands */
754 CINIT(PREQUOTE, OBJECTPOINT, 93),
755
756 /* set the debug function */
757 CINIT(DEBUGFUNCTION, FUNCTIONPOINT, 94),
758
759 /* set the data for the debug function */
760 CINIT(DEBUGDATA, OBJECTPOINT, 95),
761
762 /* mark this as start of a cookie session */
763 CINIT(COOKIESESSION, LONG, 96),
764
765 /* The CApath directory used to validate the peer certificate
766 this option is used only if SSL_VERIFYPEER is true */
767 CINIT(CAPATH, OBJECTPOINT, 97),
768
769 /* Instruct libcurl to use a smaller receive buffer */
770 CINIT(BUFFERSIZE, LONG, 98),
771
772 /* Instruct libcurl to not use any signal/alarm handlers, even when using
773 timeouts. This option is useful for multi-threaded applications.
774 See libcurl-the-guide for more background information. */
775 CINIT(NOSIGNAL, LONG, 99),
776
777 /* Provide a CURLShare for mutexing non-ts data */
778 CINIT(SHARE, OBJECTPOINT, 100),
779
780 /* indicates type of proxy. accepted values are CURLPROXY_HTTP (default),
781 CURLPROXY_SOCKS4, CURLPROXY_SOCKS4A and CURLPROXY_SOCKS5. */
782 CINIT(PROXYTYPE, LONG, 101),
783
784 /* Set the Accept-Encoding string. Use this to tell a server you would like
785 the response to be compressed. Before 7.21.6, this was known as
786 CURLOPT_ENCODING */
787 CINIT(ACCEPT_ENCODING, OBJECTPOINT, 102),
788
789 /* Set pointer to private data */
790 CINIT(PRIVATE, OBJECTPOINT, 103),
791
792 /* Set aliases for HTTP 200 in the HTTP Response header */
793 CINIT(HTTP200ALIASES, OBJECTPOINT, 104),
794
795 /* Continue to send authentication (user+password) when following locations,
796 even when hostname changed. This can potentially send off the name
797 and password to whatever host the server decides. */
798 CINIT(UNRESTRICTED_AUTH, LONG, 105),
799
800 /* Specifically switch on or off the FTP engine's use of the EPRT command (
801 it also disables the LPRT attempt). By default, those ones will always be
802 attempted before the good old traditional PORT command. */
803 CINIT(FTP_USE_EPRT, LONG, 106),
804
805 /* Set this to a bitmask value to enable the particular authentications
806 methods you like. Use this in combination with CURLOPT_USERPWD.
807 Note that setting multiple bits may cause extra network round-trips. */
808 CINIT(HTTPAUTH, LONG, 107),
809
810 /* Set the ssl context callback function, currently only for OpenSSL ssl_ctx
811 in second argument. The function must be matching the
812 curl_ssl_ctx_callback proto. */
813 CINIT(SSL_CTX_FUNCTION, FUNCTIONPOINT, 108),
814
815 /* Set the userdata for the ssl context callback function's third
816 argument */
817 CINIT(SSL_CTX_DATA, OBJECTPOINT, 109),
818
819 /* FTP Option that causes missing dirs to be created on the remote server.
820 In 7.19.4 we introduced the convenience enums for this option using the
821 CURLFTP_CREATE_DIR prefix.
822 */
823 CINIT(FTP_CREATE_MISSING_DIRS, LONG, 110),
824
825 /* Set this to a bitmask value to enable the particular authentications
826 methods you like. Use this in combination with CURLOPT_PROXYUSERPWD.
827 Note that setting multiple bits may cause extra network round-trips. */
828 CINIT(PROXYAUTH, LONG, 111),
829
830 /* FTP option that changes the timeout, in seconds, associated with
831 getting a response. This is different from transfer timeout time and
832 essentially places a demand on the FTP server to acknowledge commands
833 in a timely manner. */
834 CINIT(FTP_RESPONSE_TIMEOUT, LONG, 112),
835 #define CURLOPT_SERVER_RESPONSE_TIMEOUT CURLOPT_FTP_RESPONSE_TIMEOUT
836
837 /* Set this option to one of the CURL_IPRESOLVE_* defines (see below) to
838 tell libcurl to resolve names to those IP versions only. This only has
839 affect on systems with support for more than one, i.e IPv4 _and_ IPv6. */
840 CINIT(IPRESOLVE, LONG, 113),
841
842 /* Set this option to limit the size of a file that will be downloaded from
843 an HTTP or FTP server.
844
845 Note there is also _LARGE version which adds large file support for
846 platforms which have larger off_t sizes. See MAXFILESIZE_LARGE below. */
847 CINIT(MAXFILESIZE, LONG, 114),
848
849 /* See the comment for INFILESIZE above, but in short, specifies
850 * the size of the file being uploaded. -1 means unknown.
851 */
852 CINIT(INFILESIZE_LARGE, OFF_T, 115),
853
854 /* Sets the continuation offset. There is also a LONG version of this;
855 * look above for RESUME_FROM.
856 */
857 CINIT(RESUME_FROM_LARGE, OFF_T, 116),
858
859 /* Sets the maximum size of data that will be downloaded from
860 * an HTTP or FTP server. See MAXFILESIZE above for the LONG version.
861 */
862 CINIT(MAXFILESIZE_LARGE, OFF_T, 117),
863
864 /* Set this option to the file name of your .netrc file you want libcurl
865 to parse (using the CURLOPT_NETRC option). If not set, libcurl will do
866 a poor attempt to find the user's home directory and check for a .netrc
867 file in there. */
868 CINIT(NETRC_FILE, OBJECTPOINT, 118),
869
870 /* Enable SSL/TLS for FTP, pick one of:
871 CURLUSESSL_TRY - try using SSL, proceed anyway otherwise
872 CURLUSESSL_CONTROL - SSL for the control connection or fail
873 CURLUSESSL_ALL - SSL for all communication or fail
874 */
875 CINIT(USE_SSL, LONG, 119),
876
877 /* The _LARGE version of the standard POSTFIELDSIZE option */
878 CINIT(POSTFIELDSIZE_LARGE, OFF_T, 120),
879
880 /* Enable/disable the TCP Nagle algorithm */
881 CINIT(TCP_NODELAY, LONG, 121),
882
883 /* 122 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
884 /* 123 OBSOLETE. Gone in 7.16.0 */
885 /* 124 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
886 /* 125 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
887 /* 126 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
888 /* 127 OBSOLETE. Gone in 7.16.0 */
889 /* 128 OBSOLETE. Gone in 7.16.0 */
890
891 /* When FTP over SSL/TLS is selected (with CURLOPT_USE_SSL), this option
892 can be used to change libcurl's default action which is to first try
893 "AUTH SSL" and then "AUTH TLS" in this order, and proceed when a OK
894 response has been received.
895
896 Available parameters are:
897 CURLFTPAUTH_DEFAULT - let libcurl decide
898 CURLFTPAUTH_SSL - try "AUTH SSL" first, then TLS
899 CURLFTPAUTH_TLS - try "AUTH TLS" first, then SSL
900 */
901 CINIT(FTPSSLAUTH, LONG, 129),
902
903 CINIT(IOCTLFUNCTION, FUNCTIONPOINT, 130),
904 CINIT(IOCTLDATA, OBJECTPOINT, 131),
905
906 /* 132 OBSOLETE. Gone in 7.16.0 */
907 /* 133 OBSOLETE. Gone in 7.16.0 */
908
909 /* zero terminated string for pass on to the FTP server when asked for
910 "account" info */
911 CINIT(FTP_ACCOUNT, OBJECTPOINT, 134),
912
913 /* feed cookies into cookie engine */
914 CINIT(COOKIELIST, OBJECTPOINT, 135),
915
916 /* ignore Content-Length */
917 CINIT(IGNORE_CONTENT_LENGTH, LONG, 136),
918
919 /* Set to non-zero to skip the IP address received in a 227 PASV FTP server
920 response. Typically used for FTP-SSL purposes but is not restricted to
921 that. libcurl will then instead use the same IP address it used for the
922 control connection. */
923 CINIT(FTP_SKIP_PASV_IP, LONG, 137),
924
925 /* Select "file method" to use when doing FTP, see the curl_ftpmethod
926 above. */
927 CINIT(FTP_FILEMETHOD, LONG, 138),
928
929 /* Local port number to bind the socket to */
930 CINIT(LOCALPORT, LONG, 139),
931
932 /* Number of ports to try, including the first one set with LOCALPORT.
933 Thus, setting it to 1 will make no additional attempts but the first.
934 */
935 CINIT(LOCALPORTRANGE, LONG, 140),
936
937 /* no transfer, set up connection and let application use the socket by
938 extracting it with CURLINFO_LASTSOCKET */
939 CINIT(CONNECT_ONLY, LONG, 141),
940
941 /* Function that will be called to convert from the
942 network encoding (instead of using the iconv calls in libcurl) */
943 CINIT(CONV_FROM_NETWORK_FUNCTION, FUNCTIONPOINT, 142),
944
945 /* Function that will be called to convert to the
946 network encoding (instead of using the iconv calls in libcurl) */
947 CINIT(CONV_TO_NETWORK_FUNCTION, FUNCTIONPOINT, 143),
948
949 /* Function that will be called to convert from UTF8
950 (instead of using the iconv calls in libcurl)
951 Note that this is used only for SSL certificate processing */
952 CINIT(CONV_FROM_UTF8_FUNCTION, FUNCTIONPOINT, 144),
953
954 /* if the connection proceeds too quickly then need to slow it down */
955 /* limit-rate: maximum number of bytes per second to send or receive */
956 CINIT(MAX_SEND_SPEED_LARGE, OFF_T, 145),
957 CINIT(MAX_RECV_SPEED_LARGE, OFF_T, 146),
958
959 /* Pointer to command string to send if USER/PASS fails. */
960 CINIT(FTP_ALTERNATIVE_TO_USER, OBJECTPOINT, 147),
961
962 /* callback function for setting socket options */
963 CINIT(SOCKOPTFUNCTION, FUNCTIONPOINT, 148),
964 CINIT(SOCKOPTDATA, OBJECTPOINT, 149),
965
966 /* set to 0 to disable session ID re-use for this transfer, default is
967 enabled (== 1) */
968 CINIT(SSL_SESSIONID_CACHE, LONG, 150),
969
970 /* allowed SSH authentication methods */
971 CINIT(SSH_AUTH_TYPES, LONG, 151),
972
973 /* Used by scp/sftp to do public/private key authentication */
974 CINIT(SSH_PUBLIC_KEYFILE, OBJECTPOINT, 152),
975 CINIT(SSH_PRIVATE_KEYFILE, OBJECTPOINT, 153),
976
977 /* Send CCC (Clear Command Channel) after authentication */
978 CINIT(FTP_SSL_CCC, LONG, 154),
979
980 /* Same as TIMEOUT and CONNECTTIMEOUT, but with ms resolution */
981 CINIT(TIMEOUT_MS, LONG, 155),
982 CINIT(CONNECTTIMEOUT_MS, LONG, 156),
983
984 /* set to zero to disable the libcurl's decoding and thus pass the raw body
985 data to the application even when it is encoded/compressed */
986 CINIT(HTTP_TRANSFER_DECODING, LONG, 157),
987 CINIT(HTTP_CONTENT_DECODING, LONG, 158),
988
989 /* Permission used when creating new files and directories on the remote
990 server for protocols that support it, SFTP/SCP/FILE */
991 CINIT(NEW_FILE_PERMS, LONG, 159),
992 CINIT(NEW_DIRECTORY_PERMS, LONG, 160),
993
994 /* Set the behaviour of POST when redirecting. Values must be set to one
995 of CURL_REDIR* defines below. This used to be called CURLOPT_POST301 */
996 CINIT(POSTREDIR, LONG, 161),
997
998 /* used by scp/sftp to verify the host's public key */
999 CINIT(SSH_HOST_PUBLIC_KEY_MD5, OBJECTPOINT, 162),
1000
1001 /* Callback function for opening socket (instead of socket(2)). Optionally,
1002 callback is able change the address or refuse to connect returning
1003 CURL_SOCKET_BAD. The callback should have type
1004 curl_opensocket_callback */
1005 CINIT(OPENSOCKETFUNCTION, FUNCTIONPOINT, 163),
1006 CINIT(OPENSOCKETDATA, OBJECTPOINT, 164),
1007
1008 /* POST volatile input fields. */
1009 CINIT(COPYPOSTFIELDS, OBJECTPOINT, 165),
1010
1011 /* set transfer mode (;type=<a|i>) when doing FTP via an HTTP proxy */
1012 CINIT(PROXY_TRANSFER_MODE, LONG, 166),
1013
1014 /* Callback function for seeking in the input stream */
1015 CINIT(SEEKFUNCTION, FUNCTIONPOINT, 167),
1016 CINIT(SEEKDATA, OBJECTPOINT, 168),
1017
1018 /* CRL file */
1019 CINIT(CRLFILE, OBJECTPOINT, 169),
1020
1021 /* Issuer certificate */
1022 CINIT(ISSUERCERT, OBJECTPOINT, 170),
1023
1024 /* (IPv6) Address scope */
1025 CINIT(ADDRESS_SCOPE, LONG, 171),
1026
1027 /* Collect certificate chain info and allow it to get retrievable with
1028 CURLINFO_CERTINFO after the transfer is complete. (Unfortunately) only
1029 working with OpenSSL-powered builds. */
1030 CINIT(CERTINFO, LONG, 172),
1031
1032 /* "name" and "pwd" to use when fetching. */
1033 CINIT(USERNAME, OBJECTPOINT, 173),
1034 CINIT(PASSWORD, OBJECTPOINT, 174),
1035
1036 /* "name" and "pwd" to use with Proxy when fetching. */
1037 CINIT(PROXYUSERNAME, OBJECTPOINT, 175),
1038 CINIT(PROXYPASSWORD, OBJECTPOINT, 176),
1039
1040 /* Comma separated list of hostnames defining no-proxy zones. These should
1041 match both hostnames directly, and hostnames within a domain. For
1042 example, local.com will match local.com and www.local.com, but NOT
1043 notlocal.com or www.notlocal.com. For compatibility with other
1044 implementations of this, .local.com will be considered to be the same as
1045 local.com. A single * is the only valid wildcard, and effectively
1046 disables the use of proxy. */
1047 CINIT(NOPROXY, OBJECTPOINT, 177),
1048
1049 /* block size for TFTP transfers */
1050 CINIT(TFTP_BLKSIZE, LONG, 178),
1051
1052 /* Socks Service */
1053 CINIT(SOCKS5_GSSAPI_SERVICE, OBJECTPOINT, 179),
1054
1055 /* Socks Service */
1056 CINIT(SOCKS5_GSSAPI_NEC, LONG, 180),
1057
1058 /* set the bitmask for the protocols that are allowed to be used for the
1059 transfer, which thus helps the app which takes URLs from users or other
1060 external inputs and want to restrict what protocol(s) to deal
1061 with. Defaults to CURLPROTO_ALL. */
1062 CINIT(PROTOCOLS, LONG, 181),
1063
1064 /* set the bitmask for the protocols that libcurl is allowed to follow to,
1065 as a subset of the CURLOPT_PROTOCOLS ones. That means the protocol needs
1066 to be set in both bitmasks to be allowed to get redirected to. Defaults
1067 to all protocols except FILE and SCP. */
1068 CINIT(REDIR_PROTOCOLS, LONG, 182),
1069
1070 /* set the SSH knownhost file name to use */
1071 CINIT(SSH_KNOWNHOSTS, OBJECTPOINT, 183),
1072
1073 /* set the SSH host key callback, must point to a curl_sshkeycallback
1074 function */
1075 CINIT(SSH_KEYFUNCTION, FUNCTIONPOINT, 184),
1076
1077 /* set the SSH host key callback custom pointer */
1078 CINIT(SSH_KEYDATA, OBJECTPOINT, 185),
1079
1080 /* set the SMTP mail originator */
1081 CINIT(MAIL_FROM, OBJECTPOINT, 186),
1082
1083 /* set the SMTP mail receiver(s) */
1084 CINIT(MAIL_RCPT, OBJECTPOINT, 187),
1085
1086 /* FTP: send PRET before PASV */
1087 CINIT(FTP_USE_PRET, LONG, 188),
1088
1089 /* RTSP request method (OPTIONS, SETUP, PLAY, etc...) */
1090 CINIT(RTSP_REQUEST, LONG, 189),
1091
1092 /* The RTSP session identifier */
1093 CINIT(RTSP_SESSION_ID, OBJECTPOINT, 190),
1094
1095 /* The RTSP stream URI */
1096 CINIT(RTSP_STREAM_URI, OBJECTPOINT, 191),
1097
1098 /* The Transport: header to use in RTSP requests */
1099 CINIT(RTSP_TRANSPORT, OBJECTPOINT, 192),
1100
1101 /* Manually initialize the client RTSP CSeq for this handle */
1102 CINIT(RTSP_CLIENT_CSEQ, LONG, 193),
1103
1104 /* Manually initialize the server RTSP CSeq for this handle */
1105 CINIT(RTSP_SERVER_CSEQ, LONG, 194),
1106
1107 /* The stream to pass to INTERLEAVEFUNCTION. */
1108 CINIT(INTERLEAVEDATA, OBJECTPOINT, 195),
1109
1110 /* Let the application define a custom write method for RTP data */
1111 CINIT(INTERLEAVEFUNCTION, FUNCTIONPOINT, 196),
1112
1113 /* Turn on wildcard matching */
1114 CINIT(WILDCARDMATCH, LONG, 197),
1115
1116 /* Directory matching callback called before downloading of an
1117 individual file (chunk) started */
1118 CINIT(CHUNK_BGN_FUNCTION, FUNCTIONPOINT, 198),
1119
1120 /* Directory matching callback called after the file (chunk)
1121 was downloaded, or skipped */
1122 CINIT(CHUNK_END_FUNCTION, FUNCTIONPOINT, 199),
1123
1124 /* Change match (fnmatch-like) callback for wildcard matching */
1125 CINIT(FNMATCH_FUNCTION, FUNCTIONPOINT, 200),
1126
1127 /* Let the application define custom chunk data pointer */
1128 CINIT(CHUNK_DATA, OBJECTPOINT, 201),
1129
1130 /* FNMATCH_FUNCTION user pointer */
1131 CINIT(FNMATCH_DATA, OBJECTPOINT, 202),
1132
1133 /* send linked-list of name:port:address sets */
1134 CINIT(RESOLVE, OBJECTPOINT, 203),
1135
1136 /* Set a username for authenticated TLS */
1137 CINIT(TLSAUTH_USERNAME, OBJECTPOINT, 204),
1138
1139 /* Set a password for authenticated TLS */
1140 CINIT(TLSAUTH_PASSWORD, OBJECTPOINT, 205),
1141
1142 /* Set authentication type for authenticated TLS */
1143 CINIT(TLSAUTH_TYPE, OBJECTPOINT, 206),
1144
1145 /* Set to 1 to enable the "TE:" header in HTTP requests to ask for
1146 compressed transfer-encoded responses. Set to 0 to disable the use of TE:
1147 in outgoing requests. The current default is 0, but it might change in a
1148 future libcurl release.
1149
1150 libcurl will ask for the compressed methods it knows of, and if that
1151 isn't any, it will not ask for transfer-encoding at all even if this
1152 option is set to 1.
1153
1154 */
1155 CINIT(TRANSFER_ENCODING, LONG, 207),
1156
1157 /* Callback function for closing socket (instead of close(2)). The callback
1158 should have type curl_closesocket_callback */
1159 CINIT(CLOSESOCKETFUNCTION, FUNCTIONPOINT, 208),
1160 CINIT(CLOSESOCKETDATA, OBJECTPOINT, 209),
1161
1162 /* allow GSSAPI credential delegation */
1163 CINIT(GSSAPI_DELEGATION, LONG, 210),
1164
1165 /* Set the name servers to use for DNS resolution */
1166 CINIT(DNS_SERVERS, OBJECTPOINT, 211),
1167
1168 /* Time-out accept operations (currently for FTP only) after this amount
1169 of miliseconds. */
1170 CINIT(ACCEPTTIMEOUT_MS, LONG, 212),
1171
1172 /* Set TCP keepalive */
1173 CINIT(TCP_KEEPALIVE, LONG, 213),
1174
1175 /* non-universal keepalive knobs (Linux, AIX, HP-UX, more) */
1176 CINIT(TCP_KEEPIDLE, LONG, 214),
1177 CINIT(TCP_KEEPINTVL, LONG, 215),
1178
1179 /* Enable/disable specific SSL features with a bitmask, see CURLSSLOPT_* */
1180 CINIT(SSL_OPTIONS, LONG, 216),
1181
1182 /* set the SMTP auth originator */
1183 CINIT(MAIL_AUTH, OBJECTPOINT, 217),
1184
1185 CURLOPT_LASTENTRY /* the last unused */
1187
1188 #define CURLOPT_WRITEDATA CURLOPT_FILE
1189
1190 typedef void CURL;
1191
1192 CURL *curl_easy_init(void);
1194 CURLcode curl_easy_setopt(CURL *curl, CURLoption option, void *arg);
1195 CURLcode curl_global_init(long flags);
1196 void curl_easy_cleanup(CURL *curl);
1197 void curl_global_cleanup(void);
1198
1199
1200 /*****************************************************************************************************************************/
1201 /* Debugging */
1202 /*****************************************************************************************************************************/
1203
1204 void DumpMemory(byte* p, dword size, int BytesPerLine);
1205 void DumpMemoryDword(dword *p, dword size);
1206 dword *FindGotPointer(dword FunctionAddress);
1207 void LogEntry(char *FileName, char *ProgramName, bool Console, eTimeStampFormat TimeStampFormat, char *Text);
1208 void LogEntryPrintf(char *FileName, char *ProgramName, bool Console, eTimeStampFormat TimeStampFormat, char *format, ...);
1209 void LogEntryGeneric(char *ProgramName, bool Console, char *Text);
1210 void LogEntryGenericPrintf(char *ProgramName, bool Console, char *format, ...);
1211#ifdef FB_LOG_ENTRY_LIB_PRINTF
1212 void LogEntryFBLibPrintf(bool Console, char *format, ...);
1213#else
1214 #define LogEntryFBLibPrintf(Console, ...) do { if (0) TAP_Print(__VA_ARGS__); } while (0)
1215#endif
1216 bool HookFirmware(char *FirmwareFunctionName, void *RedirectTo, void *PointerToOriginal);
1217 bool UnhookFirmware(char *FirmwareFunctionName, void *RedirectTo, void *PointerToOriginal);
1218
1219#ifdef FB_CALL_TRACE
1220 void CallTraceInit(void);
1221 void CallTraceEnable(bool Enable);
1222 void CallTraceEnter(char *ProcName);
1223 void CallTraceExit(dword *Magic);
1224 void CallTraceExitResult(dword *Magic, char *Result);
1225 void CallTraceComment(char *Comment);
1226 void CallTraceExportStats(char *FileName);
1227 void CallTraceResetStats(void);
1228#else
1229 #define CallTraceInit(...) (void) 0
1230 #define CallTraceEnable(...) (void) 0
1231 #define CallTraceEnter(...) (void) 0
1232 #define CallTraceExit(...) (void) 0
1233 #define CallTraceExitResult(...) (void) 0
1234 #define CallTraceComment(...) (void) 0
1235 #define CallTraceExportStats(...) (void) 0
1236 #define CallTraceResetStats(...) (void) 0
1237#endif
1238
1239 #ifdef STACKTRACE
1240 #define TRACEENTER() CallTraceEnter((char*)__FUNCTION__)
1241 #define TRACEEXIT() CallTraceExit(NULL)
1242 #else
1243 #define TRACEENTER() (void) 0
1244 #define TRACEEXIT() (void) 0
1245 #endif
1246
1247 typedef enum
1248 {
1253
1254 void CrashCheck_Startup(char *TAPName, tCrashCheckStatus *CCStatus);
1255 void CrashCheck_Shutdown(char *TAPName);
1256
1257#ifdef FB_DEBUG_CHK
1258 void *TAP_MemAlloc_Chk(char *Comment, dword size);
1259 int TAP_Osd_Copy_Chk(char *Comment, word srcRgnNum, word dstRgnNum, dword srcX, dword srcY, dword w, dword h, dword dstX, dword dstY, bool sprite);
1260 int TAP_Osd_Create_Chk(char *Comment, dword x, dword y, dword w, dword h, byte lutIdx, int flag);
1261 int TAP_Osd_FillBox_Chk(char *Comment, word rgn, dword x, dword y, dword w, dword h, dword color);
1262 int TAP_Osd_PutFreeColorGd_Chk(char *Comment, word rgn, int x, int y, TYPE_GrData * gd, bool sprite, dword FilterColor);
1263 int TAP_Osd_PutGd_Chk(char *Comment, word rgn, int x, int y, TYPE_GrData * gd, bool sprite);
1264 int TAP_Osd_PutPixel_Chk(char *Comment, word rgn, dword x, dword y, dword pix);
1265 void TAP_Osd_RestoreBox_Chk(char *Comment, word rgn, dword x, dword y, dword w, dword h, void *data);
1266 byte *TAP_Osd_SaveBox_Chk(char *Comment, word rgn, dword x, dword y, dword w, dword h);
1267#else
1268 #define TAP_MemAlloc_Chk(Comment, ...) TAP_MemAlloc(__VA_ARGS__)
1269 #define TAP_Osd_Copy_Chk(Comment, ...) TAP_Osd_Copy(__VA_ARGS__)
1270 #define TAP_Osd_Create_Chk(Comment, ...) TAP_Osd_Create(__VA_ARGS__)
1271 #define TAP_Osd_FillBox_Chk(Comment, ...) TAP_Osd_FillBox(__VA_ARGS__)
1272 #define TAP_Osd_PutFreeColorGd_Chk(Comment, ...) TAP_Osd_PutFreeColorGd(__VA_ARGS__)
1273 #define TAP_Osd_PutGd_Chk(Comment, ...) TAP_Osd_PutGd(__VA_ARGS__)
1274 #define TAP_Osd_PutPixel_Chk(Comment, ...) TAP_Osd_PutPixel(__VA_ARGS__)
1275 #define TAP_Osd_RestoreBox_Chk(Comment, ...) TAP_Osd_RestoreBox(__VA_ARGS__)
1276 #define TAP_Osd_SaveBox_Chk(Comment, ...) TAP_Osd_SaveBox(__VA_ARGS__)
1277#endif
1278
1279
1280 /*****************************************************************************************************************************/
1281 /* EPG */
1282 /*****************************************************************************************************************************/
1283
1284 typedef enum
1285 {
1295
1296 typedef struct
1297 {
1301
1302 dword StartTime; //Local start time
1303 dword EndTime; //Local time
1304 short TimeZone; //Offset from UTC in minutes
1305 word duration; //duration in minutes
1306
1309 word TSID;
1311
1312 TYPE_ServiceType ServiceType;
1314
1315 byte lang[4];
1316
1321
1322 char EventName[256];
1323 char ShortEventText[256];
1324 char ExtEventText[8192];
1325
1326 dword citID;
1327
1328 byte ContentIdentifier; //if sourceFlag == 1 then the nibbles are reversed to ETSI and if sourceFlag == 0 then
1329 byte sourceFlag; //the nibble represent Australia-specific descriptions
1332
1333 byte unknown15[6];
1334 } TYPE_EPGInfo;
1335
1336 void EPGInfo_FilterReset(void);
1337 void EPGInfo_FilterTime(dword StartTime, dword EndTime);
1338 void EPGInfo_FilterChannelByIndex(TYPE_ServiceType SvcType, int SvcNum, bool StartCurrent);
1339 void EPGInfo_FilterDuration(word MinDuration, word MaxDuration);
1340 void EPGInfo_FilterGenre(byte *GenreArray, byte GenreArraySize);
1341
1342 //To prototype for the callback is bool CallbackFunction(TYPE_EPGInfo*)
1343 void EPGInfo_FilterCallback(void *CallbackRoutine);
1344 void EPGInfo_AbortLoad(void);
1345
1346 int EPGInfo_FindFirst(TYPE_EPGInfo *EPGData);
1347 bool EPGInfo_FindNext(TYPE_EPGInfo *EPGData);
1348 bool EPGInfo_FindPrev(TYPE_EPGInfo *EPGData);
1349 bool EPGInfo_FindLast(TYPE_EPGInfo *EPGData);
1350 bool EPGInfo_FindItem(TYPE_EPGInfo *EPGData, int EPGIndex, bool EPGReset);
1351 bool EPGInfo_FindCurrent(byte SvcType, int SvcNum, TYPE_EPGInfo *EPGData);
1352 void EPGInfo_Free(void);
1353 dword EPGInfo_GetNrFreeEntries(void);
1354
1355 TYPE_TapEvent *GetCurrentEvent(int *curEvent);
1356 bool isOnMainTuner(int SvcType, int SvcNum);
1357
1358
1359 /*****************************************************************************************************************************/
1360 /* ELF file format functions */
1361 /*****************************************************************************************************************************/
1362
1363 bool ELFOpenFile(const char *FileName);
1364 bool ELFReadELFHeader(void);
1365 bool ELFReadSectionHeaders(void);
1366 bool ELFReadShstrtabSection(void);
1367 dword ELFGetSectionIndex(const char *SectionName);
1368 bool ELFGetSectionAddress(dword SectionIndex, dword *SectionAddress, dword *SectionSize);
1369 bool ELFGetSectionOffset(dword SectionIndex, dword *SectionOffset, dword *SectionSize);
1370 bool ELFReadDWORD(dword SectionIndex, dword *Data);
1371 bool ELFReadData(dword SectionIndex, byte *Data);
1372 void ELFCleanup(void);
1373
1374
1375 /*****************************************************************************************************************************/
1376 /* Extended File Attributes */
1377 /*****************************************************************************************************************************/
1378
1379 int ExtAttribExists(char *FileName, char *AttrName);
1380 bool ExtAttribGet(char *FileName, char *AttrName, byte *Data, int MaxDataLen, int *DataLen);
1381 bool ExtAttribRemove(char *FileName, char *AttrName);
1382 bool ExtAttribSet(char *FileName, char *AttrName, byte *Data, int DataLen);
1383
1384
1385 /*****************************************************************************************************************************/
1386 /* ezXML */
1387 /*****************************************************************************************************************************/
1388
1389 typedef struct ezxml *ezxml_t;
1390
1391 struct ezxml
1392 {
1393 char *name; // tag name
1394 char **attr; // tag attributes { name, value, name, value, ... NULL }
1395 char *txt; // tag character content, empty string if none
1396 size_t off; // tag offset from start of parent tag character content
1397 ezxml_t next; // next tag with same name in this section at this depth
1398 ezxml_t sibling; // next tag with different name in same section and depth
1399 ezxml_t ordered; // next tag, same section and depth, in original order
1400 ezxml_t child; // head of sub tag list, NULL if none
1401 ezxml_t parent; // parent tag, NULL if current tag is root tag
1402 short flags; // additional information
1403 };
1404
1405 // Given a string of xml data and its length, parses it and creates an ezxml
1406 // structure. For efficiency, modifies the data by adding null terminators
1407 // and decoding ampersand sequences. If you don't want this, copy the data and
1408 // pass in the copy. Returns NULL on failure.
1409 ezxml_t ezxml_parse_str(char *s, size_t len);
1410
1411 // a wrapper for ezxml_parse_fd() that accepts a file name
1412 ezxml_t ezxml_parse_file(const char *file);
1413
1414 // returns the first child tag (one level deeper) with the given name or NULL if not found
1415 ezxml_t ezxml_child(ezxml_t xml, const char *name);
1416
1417 // returns the next tag of the same name in the same section and depth or NULL if not found
1418 #define ezxml_next(xml) ((xml) ? xml->next : NULL)
1419
1420 // Returns the Nth tag with the same name in the same section at the same depth
1421 // or NULL if not found. An index of 0 returns the tag given.
1422 ezxml_t ezxml_idx(ezxml_t xml, int idx);
1423
1424 // returns the name of the given tag
1425 #define ezxml_name(xml) ((xml) ? xml->name : NULL)
1426
1427 // returns the given tag's character content or empty string if none
1428 #define ezxml_txt(xml) ((xml) ? xml->txt : "")
1429
1430 // returns the value of the requested tag attribute, or NULL if not found
1431 const char *ezxml_attr(ezxml_t xml, const char *attr);
1432
1433 // frees the memory allocated for an ezxml structure
1434 void ezxml_free(ezxml_t xml);
1435
1436 // returns parser error message or empty string if none
1437 const char *ezxml_error(ezxml_t xml);
1438
1439
1440 /*****************************************************************************************************************************/
1441 /* Firmware functions */
1442 /*****************************************************************************************************************************/
1443
1444 typedef struct
1445 {
1446 dword Magic; //0xbacaed31
1447 char *Path;
1450 }tDirEntry;
1451
1452 int Appl_CheckRecording(int SvcType, int SvcNum, bool Unknown);
1453 int Appl_CheckRecording_Tuner(byte TunerIndex, int SvcType, int SvcNum, bool Unknown);
1454 void Appl_ClrTimer(byte *TimerHandle);
1455 bool Appl_EvtProc_PincodeKey(dword p1, dword p2);
1456 void Appl_ExecProgram(char *FileName);
1457 bool Appl_ExportChData(char *FileName);
1458 void *Appl_GetCurrentEvent(byte SatIndex, word NetID, word TSID, word ServiceID);
1459 dword Appl_GetEvtCount(byte SatIndex, word NetID, word TSID, word ServiceID);
1460 dword Appl_GetEvtCountInFreePool(void);
1461 dword *Appl_GetEvtListHeadInHash(word NetID, word TSID, word ServiceID);
1462 dword *Appl_GetEvtListHeadInHashByChannelID(ulong64 ChannelID);
1463 dword *Appl_GetEvtListHeadInUsePool(void);
1464 bool Appl_GetIsExternal(void);
1465 dword Appl_GetFreeExtRecordSpace(char *MountPath);
1466 void *Appl_GetSameTimeEvent(byte SatIndex, word NetID, word TSID, word ServiceID);
1467 dword Appl_KeyCvt(dword NECKeyCode);
1468 bool Appl_ImportChData(char *FileName);
1469 void Appl_PvrPause(bool p1);
1470 void Appl_RestartTimeShiftSvc(bool p1, dword Block);
1471 void Appl_SetIsExternal(bool External);
1472 void Appl_SetPlaybackSpeed(byte Mode, int Speed, bool p3);
1473 void Appl_ShoutCast(void);
1474 int Appl_StartPlayback(char *FileName, unsigned int p2, bool p3, bool ScaleInPip);
1475 int Appl_StartPlaybackMedia(char *FileName, unsigned int p2, bool p3, bool ScaleInPip);
1476 int Appl_StartPlaybackDivx(char *FileName, unsigned int p2, bool p3);
1477 int Appl_StartPlaybackMp3(char *FileName);
1478 dword Appl_StopPlaying(void);
1479 void Appl_StopRecPlaying(bool p1);
1480 dword Appl_TimeToLocal(dword UTCTime);
1481 dword Appl_WaitEvt(dword Event, dword *a1, dword a2, dword a3, dword Timeout);
1482 void Appl_WriteRecInfo(dword Slot);
1483 byte ApplChannel_GetAgc(byte TunerIndex, byte *AGC);
1484 byte ApplChannel_GetBer(byte TunerIndex, byte *BER);
1485 void ApplCiplus_CamSelect(byte CamIndex);
1486 byte ApplCiplus_GetSelectedCam(void);
1487 word ApplClock_SetTimeMJD(word mjd, byte hour, byte min, byte sec);
1488 dword ApplHdd_FileCutPaste(char *SourceFileName, unsigned int StartBlock, unsigned int NrBlocks, char *CutFileName);
1489 dword ApplHdd_FreeSize(char *MountPath, bool a1);
1490 word ApplHdd_GetFileInfo(word p1, int *TotalBlocks, int *CurrentBlock, byte p4, byte p5);
1491 dword ApplHdd_GetInfoFromExternalDevice(dword *TotalSpaceMB, dword *FreeSpaceMB, char *MountPath);
1492 void ApplHdd_RestoreWorkFolder(void);
1493 void ApplHdd_SaveWorkFolder(void);
1494 dword ApplHdd_SelectFolder(tDirEntry *FolderStruct, char *FolderPath);
1495 void ApplHdd_SetWorkFolder(tDirEntry *FolderStruct);
1496 void ApplNewVfd_Stop(void);
1497 void ApplPin_Delete(void);
1498 bool ApplPin_IsLockPopup(void);
1499 word ApplSvc_GetSvcIdx(byte TYPE_ServiceType, byte SatIndex, word TPIndex, word ServiceID, word Start, word NrOfServicesToSearch);
1500 word ApplSvc_GetTpIdx(byte SatIndex, word NetworkID, word TSID);
1501 int ApplTap_GetEmptyTask(void);
1502 void ApplTimer_OptimizeList(void);
1503 byte DevFront_SetIlluminate(byte a0, byte Brightness);
1504 void DevFront_SetIrCode(byte Index, byte Active, byte MfgID1, byte MfgID2, byte Code0a);
1505 dword DevHdd_DeviceClose(tDirEntry *hddPlaybackFolder);
1506 dword DevHdd_DeviceOpen(tDirEntry **hddPlaybackFolder, tDirEntry *DirEntry);
1507 int DevService_Mute(bool Mute);
1508
1509
1510 /*****************************************************************************************************************************/
1511 /* Flash & EEPROM */
1512 /*****************************************************************************************************************************/
1513
1514 typedef struct
1515 {
1522 byte Tuner;
1528 word AudioPID:13;
1531 word LCN;
1533 char ServiceName[MAX_SvcName + 1];
1534 char ProviderName[40];
1537
1538 //Unidentified fields
1539 byte unknown2[6];
1540 } tFlashService;
1541
1542 int FlashServiceGetTotal(int SvcType);
1543 bool FlashServiceGetInfo(int SvcType, int SvcNum, tFlashService *Service);
1544 bool FlashServiceSetInfo(int SvcType, int SvcNum, tFlashService *Service);
1545 bool FlashServiceAdd(int SvcType, tFlashService *Service);
1546 int FlashServiceFind(int SvcType, word ServiceID, word PMTPID, word PCRPID, tFlashService *Service);
1547 bool FlashServiceFindNum(byte SatIndex, word NetworkID, word TSID, word ServiceID, TYPE_ServiceType *SvcType, int *SvcNum);
1548 bool FlashServiceDel(int SvcType, int SvcNum);
1549 bool FlashServiceMove(int SvcType, int FromSvcNum, int ToSvcNum);
1550
1551 bool FlashServiceDecode(void *Data, tFlashService *Service);
1552 bool FlashServiceEncode(void *Data, tFlashService *Service);
1553
1554 typedef struct
1555 {
1557 byte unused1:1;
1558 byte DiSEqC10:3;
1559 byte unused2:3;
1560
1562
1564 word Switch22:1;
1565 word LowBand:14;
1566
1567 word HBFrq;
1568 byte DiSEqC12Flags[3];
1569
1570 byte unused3:6;
1572 byte unused4:1;
1573
1575
1578
1581
1582 byte unused5[2];
1583 } tFlashLNB;
1584
1585 typedef struct
1586 {
1589 char SatName[MAX_SatName];
1591 byte unknown1[22];
1593 byte unused2[8];
1595
1596 int FlashSatTablesGetTotal(void);
1597 bool FlashSatTablesGetInfo(int SatNum, tFlashSatTable *SatTable);
1598 bool FlashSatTablesDecode(void *Data, tFlashSatTable *SatTable);
1599
1600 typedef struct
1601 {
1602 byte SatIndex; //*1
1603 dword Frequency; //*1, 2
1604 word SymbolRate; //*1, 2
1607 word TSID; //*1, 2
1608 word OriginalNetworkID; //*1, 2
1609 word NetworkID; //*1, 2
1610 bool Pilot; //*1
1611 byte FEC; //*1: 0x0 = AUTO, 0x1 = 1_2, 0x2 = 2_3, 0x3 = 3_4,
1612 // 0x4 = 5_6 , 0x5 = 7_8, 0x6 = 8_9, 0x7 = 3_5,
1613 // 0x8 = 4_5, 0x9 = 9_10, 0xa = reserved, 0xf = NO_CONV
1614 byte Modulation; //*1: m from Flags1: 0=Auto, 1=QPSK, 2=8PSK, 3=16QAM
1615 //*2: 0=16QAM, 1=32QAM, 2=64QAM, 3=128QAM, 4=256QAM
1616 byte ModSystem; //*1: 0=DVBS, 1=DVBS2
1617 byte Polarisation; //*1: 0=V, 1=H
1618 byte LPHP;
1619 bool ClockSync; //*1
1620
1621 word unused1; //*1
1622 word unused2; //*2
1623 byte unused3; //*1
1624 word unused4; //*1
1626
1627 int FlashTransponderTablesGetTotal(int SatNum);
1628 bool FlashTransponderTablesGetInfo(int SatNum, int TransponderNum, tFlashTransponderTable *TransponderTable);
1629 bool FlashTransponderTablesSetInfo(int SatNum, int TransponderNum, tFlashTransponderTable *TransponderTable);
1630 int FlashTransponderTablesAdd(int SatNum, tFlashTransponderTable *TransponderTable);
1631 bool FlashTransponderTablesDel(int SatNum, int TransponderNum);
1632 int FlashTransponderFindIndex(dword SatIndex, dword NetworkID, dword TSID);
1633 int FlashTransponderFindIndex2(dword SatIndex, dword NetworkID, dword TSID, byte ModSystem);
1634
1635 bool FlashTransponderTablesDecode(void *Data, tFlashTransponderTable *TransponderTable);
1636 bool FlashTransponderTablesEncode(void *Data, tFlashTransponderTable *TransponderTable);
1637
1638 typedef struct
1639 {
1642
1643 word unknown1:3;
1644 word GMTCollection:3; //0=Normal, 1=CAS Only, 2=User Select
1645 word Mode:1; //0=Auto, 1=Manual
1646 word unknown2:1;
1647 word unknown3:8;
1648
1651 word unknown4:14;
1653
1654 bool FlashTimeGetInfo(tFlashTimeInfo *TimeInfo);
1655 bool FlashTimeSetInfo(tFlashTimeInfo *TimeInfo);
1656 bool FlashTimeDecode(tFlashTimeInfo *Data, tFlashTimeInfo *TimeInfo);
1657 bool FlashTimeEncode(tFlashTimeInfo *TimeInfo, tFlashTimeInfo *Data);
1658
1659 typedef struct
1660 {
1673 char FileName[131];
1675 dword EndTime;
1677 byte isRec;
1686 byte unused8[8];
1687 byte IceTV;
1688 byte unused9[13];
1689 byte unused10[8];
1690 dword rs_timestamp1; //RS timers are OT timers where (rs_timestamp1 != 0)
1691 char rs_episodeCRID[64];
1692 char rs_seriesCRID[64];
1698
1700 }tFlashTimer;
1701
1702 bool FlashTimerGetInfo(int TimerIndex, tFlashTimer *TimerInfo);
1703 bool FlashTimerSetInfo(int TimerIndex, tFlashTimer *TimerInfo);
1704 bool FlashTimerDecode(void *Data, tFlashTimer *TimerInfo);
1705 bool FlashTimerEncode(void *Data, tFlashTimer *TimerInfo);
1706 int FlashTimerStructSize(void);
1707
1708
1709 typedef struct
1710 {
1712 dword EndTime;
1714 TYPE_ReservationType ReservationType;
1718 char FileName[50][128];
1719
1721 word unknown2; //always 1?
1724
1725 bool FlashADGetInfo(tAutoDescrambleTimer *ADTimer);
1726 bool FlashADDecode(void *Data, tAutoDescrambleTimer *ADTimer);
1727 bool FlashADSetInfo(tAutoDescrambleTimer *ADTimer);
1728 bool FlashADEncode(void *Data, tAutoDescrambleTimer *ADTimer);
1729
1730
1731 typedef struct
1732 {
1733 char GroupName[12];
1734 word SvcNum[100];
1735 byte SvcType[100];
1738 } tFavorites;
1739
1740 int FlashFavoritesGetTotal(void);
1741 char *FlashFavoritesGetSelectedGroupName(char *FavName, byte FavNameSize);
1742 bool FlashFavoritesGetInfo(int FavNum, tFavorites *Favorites);
1744 bool FlashFavoritesSetInfo(int FavNum, tFavorites *Favorites);
1745 int FlashFavoritesFindService(int SvcType, int SvcNum);
1746 void FlashFavoritesGetParameters(int *NrGroups, int *NrSvcsPerGroup);
1747
1748
1749 dword FIS_vFlashBlockAutoDec(void);
1750 dword FIS_vFlashBlockDLNAData(void);
1751 dword FIS_vFlashBlockFavoriteGroup(void);
1752 dword FIS_vFlashBlockGameSaveData(void);
1753 dword FIS_vFlashBlockLanIPConfig(void);
1754 dword FIS_vFlashBlockNetwork(void);
1756 dword FIS_vFlashBlockOTAInfo(void);
1757 dword FIS_vFlashBlockProviderInfo(void);
1758 dword FIS_vFlashBlockRadioServices(void);
1759 dword FIS_vFlashBlockSatInfo(void);
1760 dword FIS_vFlashBlockServerData(void);
1761 dword FIS_vFlashBlockServiceName(void);
1762 dword FIS_vFlashBlockTVServices(void);
1763 dword FIS_vFlashBlockTimeInfo(void);
1764 dword FIS_vFlashBlockTimer(void);
1766
1767 //typedef enum
1768 //{
1769 // delete,
1770 // insert
1771 //} ReindexType;
1772
1773 //bool FlashAddFavourite (char *FavName, word Idx, bool TVService);
1774 //void FlashDeleteFavourites (void);
1775 //dword FlashFindCASServices (bool TVService, bool *FlagArray, dword *NewFlags);
1776 //dword FlashFindEndOfServiceNameTableAddress (void);
1777 //dword FlashFindEndOfServiceTableAddress(bool TVService);
1778 //dword FlashFindServiceByLCN (char* LCN, bool TVService, bool *FlagArray, dword *NewFlags);
1779 //dword FlashFindServiceByName (char* ChannelName, bool TVService, bool *FlagArray, dword *NewFlags);
1780 //dword FlashFindServiceByPartOfName (char* ChannelName, bool TVService, bool *FlagArray, dword *NewFlags);
1781 //SYSTEM_TYPE FlashGetType (void);
1782 //dword FlashInitialize (dword SystemID);
1783 void FlashProgram(void);
1784 //void FlashReindexFavourites (word ServiceIndex, int ServiceType, ReindexType itype);
1785 //void FlashReindexTimers (word ServiceIndex, int ServiceType, ReindexType itype);
1786 //dword FlashRemoveCASServices (bool TVService);
1787 //dword FlashRemoveServiceByIndex (int ChannelIndex, bool TVService);
1788 //dword FlashRemoveServiceByIndexString (char* ChannelIndex, bool TVService);
1789 //dword FlashRemoveServiceByLCN (char* LCN, bool TVService);
1790 //dword FlashRemoveServiceByName (char* ChannelName, bool TVService);
1791 //dword FlashRemoveServiceByPartOfName (char* ChannelName, bool TVService);
1792 //dword FlashRemoveServiceByUHF (char* UHFChannel, bool TVService, bool UseAUSChannelCoding);
1793 dword GetEEPROMAddress(void);
1794 word GetEEPROMPin(void);
1795 bool SetEEPROMPin(word NewPin);
1796
1797 //TYPE_SatInfoSTMS *FlashGetSatelliteByIndex (byte SatIdx);
1798 //TYPE_ServiceTMS *FlashGetServiceByIndex (word ServiceIdx, bool TVService);
1799 //TYPE_ServiceTMS *FlashGetServiceByName (char* ChannelName, bool TVService);
1800 //TYPE_TpInfoSTMS *FlashGetTransponderSByIndex (word TpIdx, byte SatIdx);
1801 //word FlashServiceAddressToServiceIndex (TYPE_ServiceTMS *ServiceAddress);
1802
1803
1804 /*****************************************************************************************************************************/
1805 /* FontManager */
1806 /*****************************************************************************************************************************/
1807
1808 #define DIR_FONTS "Fonts"
1809 #define FONTSDIR DIR_PROGRAMFILES "/" DIR_SETTINGS "/" DIR_FONTS
1810
1811 typedef struct
1812 {
1813 dword Width;
1814 dword Height;
1816 } tFontDef;
1817
1818 typedef struct
1819 {
1821 tFontDef FontDef[191];
1822 } tFontData;
1823
1824 dword FM_GetStringWidth(char *Text, tFontData *FontData);
1825 dword FM_GetStringHeight(char *Text, tFontData *FontData);
1826 void FM_PutString(word rgn, dword x, dword y, dword maxX, char * str, dword fcolor, dword bcolor, tFontData *FontData, byte bDot, byte align);
1827 void FM_PutStringAA(word rgn, dword x, dword y, dword maxX, char * str, dword fcolor, dword bcolor, tFontData *FontData, byte bDot, byte align, float AntiAliasFactor);
1828 bool FM_LoadFontFile(char *FontFileName, tFontData *FontData);
1829 void FM_FreeFontFile(tFontData *FontData);
1830
1831 //Unicode (UTF-8 encoded) version
1832 typedef struct
1833 {
1834 dword Unicode;
1836 word Width;
1838 }tFontDefUC;
1839
1840 typedef struct
1841 {
1842 dword Unicode;
1844 word Width;
1847
1848 typedef struct
1849 {
1855 } tFontDataUC;
1856
1857 void FM_MakeFontDir(void);
1858 bool FMUC_LoadFontFile(char *FontFileName, tFontDataUC *FontData);
1859 dword FMUC_GetStringHeight(const char *Text, tFontDataUC *FontData);
1860 dword FMUC_GetStringWidth(const char *Text, tFontDataUC *FontData);
1861 void FMUC_PutString(word rgn, dword x, dword y, dword maxX, const char * str, dword fcolor, dword bcolor, tFontDataUC *FontData, byte bDot, byte align);
1862 void FMUC_PutStringAA(word rgn, dword x, dword y, dword maxX, const char *str, dword fcolor, dword bcolor, tFontDataUC *FontData, byte bDot, byte align, float AntiAliasFactor);
1863 void FMUC_FreeFontFile(tFontDataUC *FontData);
1864
1865
1866 /*****************************************************************************************************************************/
1867 /* HDD Functions */
1868 /*****************************************************************************************************************************/
1869
1870 #define TAPFSROOT "/mnt/hd"
1871 #define FBLIB_DIR_SIZE 512
1872
1873 //Some of them are missing in the TF5k hdd.h and alle are missing in the TMS hdd.h
1874 #ifndef SEEK_SET
1875 #define SEEK_SET 0 /* set file offset to offset */
1876 #endif
1877
1878 #ifndef SEEK_CUR
1879 #define SEEK_CUR 1 /* set file offset to current plus offset */
1880 #endif
1881
1882 #ifndef SEEK_END
1883 #define SEEK_END 2 /* set file offset to EOF plus offset */
1884 #endif
1885
1886 typedef enum
1887 {
1897 DIR_TMP
1899
1900 typedef enum
1901 {
1909 }tFileInUse;
1910
1911 typedef struct
1912 {
1913 char DevPath[10];
1914 char MountPath[10];
1915 char DevName[16];
1916 dword SizeMB;
1917 dword PartType; //1 = jfs, 4 = FAT32, 5 = NTFS
1918 }textPartitionInfo; //used by the _extPartitionInfo struct
1919
1920 typedef enum
1921 {
1922 PF_FileNameOnly, //Get the file name
1923 PF_TAPPathOnly, //Get the TAP path w/o file name. The string willend in a "/"
1924 PF_LinuxPathOnly, //Get the Linux absolute path w/o file name. The string willend in a "/"
1925 PF_FullTAPPath, //Get the full TAP path including file name
1926 PF_FullLinuxPath //Get the full absolute Linux path including file name
1928
1929 #define INFBLOCKMAGIC "SFIB"
1930 #define INFBLOCKVERSION 1
1931
1932 typedef struct
1933 {
1934 char Magic[4]; //0
1935 byte Version; //4
1936 byte Recognized; //5
1937 word Duration; //6
1938 dword LastBlock; //8
1939 bool Seen; //12
1940 dword RecycleDate; //16
1941 char RecoverPath[FBLIB_DIR_SIZE]; //20
1942 dword NrBlocks; //532
1943 byte Filler2[1512]; //536
1944 //2048
1945 }tinfBlock;
1946
1947
1948 bool FixInvalidFileName(char *FileName);
1949 void ConvertPathType(const char *Source, char *Dest, tPathFormat DestFormat);
1950 tPathFormat GetPathType(const char *Source);
1951 int HDD_AAM_Disable(void);
1952 int HDD_AAM_Enable(byte AAMLevel);
1953 int HDD_APM_Disable(void);
1954 int HDD_APM_Enable(byte APMLevel);
1955 bool HDD_BuildExtDriveList(textPartitionInfo *ExtPartitionList, dword *NrListItems);
1956 bool HDD_ChangeDir(const char *Dir);
1957 void HDD_Delete(const char *FileName);
1958 bool HDD_Exist(const char *FileName);
1959 TYPE_File *HDD_FappendOpen(const char *FileName);
1960 bool HDD_FappendWrite(TYPE_File *file, const char *data);
1961 bool HDD_FindMountPoint(const char *File, char *MountPoint);
1962 bool HDD_FindMountPointDevice(const char *File, char *MountPoint, char *MountDevice);
1963 int HDD_FindSymbolicLink(const char *pathName, char *returnedPath, char *fullPathName);
1964 bool HDD_GetAbsolutePathByTypeFile(TYPE_File *File, char *AbsFileName);
1965 bool HDD_GetFileDir(const char *FileName, eRootDirs Root, char *Dir);
1966 bool HDD_GetFileSizeAndInode(const char *FileName, __ino64_t *CInode, __off64_t *FileSize);
1967 dword HDD_GetFileTimeByFileName(const char *FileName);
1968 dword HDD_GetFileTimeByTypeFile(TYPE_File *File);
1969 bool HDD_GetHddID(char *ModelNo, char *SerialNo, char *FirmwareNo);
1970 __ino64_t HDD_GetInodeByFileName(const char *Filename);
1971 __ino64_t HDD_GetInodeByTypeFile(TYPE_File *File);
1972 bool HDD_IdentifyDevice(char *IdentifyDeviceBuffer);
1973 bool HDD_InfBlockGet(const char *RecPath, tinfBlock *infBlock);
1974 bool HDD_InfBlockSet(const char *RecPath, tinfBlock *infBlock);
1975 bool HDD_Move(const char *FileName, const char *FromDir, const char *ToDir);
1976 bool HDD_Recycle(const char *FileName);
1977 bool HDD_RecycleSF(const char *FileName);
1978 void HDD_RemoveDir(const char *DirPath, bool Recursive);
1979 bool HDD_Rename(const char *FileName, const char *NewFileName);
1984 int HDD_Smart_ReadData(word *DataBuf);
1985 int HDD_Smart_ReadThresholdData(word *DataBuf);
1986 int HDD_Smart_ReturnStatus(void); ////if 20 is returned then one or more thresholds have been exceeded; -1 upon error
1987 bool HDD_Unrecycle(const char *FileName);
1988 bool HDD_UnrecycleSF(const char *FileName);
1989 bool HDD_Write(void *data, dword length, TYPE_File *f);
1990 tFileInUse HDD_isFileInUse(const char *FileName);
1991 void MakeUniqueFileName(char *FileName);
1992 void SeparateFileNameComponents(const char *FileName, char *Path, char *Name, char *Ext, int *Index, bool *isRec, bool *isDel);
1993
1994
1995 /*****************************************************************************************************************************/
1996 /* INI Files */
1997 /*****************************************************************************************************************************/
1998
1999 typedef enum
2000 {
2002 INILOCATION_NewFile, // returned by INIOpenFile only
2009
2010 INILOCATION INIOpenFile(char *FileName, char *AppName);
2011 bool INISaveFile(char *FileName, INILOCATION INILocation, char *AppName);
2012 void INICloseFile(void);
2013 bool INIKeyExists(char *Key);
2014 bool INIGetRGB(char *Key, byte *Red, byte *Green, byte *Blue, dword DefaultValue);
2015 bool INIGetARGB(char *Key, byte *Alpha, byte *Red, byte *Green, byte *Blue, dword DefaultValue);
2016 bool INIGetRGB8(char *Key, byte *Red, byte *Green, byte *Blue, dword DefaultValue);
2017 bool INIGetARGB8(char *Key, byte *Alpha, byte *Red, byte *Green, byte *Blue, dword DefaultValue);
2018 byte INIGetHexByte(char *Key, byte DefaultValue, byte MinValue, byte MaxValue);
2019 dword INIGetHexDWord(char *Key, dword DefaultValue, dword MinValue, dword MaxValue);
2020 word INIGetHexWord(char *Key, word DefaultValue, word MinValue, word MaxValue);
2021 long int INIGetInt(char *Key, long int DefaultValue, long int MinValue, long int MaxValue);
2022 bool INIGetString(char *Key, char *Value, char *DefaultValue, dword MaxLength);
2023 void INIKillKey(char *Key);
2024 INILOCATION INILocateFile(char *FileName, char *AppName);
2025 void INISetRGB(char *Key, byte Red, byte Green, byte Blue);
2026 void INISetRGB8(char *Key, byte Red, byte Green, byte Blue);
2027 void INISetARGB(char *Key, byte Alpha, byte Red, byte Green, byte Blue);
2028 void INISetARGB8(char *Key, byte Alpha, byte Red, byte Green, byte Blue);
2029 void INISetHexByte(char *Key, byte Value);
2030 void INISetHexDWord(char *Key, dword Value);
2031 void INISetHexWord(char *Key, word Value);
2032 void INISetInt(char *Key, long int Value);
2033 void INISetString(char *Key, char *Value);
2034
2035 INILOCATION LangLoadStrings(char *LangFile, dword NrStrings, int FallbackLang, char *AppName);
2036 void LangUnloadStrings(void);
2037 char *LangGetString(dword StringID);
2038 char *LangGetStringDefault(dword StringID, char *DefaultString);
2039
2040
2041 /*****************************************************************************************************************************/
2042 /* InstructionSequences */
2043 /*****************************************************************************************************************************/
2044
2045 dword TryResolve(char *Function);
2046
2047 dword FindInstructionSequence(char *SearchPattern, char *SearchMask, dword StartAddress, dword EndAddress, int EntryPointOffset, bool SearchForPrevADDIUSP);
2048 inline dword FIS_fwAppl_AddSvcName(void);
2049 inline dword FIS_fwAppl_CheckRecording(void);
2050 inline dword FIS_fwAppl_CheckRecording_Tuner(void);
2051 inline dword FIS_fwAppl_CiMenu(void);
2052 inline dword FIS_fwAppl_CiplusMenu(void);
2053 inline dword FIS_fwAppl_ClrTimer(void);
2054 inline dword FIS_fwAppl_ConvertToValidUTF8Str(void);
2055 inline dword FIS_fwAppl_DeleteRadioSvcName(void);
2056 inline dword FIS_fwAppl_DeleteTvSvcName(void);
2057 inline dword FIS_fwAppl_EnterNormal(void);
2058 inline dword FIS_fwAppl_EvtProc_PincodeKey(void);
2059 inline dword FIS_fwAppl_ExecProgram(void);
2060 inline dword FIS_fwAppl_ExportChData(void);
2061 inline dword FIS_fwAppl_GetCurrentEvent(void);
2062 inline dword FIS_fwAppl_GetEvtCount(void);
2063 inline dword FIS_fwAppl_GetEvtCountInFreePool(void);
2064 inline dword FIS_fwAppl_GetEvtListHeadInHash(void);
2065 inline dword FIS_fwAppl_GetEvtListHeadInUsePool(void);
2066 inline dword FIS_fwAppl_GetFreeExtRecordSpace(void);
2067 inline dword FIS_fwAppl_GetIsExternal(void);
2068 inline dword FIS_fwAppl_GetSameTimeEvent(void);
2069 inline dword FIS_fwAppl_GetStreamFormat(void);
2070 inline dword FIS_fwAppl_KeyCvt(void);
2071 inline dword FIS_fwAppl_ImportChData(void);
2072 inline dword FIS_fwAppl_InitTempRec(void);
2073 inline dword FIS_fwAppl_IsTimeShifting(void);
2074 inline dword FIS_fwAppl_PvrList(void);
2075 inline dword FIS_fwAppl_PvrList_SetListType(void);
2076 inline dword FIS_fwAppl_PvrPause(void);
2077 inline dword FIS_fwAppl_RestartTimeShiftSvc(void);
2078 inline dword FIS_fwAppl_SetApplVer(void);
2079 inline dword FIS_fwAppl_SetIsExternal(void);
2080 inline dword FIS_fwAppl_SetPlaybackSpeed(void);
2081 inline dword FIS_fwAppl_SetProviderName(void);
2082 inline dword FIS_fwAppl_SetTimeShift(void);
2083 inline dword FIS_fwAppl_ShoutCast(void);
2084 inline dword FIS_fwAppl_StartPlayback(void);
2085 inline dword FIS_fwAppl_StartPlaybackMedia(void);
2086 inline dword FIS_fwAppl_StartPlaybackMp3(void);
2087 inline dword FIS_fwAppl_StartPlaybackDivx(void);
2088 inline dword FIS_fwAppl_StartTempRec(void);
2089 inline dword FIS_fwAppl_StopPlaying(void);
2090 inline dword FIS_fwAppl_StopRecPlaying(void);
2091 inline dword FIS_fwAppl_StopTempRec(void);
2092 inline dword FIS_fwAppl_TimeToLocal(void);
2093 inline dword FIS_fwAppl_WaitEvt(void);
2094 inline dword FIS_fwAppl_WriteFlash(void);
2095 inline dword FIS_fwAppl_WriteRecInfo(void);
2096 inline dword FIS_fwApplChannel_GetAgc(void);
2097 inline dword FIS_fwApplChannel_GetBer(void);
2098 inline dword FIS_fwApplCiplus_CamSelect(void);
2099 inline dword FIS_fwApplCiplus_GetSelectedCam(void);
2100 inline dword FIS_fwApplClock_SetTimeMJD(void);
2101 inline dword FIS_fwApplHdd_FileCutPaste(void);
2102 inline dword FIS_fwApplHdd_FreeSize(void);
2103 inline dword FIS_fwApplHdd_GetFileInfo(void);
2104 inline dword FIS_fwApplHdd_GetInfoFromExternalDevice(void);
2105 inline dword FIS_fwApplHdd_RestoreWorkFolder(void);
2106 inline dword FIS_fwApplHdd_SaveWorkFolder(void);
2107 inline dword FIS_fwApplHdd_SelectFolder(void);
2108 inline dword FIS_fwApplHdd_SetWorkFolder(void);
2109 inline dword FIS_fwApplIcelink_EitFromHdd(void);
2110 inline dword FIS_fwApplOsd_DrawJpeg(void);
2111 inline dword FIS_fwApplPin_Delete(void);
2112 inline dword FIS_fwApplPin_IsLockPopup(void);
2113 inline dword FIS_fwApplSvc_GetSvcIdx(void);
2114 inline dword FIS_fwApplSvc_GetTpIdx(void);
2115 inline dword FIS_fwApplTap_CallEventHandler(void);
2116 inline dword FIS_fwApplTap_GetEmptyTask(void);
2117 inline dword FIS_fwApplTimer_OptimizeList(void);
2118 inline dword FIS_fwApplVfdSendData(void);
2119 inline dword FIS_fwApplVfdStart(void);
2120 inline dword FIS_fwApplVfdStop(void);
2121
2122 inline dword FIS_fwcurl_easy_cleanup(void);
2123 inline dword FIS_fwcurl_easy_init(void);
2124 inline dword FIS_fwcurl_easy_perform(void);
2125 inline dword FIS_fwcurl_easy_setopt(void);
2126 inline dword FIS_fwcurl_global_cleanup(void);
2127 inline dword FIS_fwcurl_global_init(void);
2128
2129 inline dword FIS_fwDevEeprom_GetMacAddr(void);
2130 inline dword FIS_fwDevEeprom_Info(void);
2131 inline dword FIS_fwDevFront_PowerOffCancel(void);
2132 inline dword FIS_fwDevFront_PowerOffReply(void);
2133 inline dword FIS_fwDevFront_SetIlluminate(void);
2134 inline dword FIS_fwDevHdd_DeviceClose(void);
2135 inline dword FIS_fwDevHdd_DeviceOpen(void);
2136 inline dword FIS_fwDevService_Mute(void);
2137 inline dword FIS_fwEeprom_DirectWrite(void);
2138
2139 inline dword FIS_fwezxml_attr(void);
2140 inline dword FIS_fwezxml_child(void);
2141 inline dword FIS_fwezxml_error(void);
2142 inline dword FIS_fwezxml_free(void);
2143 inline dword FIS_fwezxml_idx(void);
2144 inline dword FIS_fwezxml_parse_file(void);
2145 inline dword FIS_fwezxml_parse_str(void);
2146
2147 inline dword FIS_fwPowerOff(void);
2148 inline dword FIS_fwPutDevEvt(void);
2149 inline dword FIS_fwSetIrCode(void);
2150 inline dword FIS_fwTimeToLinux(void);
2151
2152 inline dword FIS_vApplState(void);
2153 inline dword FIS_vAudioTrack(void);
2154 inline dword FIS_vbookmarkTime(void);
2155 inline dword FIS_vBootReason(void);
2156 inline dword FIS_vCheckAutoDecTimerId(void);
2157 inline dword FIS_vciMenuMode(void);
2158 inline dword FIS_vciplusMenuMode(void);
2159 inline dword FIS_vCurTapTask(void);
2160 inline dword FIS_vDirectSvcNumTimerId(void);
2161 inline dword FIS_vdupEntry(void);
2162 inline dword FIS_vEEPROM(void);
2163 inline dword FIS_vEEPROMPin(void);
2164 inline dword FIS_vEtcInfo(void);
2165 inline dword FIS_vExtPartitionInfo(void);
2166 inline dword FIS_vExtTsFolder(void);
2167 inline dword FIS_vfavName(void);
2168 inline dword FIS_vFlash(void);
2169 inline dword FIS_vfrontfd(void);
2170 inline dword FIS_vgmt(void);
2171 inline dword FIS_vGrid(void);
2172 inline dword FIS_vHddDivxFolder(void);
2173 inline dword FIS_vhddRecordFile(void);
2174 inline dword FIS_vHddTapFolder(void);
2175 inline dword FIS_vHddTsFolder(void);
2176 inline dword FIS_vIboxTimerId(void);
2177 inline dword FIS_vIsAllPartitionInvalid(void);
2178 inline dword FIS_vIsPipActive(void);
2179 inline dword FIS_vIsPopUpOn(void);
2180 inline dword FIS_vMACAddress(void);
2181 inline dword FIS_vnDupTimer(void);
2182 inline dword FIS_vnExtPartition(void);
2183 inline dword FIS_vnPipSvcNum(void);
2184 inline dword FIS_vnRadioSvc(void);
2185 inline dword FIS_vnTvSvc(void);
2186 inline dword FIS_vOsdMap(void);
2187 inline dword FIS_vOsdOutBuf(void);
2188 inline dword FIS_vParentalInfo(void);
2189 inline dword FIS_vPhotoAlbumInfo(void);
2190 inline dword FIS_vPipH(void);
2191 inline dword FIS_vPipSvcNum(void);
2192 inline dword FIS_vPipW(void);
2193 inline dword FIS_vPipX(void);
2194 inline dword FIS_vPipY(void);
2195 inline dword FIS_vPvrPlayInfo(void);
2196 inline dword FIS_vPvrRecTempInfo(void);
2197 inline dword FIS_vPvrRecTsInfo(void);
2198 inline dword FIS_vPvrRecTsPlayInfo(void);
2199 inline dword FIS_vRECSlotAddress(byte Slot);
2200 inline dword FIS_vSelectedPartition(void);
2201 inline dword FIS_vShoutCastInfo(void);
2202 inline dword FIS_vShoutCastState(void);
2203 inline dword FIS_vTAPTable(void);
2204 inline dword FIS_vTapSysOsdCtrl(void);
2205 inline dword FIS_vTempRecSlot(void);
2206 inline dword FIS_vTimerEditInfo(void);
2207 inline dword FIS_vTimerTempInfo(void);
2208 inline dword FIS_vTopEvent(void);
2209 inline dword FIS_vVfdBrightTimerId(void);
2210 inline dword FIS_vVfdTimerId(void);
2211
2212 /*****************************************************************************************************************************/
2213 /* LogoManager */
2214 /*****************************************************************************************************************************/
2215
2216 #define DIR_LOGOS "Logos"
2217 #define LOGOROOT DIR_PROGRAMFILES "/" DIR_SETTINGS "/" DIR_LOGOS
2218 #define LOGOPACK "LogoPack.tar"
2219 #define LOGOCACHE "Logo.cache"
2220 #define LOGOCACHEID "LGC"
2221 #define LOGOCACHEVERSION 2
2222 #define LILNAME "Logos.lil"
2223
2224 typedef enum
2225 {
2237
2238 typedef enum
2239 {
2245
2246 typedef enum
2247 {
2252
2253 void LogoManager_Initialize(void *CallbackRoutine);
2255 char *LogoManager_ChannelNameToLogoName(char *ChannelName, char *LogoName, int LogoNameSize);
2256 void LogoManager_Cleanup(void);
2257 void LogoManager_CleanupMemory(void);
2258 bool LogoManager_LogoCacheLoad(void);
2260 TYPE_GrData *LogoManager_GetLogoByChannelID(ulong64 ChannelID, tLogoStyle LogoStyle, tLogoSize LogoSize, tLogoAspect LogoAR);
2261 TYPE_GrData *LogoManager_GetLogoByLogoName(char *LogoName, tLogoStyle LogoStyle, tLogoSize LogoSize, tLogoAspect LogoAR);
2262 TYPE_GrData *LogoManager_GetLogoByChannelName(char *ChannelName, tLogoStyle LogoStyle, tLogoSize LogoSize, tLogoAspect LogoAR);
2263 TYPE_GrData *LogoManager_GetLogoByChannel(int SvcType, int SvcNum, tLogoStyle LogoStyle, tLogoSize LogoSize, tLogoAspect LogoAR);
2264 char *LogoManager_GetDirectory(tLogoStyle LogoStyle, tLogoAspect LogoAR, char *LogoPath);
2265 char *LogoManager_GetPathToLogoByChannelID(ulong64 ChannelID, tLogoStyle LogoStyle, tLogoSize LogoSize, tLogoAspect LogoAR, char *LogoPath);
2266 bool LogoManager_LogosAvailable(tLogoStyle LogoStyle);
2267 int LogoManager_UpdateLIL(void);
2268 void LogoManager_ProcessLILAdd(char *AddFileName);
2269 ulong64 LogoManager_CalculateChannelID(word SatLongitude, word NetworkID, word TSID, word ServiceID);
2270 ulong64 LogoManager_GetChannelID(int SvcType, int SvcNum);
2271 bool LogoManager_GetServiceNumByChannelID(ulong64 ChannelID, int *SvcType, int *SvcNum);
2272
2273 //The callback parameter may point to the following prototype
2274 // void Callback(int CallbackType, int Param);
2275 //
2276 //It gets called under the following circumstances:
2277 // * Reports the number of successfully loaded logos (CallbackType=0, Param1=number of logos)
2278 // * A new logo package (Logos.tar) has been found (CallbackType=1, Param1=0)
2279 // * The cache file needs to be rebuilt (CallbackType=2, Param1 reflects the progress)
2280 // * The number of of lgoo files found during the rebuild (CallbackType=4, Param1 is the number of files)
2281 // * The cache rebuild has finished (CallbackType=3, Param1=0)
2282 // * An error occurs (CallbackType=-1, Param1 reports one of the following errors:
2283 // * 0: failed to reserve memory for LogoData
2284 // * 1: cache file is invalid
2285 // * 2: failed to open a logo file
2286
2287
2288 /*****************************************************************************************************************************/
2289 /* REC Stream functions */
2290 /*****************************************************************************************************************************/
2291
2292 //ST_S = 1
2293 //ST_ST = 2
2294 //ST_T = 3
2295 //ST_C = 4
2296 //ST_CT = 5
2297 //ST_T5700 = 6
2298 //ST_T5800 = 7
2299 //ST_TMSS = 8
2300 //ST_TMST = 9
2301 //ST_TMSC = a
2302
2303 typedef struct
2304 {
2305 dword HeaderMagic; //123456789a
2306 word HeaderVersion; //123456789a
2307 dword HeaderStartTime; // 89a
2308 word HeaderDuration; //13467 89a
2310 word HeaderSvcNumber; //13467
2311 word HeaderSvcType; //13467
2312 byte HeaderFlags; // 89a
2313 bool HeaderCopyFlag; // 89a
2314 bool HeaderTSFlag; // 89a
2315 byte HeaderFlags2; // 89a
2316 byte HeaderUnknown1[4]; //
2317 byte HeaderUnknown2[2]; //13467 89a
2318 byte HeaderUnknown4[10]; // 89a
2319
2320 byte SISatIndex; //13467 89a
2321 byte SIServiceType; //13467 89a
2322 word SITPIdx; //13467 89a
2323 byte SITunerNum; //13467 89a
2324 byte SIDelFlag; //13467 89a
2325 byte SICASFlag; //13467 89a
2326 byte SILockFlag; //13467 89a
2327 byte SISkipFlag; //13467 89a
2328 word SIServiceID; //13467 89a
2329 word SIPMTPID; //13467 89a
2330 word SIPCRPID; //13467 89a
2331 word SIVideoPID; //13467 89a
2332 word SIAudioPID; //13467 89a
2333 char SISvcName[28]; //13467 89a
2336
2337 byte TPSatIndex; //1 89a
2338 word TPFlags2; // 8
2339 byte TPPolarization; //1 8
2340 byte TPMode; //1 8
2341 byte TPSystem; // 8
2342 byte TPModulation; //4 8
2343 byte TPFEC; // 8
2344 byte TPPilot; // 8
2345 word TPChannelNumber; //367 9a
2346 byte TPBandwidth; //367 9a
2347 byte TPLPHPStream; //367 9a
2348 dword TPFrequency; //13467 89a
2349 word TPSymbolRate; //14 8
2350 word TPTSID; //13467 89a
2351 word TPOriginalNetworkID; //3467 89a
2352 word TPNetworkID; //367 9a
2353 byte TPClockSync; // 8
2354 byte TPUnknown2; //367 89a
2355 byte TPUnknown3[2]; //1
2356 byte TPUnknown4; //367 9a
2357 byte TPUnknown5[2]; //1
2358 byte TPUnknown6; //4
2359 byte TPUnknown7[8]; //6
2360
2361 dword EventDuration; //13467 89a
2362 dword EventEventID; //13467 89a
2363 dword EventStartTime; //13467 89a
2364 dword EventEndTime; //13467 89a
2365 byte EventRunningStatus; //13467 89a
2366 byte EventParentalRate; //13467 89a
2367 char EventEventName[273]; //13467 89a
2368 char EventEventDescription[273]; //13467 89a
2369 word EventServiceID; //13467
2370 byte EventUnknown1[2]; //13467 89a
2371 byte EventUnknown2[14]; //13467
2372
2373 word ExtEventServiceID; //13467 89a
2374 dword ExtEventEventID; //13467 89a
2375 word ExtEventTextLength; //13467 89a
2376 char ExtEventText[1024]; //13467 89a
2377 byte ExtEventUnknown2[2]; //13467
2378 byte ExtEventNrItemizedPairs; //13467 89a
2379 byte ExtEventUnknown1[3]; //13467 89a
2380
2381 byte CryptFlag; //13467 89a
2382 byte CryptUnknown2[3]; //13467
2383
2384 dword NrBookmarks; //13467
2385 dword Bookmark[177]; //13467 89a
2386 dword Resume; //13467 89a
2388
2389 typedef struct
2390 {
2391 dword SHOffset:24;
2392 dword FrameType:8;
2398 dword PTS2;
2399 dword NextPH;
2400 dword Time;
2401 dword Zero5;
2402 } tnavSD;
2403
2404 typedef struct
2405 {
2406 dword SEIPPS:24;
2407 dword FrameType:8;
2413 dword SEIPTS;
2414 dword NextAUD;
2415 ulong64 Timems;
2416 dword SEISPS;
2417 dword SPSLen;
2418 dword IFrame;
2419 dword Zero2;
2420 dword Zero3;
2421 dword Zero4;
2422 dword Zero5;
2423 dword Zero6;
2424 } tnavHD;
2425
2426 char *GetRecExtension(void);
2427 bool HDD_DecodeRECHeader(byte *Buffer, tRECHeaderInfo *RECHeaderInfo, SYSTEM_TYPE SystemType);
2428 bool HDD_EncodeRECHeader(byte *Buffer, tRECHeaderInfo *RECHeaderInfo, SYSTEM_TYPE SystemType);
2429 int HDD_FindPCR(const byte *pBuffer, dword BufferSize, word PID); //Returns the PCR in minutes
2430 byte *HDD_GetPvrRecTsInfoPointer(byte Slot);
2431 byte *HDD_GetPvrRecTsPlayInfoPointer(byte Slot);
2432 bool HDD_GetRecSlotFiles(byte Slot, TYPE_File **RecFile, TYPE_File **InfFile, TYPE_File **NavFile);
2433 bool HDD_isAnyRecording(void);
2434 bool HDD_isCryptedStream(const byte *Buffer, dword BufferSize);
2435 bool HDD_isExtRecording(void);
2436 bool HDD_isRecFileName(const char *FileName);
2437 bool HDD_isRecording(byte RecSlot);
2438 char *HDD_MakeNewRecName(const char *fname, word sequence, char *NewRecname, int NewRecNameSize);
2439 dword HDD_NumberOfRECSlots(void);
2440
2441 bool HDD_RecSlotDecode(byte Slot, tFlashTimer *RecSlot);
2442 bool HDD_RecSlotEncode(byte Slot, tFlashTimer *RecSlot); //The buffer needs to be at least 8kB in size
2443 bool HDD_RECSlotSetDuration(byte Slot, word Duration);
2444 word HDD_SetExtRecording(bool ExtDisk);
2445
2446 bool infData_isAvail(const char *infFileName, const char *NameTag, dword *PayloadSize);
2447 bool infData_Get(const char *infFileName, const char *NameTag, dword *PayloadSize, byte **Payload);
2448 bool infData_GetNameByIndex(const char *infFileName, dword NameIndex, char *NameTag);
2449 bool infData_Set(const char *infFileName, char *NameTag, dword PayloadSize, byte *Payload);
2450 bool infData_Delete(const char *infFileName, const char *NameTag);
2451
2452 typedef struct
2453 {
2454 byte *PSData;
2456 ulong64 *FileOffset;
2457 } tBuffer;
2458
2459 typedef struct
2460 {
2461 word PID;
2462 tBuffer Buffer[2];
2472 } tPSBuffer;
2473
2474 bool PSBuffer_Init(tPSBuffer *PSBuffer, word PID, int BufferSize);
2475 void PSBuffer_Free(tPSBuffer *PSBuffer);
2476 bool PSBuffer_ProcessTSPacket(tPSBuffer *PSBuffer, const byte *TSBuffer, ulong64 FileOffset);
2477
2478
2479 /*****************************************************************************************************************************/
2480 /* Shutdown */
2481 /*****************************************************************************************************************************/
2482
2483 typedef enum
2484 {
2487 TaskVideo = 0xe503,
2488 TaskAudio = 0xe603,
2489 TaskPower = 0xef00
2491
2492 bool Shutdown(TaskEnum Task);
2493 bool Reboot(bool StopRecordings);
2494 bool SDS(void);
2495 void SDSTerminate(void);
2496
2497
2498 /*****************************************************************************************************************************/
2499 /* Strings */
2500 /*****************************************************************************************************************************/
2501
2502 typedef enum
2503 {
2509
2510 char *ansicstr(const char *string, int len, int flags, int *sawc, int *rlen);
2511 void DeleteAt(char *SourceString, int Pos, int Len);
2512 void ExtractLine(char *Text, char *Line);
2513 size_t GetLine(const char *data, bool strip);
2514 void GetStringEncoding(const char *Text, bool *hasAnsiChars, bool *hasUTFChars);
2515 byte *GetUCPos(const byte *String, int CharPos);
2516 void InsertAt(const char *SourceString, int Pos, char *NewString);
2517 bool isUTF8Char(const byte *p, byte *BytesPerChar);
2518 bool isUTFToppy(void);
2519 void LowerCase(char *string);
2520 void MakeValidFileName(char *strName, eRemoveChars ControlCharacters);
2521 char *ParseLine(const char *zeile, size_t *n, char delim);
2522 void ReplaceInvalidFileNameChars(char *strName);
2523 char *RTrim(char *s);
2524 void SeparatePathComponents(const char *FullName, char *Path, char *FileName, char *FileExt);
2525 byte *SkipCharTableBytes(const byte *p);
2526 byte *strcpyUC(byte *dest, const byte *src);
2527 bool StringEndsWith(const char *text, const char *postfix);
2528 int strlenUC(const byte *s);
2529 bool StrMkISO(byte *SourceString);
2530 bool StrMkUTF8(byte *SourceString, size_t SourceSize, byte DefaultISO8859CharSet);
2531 byte *strncpyUC(byte *dest, const byte *src, size_t n);
2532 bool StrReplace(char *String, const char *Find, const char *Replace);
2533 void StrToISO(const byte *SourceString, byte *DestString);
2534 void StrToISOAlloc(const byte *SourceString, byte **DestString);
2535 bool StrToUTF8(const byte *SourceString, byte *DestString, byte DefaultISO8859CharSet);
2536 void UpperCase(char *string);
2537 dword UTF8ToUTF32(const byte *UTF8Character, byte *BytesPerChar);
2538 void UTF32ToUTF8(dword UTF32Character, byte *UTF8Character, byte *BytesPerChar);
2539 char *ValidFileName(const char *strName, eRemoveChars ControlCharacters, char *Result, int ResultSize);
2540
2541
2542 /*****************************************************************************************************************************/
2543 /* String database */
2544 /*****************************************************************************************************************************/
2545
2546 typedef struct
2547 {
2548 dword DBSize;
2549 char *DB;
2550 char *DBPtr;
2551 char *DBEnd;
2552 } tStringDB;
2553
2554 bool StringDBInit(tStringDB *StringDB, dword InitialSize);
2555 char *StringDBGet(tStringDB *StringDB, dword Index);
2556 dword StringDBAdd(tStringDB *StringDB, char *Text);
2557 int StringDBCountRecords(tStringDB *StringDB);
2558 dword StringDBCurrent(tStringDB *StringDB);
2559 dword StringDBFirst(tStringDB *StringDB);
2560 dword StringDBNext(tStringDB *StringDB);
2561 dword StringDBPrev(tStringDB *StringDB);
2562 bool StringDBDel(tStringDB *StringDB);
2563 bool StringDBLoad(tStringDB *StringDB, char *FileName);
2564 bool StringDBLoadFromFile(tStringDB *StringDB, TYPE_File *f);
2565 bool StringDBSave(tStringDB *StringDB, char *FileName);
2566 bool StringDBSaveToFile(tStringDB *StringDB, TYPE_File *f);
2567 bool StringDBEOF(tStringDB *StringDB);
2568 bool StringDBDestroy(tStringDB *StringDB);
2569
2570
2571 /*****************************************************************************************************************************/
2572 /* TAPs */
2573 /*****************************************************************************************************************************/
2574
2575 typedef struct
2576 {
2577 dword Status; //0x00: 1 = Running, 2 = TAP_Exit(); ???
2578 dword dlopen; //0x04
2579 TYPE_File *file; //0x08
2580 dword unused1; //0x0c
2581 dword TAP_Main; //0x10
2582 dword TAP_EventHandler; //0x14
2583 dword unused2; //0x18
2584 dword unused3; //0x1c
2585 dword unused4; //0x20
2586 dword unused5; //0x24
2588 } tTMSTAPTaskTable; //44 (0x2c) Bytes * 16 TAPs = 704 bytes
2589
2590 typedef struct
2591 {
2592 dword TAPID;
2593 dword Date;
2594 char TAPName[MAX_PROGRAM_NAME];
2595 char Author[MAX_AUTHOR_NAME];
2596 char Description[MAX_DESCRIPTION];
2597
2598#ifdef MAX_PROGRAM_VERSION
2599 char TAPVersion[MAX_PROGRAM_VERSION]; //This field will only be populated when the TAP has been compiled with a modified tap.h
2600#endif
2601
2602 } tTAPInfo;
2603
2604 dword HDD_TAP_Callback(dword TAPID, void *ProcedureAddress, dword param1, dword param2, dword param3, dword param4);
2605 bool HDD_TAP_CheckCollision(void);
2606 bool HDD_TAP_Disable(dword TAPID, bool DisableEvents);
2607 dword HDD_TAP_DisableAll(bool DisableEvents);
2608 int HDD_TAP_GetCurrentDir(char* CurrentDir);
2609 bool HDD_TAP_GetFileNameByIndex(int Index, char **TAPFileName);
2610 dword HDD_TAP_GetIDByFileName(const char *TAPFileName);
2611 dword HDD_TAP_GetIDByIndex(int TAPIndex);
2612 int HDD_TAP_GetIndexByID(dword TAPID);
2613 bool HDD_TAP_GetInfo(const char *FileName, tTAPInfo *pTAPInfo);
2614 void *HDD_TAP_GetStartParameter(void);
2615 bool HDD_TAP_PopDir(void);
2616 bool HDD_TAP_PushDir(void);
2617 dword HDD_TAP_SendEvent(dword TAPID, bool AllowParamInterception, word event, dword param1, dword param2);
2618 dword HDD_TAP_Start(const char *TAPFileName, bool BatchMode, void* ParameterBlock, dword *TAPID);
2619 bool HDD_TAP_StartedByTAP(void);
2620 void HDD_TAP_Terminate(dword TAPID);
2621 bool HDD_TAP_isAnyRunning(void);
2622 bool HDD_TAP_isBatchMode(void);
2623 dword HDD_TAP_isDisabled(dword TAPID);
2624 bool HDD_TAP_isDisabledAll(void);
2625 bool HDD_TAP_isRunning(dword TAPID);
2626 bool KeyTranslate(bool Enable, void *EventHandler);
2627 bool NoAutoStartTAP(void);
2628 void *TAP_MemRealloc(void *ptr, size_t OldSize, size_t NewSize, bool InitMemory);
2629 void TAP_EnterNormalNoInfo(void);
2630
2631
2632 /*****************************************************************************************************************************/
2633 /* TAP Comm */
2634 /*****************************************************************************************************************************/
2635
2636 #define EVT_TAPCOM 0xFFF
2637 // Ergänzt die event codes in tap.h, da dort alle auf 00 enden, besteht die Hoffnung,
2638 // dass 0xFFF auch in zukünftigen API-Versionen nicht verwendet wird.
2639
2640 // Die folgenden Konstanten werden in TAPCOM_OpenChannel und TAPCOM_GetChannel
2641 // verwendet, um die Anwendung zu identifizieren, für die eine Nachricht
2642 // bestimmt ist.
2643
2644 #define TAPCOM_App_BROADCAST 0
2645 // Kann verwendet werden, um eine Nachricht an alle TAPs zu schicken, die TAPCOM
2646 // unterstützen.
2647
2648 #define TAPCOM_NO_RETURN_VALUE 0x80000000
2649
2650 typedef enum
2651 {
2652 TAPCOM_Status_OPEN, //Sobald der Block angelegt wird
2653 TAPCOM_Status_SERVER_NOT_AVAILABLE, //Falls das Server-TAP nicht geladen ist (statt OPEN)
2654 TAPCOM_Status_ACKNOWLEDGED, //Sobald der Server via ProcessEvent zugreift
2655 TAPCOM_Status_REJECTED, //Dem Server unbekannter Befehl oder gerade nicht ausführbar
2656 TAPCOM_Status_FINISHED, //Von Server abgeschlossen
2657 TAPCOM_Status_VERSIONMISMATCH, //Die TAPCOM-Versionen des Servers und des Clients passen nicht zusammen
2658 TAPCOM_Status_NO_CHANNEL //Keine gültige Verbindung
2660
2661 typedef void* TAPCOM_Channel;
2662
2663 //Client Funktionen
2664 TAPCOM_Channel TAPCOM_OpenChannel(dword TargetID, dword ServiceID, dword ParamBlockVersion, void *ParamBlock);
2666 dword TAPCOM_LastAlive(TAPCOM_Channel Channel);
2668 void TAPCOM_CloseChannel(TAPCOM_Channel Channel);
2669
2670 //Server-Funktionen
2671 TAPCOM_Channel TAPCOM_GetChannel(dword param1, dword *CallerID, dword *ServiceID, dword *ParamBlockVersion, void **ParamBlock); // Rückgabewert: Pointer auf (internen) Kommunikationskanal.
2672 void TAPCOM_Reject(TAPCOM_Channel Channel);
2673 void TAPCOM_Finish(TAPCOM_Channel Channel, int val);
2674 void TAPCOM_StillAlive(TAPCOM_Channel Channel);
2675
2676
2677 /*****************************************************************************************************************************/
2678 /* tapapifix */
2679 /*****************************************************************************************************************************/
2680
2681 // missing items
2682 #define LAN_Persian LAN_Iran
2683 #define LAN_Suomi (LAN_Persian + 1)
2684 #define LAN_Slovak (LAN_Persian + 2)
2685 #define LAN_Thai (LAN_Persian + 3)
2686 #define LAN_Czech (LAN_Persian + 4)
2687 #define LAN_Bulgarian (LAN_Persian + 5)
2688
2689
2690 /*****************************************************************************************************************************/
2691 /* Time Functions */
2692 /*****************************************************************************************************************************/
2693
2694 typedef enum
2695 {
2701
2702 #define DATE(mjd, h, m) ((dword) (((mjd) << 16) | ((h) << 8) | (m)))
2703 #define MJD(d) ((word) (((d) >> 16) & 0xffff))
2704 #define TIME(d) ((word) ((d) & 0xffff))
2705 #define HOUR(d) ((byte) (((d) >> 8) & 0xff))
2706 #define MINUTE(d) ((byte) ((d) & 0xff))
2707
2708 dword AddSec(dword date, byte dateSec, int add);
2709 dword AddTime(dword pvrDate, int addMinutes);
2710 int cronRegisterEvent(long frequency, dword firstExecution, void *callback);
2711 void cronEventHandler(void);
2712 bool cronGetEvent(int Index, int *frequency, dword *nextExecution);
2713 bool cronModifyEvent(int Index, int frequency, dword nextExecution);
2714 bool cronUnregisterEvent(int Index);
2715 void cronUnregisterAllEvents(void);
2716 char *DayOfWeek(byte WeekDay);
2717 dword DST_FindNextTransition(void);
2718 dword DST_CalcTransition(byte ruleOrdinal, byte ruleDay, byte ruleMonth, byte ruleHour, byte ruleMin, dword StartDate);
2719 void DST_SetDSTRule(tDSTRule NewDSTRule);
2720 bool GetCurrentTimeZone(short *TZOffset, bool *DST);
2721 bool isMJD(dword MJD);
2722 dword LocalTime2UTC(dword LocalTime, short *Offset); //Uses DST_SetDSTRule()
2723 dword Now(byte *Sec);
2724 dword PvrTimeToLinux(dword PVRTime);
2725 dword TF2UnixTime(dword TFTimeStamp);
2726 long TimeDiff(dword FromTime, dword ToTime);
2727 char *TimeFormat(dword DateTime, byte Sec, eTimeStampFormat TimeStampFormat, char *Result);
2728 bool TimerPaddingAPICheck(void);
2729 bool TimerPaddingGet(short *PrePaddingMin, short *PostPaddingMin);
2730 bool TimerPaddingSet(short *PrePaddingMin, short *PostPaddingMin);
2731 dword Unix2TFTime(dword UnixTimeStamp);
2732 dword UTC2LocalTime(dword UTCTime, short *Offset); //Uses DST_SetDSTRule()
2733
2734 /*****************************************************************************************************************************/
2735 /* TMS OSD Menu */
2736 /* Menu, dialog box and message box */
2737 /*****************************************************************************************************************************/
2738
2739 typedef enum
2740 {
2743 LH_Tiny
2745
2746 typedef enum
2747 {
2754
2755 enum // human-friendly arguments to OSDMenuUpdate()
2756 {
2758 NO_SYNC
2760
2761 //Main OSD
2762 #define OSDMenuGetW OSDMenuGetStringWidth // potential legacy usage
2763 void OSDMenuInitialize(bool AllowScrollingOfLongText, bool HasValueColumn, bool NumberedItems, bool ScrollLoop, const char *TitleLeft, const char *TitleRight);
2764 void OSDMenuSetFont(tFontDataUC *LeftTitle, tFontDataUC *RightTitle, tFontDataUC *ListNumber, tFontDataUC *ListName, tFontDataUC *ListValue, tFontDataUC *Buttons, tFontDataUC *Memo);
2765 void OSDMenuSetMemo(bool SelectionAlwaysOnTop);
2766 void OSDMenuSetCursor(tCursorType CursorType);
2768 int OSDMenuGetNrOfLines(void);
2769 void OSDMenuUpdate(bool SuppressOSDSync);
2770 void OSDMenuModifyTitleLeft(const char *Text);
2771 void OSDMenuModifyTitleRight(const char *Text);
2772 void OSDMenuModifyItemLongTextScrolling(bool AllowScrollingOfLongText);
2773 void OSDMenuModifyItemValueColumn(bool HasValueColumn);
2774 void OSDMenuModifyItemNumbered(bool NumberedItems);
2775 void OSDMenuModifyScrollLoop(bool ScrollLoop);
2776 void OSDMenuLogo(dword X, dword Y, TYPE_GrData *LogoGd);
2777 void OSDMenuDestroy(void);
2778 void OSDMenuDestroyNoOSDUpdate(void);
2779 dword OSDMenuGetStringHeight(const char *str, byte fntSize);
2780 dword OSDMenuGetStringWidth(const char *str, byte fntSize);
2781 void OSDMenuPutString(word rgn, dword x, dword y, dword maxX, const char *str, dword fcolor, dword bcolor, byte fntSize, byte bDot, byte align);
2782 bool OSDMenuIsVisible(void);
2783
2784 //Callback function for custom menu drawings
2785 void OSDMenuSetCallback(void *OSDCallbackRoutine);
2786
2787 //void OSDCallbackProcedure(tOSDCB OSDCBType, word OSDRgn);
2788
2789 typedef enum
2790 {
2796 OSDCB_MASK = 0xFF // max. number of OSDCB types
2798
2799
2800 //Buttons
2801
2802 typedef enum
2803 {
2863
2864
2865 void OSDMenuButtonsClear(void);
2866 void OSDMenuButtonColor(dword Color);
2867 void OSDMenuButtonAdd(dword Line, tButtonIcon ButtonIcon, TYPE_GrData *ButtonGd, const char *Text);
2868 void OSDMenuButtonModifyText(dword ButtonIndex, const char *Text);
2870
2871 //Cursor Functions
2872 int OSDMenuFindNextSelectableEntry(int CurrentSelection);
2873 int OSDMenuFindPreviousSelectableEntry(int CurrentSelection);
2874 bool OSDMenuSelectItem(int ItemIndex);
2875 bool OSDMenuSelectTopItem(int TopIndex);
2876 int OSDMenuGetCurrentItem(void);
2877 dword OSDMenuItemGetTopIndex(void);
2878 int OSDMenuScrollUp(void);
2879 int OSDMenuScrollPageUp(void);
2880 int OSDMenuScrollDown(void);
2881 int OSDMenuScrollPageDown(void);
2882 int OSDMenuScrollHome(void);
2883 int OSDMenuScrollEnd(void);
2884
2885 //Items
2886 void OSDMenuItemsClear(void);
2887 bool OSDMenuItemAdd(const char *Name, const char *Value, TYPE_GrData *pNameIconGd, TYPE_GrData *pValueIconGd, bool Selectable, bool ValueArrows, dword ID);
2888 bool OSDMenuItemPassDrawing(int ItemIndex, bool VisibleName, bool VisibleValue);
2889 bool OSDMenuItemModifyName(int ItemIndex, const char *Text);
2890 bool OSDMenuItemModifyValue(int ItemIndex, const char *Text);
2891 void OSDMenuItemModifyValueXPos(dword NewValueXPos);
2892 void OSDMenuItemModifyValueLeftArrowGap(int NewGapWidth);
2893 bool OSDMenuItemModifyNameIcon(int ItemIndex, TYPE_GrData *pNameIconGd);
2894 bool OSDMenuItemModifyValueIcon(int ItemIndex, TYPE_GrData *pValueIconGd);
2895 bool OSDMenuItemModifySelectable(int ItemIndex, bool Selectable);
2896 bool OSDMenuItemModifyColorPatch(int ItemIndex, dword Color); //set to 0 to disable
2897 bool OSDMenuItemModifyNameColor(int ItemIndex, dword Color);
2898 bool OSDMenuItemModifyTextColor(int ItemIndex, dword Color);
2899 bool OSDMenuItemModifyID(int ItemIndex, dword ID);
2900 bool OSDMenuItemModifyValueArrows(int ItemIndex, bool ValueArrows);
2901 bool OSDMenuItemModifyCustomIndex(int ItemIndex, int CustomIndex);
2902 char *OSDMenuItemGetValue(int ItemIndex);
2903 char *OSDMenuItemGetName(int ItemIndex);
2904 dword OSDMenuItemGetNameColor(int ItemIndex);
2905 dword OSDMenuItemGetTextColor(int ItemIndex);
2906 dword OSDMenuItemGetID(int ItemIndex);
2907 char *OSDMenuItemGetCurrentValue(void);
2908 char *OSDMenuItemGetCurrentName(void);
2909 dword OSDMenuItemGetCurrentID(void);
2910 dword OSDMenuItemGetNrOfItems(void);
2911 void OSDMenuItemSortNameColumn(bool Ascending, bool CaseSensitive);
2912 void OSDMenuItemSortValueColumn(bool Ascending, bool CaseSensitive);
2913 void OSDMenuItemSortID(bool Ascending);
2914 int OSDMenuItemFindName(const char *Text);
2915 int OSDMenuItemFindValue(const char *Text);
2916 int OSDMenuItemFindID(dword ID);
2917
2918 //Menu Stack
2919 bool OSDMenuPush(void);
2920 bool OSDMenuPop(void);
2921 void OSDMenuSaveMyRegion(word Rgn);
2922
2923 //List box
2924 bool OSDMenuListBoxInitialize(bool AllowScrollingOfLongText, bool HasValueColumn, bool NumberedItems, bool ScrollLoop, const char *Title, dword x, dword width, bool OSDUpdate);
2925 bool OSDMenuListBoxIsVisible(void);
2926 void OSDMenuListBoxDestroy(void);
2928
2929 //Memo
2930 void OSDMemoInitialize(bool ScrollLoop, const char *TitleLeft, const char *TitleRight, const char *Text);
2931
2932 //Info box
2933 void OSDMenuInfoBoxShow(const char *Title, const char *Text, dword Timeout);
2934 void OSDMenuWaitSpinnerInit(void);
2935 void OSDMenuInfoBoxDestroy(void);
2937 bool OSDMenuInfoBoxIsVisible(void);
2938 void OSDMenuInfoBoxExitButton(bool ExitButton);
2939
2940 //Message box
2941 void OSDMenuMessageBoxInitialize(const char *Title, const char *Text);
2942 void OSDMenuMessageBoxButtonAdd(const char *Text);
2943 void OSDMenuMessageBoxButtonSelect(dword SelectedButton);
2945 void OSDMenuMessageBoxDoNotEnterNormalMode(bool DoNotEnterNormalMode);
2946 void OSDMenuMessageBoxShow(void);
2947 void OSDMenuMessageBoxModifyText(const char *Text);
2948 void OSDMenuMessageBoxDestroy(void);
2950 bool OSDMenuMessageBoxIsVisible(void);
2951 dword OSDMenuMessageBoxLastButton(void);
2952
2953 //Color Picker
2954 void OSDMenuColorPickerShow(const char *Title, dword DefaultColor);
2955 void OSDMenuColorPickerDestroy(void);
2956 bool OSDMenuColorPickerIsVisible(void);
2957 dword OSDMenuColorPickerColor(void);
2958
2959 //Progress bar
2960 void OSDMenuProgressBarShow(const char *Title, const char *Text, dword Value, dword MaxValue, TYPE_GrData *DifferentProgressBar);
2961 void OSDMenuProgressBarDestroy(void);
2963 bool OSDMenuProgressBarIsVisible(void);
2964
2965 //Event handling
2966 bool OSDMenuEvent(word *event, dword *param1, dword *param2);
2967 dword OSDMenuGetLastUnprocessedKey(void);
2968
2969
2970 /*****************************************************************************************************************************/
2971 /* TMS OSD Keyboard */
2972 /*****************************************************************************************************************************/
2973
2974 typedef enum
2975 {
2985
2986 typedef enum
2987 {
2992
2993 void OSDMenuKeyboard_Setup(const char *Title, char *Variable, dword MaxLength);
2994 void OSDMenuKeyboard_AutomaticLowerCase(bool automatic);
2995 bool OSDMenuKeyboard_ChangeKeypad(tKeyPadMode mode, char keypad[26][4]);
2996 void OSDMenuKeyboard_SetCursor(tKeyboardCursor KeyboardCursor);
2998 void OSDMenuKeyboard_LegendButton(dword Line, tButtonIcon ButtonIcon, const char *Text);
2999 void OSDMenuKeyboard_Show(void);
3000 bool OSDMenuKeyboard_EventHandler(word *event, dword *param1, dword *param2);
3001 bool OSDMenuKeyboard_isVisible(void);
3002 void OSDMenuKeyboard_Destroy(void);
3003
3004
3005 /*****************************************************************************************************************************/
3006 /* TMS VFD Routines */
3007 /*****************************************************************************************************************************/
3008
3009 typedef enum
3010 {
3040 VFD_TV
3042
3043 typedef enum
3044 {
3049
3050 bool VFD_GetControl(bool GiveControl);
3051 bool VFD_isInUseByTAP(void);
3052 bool VFD_Clear(void);
3053 bool VFD_SetLargeText(char *Text);
3054 bool VFD_SetSmallText(char *Text);
3055 bool VFD_Update(void);
3056 bool VFD_EnableCD(bool Enable);
3057 bool VFD_SetCDValue(int Percent);
3058 bool VFD_EnableHDD(bool Enable);
3059 bool VFD_SetHDDValue(int Percent);
3060 bool VFD_SetIcon(tVFDIcon VFDIcon, bool On);
3061 bool VFD_EnableCDAnimation(bool Enable);
3062 bool VFD_CDAnimation(bool Forward);
3063 bool VFD_SetCharacterSet(tVFDCharset VFDCharset);
3064
3065
3066 /*****************************************************************************************************************************/
3067 /* USB Keyboard */
3068 /*****************************************************************************************************************************/
3069
3070 //#define EVT_USBKEYBOARD 0x0ffe
3071 #define EVT_TMSREMOTEASCII 0x0ffd
3072
3073 /*****************************************************************************************************************************/
3074 /* MIPS OpCodes */
3075 /*****************************************************************************************************************************/
3076
3077 #define REL_ADDR(x) (((dword)(x) & 0x0fffffff) >> 2)
3078 #define ABS_ADDR(x) (((x & JMP_ADDRMASK) << 2) | 0x80000000)
3079
3080 #define ADD_SP_CMD 0x27BD0000
3081 #define ADD_SP_MASK 0xFFFF0000
3082 #define ADDIU_A0_CMD 0x24040000
3083 #define ADDIU_GP_CMD 0x279C0000
3084 #define ADDIU_S1_CMD 0x24110000
3085 #define ADDIU_CMD 0x24000000
3086 #define BASE_MASK 0xFFE00000
3087 #define CMD_MASK 0xFC000000
3088 #define JAL_CMD 0x0C000000
3089 #define JMP_ADDRMASK 0x03FFFFFF
3090 #define JMP_CMD 0x08000000
3091 #define JR_RA_CMD 0x03E00008
3092 #define LBU_CMD 0x90000000
3093 #define LUI_A0_CMD 0x3c040000
3094 #define LUI_A1_CMD 0x3C050000
3095 #define LUI_A2_CMD 0x3C060000
3096 #define LUI_CMD 0x3C000000
3097 #define LUI_GP_CMD 0x3C1C0000
3098 #define LUI_S0_CMD 0x3C100000
3099 #define LUI_S1_CMD 0x3C110000
3100 #define LUI_S3_CMD 0x3C130000
3101 #define LUI_S4_CMD 0x3C140000
3102 #define LUI_S6_CMD 0x3C160000
3103 #define LUI_T0_CMD 0x3C080000
3104 #define LUI_T1_CMD 0x3C090000
3105 #define LUI_T8_CMD 0x3C180000
3106 #define LUI_T9_CMD 0x3C190000
3107 #define LW_GP_CMD 0x8F800000
3108 #define LW_S7T9_CMD 0x8F370000
3109 #define LW_T1_SP_CMD 0x8FA90000
3110 #define MOVE_A0_48 0x24040030
3111 #define MOVE_A0_CMD 0x34040000
3112 #define MOVE_A2_48 0x24060030
3113 #define MOVE_T9_RA 0x03E02020
3114 #define NOP_CMD 0x00000000
3115 #define OR_A1_CMD 0x34A50000
3116 #define OR_T8_CMD 0x37180000
3117 #define ORI_A0_CMD 0x34840000
3118 #define ORI_A1_CMD 0x34A50000
3119 #define ORI_A2_CMD 0x34C60000
3120 #define ORI_GP_CMD 0x379C0000
3121 #define ORI_S0_CMD 0x36100000
3122 #define ORI_S1_CMD 0x36310000
3123 #define ORI_S3_CMD 0x36730000
3124 #define ORI_S4_CMD 0x36940000
3125 #define ORI_S6_CMD 0x36D60000
3126 #define ORI_T0_CMD 0x35080000
3127 #define ORI_T1_CMD 0x35290000
3128 #define REG_MASK 0x03FF0000
3129 #define SB_0_GP_CMD 0xA3800000
3130 #define SW_RA_SP_CMD 0xAFBF0000
3131 #define SW_S5T9_CMD 0xAF350000
3132 #define SW_S7T9_CMD 0xAF370000
3133
3134 #ifdef __cplusplus
3135 }
3136 #endif
3137#endif
word OSDRgn
Definition: OSDMenuInit.c:4
struct __STDIO_FILE_STRUCT FILE
Definition: FBLib_hdd.h:137
dword BufferSize
Definition: INIOpenFile.c:7
dword FIS_fwAppl_ImportChData(void)
void ConvertPathType(const char *Source, char *Dest, tPathFormat DestFormat)
__ino64_t HDD_GetInodeByFileName(const char *Filename)
bool Appl_GetIsExternal(void)
dword FIS_fwcurl_global_init(void)
void HDD_Delete(const char *FileName)
Definition: HDD_Delete.c:5
bool PlayMediaFile(char *MediaFileName)
Definition: PlayMediaFile.c:5
void HDD_TAP_Terminate(dword TAPID)
CURLcode curl_easy_setopt(CURL *curl, CURLoption option, void *arg)
tBootReason BootReason(void)
Definition: BootReason.c:3
TYPE_TapEvent * GetCurrentEvent(int *curEvent)
dword FIS_fwAppl_SetPlaybackSpeed(void)
dword FIS_vTimerTempInfo(void)
bool VFD_CDAnimation(bool Forward)
ulong64 LogoManager_CalculateChannelID(word SatLongitude, word NetworkID, word TSID, word ServiceID)
REMOTE_TYPE
Definition: libFireBird.h:123
@ RT_7100PLUS
Definition: libFireBird.h:126
@ RT_7260PLUS
Definition: libFireBird.h:127
@ RT_2100
Definition: libFireBird.h:125
@ RT_5000
Definition: libFireBird.h:124
bool FlashTimerGetInfo(int TimerIndex, tFlashTimer *TimerInfo)
dword StringDBNext(tStringDB *StringDB)
Definition: StringDBNext.c:3
bool INIGetARGB8(char *Key, byte *Alpha, byte *Red, byte *Green, byte *Blue, dword DefaultValue)
Definition: INIGetARGB8.c:7
void OSDMenuInfoBoxDestroyNoOSDUpdate(void)
char * OSDMenuItemGetName(int ItemIndex)
TYPE_GrData * LogoManager_GetLogoByChannelName(char *ChannelName, tLogoStyle LogoStyle, tLogoSize LogoSize, tLogoAspect LogoAR)
bool FlashTimeEncode(tFlashTimeInfo *TimeInfo, tFlashTimeInfo *Data)
void OSDMenuKeyboard_LegendButton(dword Line, tButtonIcon ButtonIcon, const char *Text)
bool OSDMenuMessageBoxIsVisible(void)
void * Appl_GetCurrentEvent(byte SatIndex, word NetID, word TSID, word ServiceID)
dword FIS_fwezxml_parse_file(void)
dword FIS_fwAppl_ExportChData(void)
dword FIS_vbookmarkTime(void)
tButtonIcon
Definition: libFireBird.h:2803
@ BI_4
Definition: libFireBird.h:2809
@ BI_ProgPlus
Definition: libFireBird.h:2840
@ BI_Right
Definition: libFireBird.h:2844
@ BI_JumpEnd
Definition: libFireBird.h:2828
@ BI_Ok
Definition: libFireBird.h:2835
@ BI_Ffwd
Definition: libFireBird.h:2823
@ BI_7
Definition: libFireBird.h:2812
@ BI_Guide
Definition: libFireBird.h:2826
@ BI_Subtitle
Definition: libFireBird.h:2851
@ BI_6
Definition: libFireBird.h:2811
@ BI_VolPlus
Definition: libFireBird.h:2857
@ BI_Blue
Definition: libFireBird.h:2818
@ BI_None
Definition: libFireBird.h:2804
@ BI_M
Definition: libFireBird.h:2832
@ BI_TTX
Definition: libFireBird.h:2852
@ BI_3
Definition: libFireBird.h:2808
@ BI_Mute
Definition: libFireBird.h:2834
@ BI_5
Definition: libFireBird.h:2810
@ BI_TV_Radio
Definition: libFireBird.h:2853
@ BI_Option
Definition: libFireBird.h:2836
@ BI_Up
Definition: libFireBird.h:2854
@ BI_Stop
Definition: libFireBird.h:2850
@ BI_Sat
Definition: libFireBird.h:2846
@ BI_Rwd
Definition: libFireBird.h:2845
@ BI_Sleep
Definition: libFireBird.h:2848
@ BI_Exit
Definition: libFireBird.h:2821
@ BI_Audio
Definition: libFireBird.h:2816
@ BI_Green
Definition: libFireBird.h:2825
@ BI_FileList
Definition: libFireBird.h:2824
@ BI_Select
Definition: libFireBird.h:2847
@ BI_ProgMinus
Definition: libFireBird.h:2839
@ BI_Down
Definition: libFireBird.h:2820
@ BI_Yellow
Definition: libFireBird.h:2859
@ BI_8
Definition: libFireBird.h:2813
@ BI_0
Definition: libFireBird.h:2805
@ BI_AR
Definition: libFireBird.h:2815
@ BI_UserDefined
Definition: libFireBird.h:2861
@ BI_Aux
Definition: libFireBird.h:2817
@ BI_Info
Definition: libFireBird.h:2827
@ BI_Menu
Definition: libFireBird.h:2833
@ BI_Cut
Definition: libFireBird.h:2819
@ BI_JumpStart
Definition: libFireBird.h:2829
@ BI_VF
Definition: libFireBird.h:2855
@ BI_Fav
Definition: libFireBird.h:2822
@ BI_VolMinus
Definition: libFireBird.h:2856
@ BI_Record
Definition: libFireBird.h:2842
@ BI_White
Definition: libFireBird.h:2858
@ BI_1
Definition: libFireBird.h:2806
@ BI_Recall
Definition: libFireBird.h:2841
@ BI_9
Definition: libFireBird.h:2814
@ BI_Pause
Definition: libFireBird.h:2837
@ BI_Step
Definition: libFireBird.h:2849
@ BI_NoUse
Definition: libFireBird.h:2860
@ BI_Left
Definition: libFireBird.h:2830
@ BI_2
Definition: libFireBird.h:2807
@ BI_Red
Definition: libFireBird.h:2843
@ BI_List
Definition: libFireBird.h:2831
@ BI_Play
Definition: libFireBird.h:2838
dword FIS_vfavName(void)
Definition: FIS_vfavName.c:3
dword EPGInfo_GetNrFreeEntries(void)
int OSDMenuFindPreviousSelectableEntry(int CurrentSelection)
word GetSysID(void)
Definition: GetSysID.c:3
ezxml_t ezxml_parse_str(char *s, size_t len)
bool HDD_TAP_Disable(dword TAPID, bool DisableEvents)
void OSDMenuKeyboard_Show(void)
void OSDMenuModifyTitleLeft(const char *Text)
dword FIS_fwAppl_CheckRecording(void)
void INISetHexWord(char *Key, word Value)
Definition: INISetHexWord.c:4
void OSDMenuDestroy(void)
Definition: OSDMenuDestroy.c:4
int HDD_TAP_GetCurrentDir(char *CurrentDir)
dword AddTime(dword pvrDate, int addMinutes)
Definition: AddTime.c:3
void TAPCOM_Reject(TAPCOM_Channel Channel)
Definition: TAPCOM_Reject.c:3
dword FIS_vFlashBlockSatInfo(void)
dword FIS_vIsPopUpOn(void)
Definition: FIS_vIsPopUpOn.c:3
byte * strcpyUC(byte *dest, const byte *src)
Definition: strcpyUC.c:4
dword FIS_vFlashBlockAutoDec(void)
void TAP_EnterNormalNoInfo(void)
void OSDMenuKeyboard_AutomaticLowerCase(bool automatic)
bool OSDMenuItemModifyNameColor(int ItemIndex, dword Color)
void INISetInt(char *Key, long int Value)
Definition: INISetInt.c:4
bool Appl_ImportChData(char *FileName)
bool InitTAPex(void)
Definition: InitTAPex.c:10
void LogoManager_Cleanup(void)
bool VFD_SetIcon(tVFDIcon VFDIcon, bool On)
Definition: VFD_SetIcon.c:4
dword StringDBPrev(tStringDB *StringDB)
Definition: StringDBPrev.c:3
dword FIS_fwAppl_StopPlaying(void)
dword FIS_fwcurl_easy_perform(void)
dword FIS_vFlashBlockTimer(void)
dword HDD_TAP_GetIDByFileName(const char *TAPFileName)
word ApplSvc_GetTpIdx(byte SatIndex, word NetworkID, word TSID)
void FM_PutStringAA(word rgn, dword x, dword y, dword maxX, char *str, dword fcolor, dword bcolor, tFontData *FontData, byte bDot, byte align, float AntiAliasFactor)
Definition: FM_PutStringAA.c:4
bool OSDMenuItemModifyCustomIndex(int ItemIndex, int CustomIndex)
bool Reboot(bool StopRecordings)
Definition: Reboot.c:4
void FlushCache(dword *pAddr, int Size)
Definition: FlushCache.c:3
word HDD_SetExtRecording(bool ExtDisk)
void ApplHdd_SetWorkFolder(tDirEntry *FolderStruct)
tButtonIcon OSDMenuGetButtonIcon(dword key)
dword OSDMenuItemGetCurrentID(void)
bool OSDMenuKeyboard_isVisible(void)
dword FIS_vOsdMap(void)
Definition: FIS_vOSDMap.c:3
char * GetApplVer(void)
Definition: GetApplVer.c:4
INILOCATION LangLoadStrings(char *LangFile, dword NrStrings, int FallbackLang, char *AppName)
bool HDD_isRecording(byte RecSlot)
word CRC16(word StartValue, void *StartAddress, dword Length)
Definition: CRC16.c:23
#define CallTraceExportStats(...)
Definition: libFireBird.h:1235
dword FIS_fwApplCiplus_CamSelect(void)
char * LangGetString(dword StringID)
Definition: LangGetString.c:4
dword UncompressFirmware(byte *pSrc, byte *pDest, void *pPercentFinishedCallback)
dword OSDMenuItemGetNrOfItems(void)
void LogoManager_MoveExternalUpdates(void)
void MakeUniqueFileName(char *FileName)
dword ApplHdd_FreeSize(char *MountPath, bool a1)
char * iso639_2(int OSDLan)
Definition: iso639_2.c:3
tVFDCharset
Definition: libFireBird.h:3044
@ CS_8859_5
Definition: libFireBird.h:3046
@ CS_8859_1_HAPPY
Definition: libFireBird.h:3047
@ CS_8859_1
Definition: libFireBird.h:3045
void OSDMenuItemsClear(void)
dword FIS_vCheckAutoDecTimerId(void)
bool StringDBSaveToFile(tStringDB *StringDB, TYPE_File *f)
tFileInUse HDD_isFileInUse(const char *FileName)
dword FIS_fwcurl_easy_cleanup(void)
dword FIS_fwAppl_WriteRecInfo(void)
char * RTrim(char *s)
Definition: RTrim.c:5
void LogEntryGenericPrintf(char *ProgramName, bool Console, char *format,...)
dword HDD_TAP_SendEvent(dword TAPID, bool AllowParamInterception, word event, dword param1, dword param2)
word GetOSDRegionHeight(word Region)
dword FIS_vShoutCastState(void)
dword StringDBFirst(tStringDB *StringDB)
Definition: StringDBFirst.c:3
void ezxml_free(ezxml_t xml)
Definition: ezxml_free.c:3
dword FIS_fwezxml_attr(void)
bool HDD_GetRecSlotFiles(byte Slot, TYPE_File **RecFile, TYPE_File **InfFile, TYPE_File **NavFile)
int HDD_AAM_Disable(void)
bool isInfoBoxVisible(void)
void FMUC_FreeFontFile(tFontDataUC *FontData)
dword Appl_GetEvtCount(byte SatIndex, word NetID, word TSID, word ServiceID)
void OSDMenuItemSortID(bool Ascending)
#define CallTraceComment(...)
Definition: libFireBird.h:1234
bool FlashTransponderTablesDel(int SatNum, int TransponderNum)
dword FMUC_GetStringWidth(const char *Text, tFontDataUC *FontData)
bool OSDMenuItemModifyNameIcon(int ItemIndex, TYPE_GrData *pNameIconGd)
dword FIS_vciplusMenuMode(void)
tRunningStatus
Definition: libFireBird.h:1285
@ RST_ServiceOffAir
Definition: libFireBird.h:1291
@ RST_reserved1
Definition: libFireBird.h:1292
@ RST_undefined
Definition: libFireBird.h:1286
@ RST_Pausing
Definition: libFireBird.h:1289
@ RST_NotRunning
Definition: libFireBird.h:1287
@ RST_Running
Definition: libFireBird.h:1290
@ RST_StartsSoon
Definition: libFireBird.h:1288
@ RST_reserved2
Definition: libFireBird.h:1293
char * ansicstr(const char *string, int len, int flags, int *sawc, int *rlen)
Definition: ansicstr.c:32
dword FIS_fwAppl_GetEvtCount(void)
void FlashProgram(void)
Definition: FlashProgram.c:3
void Appl_StopRecPlaying(bool p1)
char * OSDMenuItemGetValue(int ItemIndex)
void OSDMenuItemSortNameColumn(bool Ascending, bool CaseSensitive)
bool OSDMenuEvent(word *event, dword *param1, dword *param2)
Definition: OSDMenuEvent.c:3
dword GetOSDMapAddress(void)
#define CallTraceResetStats(...)
Definition: libFireBird.h:1236
bool PutDevEvent(word Event, dword Param1)
Definition: PutDevEvent.c:3
CURLcode curl_easy_perform(CURL *curl)
bool HookFirmware(char *FirmwareFunctionName, void *RedirectTo, void *PointerToOriginal)
Definition: HookFirmware.c:3
void LogoManager_CleanupMemory(void)
dword CRC32(dword StartValue, void *StartAddress, dword Length)
Definition: CRC32.c:38
dword DST_CalcTransition(byte ruleOrdinal, byte ruleDay, byte ruleMonth, byte ruleHour, byte ruleMin, dword StartDate)
bool StringDBInit(tStringDB *StringDB, dword InitialSize)
Definition: StringDBInit.c:4
dword FIS_fwDevService_Mute(void)
dword GetUptime(void)
Definition: GetUptime.c:5
bool isUTFToppy(void)
Definition: isUTFToppy.c:3
eRemoveChars
Definition: libFireBird.h:2503
@ LFChars
Definition: libFireBird.h:2505
@ ControlChars
Definition: libFireBird.h:2504
@ NonPrintableChars
Definition: libFireBird.h:2507
@ InvalidFileNameChars
Definition: libFireBird.h:2506
bool HDD_TAP_isBatchMode(void)
char * GetToppyString(word SysID)
Definition: GetToppyString.c:3
byte ApplChannel_GetBer(byte TunerIndex, byte *BER)
bool HDD_GetFileSizeAndInode(const char *FileName, __ino64_t *CInode, __off64_t *FileSize)
dword Appl_StopPlaying(void)
char * ValidFileName(const char *strName, eRemoveChars ControlCharacters, char *Result, int ResultSize)
Definition: ValidFileName.c:4
dword FIS_fwApplSvc_GetSvcIdx(void)
dword DevHdd_DeviceClose(tDirEntry *hddPlaybackFolder)
CURL * curl_easy_init(void)
Definition: curl_easy_init.c:3
bool ELFReadShstrtabSection(void)
dword FIS_fwAppl_RestartTimeShiftSvc(void)
dword OSDMenuColorPickerColor(void)
dword FIS_vHddDivxFolder(void)
dword FindInstructionSequence(char *SearchPattern, char *SearchMask, dword StartAddress, dword EndAddress, int EntryPointOffset, bool SearchForPrevADDIUSP)
dword FIS_vVfdTimerId(void)
int OSDMenuItemFindValue(const char *Text)
bool HDD_TAP_PushDir(void)
dword FIS_fwApplPin_Delete(void)
int OSDMenuFindNextSelectableEntry(int CurrentSelection)
bool INIGetARGB(char *Key, byte *Alpha, byte *Red, byte *Green, byte *Blue, dword DefaultValue)
Definition: INIGetARGB.c:7
#define CallTraceEnter(...)
Definition: libFireBird.h:1231
bool StrReplace(char *String, const char *Find, const char *Replace)
Definition: StrReplace.c:4
int HDD_AAM_Enable(byte AAMLevel)
Definition: HDD_AAM_Enable.c:4
void PSBuffer_Free(tPSBuffer *PSBuffer)
Definition: PSBuffer_Free.c:6
size_t GetLine(const char *data, bool strip)
Definition: GetLine.c:4
dword FIS_vnRadioSvc(void)
Definition: FIS_vnRadioSvc.c:3
bool FlashTransponderTablesDecode(void *Data, tFlashTransponderTable *TransponderTable)
dword FIS_vIboxTimerId(void)
dword OSDMenuItemGetID(int ItemIndex)
dword FIS_vPvrRecTsPlayInfo(void)
bool OSDMenuListBoxIsVisible(void)
dword FM_GetStringWidth(char *Text, tFontData *FontData)
bool HDD_isRecFileName(const char *FileName)
TAPCOM_Status
Definition: libFireBird.h:2651
@ TAPCOM_Status_FINISHED
Definition: libFireBird.h:2656
@ TAPCOM_Status_OPEN
Definition: libFireBird.h:2652
@ TAPCOM_Status_SERVER_NOT_AVAILABLE
Definition: libFireBird.h:2653
@ TAPCOM_Status_REJECTED
Definition: libFireBird.h:2655
@ TAPCOM_Status_NO_CHANNEL
Definition: libFireBird.h:2658
@ TAPCOM_Status_ACKNOWLEDGED
Definition: libFireBird.h:2654
@ TAPCOM_Status_VERSIONMISMATCH
Definition: libFireBird.h:2657
int cronRegisterEvent(long frequency, dword firstExecution, void *callback)
dword FIS_vFlashBlockDLNAData(void)
dword HDD_TAP_Start(const char *TAPFileName, bool BatchMode, void *ParameterBlock, dword *TAPID)
Definition: HDD_TAP_Start.c:8
dword FIS_fwAppl_GetSameTimeEvent(void)
void EPGInfo_FilterDuration(word MinDuration, word MaxDuration)
dword FIS_vDirectSvcNumTimerId(void)
byte GetStreamFormat(byte Index)
char * HDD_MakeNewRecName(const char *fname, word sequence, char *NewRecname, int NewRecNameSize)
bool HDD_Write(void *data, dword length, TYPE_File *f)
Definition: HDD_Write.c:3
dword FIS_vEEPROMPin(void)
Definition: FIS_vEEPROMPin.c:3
void Appl_ExecProgram(char *FileName)
bool NoAutoStartTAP(void)
Definition: NoAutoStartTAP.c:6
#define FBLIB_DIR_SIZE
Definition: libFireBird.h:1871
int snprintf(char *, size_t, const char *,...)
void Appl_WriteRecInfo(dword Slot)
bool FlashADEncode(void *Data, tAutoDescrambleTimer *ADTimer)
bool VFD_Clear(void)
Definition: VFD_Clear.c:3
int Appl_StartPlaybackDivx(char *FileName, unsigned int p2, bool p3)
SYSTEM_TYPE GetSystemType(void)
Definition: GetSystemType.c:3
bool HDD_TAP_GetFileNameByIndex(int Index, char **TAPFileName)
dword FIS_fwcurl_easy_setopt(void)
void EPGInfo_FilterCallback(void *CallbackRoutine)
tOSDCB
Definition: libFireBird.h:2790
@ OSDCB_Buttons
Definition: libFireBird.h:2793
@ OSDCB_ListItem
Definition: libFireBird.h:2795
@ OSDCB_Logo
Definition: libFireBird.h:2794
@ OSDCB_MASK
Definition: libFireBird.h:2796
@ OSDCB_Title
Definition: libFireBird.h:2791
@ OSDCB_List
Definition: libFireBird.h:2792
__ino64_t HDD_GetInodeByTypeFile(TYPE_File *File)
dword FIS_fwApplSvc_GetTpIdx(void)
dword FIS_fwApplVfdStop(void)
char * ParseLine(const char *zeile, size_t *n, char delim)
Definition: ParseLine.c:4
dword FIS_fwAppl_GetEvtCountInFreePool(void)
dword HDD_TAP_GetIDByIndex(int TAPIndex)
dword FIS_fwAppl_DeleteRadioSvcName(void)
TAPCOM_Channel TAPCOM_GetChannel(dword param1, dword *CallerID, dword *ServiceID, dword *ParamBlockVersion, void **ParamBlock)
bool OSDMenuItemAdd(const char *Name, const char *Value, TYPE_GrData *pNameIconGd, TYPE_GrData *pValueIconGd, bool Selectable, bool ValueArrows, dword ID)
Definition: OSDMenuItemAdd.c:5
void OSDMenuUpdate(bool SuppressOSDSync)
Definition: OSDMenuUpdate.c:3
long int INIGetInt(char *Key, long int DefaultValue, long int MinValue, long int MaxValue)
Definition: INIGetInt.c:7
dword FIS_fwAppl_InitTempRec(void)
bool OSDMenuKeyboard_EventHandler(word *event, dword *param1, dword *param2)
#define TAP_Osd_Copy_Chk(Comment,...)
Definition: libFireBird.h:1269
bool HDD_TAP_GetInfo(const char *FileName, tTAPInfo *pTAPInfo)
dword FIS_fwApplTimer_OptimizeList(void)
char * TimeFormat(dword DateTime, byte Sec, eTimeStampFormat TimeStampFormat, char *Result)
Definition: TimeFormat.c:4
bool TimerPaddingAPICheck(void)
bool OSDMenuItemModifyValueArrows(int ItemIndex, bool ValueArrows)
bool SDS(void)
Definition: SDS.c:157
dword LocalTime2UTC(dword LocalTime, short *Offset)
Definition: LocalTime2UTC.c:3
void OSDMenuDestroyNoOSDUpdate(void)
ulong64 LogoManager_GetChannelID(int SvcType, int SvcNum)
dword FIS_fwAppl_ShoutCast(void)
void ELFCleanup(void)
Definition: ELFCleanup.c:5
dword UncompressLoader(byte *pSrc, byte *pDest, void *pPercentFinishedCallback)
dword FIS_fwDevFront_SetIlluminate(void)
dword FIS_fwAppl_PvrList(void)
char * LogoManager_GetPathToLogoByChannelID(ulong64 ChannelID, tLogoStyle LogoStyle, tLogoSize LogoSize, tLogoAspect LogoAR, char *LogoPath)
bool OSDMenuColorPickerIsVisible(void)
int HDD_Smart_DisableOperations(void)
bool LogoManager_LogoCacheLoad(void)
dword * Appl_GetEvtListHeadInHashByChannelID(ulong64 ChannelID)
int HDD_FindSymbolicLink(const char *pathName, char *returnedPath, char *fullPathName)
dword FIS_vPhotoAlbumInfo(void)
#define TAP_Osd_PutFreeColorGd_Chk(Comment,...)
Definition: libFireBird.h:1272
bool cronModifyEvent(int Index, int frequency, dword nextExecution)
bool isOnMainTuner(int SvcType, int SvcNum)
Definition: isOnMainTuner.c:3
int FlashServiceFind(int SvcType, word ServiceID, word PMTPID, word PCRPID, tFlashService *Service)
dword FIS_fwApplHdd_RestoreWorkFolder(void)
bool HDD_DecodeRECHeader(byte *Buffer, tRECHeaderInfo *RECHeaderInfo, SYSTEM_TYPE SystemType)
void OSDMenuSetMemo(bool SelectionAlwaysOnTop)
Definition: OSDMenuSetMemo.c:3
void OSDMemoInitialize(bool ScrollLoop, const char *TitleLeft, const char *TitleRight, const char *Text)
bool TunerSet(byte Tuner)
Definition: TunerSet.c:5
void INIKillKey(char *Key)
Definition: INIKillKey.c:5
dword FIS_vTapSysOsdCtrl(void)
dword FIS_fwAppl_GetCurrentEvent(void)
void OSDMenuSetLineHeight(tLineHeight type)
void ReplaceInvalidFileNameChars(char *strName)
dword FIS_vFlashBlockTimeInfo(void)
bool StrMkUTF8(byte *SourceString, size_t SourceSize, byte DefaultISO8859CharSet)
Definition: StrMkUTF8.c:5
byte DevFront_SetIlluminate(byte a0, byte Brightness)
bool isAnyOSDVisibleEx(dword CheckX, dword CheckY, dword CheckW, dword CheckH, byte Plane)
void * TAPCOM_Channel
Definition: libFireBird.h:2661
bool FlashTransponderTablesEncode(void *Data, tFlashTransponderTable *TransponderTable)
dword FIS_fwAppl_CiplusMenu(void)
void Appl_SetIsExternal(bool External)
void OSDMenuInfoBoxExitButton(bool ExitButton)
bool EPGInfo_FindNext(TYPE_EPGInfo *EPGData)
dword FIS_vciMenuMode(void)
TaskEnum
Definition: libFireBird.h:2484
@ TaskRecordings
Definition: libFireBird.h:2486
@ TaskVideo
Definition: libFireBird.h:2487
@ TaskAudio
Definition: libFireBird.h:2488
@ TaskPower
Definition: libFireBird.h:2489
@ TaskPlayback
Definition: libFireBird.h:2485
void CrashCheck_Startup(char *TAPName, tCrashCheckStatus *CCStatus)
bool VFD_EnableCD(bool Enable)
Definition: VFD_EnableCD.c:6
void INICloseFile(void)
Definition: INICloseFile.c:5
void SeparateFileNameComponents(const char *FileName, char *Path, char *Name, char *Ext, int *Index, bool *isRec, bool *isDel)
bool HDD_ChangeDir(const char *Dir)
Definition: HDD_ChangeDir.c:5
word ApplID
Definition: InitTAPex.c:6
void OSDMenuColorPickerShow(const char *Title, dword DefaultColor)
dword FIS_fwApplTap_GetEmptyTask(void)
void OSDMenuPutString(word rgn, dword x, dword y, dword maxX, const char *str, dword fcolor, dword bcolor, byte fntSize, byte bDot, byte align)
void curl_global_cleanup(void)
dword FIS_vHddTapFolder(void)
dword FIS_vgmt(void)
Definition: FIS_vgmt.c:3
dword FIS_fwApplTap_CallEventHandler(void)
dword ApplHdd_SelectFolder(tDirEntry *FolderStruct, char *FolderPath)
bool FlashServiceAdd(int SvcType, tFlashService *Service)
void DumpMemoryDword(dword *p, dword size)
int HDD_Smart_ReturnStatus(void)
dword TAPCOM_LastAlive(TAPCOM_Channel Channel)
void GetStringEncoding(const char *Text, bool *hasAnsiChars, bool *hasUTFChars)
void OSDMenuButtonAdd(dword Line, tButtonIcon ButtonIcon, TYPE_GrData *ButtonGd, const char *Text)
dword ApplHdd_FileCutPaste(char *SourceFileName, unsigned int StartBlock, unsigned int NrBlocks, char *CutFileName)
bool KeyTranslate(bool Enable, void *EventHandler)
int HDD_Smart_EnableOperations(void)
int TAPCOM_GetReturnValue(TAPCOM_Channel Channel)
bool TimerPaddingGet(short *PrePaddingMin, short *PostPaddingMin)
void Appl_RestartTimeShiftSvc(bool p1, dword Block)
TAPCOM_Channel TAPCOM_OpenChannel(dword TargetID, dword ServiceID, dword ParamBlockVersion, void *ParamBlock)
dword FIS_vPipH(void)
Definition: FIS_vPipH.c:3
dword FIS_vExtTsFolder(void)
dword FIS_vEtcInfo(void)
Definition: FIS_vEtcInfo.c:3
bool HDD_TAP_StartedByTAP(void)
int OSDMenuScrollDown(void)
dword HDD_TAP_DisableAll(bool DisableEvents)
bool OSDMenuPush(void)
Definition: OSDMenuPush.c:3
bool ELFReadELFHeader(void)
dword FIS_fwAppl_DeleteTvSvcName(void)
long TimeDiff(dword FromTime, dword ToTime)
Definition: TimeDiff.c:3
dword FIS_fwApplHdd_FreeSize(void)
void OSDMenuModifyTitleRight(const char *Text)
int StringDBCountRecords(tStringDB *StringDB)
void Appl_PvrPause(bool p1)
Definition: Appl_PvrPause.c:3
void INISetRGB(char *Key, byte Red, byte Green, byte Blue)
Definition: INISetRGB.c:4
char * LogoManager_ChannelNameToLogoName(char *ChannelName, char *LogoName, int LogoNameSize)
dword FIS_fwAppl_StartTempRec(void)
bool FlashTimeGetInfo(tFlashTimeInfo *TimeInfo)
bool HDD_GetAbsolutePathByTypeFile(TYPE_File *File, char *AbsFileName)
void INISetHexDWord(char *Key, dword Value)
Definition: INISetHexDWord.c:4
dword FIS_vnDupTimer(void)
Definition: FIS_vnDupTimer.c:3
dword FIS_fwcurl_easy_init(void)
bool HDD_TAP_isRunning(dword TAPID)
void UpperCase(char *string)
Definition: UpperCase.c:5
#define TAP_MemAlloc_Chk(Comment,...)
Definition: libFireBird.h:1268
void ApplNewVfd_Stop(void)
void SoundSinus(word freq, dword durationInMilliseconds, word Amplitude)
Definition: SoundSinus.c:7
char * LangGetStringDefault(dword StringID, char *DefaultString)
void OSDMenuProgressBarDestroy(void)
void OSDMenuMessageBoxAllowScrollOver(void)
void curl_easy_cleanup(CURL *curl)
int strlenUC(const byte *s)
Definition: strlenUC.c:4
void SeparatePathComponents(const char *FullName, char *Path, char *FileName, char *FileExt)
dword FIS_fwApplOsd_DrawJpeg(void)
bool isOSDRegionAlive(word Region)
void INISetHexByte(char *Key, byte Value)
Definition: INISetHexByte.c:4
dword FIS_fwDevFront_PowerOffCancel(void)
void OSDMenuMessageBoxDestroy(void)
void OSDMenuItemModifyValueXPos(dword NewValueXPos)
void ShowMessageWin(char *title, char *lpMessage1, char *lpMessage2, dword dwDelay)
Definition: ShowMessageWin.c:3
#define TAP_Osd_FillBox_Chk(Comment,...)
Definition: libFireBird.h:1271
#define CallTraceInit(...)
Definition: libFireBird.h:1229
bool OSDMenuSelectTopItem(int TopIndex)
bool HDD_Move(const char *FileName, const char *FromDir, const char *ToDir)
Definition: HDD_Move.c:7
int OSDMenuScrollPageUp(void)
dword Appl_GetEvtCountInFreePool(void)
int FlashTransponderFindIndex(dword SatIndex, dword NetworkID, dword TSID)
CURLoption
Definition: libFireBird.h:510
@ CURLOPT_LASTENTRY
Definition: libFireBird.h:1185
bool INIGetString(char *Key, char *Value, char *DefaultValue, dword MaxLength)
Definition: INIGetString.c:5
dword FIS_fwDevHdd_DeviceClose(void)
dword FIS_fwAppl_EnterNormal(void)
dword HDD_TAP_isDisabled(dword TAPID)
bool VFD_GetControl(bool GiveControl)
Definition: VFD_GetControl.c:6
dword FIS_vHddTsFolder(void)
dword FIS_fwDevEeprom_Info(void)
eCopyDirection
Definition: libFireBird.h:289
@ Y
Definition: libFireBird.h:291
@ X
Definition: libFireBird.h:290
bool VFD_SetCharacterSet(tVFDCharset VFDCharset)
#define CallTraceEnable(...)
Definition: libFireBird.h:1230
bool ELFGetSectionOffset(dword SectionIndex, dword *SectionOffset, dword *SectionSize)
dword FIS_fwAppl_ExecProgram(void)
bool FlashServiceDecode(void *Data, tFlashService *Service)
dword FIS_fwApplPin_IsLockPopup(void)
void LogEntryPrintf(char *FileName, char *ProgramName, bool Console, eTimeStampFormat TimeStampFormat, char *format,...)
Definition: LogEntryPrintf.c:8
void cronEventHandler(void)
#define TAP_Osd_PutGd_Chk(Comment,...)
Definition: libFireBird.h:1273
dword FIS_vEEPROM(void)
Definition: FIS_vEEPROM.c:3
dword FIS_fwPowerOff(void)
Definition: FIS_fwPowerOff.c:3
bool FlashTimerEncode(void *Data, tFlashTimer *TimerInfo)
bool ELFReadDWORD(dword SectionIndex, dword *Data)
Definition: ELFReadDWORD.c:4
dword FIS_fwAppl_GetIsExternal(void)
bool GetPIPPosition(int *North, int *South, int *East, int *West)
Definition: GetPIPPosition.c:4
void FreeOSDRegion(word Region)
Definition: FreeOSDRegion.c:4
void MakeValidFileName(char *strName, eRemoveChars ControlCharacters)
bool OSDMenuItemModifyValueIcon(int ItemIndex, TYPE_GrData *pValueIconGd)
void ExtractLine(char *Text, char *Line)
Definition: ExtractLine.c:4
bool HDD_BuildExtDriveList(textPartitionInfo *ExtPartitionList, dword *NrListItems)
void OSDMenuButtonColor(dword Color)
bool HDD_TAP_CheckCollision(void)
void OSDMenuMessageBoxDestroyNoOSDUpdate(void)
bool LogoManager_GetServiceNumByChannelID(ulong64 ChannelID, int *SvcType, int *SvcNum)
dword * Appl_GetEvtListHeadInUsePool(void)
dword Appl_GetFreeExtRecordSpace(char *MountPath)
tPathFormat GetPathType(const char *Source)
Definition: GetPathType.c:5
dword FIS_fwAppl_GetStreamFormat(void)
bool FlashADDecode(void *Data, tAutoDescrambleTimer *ADTimer)
dword FIS_fwApplCiplus_GetSelectedCam(void)
bool HDD_GetFileDir(const char *FileName, eRootDirs Root, char *Dir)
dword FirmwareDatMJD(void)
Definition: FirmwareDatMJD.c:3
tDSTRule
Definition: libFireBird.h:2695
@ DSTR_Firmware
Definition: libFireBird.h:2697
@ DSTR_Europe
Definition: libFireBird.h:2698
@ DSTR_Manual
Definition: libFireBird.h:2699
@ DSTR_Undefined
Definition: libFireBird.h:2696
dword FIS_fwApplHdd_FileCutPaste(void)
int TAP_Osd_PutFreeColorGd(word rgn, int x, int y, TYPE_GrData *gd, bool sprite, dword FilterColor)
dword FIS_fwAppl_GetEvtListHeadInHash(void)
dword FIS_vGrid(void)
Definition: FIS_vgrid.c:3
dword HDD_TAP_Callback(dword TAPID, void *ProcedureAddress, dword param1, dword param2, dword param3, dword param4)
bool OSDMenuSelectItem(int ItemIndex)
dword FIS_fwAppl_TimeToLocal(void)
void OSDMenuKeyboard_Setup(const char *Title, char *Variable, dword MaxLength)
bool FlashTimerSetInfo(int TimerIndex, tFlashTimer *TimerInfo)
void FlashFavoritesGetParameters(int *NrGroups, int *NrSvcsPerGroup)
bool FlashFavoritesSetInfo(int FavNum, tFavorites *Favorites)
bool VFD_SetHDDValue(int Percent)
int FlashSatTablesGetTotal(void)
int HDD_APM_Enable(byte APMLevel)
Definition: HDD_APM_Enable.c:4
bool infData_Set(const char *infFileName, char *NameTag, dword PayloadSize, byte *Payload)
Definition: infData_Set.c:7
dword FIS_fwApplVfdStart(void)
dword FIS_fwApplVfdSendData(void)
dword FIS_fwAppl_AddSvcName(void)
int HDD_Smart_ReadThresholdData(word *DataBuf)
bool EPGInfo_FindPrev(TYPE_EPGInfo *EPGData)
void OSDMenuMessageBoxDoNotEnterNormalMode(bool DoNotEnterNormalMode)
dword StringDBCurrent(tStringDB *StringDB)
byte TunerGet(int MainSub)
Definition: TunerGet.c:4
void OSDMenuInfoBoxShow(const char *Title, const char *Text, dword Timeout)
dword FIS_vTAPTable(void)
Definition: FIS_vTAPTable.c:3
void OSDMenuProgressBarDestroyNoOSDUpdate(void)
bool SetEEPROMPin(word NewPin)
Definition: SetEEPROMPin.c:3
int Appl_StartPlaybackMedia(char *FileName, unsigned int p2, bool p3, bool ScaleInPip)
TFDTYPE
Definition: libFireBird.h:353
@ TFDTYPE_LoaderPgm
Definition: libFireBird.h:354
@ TFDTYPE_FactoryData
Definition: libFireBird.h:358
@ TFDTYPE_FlashData
Definition: libFireBird.h:356
@ TFDTYPE_EepromData
Definition: libFireBird.h:357
@ TFDTYPE_BackgndPict
Definition: libFireBird.h:359
@ TFDTYPE_ApplPgm
Definition: libFireBird.h:355
int Appl_CheckRecording_Tuner(byte TunerIndex, int SvcType, int SvcNum, bool Unknown)
dword FIS_fwAppl_SetApplVer(void)
void OSDMenuWaitSpinnerInit(void)
bool OSDMenuProgressBarIsVisible(void)
dword FIS_fwAppl_SetTimeShift(void)
bool cronGetEvent(int Index, int *frequency, dword *nextExecution)
Definition: cronGetEvent.c:6
bool FrontPanelEEPROMWrite(word Address, byte Data)
bool ELFOpenFile(const char *FileName)
Definition: ELFOpenFile.c:12
void FM_FreeFontFile(tFontData *FontData)
bool ExtAttribSet(char *FileName, char *AttrName, byte *Data, int DataLen)
Definition: ExtAttribSet.c:8
void LogoManager_LogoCacheRebuild(void)
dword FIS_fwAppl_SetIsExternal(void)
void LogoManager_ProcessLILAdd(char *AddFileName)
char * iso639_1(int OSDLan)
Definition: iso639_1.c:3
void OSDMenuModifyItemValueColumn(bool HasValueColumn)
void OSDMenuSetFont(tFontDataUC *LeftTitle, tFontDataUC *RightTitle, tFontDataUC *ListNumber, tFontDataUC *ListName, tFontDataUC *ListValue, tFontDataUC *Buttons, tFontDataUC *Memo)
Definition: OSDMenuSetFont.c:4
eTimeStampFormat
Definition: libFireBird.h:94
@ TIMESTAMP_YMDHM
Definition: libFireBird.h:99
@ TIMESTAMP_NONE
Definition: libFireBird.h:95
@ TIMESTAMP_YMD
Definition: libFireBird.h:98
@ TIMESTAMP_HM
Definition: libFireBird.h:96
@ TIMESTAMP_FNYMDHM
Definition: libFireBird.h:101
@ TIMESTAMP_YMDHMS
Definition: libFireBird.h:100
@ TIMESTAMP_HMS
Definition: libFireBird.h:97
char * OSDMenuItemGetCurrentName(void)
void OSDMenuMessageBoxModifyText(const char *Text)
void LangUnloadStrings(void)
void CrashCheck_Shutdown(char *TAPName)
dword FIS_fwSetIrCode(void)
tBootReason
Definition: libFireBird.h:83
@ BOOT_FRONT_PANEL
Definition: libFireBird.h:84
@ BOOT_POWER
Definition: libFireBird.h:89
@ BOOT_ANTIFREEZE
Definition: libFireBird.h:90
@ BOOT_REMOTE_CONTROL
Definition: libFireBird.h:85
@ BOOT_TIMER
Definition: libFireBird.h:86
@ BOOT_RESERVED_4
Definition: libFireBird.h:88
@ BOOT_FW_REBOOT
Definition: libFireBird.h:87
int FlashTimerStructSize(void)
void Appl_SetPlaybackSpeed(byte Mode, int Speed, bool p3)
dword FIS_vnExtPartition(void)
bool FlashServiceEncode(void *Data, tFlashService *Service)
bool ExtAttribGet(char *FileName, char *AttrName, byte *Data, int MaxDataLen, int *DataLen)
Definition: ExtAttribGet.c:8
bool isPIPActive(void)
Definition: isPIPActive.c:3
void TAPCOM_StillAlive(TAPCOM_Channel Channel)
int Appl_StartPlayback(char *FileName, unsigned int p2, bool p3, bool ScaleInPip)
dword FIS_fwApplChannel_GetBer(void)
bool FixInvalidFileName(char *FileName)
bool INIKeyExists(char *Key)
Definition: INIKeyExists.c:5
void FMUC_PutStringAA(word rgn, dword x, dword y, dword maxX, const char *str, dword fcolor, dword bcolor, tFontDataUC *FontData, byte bDot, byte align, float AntiAliasFactor)
dword FIS_fwAppl_CiMenu(void)
int HDD_Smart_DisableAttributeAutoSave(void)
dword DST_FindNextTransition(void)
bool INIGetRGB8(char *Key, byte *Red, byte *Green, byte *Blue, dword DefaultValue)
Definition: INIGetRGB8.c:9
bool PSBuffer_ProcessTSPacket(tPSBuffer *PSBuffer, const byte *TSBuffer, ulong64 FileOffset)
char * FlashFavoritesGetSelectedGroupName(char *FavName, byte FavNameSize)
bool HDD_RecSlotDecode(byte Slot, tFlashTimer *RecSlot)
void INISetARGB(char *Key, byte Alpha, byte Red, byte Green, byte Blue)
Definition: INISetARGB.c:4
byte * GetMacAddress(void)
Definition: GetMacAddress.c:3
bool HDD_isAnyRecording(void)
bool OSDMenuInfoBoxIsVisible(void)
void OSDMenuModifyItemNumbered(bool NumberedItems)
dword FIS_vPipX(void)
Definition: FIS_vPipX.c:3
void TAPCOM_Finish(TAPCOM_Channel Channel, int val)
Definition: TAPCOM_Finish.c:3
char * LogoManager_GetDirectory(tLogoStyle LogoStyle, tLogoAspect LogoAR, char *LogoPath)
int ApplTap_GetEmptyTask(void)
bool FlashServiceGetInfo(int SvcType, int SvcNum, tFlashService *Service)
bool HDD_isExtRecording(void)
void ApplHdd_RestoreWorkFolder(void)
ezxml_t ezxml_child(ezxml_t xml, const char *name)
Definition: ezxml_child.c:3
dword FIS_fwAppl_StartPlaybackMp3(void)
bool OSDMenuItemModifyTextColor(int ItemIndex, dword Color)
void OSDMenuButtonModifyText(dword ButtonIndex, const char *Text)
INILOCATION
Definition: libFireBird.h:2000
@ INILOCATION_AtSettings
Definition: libFireBird.h:2005
@ INILOCATION_NrENUMs
Definition: libFireBird.h:2007
@ INILOCATION_AtAppName
Definition: libFireBird.h:2004
@ INILOCATION_AtCurrentDir
Definition: libFireBird.h:2003
@ INILOCATION_AtProgramFiles
Definition: libFireBird.h:2006
@ INILOCATION_NotFound
Definition: libFireBird.h:2001
@ INILOCATION_NewFile
Definition: libFireBird.h:2002
void ApplHdd_SaveWorkFolder(void)
bool HDD_FindMountPoint(const char *File, char *MountPoint)
dword FIS_vIsPipActive(void)
dword PvrTimeToLinux(dword PVRTime)
Definition: PvrTimeToLinux.c:3
dword SuperFastHash(register byte *data, int len, dword hash)
byte * HDD_GetPvrRecTsPlayInfoPointer(byte Slot)
dword FIS_vOsdOutBuf(void)
Definition: FIS_vOsdOutBuf.c:3
dword FIS_vFlashBlockGameSaveData(void)
dword OSDMenuGetStringWidth(const char *str, byte fntSize)
dword FIS_fwAppl_SetProviderName(void)
void Appl_ShoutCast(void)
Definition: Appl_ShoutCast.c:3
void cronUnregisterAllEvents(void)
void EPGInfo_FilterChannelByIndex(TYPE_ServiceType SvcType, int SvcNum, bool StartCurrent)
const char * ezxml_error(ezxml_t xml)
Definition: ezxml_error.c:3
dword FIS_vBootReason(void)
bool StringDBLoadFromFile(tStringDB *StringDB, TYPE_File *f)
void FM_MakeFontDir(void)
Definition: FM_MakeFontDir.c:3
bool FlashServiceMove(int SvcType, int FromSvcNum, int ToSvcNum)
bool VFD_isInUseByTAP(void)
dword FIS_fwApplHdd_SetWorkFolder(void)
dword FIS_fwAppl_StopRecPlaying(void)
bool HDD_RecSlotEncode(byte Slot, tFlashTimer *RecSlot)
dword FIS_vnPipSvcNum(void)
dword FIS_fwAppl_PvrList_SetListType(void)
void OSDMenuMessageBoxShow(void)
dword FIS_fwAppl_KeyCvt(void)
void ApplPin_Delete(void)
Definition: ApplPin_Delete.c:3
int HDD_Smart_EnableAttributeAutoSave(void)
bool StrToUTF8(const byte *SourceString, byte *DestString, byte DefaultISO8859CharSet)
Definition: StrToUTF8.c:146
void OSDMenuMessageBoxInitialize(const char *Title, const char *Text)
int HDD_FindPCR(const byte *pBuffer, dword BufferSize, word PID)
Definition: HDD_FindPCR.c:3
void OSDMenuMessageBoxButtonAdd(const char *Text)
bool HDD_InfBlockSet(const char *RecPath, tinfBlock *infBlock)
void OSDMenuInitialize(bool AllowScrollingOfLongText, bool HasValueColumn, bool NumberedItems, bool ScrollLoop, const char *TitleLeft, const char *TitleRight)
bool Appl_ExportChData(char *FileName)
dword FIS_vPvrRecTsInfo(void)
void OSDMenuItemSortValueColumn(bool Ascending, bool CaseSensitive)
void OSDCopy(word rgn, dword x, dword y, dword w, dword h, word items, eCopyDirection direction)
Definition: OSDCopy.c:3
void SetRemoteMode(byte Mode, byte Index, bool Active)
Definition: SetRemoteMode.c:10
dword FIS_fwApplHdd_SelectFolder(void)
bool OSDMenuPop(void)
Definition: OSDMenuPop.c:4
bool OSDMenuItemModifyName(int ItemIndex, const char *Text)
int FlashFavoritesFindService(int SvcType, int SvcNum)
int ExtAttribExists(char *FileName, char *AttrName)
void StrToISO(const byte *SourceString, byte *DestString)
Definition: StrToISO.c:4
word GetOSDRegionWidth(word Region)
dword FIS_vMACAddress(void)
void EPGInfo_AbortLoad(void)
dword FIS_vPvrPlayInfo(void)
bool ShowPvrList(tPvrListType PvrListType)
Definition: ShowPvrList.c:3
bool infData_GetNameByIndex(const char *infFileName, dword NameIndex, char *NameTag)
void InsertAt(const char *SourceString, int Pos, char *NewString)
Definition: InsertAt.c:4
int EPGInfo_FindFirst(TYPE_EPGInfo *EPGData)
bool HDD_GetHddID(char *ModelNo, char *SerialNo, char *FirmwareNo)
Definition: HDD_GetHddID.c:5
DISPLAY_TYPE
Definition: libFireBird.h:116
@ DT_VFDMP
Definition: libFireBird.h:119
@ DT_VFD5500
Definition: libFireBird.h:118
@ DT_LED
Definition: libFireBird.h:117
int HDD_TAP_GetIndexByID(dword TAPID)
#define CINIT(na, t, nu)
Definition: libFireBird.h:501
dword FIS_fwApplClock_SetTimeMJD(void)
dword FIS_vFlashBlockServerData(void)
dword FIS_vFlashBlockRadioServices(void)
dword FIS_vIsAllPartitionInvalid(void)
tCrashCheckStatus
Definition: libFireBird.h:1248
@ CCS_Ok
Definition: libFireBird.h:1249
@ CCS_RebootDetected
Definition: libFireBird.h:1250
@ CCS_ExcessiveRebootsDetected
Definition: libFireBird.h:1251
bool HDD_Rename(const char *FileName, const char *NewFileName)
Definition: HDD_Rename.c:5
dword FIS_vCurTapTask(void)
bool FrontPanelEEPROMRead(word Address, byte *Data)
void ApplCiplus_CamSelect(byte CamIndex)
void ShowMessageWindow(char **content, dword pos_x, dword pos_y, byte fntSize, byte align, dword bdcolor, dword titlecolor, dword msgcolor, dword bgcolor, dword delay)
void EPGInfo_FilterTime(dword StartTime, dword EndTime)
void * HDD_TAP_GetStartParameter(void)
dword FIS_fwApplChannel_GetAgc(void)
#define CallTraceExit(...)
Definition: libFireBird.h:1232
tAudioTrk * AudioTrackInfo(void)
Definition: AudioTrackInfo.c:5
dword FIS_vFlashBlockFavoriteGroup(void)
bool OSDMenuIsVisible(void)
bool VFD_SetCDValue(int Percent)
Definition: VFD_SetCDValue.c:4
void TAPCOM_CloseChannel(TAPCOM_Channel Channel)
dword FIS_vVfdBrightTimerId(void)
bool HDD_RECSlotSetDuration(byte Slot, word Duration)
void FM_PutString(word rgn, dword x, dword y, dword maxX, char *str, dword fcolor, dword bcolor, tFontData *FontData, byte bDot, byte align)
Definition: FM_PutString.c:4
dword FIS_vFlashBlockNetworkUpdateConfig(void)
dword OSDMenuItemGetNameColor(int ItemIndex)
void DevFront_SetIrCode(byte Index, byte Active, byte MfgID1, byte MfgID2, byte Code0a)
bool CaptureScreen(int BMPwidth, int BMPheight, byte *BMPPixelBuffer, bool bOSD, int Alpha)
Definition: CaptureScreen.c:4
bool HDD_TAP_PopDir(void)
Definition: HDD_TAP_PopDir.c:3
bool FlashADGetInfo(tAutoDescrambleTimer *ADTimer)
Definition: FlashADGetInfo.c:4
void INISetRGB8(char *Key, byte Red, byte Green, byte Blue)
Definition: INISetRGB8.c:4
dword UncompressTFD(byte *pSrc, byte *pDest, void *pPercentFinishedCallback)
Definition: UncompressTFD.c:20
bool StringDBLoad(tStringDB *StringDB, char *FileName)
Definition: StringDBLoad.c:7
tKeyboardCursor
Definition: libFireBird.h:2987
@ KC_Box
Definition: libFireBird.h:2989
@ KC_Text
Definition: libFireBird.h:2988
@ KC_NRITEMS
Definition: libFireBird.h:2990
void InitTAPexFailedMsg(char *ProgramName)
#define TAP_Osd_SaveBox_Chk(Comment,...)
Definition: libFireBird.h:1276
bool HDD_InfBlockGet(const char *RecPath, tinfBlock *infBlock)
dword TAP_TableIndex
Definition: InitTAPex.c:7
bool ELFGetSectionAddress(dword SectionIndex, dword *SectionAddress, dword *SectionSize)
dword FIS_vFlashBlockTransponderInfo(void)
dword OSDMenuItemGetTopIndex(void)
bool EPGInfo_FindLast(TYPE_EPGInfo *EPGData)
bool StringDBSave(tStringDB *StringDB, char *FileName)
Definition: StringDBSave.c:6
void DrawOSDLine(word OSDRgn, dword Ax, dword Ay, dword Bx, dword By, dword Color)
Definition: DrawOSDLine.c:3
dword FIS_vExtPartitionInfo(void)
bool VFD_SetSmallText(char *Text)
dword UncompressedTFDSize(byte *pSrc)
word CompressBlock(byte *pInput, word InBufferSize, byte *pOutput)
Definition: lh5.c:1309
bool FlashTransponderTablesGetInfo(int SatNum, int TransponderNum, tFlashTransponderTable *TransponderTable)
dword FIS_fwezxml_error(void)
dword OSDMenuGetLastUnprocessedKey(void)
void OSDMenuSetCallback(void *OSDCallbackRoutine)
char * StringDBGet(tStringDB *StringDB, dword Index)
Definition: StringDBGet.c:3
bool OSDMenuKeyboard_SetKeypadMode(tKeyPadMode mode)
void OSDMenuSetCursor(tCursorType CursorType)
dword StringDBAdd(tStringDB *StringDB, char *Text)
Definition: StringDBAdd.c:5
bool MD5String(char *inString, byte *Digest)
Definition: Md5.c:368
void OSDMenuProgressBarShow(const char *Title, const char *Text, dword Value, dword MaxValue, TYPE_GrData *DifferentProgressBar)
dword FIS_vParentalInfo(void)
eRootDirs
Definition: libFireBird.h:1887
@ DIR_MP3
Definition: libFireBird.h:1891
@ DIR_DATA_FILES
Definition: libFireBird.h:1889
@ DIR_MEDIA_FILES
Definition: libFireBird.h:1894
@ DIR_TMP
Definition: libFireBird.h:1897
@ DIR_INCOMING
Definition: libFireBird.h:1893
@ DIR_MP3_FILES
Definition: libFireBird.h:1892
@ DIR_SYSTEM_FILES
Definition: libFireBird.h:1896
@ DIR_PROGRAM_FILES
Definition: libFireBird.h:1890
@ DIR_ROOT
Definition: libFireBird.h:1888
@ DIR_PHOTO_FILES
Definition: libFireBird.h:1895
bool HDD_IdentifyDevice(char *IdentifyDeviceBuffer)
bool TimerPaddingSet(short *PrePaddingMin, short *PostPaddingMin)
bool FlashTimeSetInfo(tFlashTimeInfo *TimeInfo)
dword DevHdd_DeviceOpen(tDirEntry **hddPlaybackFolder, tDirEntry *DirEntry)
dword OATH(register byte *data, int len, dword hash)
int FlashFavoritesGetTotal(void)
dword FIS_fwAppl_WriteFlash(void)
dword FIS_fwAppl_WaitEvt(void)
int DevService_Mute(bool Mute)
void ApplTimer_OptimizeList(void)
int FlashTransponderTablesAdd(int SatNum, tFlashTransponderTable *TransponderTable)
TYPE_GrData * LogoManager_GetLogoByChannelID(ulong64 ChannelID, tLogoStyle LogoStyle, tLogoSize LogoSize, tLogoAspect LogoAR)
void OSDMenuInfoBoxDestroy(void)
void LogoManager_Initialize(void *CallbackRoutine)
dword * Appl_GetEvtListHeadInHash(word NetID, word TSID, word ServiceID)
bool FlashSatTablesDecode(void *Data, tFlashSatTable *SatTable)
bool HDD_UnrecycleSF(const char *FileName)
bool HDD_TAP_isAnyRunning(void)
dword FMUC_GetStringHeight(const char *Text, tFontDataUC *FontData)
void OSDMenuKeyboard_SetCursor(tKeyboardCursor KeyboardCursor)
bool infData_Delete(const char *infFileName, const char *NameTag)
Definition: infData_Delete.c:6
int LogoManager_UpdateLIL(void)
void OSDMenuModifyItemLongTextScrolling(bool AllowScrollingOfLongText)
int OSDMenuScrollPageDown(void)
bool HDD_FappendWrite(TYPE_File *file, const char *data)
dword OSDMenuItemGetTextColor(int ItemIndex)
void UTF32ToUTF8(dword UTF32Character, byte *UTF8Character, byte *BytesPerChar)
Definition: UTF32ToUTF8.c:3
#define LogEntryFBLibPrintf(Console,...)
Definition: libFireBird.h:1214
void PrintNet(char *puffer)
Definition: PrintNet.c:8
byte ApplChannel_GetAgc(byte TunerIndex, byte *AGC)
dword FIS_vFlashBlockServiceName(void)
dword UncompressedLoaderSize(byte *pSrc)
dword Unix2TFTime(dword UnixTimeStamp)
Definition: Unix2TFTime.c:3
word GetEEPROMPin(void)
Definition: GetEEPROMPin.c:3
bool OSDMenuItemModifyColorPatch(int ItemIndex, dword Color)
char * DayOfWeek(byte WeekDay)
Definition: DayOfWeek.c:5
dword FIS_vFlashBlockTVServices(void)
dword FIS_vnTvSvc(void)
Definition: FIS_vnTvSvc.c:3
dword FIS_fwAppl_ConvertToValidUTF8Str(void)
word ApplSvc_GetSvcIdx(byte TYPE_ServiceType, byte SatIndex, word TPIndex, word ServiceID, word Start, word NrOfServicesToSearch)
char * OSDMenuItemGetCurrentValue(void)
dword FIS_vTopEvent(void)
Definition: FIS_vTopEvent.c:3
dword FIS_vFlashBlockNetwork(void)
bool ELFReadData(dword SectionIndex, byte *Data)
Definition: ELFReadData.c:4
void DumpMemory(byte *p, dword size, int BytesPerLine)
Definition: DumpMemory.c:5
bool OSDMenuKeyboard_ChangeKeypad(tKeyPadMode mode, char keypad[26][4])
void Appl_ClrTimer(byte *TimerHandle)
Definition: Appl_ClrTimer.c:3
dword ApplHdd_GetInfoFromExternalDevice(dword *TotalSpaceMB, dword *FreeSpaceMB, char *MountPath)
bool ELFReadSectionHeaders(void)
int OSDMenuItemFindID(dword ID)
bool HDD_FindMountPointDevice(const char *File, char *MountPoint, char *MountDevice)
tVFDIcon
Definition: libFireBird.h:3010
@ VFD_Satellite
Definition: libFireBird.h:3038
@ VFD_Dollar
Definition: libFireBird.h:3018
@ VFD_Power
Definition: libFireBird.h:3030
@ VFD_Mute
Definition: libFireBird.h:3025
@ VFD_Colon
Definition: libFireBird.h:3016
@ VFD_HDD
Definition: libFireBird.h:3020
@ VFD_HDDFull
Definition: libFireBird.h:3021
@ VFD_RepeatRight
Definition: libFireBird.h:3036
@ VFD_REC
Definition: libFireBird.h:3032
@ VFD_Clock
Definition: libFireBird.h:3015
@ VFD_MP3
Definition: libFireBird.h:3024
@ VFD_Network
Definition: libFireBird.h:3026
@ VFD_TV
Definition: libFireBird.h:3040
@ VFD_Attn
Definition: libFireBird.h:3013
@ VFD_CDCenter
Definition: libFireBird.h:3014
@ VFD_Slot1
Definition: libFireBird.h:3033
@ VFD_Radio
Definition: libFireBird.h:3031
@ VFD_AC3
Definition: libFireBird.h:3011
@ VFD_Slot2
Definition: libFireBird.h:3034
@ VFD_JumpStart
Definition: libFireBird.h:3022
@ VFD_Dolby
Definition: libFireBird.h:3017
@ VFD_Pause
Definition: libFireBird.h:3027
@ VFD_PM
Definition: libFireBird.h:3029
@ VFD_AM
Definition: libFireBird.h:3012
@ VFD_Play
Definition: libFireBird.h:3028
@ VFD_FFwd
Definition: libFireBird.h:3019
@ VFD_JumpEnd
Definition: libFireBird.h:3023
@ VFD_RepeatLeft
Definition: libFireBird.h:3035
@ VFD_TimeShift
Definition: libFireBird.h:3039
@ VFD_Rwd
Definition: libFireBird.h:3037
int Appl_StartPlaybackMp3(char *FileName)
dword FIS_vApplState(void)
Definition: FIS_vApplState.c:3
dword FIS_fwcurl_global_cleanup(void)
dword FIS_vFlashBlockProviderInfo(void)
void FMUC_PutString(word rgn, dword x, dword y, dword maxX, const char *str, dword fcolor, dword bcolor, tFontDataUC *FontData, byte bDot, byte align)
Definition: FMUC_PutString.c:4
dword FIS_vSelectedPartition(void)
dword CompressedTFDSize(byte *pSrc, dword SourceBufferSize, void *pPercentFinishedCallback)
char PrintNetBuffer[1024]
Definition: PrintNet.c:6
bool StringEndsWith(const char *text, const char *postfix)
Definition: StringEndsWith.c:4
void INISetString(char *Key, char *Value)
Definition: INISetString.c:6
#define CallTraceExitResult(...)
Definition: libFireBird.h:1233
bool HDD_Unrecycle(const char *FileName)
Definition: HDD_Unrecycle.c:5
byte ApplCiplus_GetSelectedCam(void)
tLogoAspect
Definition: libFireBird.h:2247
@ LGAR_NRITEMS
Definition: libFireBird.h:2250
@ LGAR_169
Definition: libFireBird.h:2249
@ LGAR_43
Definition: libFireBird.h:2248
bool FrontPanelGetPatch(byte *Version, byte *Type)
dword FIS_vShoutCastInfo(void)
void LogEntry(char *FileName, char *ProgramName, bool Console, eTimeStampFormat TimeStampFormat, char *Text)
Definition: LogEntry.c:10
dword FIS_fwAppl_CheckRecording_Tuner(void)
int OSDMenuScrollEnd(void)
int HDD_APM_Disable(void)
#define TAP_Osd_PutPixel_Chk(Comment,...)
Definition: libFireBird.h:1274
int HDD_Smart_ReadData(word *DataBuf)
dword FIS_fwAppl_StartPlaybackDivx(void)
dword FIS_vTimerEditInfo(void)
dword FIS_fwezxml_free(void)
dword OSDMenuGetStringHeight(const char *str, byte fntSize)
int OSDMenuScrollHome(void)
void OSDMenuListBoxDestroyNoOSDUpdate(void)
bool LoadFirmwareDat(tFWDATHeader **FWDatHeader, tToppyInfo **ToppyInfo, tFWInfo **FWInfo)
dword UTC2LocalTime(dword UTCTime, short *Offset)
Definition: UTC2LocalTime.c:3
void EndMessageWin(void)
Definition: EndMessageWin.c:4
bool FlashFavoritesGetInfo(int FavNum, tFavorites *Favorites)
bool StrMkISO(byte *SourceString)
Definition: StrMkISO.c:5
const char * ezxml_attr(ezxml_t xml, const char *attr)
Definition: ezxml_attr.c:3
dword FIS_fwDevEeprom_GetMacAddr(void)
bool HDD_Exist(const char *FileName)
Definition: HDD_Exist.c:4
dword FIS_fwAppl_IsTimeShifting(void)
void CURL
Definition: libFireBird.h:1190
dword Appl_KeyCvt(dword NECKeyCode)
Definition: Appl_KeyCvt.c:3
bool SaveBitmap(char *FileName, int width, int height, byte *pBuffer)
Definition: SaveBitmap.c:6
void INISetARGB8(char *Key, byte Alpha, byte Red, byte Green, byte Blue)
Definition: INISetARGB8.c:4
dword FIS_fwApplHdd_GetFileInfo(void)
dword UncompressedFirmwareSize(byte *pSrc)
bool FlashTransponderTablesSetInfo(int SatNum, int TransponderNum, tFlashTransponderTable *TransponderTable)
word UncompressBlock(byte *pInput, word compCount, byte *pOutput, word BufferSize)
Definition: lh5.c:1342
dword GetEEPROMAddress(void)
bool INIGetRGB(char *Key, byte *Red, byte *Green, byte *Blue, dword DefaultValue)
Definition: INIGetRGB.c:9
dword FIS_vPipSvcNum(void)
Definition: FIS_vPipSvcNum.c:3
bool OSDMenuItemModifyValue(int ItemIndex, const char *Text)
dword TryResolve(char *Function)
Definition: TryResolve.c:5
dword FIS_fwTimeToLinux(void)
dword FIS_fwApplIcelink_EitFromHdd(void)
dword FIS_vdupEntry(void)
Definition: FIS_vdupEntry.c:3
SYSTEM_TYPE
Definition: libFireBird.h:66
@ ST_CT
Definition: libFireBird.h:77
@ ST_T
Definition: libFireBird.h:69
@ ST_TMSC
Definition: libFireBird.h:74
@ ST_UNKNOWN
Definition: libFireBird.h:67
@ ST_T5700
Definition: libFireBird.h:71
@ ST_TMST
Definition: libFireBird.h:73
@ ST_T5800
Definition: libFireBird.h:75
@ ST_TMSS
Definition: libFireBird.h:72
@ ST_ST
Definition: libFireBird.h:76
@ ST_NRTYPES
Definition: libFireBird.h:79
@ ST_TF7k7HDPVR
Definition: libFireBird.h:78
@ ST_S
Definition: libFireBird.h:68
@ ST_C
Definition: libFireBird.h:70
void DST_SetDSTRule(tDSTRule NewDSTRule)
Definition: DST_SetDSTRule.c:6
char * GetRecExtension(void)
bool ApplPin_IsLockPopup(void)
word INIGetHexWord(char *Key, word DefaultValue, word MinValue, word MaxValue)
Definition: INIGetHexWord.c:7
void StrToISOAlloc(const byte *SourceString, byte **DestString)
Definition: StrToISOAlloc.c:5
dword UTF8ToUTF32(const byte *UTF8Character, byte *BytesPerChar)
Definition: UTF8ToUTF32.c:3
bool UnhookFirmware(char *FirmwareFunctionName, void *RedirectTo, void *PointerToOriginal)
Definition: UnhookFirmware.c:3
void SDSTerminate(void)
Definition: SDS.c:347
dword HDD_NumberOfRECSlots(void)
bool FlashADSetInfo(tAutoDescrambleTimer *ADTimer)
Definition: FlashADSetInfo.c:4
dword FIS_fwAppl_StartPlaybackMedia(void)
int Appl_CheckRecording(int SvcType, int SvcNum, bool Unknown)
void OSDMenuModifyScrollLoop(bool ScrollLoop)
dword FIS_fwApplHdd_SaveWorkFolder(void)
TAPCOM_Status TAPCOM_GetStatus(TAPCOM_Channel Channel)
dword TF2UnixTime(dword TFTimeStamp)
Definition: TF2UnixTime.c:3
dword FIS_fwAppl_GetEvtListHeadInUsePool(void)
int FlashServiceGetTotal(int SvcType)
void OSDMenuMessageBoxButtonSelect(dword SelectedButton)
void OSDMenuButtonsClear(void)
void OSDMenuKeyboard_Destroy(void)
dword FM_GetStringHeight(char *Text, tFontData *FontData)
bool HDD_TAP_isDisabledAll(void)
tFileInUse
Definition: libFireBird.h:1901
@ FIU_PlayMP3
Definition: libFireBird.h:1904
@ FIU_RecSlot4
Definition: libFireBird.h:1908
@ FIU_RecSlot3
Definition: libFireBird.h:1907
@ FIU_RecSlot2
Definition: libFireBird.h:1906
@ FIU_RecSlot1
Definition: libFireBird.h:1905
@ FIU_No
Definition: libFireBird.h:1902
@ FIU_Playback
Definition: libFireBird.h:1903
void OSDMenuColorPickerDestroy(void)
tPathFormat
Definition: libFireBird.h:1921
@ PF_FullTAPPath
Definition: libFireBird.h:1925
@ PF_LinuxPathOnly
Definition: libFireBird.h:1924
@ PF_FullLinuxPath
Definition: libFireBird.h:1926
@ PF_TAPPathOnly
Definition: libFireBird.h:1923
@ PF_FileNameOnly
Definition: libFireBird.h:1922
bool FlashFavoritesGetInfoCurrent(tFavorites *Favorites)
bool FlashServiceDel(int SvcType, int SvcNum)
tLogoSize
Definition: libFireBird.h:2239
@ LGSZ_NRITEMS
Definition: libFireBird.h:2243
@ LGSZ_ibl
Definition: libFireBird.h:2241
@ LGSZ_qtl
Definition: libFireBird.h:2240
@ LGSZ_qsl
Definition: libFireBird.h:2242
dword Appl_TimeToLocal(dword UTCTime)
@ DO_SYNC
Definition: libFireBird.h:2757
@ NO_SYNC
Definition: libFireBird.h:2758
bool OSDMenuItemModifySelectable(int ItemIndex, bool Selectable)
dword FIS_vhddRecordFile(void)
void OSDMenuItemModifyValueLeftArrowGap(int NewGapWidth)
void HDD_RemoveDir(const char *DirPath, bool Recursive)
Definition: HDD_RemoveDir.c:6
byte * SkipCharTableBytes(const byte *p)
dword FIS_fwezxml_parse_str(void)
bool cronUnregisterEvent(int Index)
bool StringDBDestroy(tStringDB *StringDB)
byte * GetUCPos(const byte *String, int CharPos)
Definition: GetUCPos.c:3
ezxml_t ezxml_parse_file(const char *file)
bool HDD_Recycle(const char *FileName)
Definition: HDD_Recycle.c:5
dword TFDSize(byte *pTFD)
Definition: TFDSize.c:4
dword FIS_fwAppl_GetFreeExtRecordSpace(void)
tCursorType
Definition: libFireBird.h:2747
@ CT_Dark
Definition: libFireBird.h:2749
@ CT_Hide
Definition: libFireBird.h:2751
@ CT_NRITEMS
Definition: libFireBird.h:2752
@ CT_Standard
Definition: libFireBird.h:2748
@ CT_Box
Definition: libFireBird.h:2750
bool FlashTimerDecode(void *Data, tFlashTimer *TimerInfo)
bool FlashServiceFindNum(byte SatIndex, word NetworkID, word TSID, word ServiceID, TYPE_ServiceType *SvcType, int *SvcNum)
dword ELFGetSectionIndex(const char *SectionName)
bool ExtAttribRemove(char *FileName, char *AttrName)
void EPGInfo_Free(void)
Definition: EPGInfo_Free.c:4
bool LogoManager_LogosAvailable(tLogoStyle LogoStyle)
dword CompressTFD(byte *pSrc, dword SourceBufferSize, byte *pDest, word TFDType, word SysID, void *pPercentFinishedCallback)
Definition: CompressTFD.c:20
byte INIGetHexByte(char *Key, byte DefaultValue, byte MinValue, byte MaxValue)
Definition: INIGetHexByte.c:7
bool OSDMenuListBoxInitialize(bool AllowScrollingOfLongText, bool HasValueColumn, bool NumberedItems, bool ScrollLoop, const char *Title, dword x, dword width, bool OSDUpdate)
#define TAP_Osd_RestoreBox_Chk(Comment,...)
Definition: libFireBird.h:1275
bool infData_Get(const char *infFileName, const char *NameTag, dword *PayloadSize, byte **Payload)
Definition: infData_Get.c:6
bool EPGInfo_FindItem(TYPE_EPGInfo *EPGData, int EPGIndex, bool EPGReset)
bool StringDBDel(tStringDB *StringDB)
Definition: StringDBDel.c:4
bool HDD_isCryptedStream(const byte *Buffer, dword BufferSize)
bool VFD_EnableCDAnimation(bool Enable)
dword FIS_vTempRecSlot(void)
int OSDMenuScrollUp(void)
dword FIS_fwEeprom_DirectWrite(void)
bool isDirectSvcNumVisible(void)
bool StringDBEOF(tStringDB *StringDB)
Definition: StringDBEOF.c:3
ezxml_t ezxml_idx(ezxml_t xml, int idx)
Definition: ezxml_idx.c:3
int OSDMenuItemFindName(const char *Text)
dword FIS_fwDevHdd_DeviceOpen(void)
void OSDMenuListBoxDestroy(void)
dword FIS_fwAppl_EvtProc_PincodeKey(void)
bool Shutdown(TaskEnum Task)
Definition: Shutdown.c:4
void EPGInfo_FilterReset(void)
void * Appl_GetSameTimeEvent(byte SatIndex, word NetID, word TSID, word ServiceID)
dword FIS_vFlash(void)
Definition: FIS_vFlash.c:3
bool FlashSatTablesGetInfo(int SatNum, tFlashSatTable *SatTable)
dword FIS_vPipY(void)
Definition: FIS_vPipY.c:3
void OSDMenuLogo(dword X, dword Y, TYPE_GrData *LogoGd)
Definition: OSDMenuLogo.c:3
bool VFD_SetLargeText(char *Text)
dword FIS_fwAppl_StopTempRec(void)
bool OSDMenuItemPassDrawing(int ItemIndex, bool VisibleName, bool VisibleValue)
void EPGInfo_FilterGenre(byte *GenreArray, byte GenreArraySize)
dword HDD_GetFileTimeByTypeFile(TYPE_File *File)
TYPE_File * HDD_FappendOpen(const char *FileName)
int FlashTransponderFindIndex2(dword SatIndex, dword NetworkID, dword TSID, byte ModSystem)
bool OSDMenuItemModifyID(int ItemIndex, dword ID)
void OSDMenuSaveMyRegion(word Rgn)
bool VFD_EnableHDD(bool Enable)
Definition: VFD_EnableHDD.c:6
tPvrListType
Definition: libFireBird.h:309
@ PLT_DataFiles
Definition: libFireBird.h:311
@ PLT_ProgramFiles
Definition: libFireBird.h:312
@ PLT_Unchanged
Definition: libFireBird.h:310
@ PLT_MediaFiles
Definition: libFireBird.h:314
@ PLT_MP3Files
Definition: libFireBird.h:313
bool isAnyOSDVisible(dword CheckX, dword CheckY, dword CheckW, dword CheckH)
bool infData_isAvail(const char *infFileName, const char *NameTag, dword *PayloadSize)
bool isMJD(dword MJD)
Definition: isMJD.c:3
dword FIS_vPipW(void)
Definition: FIS_vPipW.c:3
CURLcode
Definition: libFireBird.h:386
@ CURLE_CONV_REQD
Definition: libFireBird.h:470
@ CURLE_TFTP_UNKNOWNID
Definition: libFireBird.h:466
@ CURLE_TFTP_PERM
Definition: libFireBird.h:463
@ CURLE_BAD_FUNCTION_ARGUMENT
Definition: libFireBird.h:437
@ CURLE_FTP_ACCEPT_FAILED
Definition: libFireBird.h:399
@ CURLE_BAD_CONTENT_ENCODING
Definition: libFireBird.h:455
@ CURLE_FTP_WEIRD_PASV_REPLY
Definition: libFireBird.h:404
@ CURLE_SEND_FAIL_REWIND
Definition: libFireBird.h:459
@ CURLE_HTTP_RETURNED_ERROR
Definition: libFireBird.h:413
@ CURLE_FTP_WEIRD_SERVER_REPLY
Definition: libFireBird.h:395
@ CURLE_SSL_CRL_BADFILE
Definition: libFireBird.h:485
@ CURLE_FTP_PORT_FAILED
Definition: libFireBird.h:424
@ CURLE_OBSOLETE32
Definition: libFireBird.h:426
@ CURLE_OBSOLETE50
Definition: libFireBird.h:444
@ CURLE_ABORTED_BY_CALLBACK
Definition: libFireBird.h:436
@ CURLE_HTTP_POST_ERROR
Definition: libFireBird.h:428
@ CURLE_REMOTE_DISK_FULL
Definition: libFireBird.h:464
@ CURLE_FUNCTION_NOT_FOUND
Definition: libFireBird.h:435
@ CURLE_SSL_CIPHER
Definition: libFireBird.h:453
@ CURLE_UPLOAD_FAILED
Definition: libFireBird.h:416
@ CURLE_FTP_COULDNT_USE_REST
Definition: libFireBird.h:425
@ CURLE_FTP_ACCEPT_TIMEOUT
Definition: libFireBird.h:401
@ CURLE_CONV_FAILED
Definition: libFireBird.h:469
@ CURLE_OBSOLETE24
Definition: libFireBird.h:415
@ CURLE_REMOTE_FILE_NOT_FOUND
Definition: libFireBird.h:476
@ CURLE_SSL_ENGINE_NOTFOUND
Definition: libFireBird.h:447
@ CURLE_SSL_ISSUER_ERROR
Definition: libFireBird.h:486
@ CURLE_FILESIZE_EXCEEDED
Definition: libFireBird.h:457
@ CURLE_SSL_CACERT
Definition: libFireBird.h:454
@ CURLE_OBSOLETE16
Definition: libFireBird.h:407
@ CURLE_SSL_CERTPROBLEM
Definition: libFireBird.h:452
@ CURLE_LOGIN_DENIED
Definition: libFireBird.h:461
@ CURLE_OBSOLETE57
Definition: libFireBird.h:451
@ CURL_LAST
Definition: libFireBird.h:492
@ CURLE_REMOTE_ACCESS_DENIED
Definition: libFireBird.h:396
@ CURLE_LDAP_INVALID_URL
Definition: libFireBird.h:456
@ CURLE_FILE_COULDNT_READ_FILE
Definition: libFireBird.h:431
@ CURLE_PEER_FAILED_VERIFICATION
Definition: libFireBird.h:445
@ CURLE_OBSOLETE44
Definition: libFireBird.h:438
@ CURLE_OBSOLETE46
Definition: libFireBird.h:440
@ CURLE_OBSOLETE29
Definition: libFireBird.h:423
@ CURLE_FAILED_INIT
Definition: libFireBird.h:389
@ CURLE_QUOTE_ERROR
Definition: libFireBird.h:412
@ CURLE_AGAIN
Definition: libFireBird.h:482
@ CURLE_TOO_MANY_REDIRECTS
Definition: libFireBird.h:441
@ CURLE_SSL_SHUTDOWN_FAILED
Definition: libFireBird.h:481
@ CURLE_SSL_CACERT_BADFILE
Definition: libFireBird.h:475
@ CURLE_COULDNT_CONNECT
Definition: libFireBird.h:394
@ CURLE_TFTP_NOTFOUND
Definition: libFireBird.h:462
@ CURLE_SSL_ENGINE_SETFAILED
Definition: libFireBird.h:448
@ CURLE_CHUNK_FAILED
Definition: libFireBird.h:491
@ CURLE_COULDNT_RESOLVE_PROXY
Definition: libFireBird.h:392
@ CURLE_UNSUPPORTED_PROTOCOL
Definition: libFireBird.h:388
@ CURLE_FTP_BAD_FILE_LIST
Definition: libFireBird.h:490
@ CURLE_GOT_NOTHING
Definition: libFireBird.h:446
@ CURLE_FTP_WEIRD_PASS_REPLY
Definition: libFireBird.h:400
@ CURLE_SEND_ERROR
Definition: libFireBird.h:449
@ CURLE_SSH
Definition: libFireBird.h:477
@ CURLE_TFTP_NOSUCHUSER
Definition: libFireBird.h:468
@ CURLE_SSL_ENGINE_INITFAILED
Definition: libFireBird.h:460
@ CURLE_FTP_COULDNT_SET_TYPE
Definition: libFireBird.h:408
@ CURLE_BAD_DOWNLOAD_RESUME
Definition: libFireBird.h:430
@ CURLE_LDAP_SEARCH_FAILED
Definition: libFireBird.h:433
@ CURLE_FTP_WEIRD_227_FORMAT
Definition: libFireBird.h:405
@ CURLE_LDAP_CANNOT_BIND
Definition: libFireBird.h:432
@ CURLE_OPERATION_TIMEDOUT
Definition: libFireBird.h:422
@ CURLE_RANGE_ERROR
Definition: libFireBird.h:427
@ CURLE_RTSP_SESSION_ERROR
Definition: libFireBird.h:489
@ CURLE_URL_MALFORMAT
Definition: libFireBird.h:390
@ CURLE_OUT_OF_MEMORY
Definition: libFireBird.h:418
@ CURLE_TFTP_ILLEGAL
Definition: libFireBird.h:465
@ CURLE_UNKNOWN_OPTION
Definition: libFireBird.h:442
@ CURLE_INTERFACE_FAILED
Definition: libFireBird.h:439
@ CURLE_FTP_COULDNT_RETR_FILE
Definition: libFireBird.h:410
@ CURLE_OBSOLETE40
Definition: libFireBird.h:434
@ CURLE_PARTIAL_FILE
Definition: libFireBird.h:409
@ CURLE_TELNET_OPTION_SYNTAX
Definition: libFireBird.h:443
@ CURLE_NOT_BUILT_IN
Definition: libFireBird.h:391
@ CURLE_WRITE_ERROR
Definition: libFireBird.h:414
@ CURLE_REMOTE_FILE_EXISTS
Definition: libFireBird.h:467
@ CURLE_COULDNT_RESOLVE_HOST
Definition: libFireBird.h:393
@ CURLE_READ_ERROR
Definition: libFireBird.h:417
@ CURLE_OBSOLETE20
Definition: libFireBird.h:411
@ CURLE_USE_SSL_FAILED
Definition: libFireBird.h:458
@ CURLE_RECV_ERROR
Definition: libFireBird.h:450
@ CURLE_FTP_PRET_FAILED
Definition: libFireBird.h:487
@ CURLE_OK
Definition: libFireBird.h:387
@ CURLE_SSL_CONNECT_ERROR
Definition: libFireBird.h:429
@ CURLE_FTP_CANT_GET_HOST
Definition: libFireBird.h:406
@ CURLE_RTSP_CSEQ_ERROR
Definition: libFireBird.h:488
dword Appl_WaitEvt(dword Event, dword *a1, dword a2, dword a3, dword Timeout)
Definition: Appl_WaitEvt.c:3
bool MD5File(char *FileName, byte *Digest)
Definition: Md5.c:391
INILOCATION INIOpenFile(char *FileName, char *AppName)
Definition: INIOpenFile.c:9
dword AddSec(dword date, byte dateSec, int add)
Definition: AddSec.c:3
bool isUTF8Char(const byte *p, byte *BytesPerChar)
Definition: isUTF8Char.c:3
dword FIS_fwPutDevEvt(void)
dword Now(byte *Sec)
Definition: Now.c:3
int OSDMenuGetCurrentItem(void)
dword INIGetHexDWord(char *Key, dword DefaultValue, dword MinValue, dword MaxValue)
Definition: INIGetHexDWord.c:7
void DrawScrollbar(word sbRegion, int sbX, int sbY, int sbHeight, int sbCurrent, int sbWindow, int sbMax)
Definition: DrawScrollbar.c:89
dword FIS_fwezxml_child(void)
bool INISaveFile(char *FileName, INILOCATION INILocation, char *AppName)
Definition: INISaveFile.c:6
word ApplClock_SetTimeMJD(word mjd, byte hour, byte min, byte sec)
dword FIS_vPvrRecTempInfo(void)
dword FIS_vRECSlotAddress(byte Slot)
CURLcode curl_global_init(long flags)
bool HDD_EncodeRECHeader(byte *Buffer, tRECHeaderInfo *RECHeaderInfo, SYSTEM_TYPE SystemType)
dword FIS_fwDevFront_PowerOffReply(void)
dword * FindGotPointer(dword FunctionAddress)
Definition: FindGotPointer.c:3
TYPE_GrData * LogoManager_GetLogoByChannel(int SvcType, int SvcNum, tLogoStyle LogoStyle, tLogoSize LogoSize, tLogoAspect LogoAR)
TYPE_GrData * LogoManager_GetLogoByLogoName(char *LogoName, tLogoStyle LogoStyle, tLogoSize LogoSize, tLogoAspect LogoAR)
byte * HDD_GetPvrRecTsInfoPointer(byte Slot)
bool FMUC_LoadFontFile(char *FontFileName, tFontDataUC *FontData)
dword FIS_vFlashBlockLanIPConfig(void)
dword FIS_fwApplHdd_GetInfoFromExternalDevice(void)
struct ezxml * ezxml_t
Definition: libFireBird.h:1389
void LowerCase(char *string)
Definition: LowerCase.c:5
bool TAP_GetSysOsdControl(TYPE_TapSysOsdId osdId)
bool FlashServiceSetInfo(int SvcType, int SvcNum, tFlashService *Service)
dword FIS_fwAppl_PvrPause(void)
word ApplHdd_GetFileInfo(word p1, int *TotalBlocks, int *CurrentBlock, byte p4, byte p5)
bool EPGInfo_FindCurrent(byte SvcType, int SvcNum, TYPE_EPGInfo *EPGData)
#define TAP_Osd_Create_Chk(Comment,...)
Definition: libFireBird.h:1270
bool FlashTimeDecode(tFlashTimeInfo *Data, tFlashTimeInfo *TimeInfo)
bool FM_LoadFontFile(char *FontFileName, tFontData *FontData)
int FlashTransponderTablesGetTotal(int SatNum)
dword FIS_fwAppl_ClrTimer(void)
INILOCATION INILocateFile(char *FileName, char *AppName)
Definition: INILocateFile.c:7
dword FIS_fwezxml_idx(void)
bool Appl_EvtProc_PincodeKey(dword p1, dword p2)
dword HDD_GetFileTimeByFileName(const char *FileName)
dword FIS_vFlashBlockOTAInfo(void)
dword FIS_fwAppl_StartPlayback(void)
bool VFD_Update(void)
Definition: VFD_Update.c:3
bool HDD_RecycleSF(const char *FileName)
Definition: HDD_RecycleSF.c:6
dword FIS_vfrontfd(void)
Definition: FIS_vfrontfd.c:3
bool isIceTVToppy(void)
Definition: isIceTVToppy.c:3
tLogoStyle
Definition: libFireBird.h:2225
@ LGST_TransBlack
Definition: libFireBird.h:2230
@ LGST_TransQTBlue
Definition: libFireBird.h:2233
@ LGST_3pgstyle
Definition: libFireBird.h:2226
@ LGST_QtstyleGrey
Definition: libFireBird.h:2228
@ LGST_TransQTGrey
Definition: libFireBird.h:2234
@ LGST_NRITEMS
Definition: libFireBird.h:2235
@ LGST_QtstyleTMS
Definition: libFireBird.h:2229
@ LGST_TransIBBlue
Definition: libFireBird.h:2231
@ LGST_QtstyleBlue
Definition: libFireBird.h:2227
@ LGST_TransIBGrey
Definition: libFireBird.h:2232
tKeyPadMode
Definition: libFireBird.h:2975
@ KPM_NrModes
Definition: libFireBird.h:2983
@ KPM_SpecialChars3
Definition: libFireBird.h:2982
@ KPM_Num
Definition: libFireBird.h:2978
@ KPM_SpecialChars1
Definition: libFireBird.h:2980
@ KPM_Symbols
Definition: libFireBird.h:2979
@ KPM_Standard
Definition: libFireBird.h:2976
@ KPM_CAPS
Definition: libFireBird.h:2977
@ KPM_SpecialChars2
Definition: libFireBird.h:2981
tLineHeight
Definition: libFireBird.h:2740
@ LH_Tiny
Definition: libFireBird.h:2743
@ LH_Normal
Definition: libFireBird.h:2741
@ LH_Small
Definition: libFireBird.h:2742
bool GetCurrentTimeZone(short *TZOffset, bool *DST)
dword OSDMenuMessageBoxLastButton(void)
void LogEntryGeneric(char *ProgramName, bool Console, char *Text)
int OSDMenuGetNrOfLines(void)
void * TAP_MemRealloc(void *ptr, size_t OldSize, size_t NewSize, bool InitMemory)
Definition: TAP_MemRealloc.c:3
#define MJD(d)
Definition: libFireBird.h:2703
bool PSBuffer_Init(tPSBuffer *PSBuffer, word PID, int BufferSize)
Definition: PSBuffer_Init.c:7
dword FIS_vAudioTrack(void)
void DeleteAt(char *SourceString, int Pos, int Len)
Definition: DeleteAt.c:4
byte * strncpyUC(byte *dest, const byte *src, size_t n)
Definition: strncpyUC.c:4
word offset_h
Definition: libFireBird.h:256
word offset_l
Definition: libFireBird.h:255
word size_h
Definition: libFireBird.h:253
word size_l
Definition: libFireBird.h:252
word reserved[2]
Definition: libFireBird.h:254
long height
Definition: libFireBird.h:263
long compress
Definition: libFireBird.h:266
word plane
Definition: libFireBird.h:264
long img_size
Definition: libFireBird.h:267
long icolor
Definition: libFireBird.h:271
long color
Definition: libFireBird.h:270
long width
Definition: libFireBird.h:262
word bits_per_pixel
Definition: libFireBird.h:265
long info_size
Definition: libFireBird.h:261
long x_res
Definition: libFireBird.h:268
long y_res
Definition: libFireBird.h:269
TYPE_ServiceType ServiceType
Definition: libFireBird.h:1312
tRunningStatus RunningStatus
Definition: libFireBird.h:1300
word ExtEventTextLength
Definition: libFireBird.h:1320
byte ShortEventTextLength
Definition: libFireBird.h:1319
byte ContentIdentifier
Definition: libFireBird.h:1328
ezxml_t child
Definition: libFireBird.h:1400
size_t off
Definition: libFireBird.h:1396
char * name
Definition: libFireBird.h:1393
ezxml_t parent
Definition: libFireBird.h:1401
short flags
Definition: libFireBird.h:1402
ezxml_t next
Definition: libFireBird.h:1397
char ** attr
Definition: libFireBird.h:1394
ezxml_t ordered
Definition: libFireBird.h:1399
ezxml_t sibling
Definition: libFireBird.h:1398
char * txt
Definition: libFireBird.h:1395
byte unused2
Definition: libFireBird.h:299
byte CurrentTrack
Definition: libFireBird.h:298
byte NrOfTracks
Definition: libFireBird.h:297
TYPE_ReservationType ReservationType
Definition: libFireBird.h:1714
int DataLen
Definition: libFireBird.h:2455
byte * PSData
Definition: libFireBird.h:2454
ulong64 * FileOffset
Definition: libFireBird.h:2456
char * Path
Definition: libFireBird.h:1447
dword Magic
Definition: libFireBird.h:1446
dword unknown1
Definition: libFireBird.h:1448
dword unknown2
Definition: libFireBird.h:1449
dword NrOfToppyInfoEntries
Definition: libFireBird.h:111
dword NrOfFWInfoEntries
Definition: libFireBird.h:112
word FWInfoLayoutVersion
Definition: libFireBird.h:110
dword CompileDate
Definition: libFireBird.h:108
word ToppyInfoLayoutVersion
Definition: libFireBird.h:109
word SysID
Definition: libFireBird.h:151
dword FWgp
Definition: libFireBird.h:153
word AppVersion
Definition: libFireBird.h:155
word unused2
Definition: libFireBird.h:156
bool Beta
Definition: libFireBird.h:158
dword unused3
Definition: libFireBird.h:157
dword FWDate
Definition: libFireBird.h:154
word unused1
Definition: libFireBird.h:152
byte NrEntries
Definition: libFireBird.h:1736
byte UniCableunused
Definition: libFireBird.h:1577
word UniCableUserBand
Definition: libFireBird.h:1579
byte DiSEqC12
Definition: libFireBird.h:1561
byte unused3
Definition: libFireBird.h:1570
byte unused1
Definition: libFireBird.h:1557
byte unused4
Definition: libFireBird.h:1572
word Switch22
Definition: libFireBird.h:1564
byte LoopThrough
Definition: libFireBird.h:1571
word UniCableFrq
Definition: libFireBird.h:1580
byte unused2
Definition: libFireBird.h:1559
byte LNBSupply
Definition: libFireBird.h:1556
byte DiSEqC11
Definition: libFireBird.h:1574
word LowBand
Definition: libFireBird.h:1565
byte DiSEqC10
Definition: libFireBird.h:1558
word UniversalLNB
Definition: libFireBird.h:1563
byte UniCableSatPosition
Definition: libFireBird.h:1576
word AudioStreamType
Definition: libFireBird.h:1532
word AudioAutoSelect
Definition: libFireBird.h:1530
byte VideoStreamType
Definition: libFireBird.h:1517
word TransponderIndex
Definition: libFireBird.h:1523
dword StartTime
Definition: libFireBird.h:1674
dword rs_unknown4
Definition: libFireBird.h:1697
dword rs_timestamp1
Definition: libFireBird.h:1690
dword rs_unknown2
Definition: libFireBird.h:1694
dword EventID1
Definition: libFireBird.h:1683
dword EventID2
Definition: libFireBird.h:1684
dword unknown1
Definition: libFireBird.h:1682
byte ServiceType
Definition: libFireBird.h:1667
tFlashTransponderTable TpInfo
Definition: libFireBird.h:1699
byte ReservationType
Definition: libFireBird.h:1668
word ServiceIndex
Definition: libFireBird.h:1685
dword rs_unknown3
Definition: libFireBird.h:1696
dword rs_timestamp2
Definition: libFireBird.h:1695
dword rs_unknown1
Definition: libFireBird.h:1693
tGlyphCacheUC * GlyphCache
Definition: libFireBird.h:1854
dword GlyphCacheEntries
Definition: libFireBird.h:1853
tFontDefUC * FontDef
Definition: libFireBird.h:1852
dword FontDefEntries
Definition: libFireBird.h:1851
byte * pFontData
Definition: libFireBird.h:1820
dword FileOffset
Definition: libFireBird.h:1835
dword Unicode
Definition: libFireBird.h:1834
dword Width
Definition: libFireBird.h:1813
dword Height
Definition: libFireBird.h:1814
dword BitmapIndex
Definition: libFireBird.h:1815
byte * GlyphData
Definition: libFireBird.h:1843
byte byteFormat
Definition: libFireBird.h:281
dword pMemoryOSD
Definition: libFireBird.h:280
int BufferSize
Definition: libFireBird.h:2467
byte ErrorFlag
Definition: libFireBird.h:2471
tBuffer * pInBuffer
Definition: libFireBird.h:2465
byte LastContCounter
Definition: libFireBird.h:2469
int InBufferDataIndex
Definition: libFireBird.h:2468
byte InBufferIndex
Definition: libFireBird.h:2464
tBuffer * pOutBuffer
Definition: libFireBird.h:2463
byte * pInBufferData
Definition: libFireBird.h:2466
byte SIAudioStreamType
Definition: libFireBird.h:2335
dword EventStartTime
Definition: libFireBird.h:2363
word ExtEventServiceID
Definition: libFireBird.h:2373
dword ExtEventEventID
Definition: libFireBird.h:2374
byte ExtEventNrItemizedPairs
Definition: libFireBird.h:2378
byte SIVideoStreamType
Definition: libFireBird.h:2334
dword HeaderStartTime
Definition: libFireBird.h:2307
word HeaderDurationSec
Definition: libFireBird.h:2309
word ExtEventTextLength
Definition: libFireBird.h:2375
word TPOriginalNetworkID
Definition: libFireBird.h:2351
byte EventRunningStatus
Definition: libFireBird.h:2365
byte EventParentalRate
Definition: libFireBird.h:2366
dword DBSize
Definition: libFireBird.h:2548
char * DB
Definition: libFireBird.h:2549
char * DBEnd
Definition: libFireBird.h:2551
char * DBPtr
Definition: libFireBird.h:2550
dword TAPID
Definition: libFireBird.h:2592
dword Date
Definition: libFireBird.h:2593
TYPE_File * file
Definition: libFireBird.h:2579
tDirEntry * CurrentDir
Definition: libFireBird.h:2587
REMOTE_TYPE RemoteType
Definition: libFireBird.h:143
byte RecExtension
Definition: libFireBird.h:145
SYSTEM_TYPE SystemType
Definition: libFireBird.h:136
word unused1
Definition: libFireBird.h:133
DISPLAY_TYPE DisplayType
Definition: libFireBird.h:142
dword FlashBase
Definition: libFireBird.h:137
bool BigEndian
Definition: libFireBird.h:139
dword MaxRecStreams
Definition: libFireBird.h:144
dword NrBlocks
Definition: libFireBird.h:1942
dword RecycleDate
Definition: libFireBird.h:1940
word Duration
Definition: libFireBird.h:1937
dword LastBlock
Definition: libFireBird.h:1938
byte Version
Definition: libFireBird.h:1935
byte Recognized
Definition: libFireBird.h:1936
dword SEISPS
Definition: libFireBird.h:2416
dword Zero2
Definition: libFireBird.h:2419
dword SEIPTS
Definition: libFireBird.h:2413
dword SEIOffsetLow
Definition: libFireBird.h:2412
dword Zero3
Definition: libFireBird.h:2420
dword FrameType
Definition: libFireBird.h:2407
dword SEIPPS
Definition: libFireBird.h:2406
dword IFrame
Definition: libFireBird.h:2418
dword SPSLen
Definition: libFireBird.h:2417
ulong64 Timems
Definition: libFireBird.h:2415
dword Zero5
Definition: libFireBird.h:2422
dword Zero4
Definition: libFireBird.h:2421
dword Zero6
Definition: libFireBird.h:2423
byte MPEGType
Definition: libFireBird.h:2408
dword SEIOffsetHigh
Definition: libFireBird.h:2411
dword NextAUD
Definition: libFireBird.h:2414
word PPSLen
Definition: libFireBird.h:2410
byte FrameCounter
Definition: libFireBird.h:2409
dword NextPH
Definition: libFireBird.h:2399
dword FrameType
Definition: libFireBird.h:2392
dword PTS2
Definition: libFireBird.h:2398
word Field5
Definition: libFireBird.h:2395
dword Zero5
Definition: libFireBird.h:2401
byte MPEGType
Definition: libFireBird.h:2393
dword PHOffsetHigh
Definition: libFireBird.h:2396
dword Time
Definition: libFireBird.h:2400
dword SHOffset
Definition: libFireBird.h:2391
dword PHOffset
Definition: libFireBird.h:2397
byte FrameCounter
Definition: libFireBird.h:2394