add libduckbox

This commit is contained in:
max10
2014-04-27 01:52:05 +02:00
parent fcf4785716
commit 4dc1171253
73 changed files with 4050 additions and 2030 deletions

View File

@@ -1,6 +1,9 @@
#include <config.h>
#if HAVE_TRIPLEDRAGON
#include "../libtriple/audio_td.h"
#elif HAVE_DUCKBOX_HARDWARE
#include "../libduckbox/audio_lib.h"
#include "../libduckbox/audio_mixer.h"
#elif HAVE_SPARK_HARDWARE
#include "../libspark/audio_lib.h"
#include "../libspark/audio_mixer.h"

View File

@@ -1,6 +1,8 @@
#include <config.h>
#if HAVE_TRIPLEDRAGON
#include "../libtriple/cs_api.h"
#elif HAVE_DUCKBOX_HARDWARE
#include "../libduckbox/cs_api.h"
#elif HAVE_SPARK_HARDWARE
#include "../libspark/cs_api.h"
#elif HAVE_AZBOX_HARDWARE

184
include/cs_frontpanel.h Normal file
View File

@@ -0,0 +1,184 @@
#ifndef __DUCKBOX_VFD__
#define __DUCKBOX_VFD__
#define VFDDISPLAYCHARS 0xc0425a00
#define VFDWRITECGRAM 0x40425a01
#define VFDBRIGHTNESS 0xc0425a03
#define VFDPWRLED 0xc0425a04
#define VFDDRIVERINIT 0xc0425a08
#define VFDICONDISPLAYONOFF 0xc0425a0a
#define VFDDISPLAYWRITEONOFF 0xc0425a05
#define VFDCLEARICONS 0xc0425af6
#define VFDSETRF 0xc0425af7
#define VFDSETFAN 0xc0425af8
#define VFDGETWAKEUPMODE 0xc0425af9
#define VFDGETTIME 0xc0425afa
#define VFDSETTIME 0xc0425afb
#define VFDSTANDBY 0xc0425afc
#define VFDREBOOT 0xc0425afd
#define VFDSETLED 0xc0425afe
#define VFDSETMODE 0xc0425aff
#define VFDGETWAKEUPTIME 0xc0425b00
#define VFDGETVERSION 0xc0425b01
#define VFDSETDISPLAYTIME 0xc0425b02
#define VFDSETTIMEMODE 0xc0425b03
#define VFDDISPLAYCLR 0xc0425b00
typedef enum {
#if defined(BOXMODEL_OCTAGON1008)
ICON_DTS,
ICON_VIDEO,
ICON_AUDIO,
ICON_LINK,
ICON_HDD,
ICON_DISC,
ICON_DVB,
FP_ICON_USB = 0x27,
FP_ICON_HD = 0x27,
FP_ICON_HDD = ICON_HDD,
FP_ICON_LOCK = 0x27,
FP_ICON_BT = 0x27,
FP_ICON_MP3 = 0x27,
FP_ICON_MUSIC = 0x27,
FP_ICON_DD = 0x27,
FP_ICON_MAIL = 0x27,
FP_ICON_MUTE = 0x27,
FP_ICON_PLAY = 0x27,
FP_ICON_PAUSE = 0x27,
FP_ICON_FF = 0x27,
FP_ICON_FR = 0x27,
FP_ICON_REC = 0x27,
FP_ICON_CLOCK = 0x27,
#elif defined(BOXMODEL_FORTIS_HDBOX)
ICON_STANDBY = 0x10,
ICON_SAT,
ICON_REC,
ICON_TIMESHIFT,
ICON_TIMER,
ICON_HD,
ICON_USB,
ICON_SCRAMBLED,
ICON_DOLBY,
ICON_MUTE,
ICON_TUNER1,
ICON_TUNER2,
ICON_MP3,
ICON_REPEAT,
ICON_Play,
FP_ICON_PAUSE,
ICON_TER,
ICON_FILE,
ICON_480i,
ICON_480p,
ICON_576i,
ICON_576p,
ICON_720p,
ICON_1080i,
ICON_1080p,
ICON_Play_1,
FP_ICON_USB = ICON_USB,
FP_ICON_REC = ICON_REC,
FP_ICON_CLOCK = ICON_TIMER,
FP_ICON_HD = ICON_HD,
FP_ICON_LOCK = ICON_SCRAMBLED,
FP_ICON_DD = ICON_DOLBY,
FP_ICON_MUTE = ICON_MUTE,
FP_ICON_MP3 = ICON_MP3,
FP_ICON_PLAY = ICON_Play,
FP_ICON_HDD,
FP_ICON_MUSIC,
FP_ICON_MAIL,
FP_ICON_FF,
FP_ICON_FR,
#elif defined(BOXMODEL_UFS910)
FP_ICON_USB = 0x10,
FP_ICON_HD,
FP_ICON_HDD,
FP_ICON_LOCK,
FP_ICON_BT,
FP_ICON_MP3,
FP_ICON_MUSIC,
FP_ICON_DD,
FP_ICON_MAIL,
FP_ICON_MUTE,
FP_ICON_PLAY,
FP_ICON_PAUSE,
FP_ICON_FF,
FP_ICON_FR,
FP_ICON_REC,
FP_ICON_CLOCK,
#else
FP_ICON_USB = 0x10,
FP_ICON_HD,
FP_ICON_HDD,
FP_ICON_LOCK,
FP_ICON_BT,
FP_ICON_MP3,
FP_ICON_MUSIC,
FP_ICON_DD,
FP_ICON_MAIL,
FP_ICON_MUTE,
FP_ICON_PLAY,
FP_ICON_PAUSE,
FP_ICON_FF,
FP_ICON_FR,
FP_ICON_REC,
FP_ICON_CLOCK,
#endif
FP_ICON_RECORD,
FP_ICON_DOWNLOAD,
FP_ICON_TIMESHIFT,
FP_ICON_MAX
} fp_icon;
typedef enum {
FP_FLAG_NONE = 0x00,
FP_FLAG_SCROLL_ON = 0x01, /* switch scrolling on */
FP_FLAG_SCROLL_LTR = 0x02, /* scroll from left to rightinstead of default right to left direction (i.e. for arabic text) */
FP_FLAG_SCROLL_SIO = 0x04, /* start/stop scrolling with empty screen (scroll in/out) */
FP_FLAG_SCROLL_DELAY = 0x08, /* delayed scroll start */
FP_FLAG_ALIGN_LEFT = 0x10, /* align the text in display from the left (default) */
FP_FLAG_ALIGN_RIGHT = 0x20, /* align the text in display from the right (arabic) */
FP_FLAG_UPDATE_SCROLL_POS = 0x40, /* update the current position for scrolling */
} fp_flag;
typedef struct {
unsigned char brightness;
unsigned char flags;
unsigned char current_hour;
unsigned char current_minute;
unsigned char timer_minutes_hi;
unsigned char timer_minutes_lo;
} fp_standby_data_t;
typedef struct {
unsigned char source;
unsigned char time_minutes_hi;
unsigned char time_minutes_lo;
} fp_wakeup_data_t;
typedef enum {
FP_LED_1_ON = 0x81,
FP_LED_2_ON = 0x82,
FP_LED_3_ON = 0x83,
FP_LED_1_OFF = 0x01,
FP_LED_2_OFF = 0x02,
FP_LED_3_OFF = 0x03,
} fp_led_ctrl_t;
typedef enum {
FP_WAKEUP_SOURCE_TIMER = 0x01,
FP_WAKEUP_SOURCE_BUTTON = 0x02,
FP_WAKEUP_SOURCE_REMOTE = 0x04,
FP_WAKEUP_SOURCE_PWLOST = 0x7F,
FP_WAKEUP_SOURCE_POWER = 0xFF
} fp_wakeup_source;
typedef struct {
unsigned short addr;
unsigned short cmd;
} fp_standby_cmd_data_t;
#endif /* __DUCKBOX_VFD__ */

178
include/cs_vfd.h Normal file
View File

@@ -0,0 +1,178 @@
#ifndef __DUCKBOX_VFD__
#define __DUCKBOX_VFD__
#define VFDDISPLAYCHARS 0xc0425a00
#define VFDWRITECGRAM 0x40425a01
#define VFDBRIGHTNESS 0xc0425a03
#define VFDPWRLED 0xc0425a04
#define VFDDRIVERINIT 0xc0425a08
#define VFDICONDISPLAYONOFF 0xc0425a0a
#define VFDDISPLAYWRITEONOFF 0xc0425a05
#define VFDCLEARICONS 0xc0425af6
#define VFDSETRF 0xc0425af7
#define VFDSETFAN 0xc0425af8
#define VFDGETWAKEUPMODE 0xc0425af9
#define VFDGETTIME 0xc0425afa
#define VFDSETTIME 0xc0425afb
#define VFDSTANDBY 0xc0425afc
#define VFDREBOOT 0xc0425afd
#define VFDSETLED 0xc0425afe
#define VFDSETMODE 0xc0425aff
#define VFDGETWAKEUPTIME 0xc0425b00
#define VFDGETVERSION 0xc0425b01
#define VFDSETDISPLAYTIME 0xc0425b02
#define VFDSETTIMEMODE 0xc0425b03
#define VFDDISPLAYCLR 0xc0425b00
typedef enum {
#if defined(BOXMODEL_OCTAGON1008)
ICON_DTS,
ICON_VIDEO,
ICON_AUDIO,
ICON_LINK,
ICON_HDD,
ICON_DISC,
ICON_DVB,
VFD_ICON_USB = 0x27,
VFD_ICON_HD = 0x27,
VFD_ICON_HDD = ICON_HDD,
VFD_ICON_LOCK = 0x27,
VFD_ICON_BT = 0x27,
VFD_ICON_MP3 = 0x27,
VFD_ICON_MUSIC = 0x27,
VFD_ICON_DD = 0x27,
VFD_ICON_MAIL = 0x27,
VFD_ICON_MUTE = 0x27,
VFD_ICON_PLAY = 0x27,
VFD_ICON_PAUSE = 0x27,
VFD_ICON_FF = 0x27,
VFD_ICON_FR = 0x27,
VFD_ICON_REC = 0x27,
VFD_ICON_CLOCK = 0x27,
#elif defined(BOXMODEL_FORTIS_HDBOX)
ICON_STANDBY = 0x10,
ICON_SAT,
ICON_REC,
ICON_TIMESHIFT,
ICON_TIMER,
ICON_HD,
ICON_USB,
ICON_SCRAMBLED,
ICON_DOLBY,
ICON_MUTE,
ICON_TUNER1,
ICON_TUNER2,
ICON_MP3,
ICON_REPEAT,
ICON_Play,
VFD_ICON_PAUSE,
ICON_TER,
ICON_FILE,
ICON_480i,
ICON_480p,
ICON_576i,
ICON_576p,
ICON_720p,
ICON_1080i,
ICON_1080p,
ICON_Play_1,
VFD_ICON_USB = ICON_USB,
VFD_ICON_REC = ICON_REC,
VFD_ICON_CLOCK = ICON_TIMER,
VFD_ICON_HD = ICON_HD,
VFD_ICON_LOCK = ICON_SCRAMBLED,
VFD_ICON_DD = ICON_DOLBY,
VFD_ICON_MUTE = ICON_MUTE,
VFD_ICON_MP3 = ICON_MP3,
VFD_ICON_PLAY = ICON_Play,
VFD_ICON_HDD,
VFD_ICON_MUSIC,
VFD_ICON_MAIL,
VFD_ICON_FF,
VFD_ICON_FR,
#elif defined(BOXMODEL_UFS910)
VFD_ICON_USB = 0x10,
VFD_ICON_HD,
VFD_ICON_HDD,
VFD_ICON_LOCK,
VFD_ICON_BT,
VFD_ICON_MP3,
VFD_ICON_MUSIC,
VFD_ICON_DD,
VFD_ICON_MAIL,
VFD_ICON_MUTE,
VFD_ICON_PLAY,
VFD_ICON_PAUSE,
VFD_ICON_FF,
VFD_ICON_FR,
VFD_ICON_REC,
VFD_ICON_CLOCK,
#else
VFD_ICON_USB = 0x10,
VFD_ICON_HD,
VFD_ICON_HDD,
VFD_ICON_LOCK,
VFD_ICON_BT,
VFD_ICON_MP3,
VFD_ICON_MUSIC,
VFD_ICON_DD,
VFD_ICON_MAIL,
VFD_ICON_MUTE,
VFD_ICON_PLAY,
VFD_ICON_PAUSE,
VFD_ICON_FF,
VFD_ICON_FR,
VFD_ICON_REC,
VFD_ICON_CLOCK,
#endif
VFD_ICON_MAX
} vfd_icon;
typedef enum
{
VFD_FLAG_NONE = 0x00,
VFD_FLAG_SCROLL_ON = 0x01, /* switch scrolling on */
VFD_FLAG_SCROLL_LTR = 0x02, /* scroll from left to rightinstead of default right to left direction (i.e. for arabic text) */
VFD_FLAG_SCROLL_SIO = 0x04, /* start/stop scrolling with empty screen (scroll in/out) */
VFD_FLAG_SCROLL_DELAY = 0x08, /* delayed scroll start */
VFD_FLAG_ALIGN_LEFT = 0x10, /* align the text in display from the left (default) */
VFD_FLAG_ALIGN_RIGHT = 0x20, /* align the text in display from the right (arabic) */
VFD_FLAG_UPDATE_SCROLL_POS = 0x40, /* update the current position for scrolling */
} vfd_flag;
typedef struct {
unsigned char brightness;
unsigned char flags;
unsigned char current_hour;
unsigned char current_minute;
unsigned char timer_minutes_hi;
unsigned char timer_minutes_lo;
} standby_data_t;
typedef struct {
unsigned char source;
unsigned char time_minutes_hi;
unsigned char time_minutes_lo;
} wakeup_data_t;
typedef enum {
VFD_LED_1_ON = 0x81,
VFD_LED_2_ON = 0x82,
VFD_LED_3_ON = 0x83,
VFD_LED_1_OFF = 0x01,
VFD_LED_2_OFF = 0x02,
VFD_LED_3_OFF = 0x03,
} vfd_led_ctrl_t;
typedef enum
{
WAKEUP_SOURCE_TIMER = 0x01,
WAKEUP_SOURCE_BUTTON = 0x02,
WAKEUP_SOURCE_REMOTE = 0x04,
WAKEUP_SOURCE_PWLOST = 0x7F,
WAKEUP_SOURCE_POWER = 0xFF
} wakeup_source;
#endif /* __DUCKBOX_VFD__ */

View File

@@ -1,6 +1,8 @@
#include <config.h>
#if HAVE_TRIPLEDRAGON
#include "../libtriple/dmx_td.h"
#elif HAVE_DUCKBOX_HARDWARE
#include "../libduckbox/dmx_lib.h"
#elif HAVE_SPARK_HARDWARE
#include "../libspark/dmx_lib.h"
#elif HAVE_AZBOX_HARDWARE

View File

@@ -36,6 +36,7 @@ typedef struct hw_caps
char boxvendor[64];
char boxname[64];
int boxtype;
int has_CI;
} hw_caps_t;
hw_caps_t *get_hwcaps(void);

View File

@@ -1,8 +0,0 @@
#include <config.h>
#if HAVE_TRIPLEDRAGON
#include "../libtriple/playback_td.h"
#elif HAVE_SPARK_HARDWARE
#include "../libspark/playback_lib.h"
#else
#error neither HAVE_TRIPLEDRAGON nor HAVE_SPARK_HARDWARE defined
#endif

View File

@@ -5,7 +5,30 @@
#define MAX_MMI_TEXT_LEN 255
#define MAX_MMI_CHOICE_TEXT_LEN 255
typedef enum {
MMI_TOP_MENU_SUBS = 1,
MMI_TOP_MENU_EVENTS,
MMI_TOP_MENU_TOKENS,
MMI_TOP_MENU_PIN,
MMI_TOP_MENU_MATURE,
MMI_TOP_MENU_ABOUT
} MMI_MENU_CURRENT;
typedef enum {
MMI_MENU_LEVEL_MAIN = 0,
MMI_MENU_LEVEL_MATURE,
MMI_MENU_LEVEL_ASK_PIN_MATURE
} MMI_MENU_LEVEL;
typedef enum {
MMI_PIN_LEVEL_ASK_OLD = 0,
MMI_PIN_LEVEL_CHECK_CURRENT,
MMI_PIN_LEVEL_ASK_REPEAT,
MMI_PIN_LEVEL_CHECK_AND_CHANGE
} MMI_PIN_LEVEL;
typedef struct {
int slot;
int choice_nb;
char title[MAX_MMI_TEXT_LEN];
char subtitle[MAX_MMI_TEXT_LEN];
@@ -14,6 +37,7 @@ typedef struct {
} MMI_MENU_LIST_INFO;
typedef struct {
int slot;
int blind;
int answerlen;
char enquiryText[MAX_MMI_TEXT_LEN];

View File

@@ -1,6 +1,8 @@
#include <config.h>
#if HAVE_TRIPLEDRAGON
#include "../libtriple/playback_td.h"
#elif HAVE_DUCKBOX_HARDWARE
#include "../libduckbox/playback_libeplayer3.h"
#elif HAVE_SPARK_HARDWARE
#include "../libspark/playback_libeplayer3.h"
#elif HAVE_AZBOX_HARDWARE
@@ -9,8 +11,12 @@
#if BOXMODEL_RASPI
#include "../raspi/playback.h"
#else
#if ENABLE_GSTREAMER
#include "../generic-pc/playback_gst.h"
#else
#include "../generic-pc/playback.h"
#endif
#endif
#else
#error neither HAVE_TRIPLEDRAGON nor HAVE_SPARK_HARDWARE defined
#endif

View File

@@ -1,6 +1,8 @@
#include <config.h>
#if HAVE_TRIPLEDRAGON
#include "../libtriple/pwrmngr.h"
#elif HAVE_DUCKBOX_HARDWARE
#include "../libduckbox/pwrmngr.h"
#elif HAVE_SPARK_HARDWARE
#include "../libspark/pwrmngr.h"
#elif HAVE_AZBOX_HARDWARE

View File

@@ -1,6 +1,8 @@
#include <config.h>
#if HAVE_TRIPLEDRAGON
#include "../libtriple/record_td.h"
#elif HAVE_DUCKBOX_HARDWARE
#include "../libduckbox/record_lib.h"
#elif HAVE_SPARK_HARDWARE
#include "../libspark/record_lib.h"
#elif HAVE_AZBOX_HARDWARE

View File

@@ -1,6 +1,8 @@
#include <config.h>
#if HAVE_TRIPLEDRAGON
#include "../libtriple/video_td.h"
#elif HAVE_DUCKBOX_HARDWARE
#include "../libduckbox/video_lib.h"
#elif HAVE_SPARK_HARDWARE
#include "../libspark/video_lib.h"
#elif HAVE_AZBOX_HARDWARE