亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? fmanager.h

?? 車載電子影音系統dvd播放系統原程序代碼
?? H
?? 第 1 頁 / 共 2 頁
字號:
/**************************************************************************

        (C)Copyright Cheertek Inc. 2002-2003,
           D300, all right reserved

        Product : VCD / DVD Firmware

        Date    : 1999.7.19
        Author  : Winbond (D300 WWC)
        Purpose : Provide the MP3 control
        Sources : mp3.c

****************************************************************************/
#ifndef __FMANAGER_H__
#define __FMANAGER_H__

#ifdef __cplusplus
   extern "C"{
#endif

//////////////////////////////////////////////////////////////////////////
//  Must remove to other module information !!
//  Notice: must check if it's suitable to declared them within OSDFM.H
//          while support run-time selection action or not
// LLY0.83b-2, must define selection cursor while support run-time selection
#define OSDFM_MSG_UPDATE_SELECTION                   OSDFM_MSG_UPDATE_HIGHLIGHT
#define OSDFM_MSG_CLEAR_SELECTION                    OSDFM_MSG_CLEAR_HIGHLIGHT

#define OSDPL_MSG_UPDATE_SELECTION          OSDPL_MSG_UPDATE_HIGHLIGHT
#define OSDPL_MSG_CLEAR_SELECTION           OSDPL_MSG_CLEAR_HIGHLIGHT
/////////////////////////////////////////////////////////////////////


////////////////////////////////////////////////////////////////
// ***** The reference variables for a page display Area *****
// 1. To get the directory name or file name
// * Access __pFMNameList[n].cName.
// * The max. length of cName is FM_MAX_STRING_LENGTH,
// * or the cName is terminated with end of string character '\0'.

// 2. To decide the number of items to be displayed
// * The __bFMMenuPage.w1stID is used as the first index to access the __pFMNameList.
// * The __bFMMenuPage.wNOofItems is the max. number of items to be displayed.

// 3. To get current directory's name
// * Access __pFMDirNameList[__bFMActiveDir].cName

// 4. To decide which layer menu selection
// CT9928AF solution:
// * __bFMMenuID =  FM_MENU_NONE, leave File Manager control menu
// * __bFMMenuID <  FM_MENU_FILE, currently in directory selection list.
// * __bFMMenuID >= FM_MENU_FILE, currently in file selection list.
// CT908 solution:
// * __bFMMenuID = FM_MENU_NONE, leave File Manager control menu
// * __bFMMenuID = FM_MENU_NORMAL, within File Manager control menu
// * __bFMMenuID = FM_MENU_EDITPROG, within input program menu
// * __bFMMenuID = FM_MENU_PROGLIST, within program list menu

// 5. To get total files number
// * __wFMTotalFiles.

// 7. To get current time
// * gcShowStatus.wCurrentTime.

// 8. To get current track
// * gcShowStatus.wCurrentTrack.
////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////
// *****  Global Definition Area   *****
// **** If define it, cursor index/ playing item index will used disc view
// DISC_VIEW: index from 1 ~ total files within the disc
// DIR_VIEW: index from 1 ~ total files within the directory
// wyc1.07a, disable this define because in CT908 UI mode won't use it.
// #define DISC_VIEW

//CoCo1.24a, open this define to support JPEG full screen.
#define JPEG_FULL_SCREEN

// wyc1.07, add a define to supporting on/off FM UI.
#define     SUPPORT_FM_UI_ON_OFF

// wyc1.10, new define to control show numner or "..." when detecting CDROM files.
//#define SUPPORT_SHOW_FILE_NUMBER_IN_DETECTION

// [0] If define it, F/W will save file relative information into DRAM
//     Thus, we can support more 330 files within one title
///    Otherwise, it only support <= 330 files within one title
#define SAVE_FILE_INFO_IN_DRAM

// [1] Max directory number which F/W can support
// Modify this value to support more or less directory in a disc
#define FM_MAX_DIR_NO   150  // max. number of directory

// [2-1] Max file number which F/W can support
// Modify this value to support more or less files in a disc.
// but if exceed 256, need do more extra chage on some variables
// LLY2.80, enlarge the max file number within one title, 330 --> 1000
// wyc1.00 ,modify the max. supporting file to 9999
#ifdef  SAVE_FILE_INFO_IN_DRAM
// wyc1.22
#define FM_MAX_FILE_NO_ONE_TITLE    2800 // max. number of files within one title
#define  FM_MAX_PARSE_DIR_SECTORS       (FM_MAX_FILE_NO_ONE_TITLE / 30)
#else   // #ifdef SAVE_FILE_INFO_IN_DRAM
#define FM_MAX_FILE_NO_ONE_TITLE    330  // max. number of files within one title
#endif  // #ifdef SAVE_FILE_INFO_IN_DRAM

// [2-2] The max file number for once time CDROM parsing(SRAM buffer issue)
// LLY2.81, reduce max file number of once time, 330 --> 200
// Because, we must reserve some SRAM space to store directory tree information
// Notice: will support multi-parsering of one directory
#ifdef  SAVE_FILE_INFO_IN_DRAM
#define FM_MAX_FILE_NO_ONCE_TIME     150 // wyc1.00
#else   // #ifdef SAVE_FILE_INFO_IN_DRAM
#define FM_MAX_FILE_NO_ONCE_TIME     FM_MAX_FILE_NO_ONE_TITLE
#endif  // #ifdef SAVE_FILE_INFO_IN_DRAM

// [2-3] When supporting more than 200 files, need to add some offset for showing correct file name when acrossing 200 boundary.
// This value also sholud be minimum OSDFM_MAX_ITEM_IN_FILE_WINDOW-1, but because we need to support thumbnail mode. 
// So the FM_MAX_FILE_NO_ONCE_TIME + offset suggest can be divide by COLUMN_NUM*ROW_NUM. So suggest offset number is 0.
#define FM_MAX_FILE_NO_OFFSET       10
// [3] Max string length for directory/ file name
// The max directory name length = (max file name length + 1)
// Because, directory name will share the bExtID element space in FILENAMEINFO structure
// Notice: Must re-adjust the max string length if reserved DRAM space is larger (CT908)
//         because, file relative info. will be saved in DRAM
// Max length for FILENAMEINFO structure
// wyc1.07, extend to 14 bytes
#define FILENAMEINFO_LENGTH  14//8  // size (cName+bExtID)

#define FM_MAX_STRING_LENGTH    (FILENAMEINFO_LENGTH - 2) // decrease 2 is because one is for NULL and one is for extension ID.
#ifdef    SUPPORT_UNICODE
#define FM_MAX_DIRNAME_LENGTH   (FM_MAX_STRING_LENGTH - 1) // decrease 2 is because until now we support 6 chars in dir.
// Max length of DIRNAMEINFO structure
#define DIRNAMEINFO_LENGTH      (FILENAMEINFO_LENGTH-1) // add 2 is because add NULL char and dir attribute
#else
#define FM_MAX_DIRNAME_LENGTH   (FM_MAX_STRING_LENGTH - 2) // decrease 2 is because until now we support 6 chars in dir.
// Max length of DIRNAMEINFO structure
#define DIRNAMEINFO_LENGTH      (FILENAMEINFO_LENGTH-2) // add 2 is because add NULL char and dir attribute
#endif
#define FM_MAX_FILENAME_LENGTH  (FM_MAX_STRING_LENGTH) // support 8 chars in file name part.

// [4] Define the DRAM address for data saving -- LLY2.80
// Must share DRAM : 0x2400 ~ 0x3C00 = 6K DWORD
// Using max file <= 1000 in our suggestion
// Notice: must re-allocate the DRAM space if enlarge the max file number
// --> JPEG status  (1K DWORD) : 1000 files * 3bytes = 0.75K DWORD
// --> File Name List  (2K DWORD) : 1000 files * (6 char + 1 '\0' + 1 extension ID) = 2K DWORD
// --> File TOC info.  (1.25K DWORD) : 1000 files * (3 "start sector" + 2 "length") = 1.25K DWORD
// --> Dir Name List (0.5K DWORD) : 150 directorys * (6 char + 1 '\0' + 1 entension ID) = 0.3K DWORD
// wyc1.10, add new mode for AE version IC.
// wyc2.27, re-define the DRAM allocation for FM user data.
#if (SDRAM_CONFIGURATION == SDRAM_32M) || (SDRAM_CONFIGURATION == SDRAM_32M_D) || (SDRAM_CONFIGURATION == SDRAM_16M) //wyc.230
// wyc1.22, modify the user data for FM in BE version to support playing VOB file.
#define FM_FILE_NAME_BUFFER_ADDR    (W99AV_DRAM_ADDR_RESERVE_START_FM)
// wyc2.30, remove TOC because of file record have cover it, also add (DWORD) to avoid getting wrong address in DRAM.
#define FM_DIR_NAME_BUFFER_ADDR     (FM_FILE_NAME_BUFFER_ADDR + (DWORD)(FM_MAX_FILE_NO_ONE_TITLE*FILE_RECORD_LENGTH/4))
#elif SDRAM_CONFIGURATION == SDRAM_64M
#define FM_JPG_BUFFER_ADDR          (W99AV_DRAM_ADDR_RESERVE_START)
#define FM_FILE_NAME_BUFFER_ADDR    (W99AV_DRAM_ADDR_RESERVE_START+2500)
#define FM_FILE_TOC_BUFFER_ADDR     (W99AV_DRAM_ADDR_RESERVE_START+17500)
#define FM_DIR_NAME_BUFFER_ADDR     (W99AV_DRAM_ADDR_RESERVE_START+23750)
#endif


// [5] Time-Out value for JPEG slide show
#define TIMEOUT_FOR_JPEG_SLIDE_SHOW     ((DWORD)COUNT_5_SEC)

// [6] Debug infomation for JPEG playing
/* --CoCo1.22
#define PARSER_JPEG_HEADER_FAIL         7001
#define DECODE_JPEG_PROCEDURE_HANG      7002
#define DECODE_MP3_PROCEDURE_HANG       7003
#define DECODE_WMA_PROCEDURE_HANG       7004
*/
//CoCo1.22, modify the definition about error message.
#define FM_JPEG_PARSE_HEADER_FAIL			7001
#define FM_JPEG_PARSE_HEADER_UNFINISH		7002
#define FM_JPEG_PARSE_HEADER_UNSUPPORT		7003
#define FM_JPEG_DECODE_FAIL					7004
#define FM_JPEG_DECODE_HANG					7005
#define FM_MP3_DECODE_HANG					7101
#define FM_WMA_DECODE_HANG					7201

// [7] The max time for redecoding action while decoding error
#define REDECODE_COUNT_LIMIT            3       // LLY.275a

// [8] if define it, F/W will support file manager like UI (Only support for CT908)
//     Otherwise, F/W will support file list menu UI (CT9928AF solution)  -- LLY2.80
#undef DISC_VIEW

// [9] The max digit number usage
// wyc1.07, because CC will reference this define to control the 10+ or confirm key number selection restriction. So update it to make user can select more 
// than 4 digits.
#define FM_MAX_NUMBER                   9990

// [10] The max control button number
#define MAX_CTL_BTN_NO                  6


//////////////////////////////////////////////////////////////
// *****  Structure Define Area  *****
// [0] Menu Page info. structure
// LLY2.80, re-adjust the element structure
// (1) Reduce some variables unit from WORD to BYTE:
//     ex. wNOofItems/ wTotalPages/ wPageIndex
// (2) Replace some variables with global variables:
//     ex. wDirIndex
// (3) Remove __wHighLight/ __wSelection
typedef struct tagMENUPAGEINFO
{
    // Index always from "0", ie. 0 means 1st directory/ file, 1 means 2nd directory/ file, ...
    WORD    w1stID;     // 1st item index of current file list page
    BYTE    bNOofItems;     // number of items to be display for current file list page
    BYTE    bTotalPages;    // total page number of current directory/file menu page
    BYTE    bPageIndex;     // the current page index of current directory/ file menu page
}   MENUPAGEINFO, * PMENUPAGEINFO;

// [1] File name information structure
typedef struct tagFILENAMEINFO
{
    // wyc2.36, add one bytes for unicode issue beause unicode string will have 00 bytes. So need to use 00 00 to represent end of string.
#ifdef    SUPPORT_UNICODE
    char    cName[FM_MAX_STRING_LENGTH+2];
#else
    char    cName[FM_MAX_STRING_LENGTH+1];
#endif
    BYTE    bExtID;
}   FILENAMEINFO, * PFILENAMEINFO;

// [3] DRAM location for File Relative Buffer -- LLY2.80
typedef struct tagDRAM_LOC
{
    DWORD   dwFileName;     // starting DRAM address of file name buffer
    DWORD   dwFileTOC;      // starting DRAM address of file TOC buffer
    DWORD   dwJPGStatus;    // starting DRAM address of JPG status buffer
}   DRAM_LOC, * PDRAM_LOC;

// [4] Directory name information structure -- LLY2.80
typedef struct tagDIRNAMEINFO
{
    char    cName[FM_MAX_DIRNAME_LENGTH+1]; // store directory name
    BYTE    bDirExtAttr;     // keep if contains JPEG file
}   DIRNAMEINFO, * PDIRNAMEINFO;


// [5] Directory location structure -- LLY2.80
typedef struct tagDIR_LOC
{
    BYTE    bSector[3]; // keep location (3 BYTE unit)
}   DIR_LOC, * PDIR_LOC;

// Max length of DIR_LOC structure
#define DIR_LOC_LENGTH          3

// [6] Cursor information structure -- LLY2.80
typedef struct tagCURSOR_INFO
{
    BYTE    bPosition;  // column position of cursor
    WORD    wIndex;     // absolute index of current column
}   CURSOR_INFO, * PCURSOR_INFO;

// The value of "bPosition" element
#define POS_DIR_LIST        0   // cursor on "left column"
#define POS_FILE_LIST       1   // cursor on "right column"
#define POS_BUTTON_LIST     2   // cursor on "bottom area"
#define POS_PROG_LIST       3   // cursor on "program list"
#define POS_UNEXIST         4   // don't exist this cursor

// [7] Control Button Area structure -- LLY2.80
typedef struct tagCTL_BUTTON
{
    BYTE    bButtonID;    // keep control button ID
    BYTE    bStatus;    // disable/ enable status of the control button
}   CTL_BUTTON, * PCTL_BUTTON;

// The value of "bButton" element
#define CTL_BTN_NEXT            1      // "Next" button
#define CTL_BTN_PREV            2      // "Previous" button
#define CTL_BTN_PROG            3      // "Program" button
#define CTL_BTN_THUMB           4      // "Thumbnail" button
#define CTL_BTN_RETURN          5      // "Return" button
#define CTL_BTN_PROG_LIST       6      // "Program List" button
#define CTL_BTN_CLEAR_ALL       7      // "Clear All" button
#define CTL_BTN_PLAY            8      // Start the playing action
#define CTL_BTN_END             9      // The end of control button

// The value of "bStatus" element
#define BTN_DISABLE         0x0     // button is disabled
#define BTN_ENABLE          0x1     // button is enabled

// [9] The structures of TREE record.
typedef struct tagTREE_INFO
{
    BYTE    bParentID;          // parent ID
    BYTE    b1stSubDirID;       // 1st sub-directory ID
    BYTE    bNoOfSubDir;        // total number of sub-directory
}   TREE_INFO, * PTREE_INFO;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
极品美女销魂一区二区三区免费| 亚洲一区二区影院| 国产成人精品在线看| 日韩欧美一区二区不卡| 日本女优在线视频一区二区| 日韩欧美国产麻豆| 国产剧情av麻豆香蕉精品| 久久综合久久综合亚洲| 国产精品18久久久久久久久久久久| 久久久久久久综合日本| 成人精品在线视频观看| 亚洲精品国久久99热| 欧美日韩一级视频| 乱一区二区av| 国产精品成人免费在线| 欧美日韩成人综合在线一区二区 | 欧美日韩不卡在线| 免费在线欧美视频| 国产农村妇女毛片精品久久麻豆 | 色哟哟国产精品免费观看| 亚洲一区在线观看免费观看电影高清| 欧美色综合网站| 韩国v欧美v日本v亚洲v| 国产精品久久久久久亚洲毛片| 色婷婷久久99综合精品jk白丝| 蜜臀精品久久久久久蜜臀 | av亚洲精华国产精华精| 一二三四区精品视频| 欧美精品一区二区三区蜜桃 | 亚洲午夜激情av| 日韩亚洲欧美高清| 99久久久国产精品免费蜜臀| 视频一区在线播放| 欧美经典一区二区| 欧美放荡的少妇| 成人黄色免费短视频| 日韩不卡一区二区三区| 国产精品嫩草影院com| 欧美视频完全免费看| 国产91精品在线观看| 日韩精品亚洲专区| 亚洲欧洲美洲综合色网| 7777精品伊人久久久大香线蕉的 | 色婷婷久久综合| 国产精品白丝av| 青青青爽久久午夜综合久久午夜| 国产精品久久久久婷婷二区次| 这里只有精品免费| 欧美视频在线观看一区二区| 成人高清在线视频| 黄色小说综合网站| 日本亚洲最大的色成网站www| 一区二区中文字幕在线| 久久久久久久久久电影| 日韩欧美综合在线| 欧美日韩另类国产亚洲欧美一级| 99精品国产91久久久久久| 国产一区久久久| 毛片av中文字幕一区二区| 亚洲永久免费视频| 亚洲欧美日韩国产一区二区三区| 久久久久国色av免费看影院| 欧美大片在线观看一区| 欧美一区二区三区思思人| 欧美高清性hdvideosex| 在线视频欧美精品| 99久久99久久久精品齐齐| 丁香另类激情小说| 国产精品亚洲一区二区三区在线| 韩国v欧美v亚洲v日本v| 精品一二三四区| 黄色日韩三级电影| 国产精品亚洲视频| 福利一区在线观看| 成人性生交大片免费看中文网站| 狠狠v欧美v日韩v亚洲ⅴ| 久久99久久99精品免视看婷婷| 日韩精品视频网| 欧美a级理论片| 奇米精品一区二区三区在线观看一| 午夜精品123| 偷拍日韩校园综合在线| 天天av天天翘天天综合网色鬼国产| 亚洲成人手机在线| 日本视频在线一区| 久久99热狠狠色一区二区| 国产真实乱子伦精品视频| 精品一区二区三区久久| 国产在线精品一区二区夜色| 国产乱码精品一区二区三区忘忧草 | 欧美剧在线免费观看网站 | 看电视剧不卡顿的网站| 亚洲国产精品激情在线观看| 51精品国自产在线| 日韩午夜av一区| 久久亚洲影视婷婷| 一色屋精品亚洲香蕉网站| 亚洲欧美二区三区| 午夜精品久久久久久久久久| 日本va欧美va瓶| 国产成人精品aa毛片| 91在线一区二区| 欧美精品久久99久久在免费线 | wwww国产精品欧美| 国产精品久久久久婷婷| 亚洲韩国精品一区| 久久成人av少妇免费| 成人免费视频caoporn| 色999日韩国产欧美一区二区| 555www色欧美视频| 国产精品久久久久久久蜜臀 | 日本不卡一区二区三区| 国内精品视频666| 99riav一区二区三区| 91精品一区二区三区久久久久久| 国产视频一区在线观看| 亚洲午夜精品在线| 丁香婷婷综合激情五月色| 欧美性色黄大片| 久久久午夜电影| 一区二区在线观看免费视频播放| 欧美a级理论片| 91老师片黄在线观看| 日韩一区二区在线观看视频播放| 国产亚洲一区二区在线观看| 亚洲国产精品一区二区尤物区| 国内精品伊人久久久久影院对白| 色呦呦网站一区| 久久精品人人爽人人爽| 日韩制服丝袜先锋影音| 99视频精品在线| 精品久久99ma| 亚洲v中文字幕| 成人av在线电影| 日韩欧美在线观看一区二区三区| 亚洲男人天堂一区| 高清国产一区二区| 精品三级av在线| 天堂久久久久va久久久久| 91在线云播放| 国产精品乱人伦一区二区| 久久99精品一区二区三区三区| 欧美日韩一区二区三区免费看| 欧美极品少妇xxxxⅹ高跟鞋| 捆绑变态av一区二区三区| 欧美日韩成人综合天天影院| 亚洲免费观看高清完整版在线观看熊| 国产激情精品久久久第一区二区| 日韩美女视频一区二区在线观看| 亚洲国产精品久久人人爱蜜臀| heyzo一本久久综合| 久久午夜免费电影| 精品一区在线看| 欧美第一区第二区| 免费看日韩精品| 51午夜精品国产| 日韩成人伦理电影在线观看| 欧美日韩日日骚| 亚洲综合小说图片| 欧美亚洲国产怡红院影院| 一区二区三区成人在线视频| 成人av资源在线| 国产日产欧美精品一区二区三区| 国产在线精品免费av| 精品成人佐山爱一区二区| 久久精品久久精品| 精品黑人一区二区三区久久| 精品中文av资源站在线观看| 日韩精品在线一区二区| 老司机免费视频一区二区| 精品久久久久久久久久久院品网| 久久99九九99精品| 国产色一区二区| 白白色亚洲国产精品| 自拍偷拍亚洲激情| 一本色道久久综合亚洲aⅴ蜜桃 | 欧美在线观看视频一区二区| 一区二区三区四区不卡视频| 在线国产电影不卡| 丝瓜av网站精品一区二区| 91精品欧美福利在线观看| 日本不卡视频一二三区| 精品国产亚洲一区二区三区在线观看| 精品制服美女丁香| 国产精品成人免费在线| 欧美在线看片a免费观看| 日本不卡一二三| 国产欧美精品一区二区色综合朱莉| 99国产精品久久久久久久久久| 亚洲专区一二三| 精品国产sm最大网站免费看| 国产成人亚洲综合色影视| 日韩理论片一区二区| 欧美日韩激情一区二区三区| 免费观看久久久4p| 国产精品久线在线观看| 欧美日韩美女一区二区| 国产毛片精品一区| 一区二区三区免费观看| 日韩一卡二卡三卡国产欧美|