source: svn/zas_dstar/hal/common/dsthaldisp.c @ 22

Last change on this file since 22 was 22, checked in by phkim, 11 years ago
  1. phkim
  2. newcon3sk 를 kctv 로 브랜치 함
File size: 47.1 KB
Line 
1/******************************************************************************
2 *_Copyright (c) 2009 Digital Stream Technology Inc. All Rights Reserved.
3 *
4 * Module:      dsthaldisp.c
5 *
6 * Description
7 *     This file includes following Display or Video Output functions;
8 *
9 * Notes
10 *     Picture Quality or Picture Adjustment functions are included
11 *     in the Picture block.
12 *
13 * @author Junku Park (hwatk@dstreamtech.com)
14 * @version $Revision: 1.1 $
15 *
16 ******************************************************************************/
17
18#include <stdlib.h>
19#include <string.h>
20
21#include "dsthalcommon.h"
22#include "dstddcap.h"
23#include "dstddsys.h"
24#include "dstdddisp.h"
25
26#ifdef DMALLOC
27#include <dmalloc.h>
28#endif
29
30/******************************************************************************
31 * Global variable declaration
32 ******************************************************************************/
33DS_U32 gDISPDbgLvl = 1;         //DHL_DISP debug level
34DHL_DISP_CONFIG g_DispConfig;
35
36/******************************************************************************
37 * Imported variable declaration
38 ******************************************************************************/
39extern DHL_CAP_CONFIG   g_dhlcap;
40
41/******************************************************************************
42 * Imported function declaration
43 ******************************************************************************/
44
45/******************************************************************************
46 * Local definitions / typedefs
47 ******************************************************************************/
48
49/******************************************************************************
50 * Local variables declaration
51 ******************************************************************************/
52
53/******************************************************************************
54 * Local function prototypes
55 ******************************************************************************/
56
57#if 0
58___Display_Common_Functions___()
59#endif
60DHL_RESULT DHL_DISP_Init(void)
61{
62    DHL_RESULT dhlResult = DHL_OK;
63
64        if ( g_DispConfig.PanelId == 0 )
65                g_DispConfig.PanelId = DEFAULT_PANEL_TYPE;
66
67        dhlResult = DHL_PIC_PresetDefaultParams();
68    SysASSERT( dhlResult == DHL_OK );
69
70        dhlResult = DHL_PIC_PresetDefaultParamsPIP();
71    SysASSERT( dhlResult == DHL_OK );
72   
73    return dhlResult;
74}
75
76void DHL_DISP_PresetVideoOutputFormat(DHL_VIDEO_FORMAT vidFmt)
77{
78    g_DispConfig.VidOutFormat = vidFmt;
79}
80
81DHL_RESULT DHL_DISP_PresetDispConfig( DHL_DISP_ASPECTRATIO AspectRatio, 
82                                      DHL_DISP_OUTPUT DispOutPort, DHL_VIDEO_FORMAT DispFmt  )
83{
84        g_DispConfig.VideoOutput = DispOutPort;
85        g_DispConfig.VidOutFormat = DispFmt;
86        g_DispConfig.AspectRatio = AspectRatio;
87
88    return DHL_OK;   
89}
90
91/********************************************************************************
92FUNCTION:                                                                   
93    DHL_DISP_ChangeDispOutput                                                           
94
95Purpose:                                                                   
96
97Arguments:                                                                     
98        [in] UserDispOut - display output device
99Returns:                                                                   
100    DHL_RESULT   if success - DHL_OK fail - DHL_FAIL   
101Notes:
102        It is not support when PIP MODE
103        It is operated when normal mode only
104*********************************************************************************/
105DHL_RESULT DHL_DISP_ChangeDispOutput(DHL_DISP_OUTPUT UserDispOut)
106{
107    DHL_RESULT                  dhlResult       = DHL_OK;
108
109        g_DispConfig.VideoOutput = UserDispOut;
110
111        // Call lower driver function.
112
113        if(!DHL_ERROR(dhlResult))
114                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|success|\r\n"); 
115
116        return dhlResult;
117}
118
119DHL_DISP_OUTPUT DHL_DISP_GetDispOutput(void)
120{
121        return g_DispConfig.VideoOutput;
122}
123
124/********************************************************************************
125FUNCTION:                                                                   
126    DHL_DISP_ChangeVideoFomat                                                           
127
128Purpose:                                                                   
129        Change output format; only valid for YPbPr / RGB output.
130       
131Arguments:                                                                     
132        [in] UserVidFormat - display video format
133       
134Returns:                                                                   
135    DHL_RESULT   if success - DHL_OK fail - DHL_FAIL
136Notes:
137        It is not support when PIP MODE
138        It is operated when normal mode only   
139*********************************************************************************/
140DHL_RESULT DHL_DISP_ChangeVideoOutputFormat(DHL_VIDEO_FORMAT UserVidFormat)
141{
142        DHL_RESULT                      dhlResult       = DHL_OK;
143
144        if (UserVidFormat == g_DispConfig.VidOutFormat ) {
145                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|skipped|\r\n"); 
146                return dhlResult;
147        }
148       
149        dhlResult = DD_DISP_ChangeVideoFormat(UserVidFormat);
150        if(DHL_ERROR(dhlResult))
151                DHL_DbgPrintf(0,DHLDBG_PIC,"|error|%d(0x%x)\r\n",__LINE__,dhlResult);
152
153        dhlResult = DHL_GFX_ApplyOSDVidOutFmt(UserVidFormat);
154        if(DHL_ERROR(dhlResult))
155                DHL_DbgPrintf(0,DHLDBG_PIC,"|error|%d(0x%x)\r\n",__LINE__,dhlResult);
156
157        if ( DHL_GFX_IsEnabled(PLANE_OSD) )
158                DHL_GFX_EnablePlane( PLANE_OSD, 1 );
159       
160        if ( DHL_GFX_IsEnabled(PLANE_CC) )
161                DHL_GFX_EnablePlane( PLANE_CC, 1 );
162       
163        g_DispConfig.VidOutFormat = UserVidFormat;
164        if(!DHL_ERROR(dhlResult))
165                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|success|\r\n"); 
166        else
167                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|failure|\r\n"); 
168       
169        if(DHL_DISP_IsVideoMuted()){    // video output format change½Ã mute Ç®¸®´Â ¹®Á¦¿Í °ü·Ã µÇ¾î ¼öÁ¤ jhkoh [080526]
170                DD_DISP_VideoMute(1);                           // IsVideoMuted ÇÔ¼ö´Â hal ³»ºÎ º¯¼ö¿¡ µû¶ó return µÊÀ¸·Î mute°¡ µÇ¾î ÀÖ´Â »óŶó¸é ´Ù½Ã mute¸¦ °É¾îÁØ´Ù.
171        }                                                                                                               // driver ³»ºÎ º¯¼ö´Â format change½Ã mute off·Î ÃʱâÈ­ µÈ´Ù.
172
173        return dhlResult;               
174}
175
176DHL_VIDEO_FORMAT DHL_DISP_GetVideoOutputFormat(void)
177{
178        return g_DispConfig.VidOutFormat;
179}
180
181DHL_DISP_ASPECTRATIO DHL_DISP_GetDispAspect(void)
182{
183        return g_DispConfig.AspectRatio;
184}
185
186DHL_RESULT DHL_DISP_ChangeDispAspect(DHL_DISP_ASPECTRATIO UserAspectRatio)
187{
188    DHL_RESULT dhlResult = DHL_OK;
189    DHL_DTV_SRCVID_INFO SrcInfo;
190       
191        if (DHL_DISP_GetVideoOutputFormat() != DHL_VIDEO_480p)
192        { 
193            // 480p´Â panorama¸¦ Áö¿øÇÏÁö ¾ÊÀ¸¸ç, Áö¿øÇÏÁö ¾ÊÀ» °æ¿ì °è»êµÇ¾î ¹ö¸²À¸·Î 480p¿¡¼­´Â Ç×»ó panorama·Î
194                if(( DHL_CAP_GetVideoSrc(0) == DHL_CAP_DTV0_VIDEO) && (UserAspectRatio == DHL_DISP_ASPECT_PANO ))
195                { 
196                    // DTV À̰í PANORAMA ¶ó¸é
197                        dhlResult = DHL_DTV_GetSrcVideoInfo(&SrcInfo);
198                        if((DHL_DISP_ASPECTRATIO)SrcInfo.AspectRatio == DHL_DISP_ASPECT_16_9)
199                        { 
200                            // 16:9 source ÀÎ °æ¿ì 16:9 panorama·Î
201                                UserAspectRatio = DHL_DISP_ASPECT_PANO;
202                        }
203                        else
204                        {
205                            // ±× ¿ÜÀÇ °æ¿ì 4:3 panorama·Î
206                                UserAspectRatio = DHL_DISP_ASPECT_PANO2;       
207                        }
208                }
209        }
210       
211        if ( UserAspectRatio==g_DispConfig.AspectRatio ) 
212        {
213                printf("%s| skipped.\r\n", __FUNCTION__);       
214                return dhlResult;
215        }
216
217        g_DispConfig.AspectRatio = UserAspectRatio;
218
219        if ( !DHL_DISP_IsVideoMuted() ) 
220        {
221                DD_DISP_VideoMute(1);
222        }
223
224#if 0
225        printf("|%s| AspectRatio = %s (%d)\n", __FUNCTION__,
226                UserAspectRatio == DHL_DISP_ASPECT_1_1 ? "1:1" :
227                UserAspectRatio == DHL_DISP_ASPECT_4_3 ? "4:3 Normal" :
228                UserAspectRatio == DHL_DISP_ASPECT_4_3_FULL ? "4:3 No Crop" :
229                UserAspectRatio == DHL_DISP_ASPECT_16_9 ? "16:9 Normal" :
230                UserAspectRatio == DHL_DISP_ASPECT_ZOOM1 ? "ZOOM1" :
231                UserAspectRatio == DHL_DISP_ASPECT_ZOOM2 ? "ZOOM2" :
232                UserAspectRatio == DHL_DISP_ASPECT_ZOOM3 ? "ZOOM3" :
233                UserAspectRatio == DHL_DISP_ASPECT_ZOOM4 ? "ZOOM4" :
234                UserAspectRatio == DHL_DISP_ASPECT_PANO ? "Panorama" :
235                UserAspectRatio == DHL_DISP_EPG ? "EPG" : "Unknown", UserAspectRatio);
236#endif
237
238        dhlResult = DD_DISP_SetAspectRatio(UserAspectRatio);
239
240        if ( !DHL_DISP_IsVideoMuted() ) 
241        {
242                DD_DISP_VideoMute(0);
243        }
244
245        if(!DHL_ERROR(dhlResult))
246                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|success|\r\n"); 
247       
248        return dhlResult;
249}
250
251#if 0
252___MUTE_APIs___()
253#endif
254/********************************************************************************
255FUNCTION:                                                                   
256    DHL_DISP_MuteMain                                                           
257
258Purpose:                                                                   
259        Video overlay start/stop               
260
261Arguments:                                                                     
262        [in] uMute - video mute on(_TRUE_)/off(_FALSE_)
263Returns:                                                                   
264    DHL_RESULT   if success - DHL_OK fail - DHL_FAIL                           
265*********************************************************************************/
266void DHL_DISP_SetVideoMuteColor(DS_U8 Red, DS_U8 Green, DS_U8 Blue)
267{
268        DHL_RESULT dhlResult = DHL_OK;
269       
270        DD_DISP_SetVideoMuteColor(Red, Green, Blue);
271        dhlResult = DD_DISP_VideoMute(g_DispConfig.bVideoMute[0]);
272        if(DHL_ERROR(dhlResult))
273                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|error|%d(0x%x)\r\n",__LINE__,dhlResult);
274}
275
276DS_BOOL DHL_DISP_IsVideoMuted(void)
277{
278        return g_DispConfig.bVideoMute[0];
279}
280
281DS_BOOL DHL_DISP_IsVideoMutedPIP(void)
282{
283        return g_DispConfig.bVideoMute[1];
284}
285
286
287DHL_RESULT DHL_DISP_MuteMain(DS_BOOL uMute)
288{
289    DHL_RESULT  dhlResult = DHL_OK;
290
291        if ( g_DispConfig.bVideoMute[0] == uMute ) 
292        {
293                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC," |skip| Current status is same to request. cur=%s, req=%s\r\n", g_DispConfig.bVideoMute[0]?"muteOn":"muteOff",uMute?"muteOn":"muteOff");
294                return dhlResult;
295        }
296
297        g_DispConfig.bVideoMute[0] = uMute;
298
299        dhlResult = DD_DISP_VideoMute(uMute);
300       
301        SysENSURE( dhlResult == DHL_OK );
302
303        return dhlResult;       
304}
305
306DHL_RESULT DHL_DISP_MutePIP(DS_BOOL uMute)
307{
308    DHL_RESULT  dhlResult = DHL_OK;
309
310        //
311        // Workaround: PIPÀº (Signal º¯È­¿¡ ÀÇÇÑ) ÀÚµ¿ Mute/Unmute°¡ Ç®¸®Áö ¾ÊÀ½.
312#if 0
313        if ( g_DispConfig.bVideoMute[1] == uMute ) {
314                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC," |skip| Current status is same to request. cur=%s, req=%s\r\n", g_DispConfig.bVideoMute?"muteOn":"muteOff",uMute?"muteOn":"muteOff");
315                return dhlResult;
316        }
317#endif
318
319        g_DispConfig.bVideoMute[1] = uMute;
320
321        dhlResult = DD_DISP_VideoMutePIP(uMute);
322       
323        if(DHL_ERROR(dhlResult))
324                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|error|%d(0x%x)\r\n",__LINE__,dhlResult);
325       
326       
327        if(!DHL_ERROR(dhlResult))
328                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|success| %s\r\n",(uMute==_TRUE_) ?"muteOn":"muteOff");
329        return dhlResult;       
330}
331
332DHL_RESULT DHL_DISP_MuteCVBS(DS_BOOL uMute)
333{
334    DHL_RESULT  dhlResult = DHL_OK;
335
336        if ( g_DispConfig.bVideoMuteCVBS == uMute ) {
337                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC," |skip| Current status is same to request. cur=%s, req=%s\r\n", g_DispConfig.bVideoMuteCVBS?"muteOn":"muteOff",uMute?"muteOn":"muteOff");
338                return dhlResult;
339        }
340       
341        dhlResult = DD_DISP_VideoMuteCVBS(uMute);
342       
343        if(DHL_ERROR(dhlResult))
344                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|error|%d(0x%x)\r\n",__LINE__,dhlResult);
345
346        g_DispConfig.bVideoMuteCVBS = uMute;
347
348        if(!DHL_ERROR(dhlResult))
349                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|success| %s\r\n",(uMute==_TRUE_) ?"muteOn":"muteOff");
350        return dhlResult;       
351}
352
353DHL_RESULT DHL_DISP_PresetPanel(DS_U16 PanelData)
354{
355    DHL_RESULT  dhlResult               = DHL_OK;
356
357        if ( PanelData == 0 ) {
358                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|error|%d(0x%x)\r\n",__LINE__,dhlResult);
359                dhlResult = DHL_FAIL;
360                goto done;
361        }
362
363        g_DispConfig.PanelId = PanelData;
364
365        if(DHL_ERROR(dhlResult)) {
366                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|error|%d(0x%x)\r\n",__LINE__,dhlResult);
367                dhlResult = DHL_FAIL;
368        } else {
369                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"|success|\r\n");         
370        }
371
372done:
373        return dhlResult;       
374}
375
376#if 0
377___SIDE_COLOR_APIs__()
378#endif
379/////////////////////////////////////////////////////////////////////////////////////
380//
381// Side Color Functions
382//
383//      DHL_CAP_SetSideColorEnable
384//              0 (OFF) / 1 (ON) / 2 (ON if 4:3 or POP mode)
385//
386/////////////////////////////////////////////////////////////////////////////////////
387DHL_RESULT DHL_DISP_SetSideColorEnable(int En)
388{
389        return DD_DISP_SetSideColorEnable(En);
390}
391
392DHL_RESULT DHL_DISP_GetSideColorEnable(int *pEn)
393{
394        return DD_DISP_GetSideColorEnable(pEn);
395}
396
397DHL_RESULT DHL_DISP_SetSideColor(DS_U8 R, DS_U8 G, DS_U8 B)
398{
399        return DD_DISP_SetSideColor(R, G, B);
400}
401
402DHL_RESULT DHL_DISP_GetSideColor(DS_U8 *pR, DS_U8 *pG, DS_U8 *pB)
403{
404        return DD_DISP_GetSideColor(pR, pG, pB);
405
406}
407
408#if 0
409___PANEL_APIs___()
410#endif
411DHL_RESULT DHL_DISP_SetLCDBacklight(DS_U16 uiDeg)
412{
413        g_DispConfig.bDimm = uiDeg;
414        if(g_DispConfig.bPanelInit == 0)
415        {
416                        DHL_DbgPrintf( 0, DHLDBG_PIC, "Skipped for Inverter Sequence\n");
417                        return DHL_OK;
418        }
419       
420        return DD_DISP_SetLCDBacklight(uiDeg);
421}
422
423DHL_RESULT DHL_DISP_SetPanelPower(DS_BOOL OnOff)
424{
425        return DD_DISP_SetPanelPower(OnOff);
426}
427
428/********************************************************************************
429FUNCTION:                                                                   
430    DHL_DISP_GetPanelPowerStatus
431Purpose:                                                                   
432    Panel¿¡ ÆÄ¿ö°¡ µé¾î°¡ ÀÖ´ÂÁö¸¦ °Ë»ç ( register reading )
433Arguments:                                                                     
434
435Returns:                                                                   
436        DHL_RESULT     
437Notes:
438*********************************************************************************/
439DHL_RESULT DHL_DISP_GetPanelPowerStatus(void)
440{
441        return DD_DISP_GetPanelPowerStatus();
442}
443
444
445/********************************************************************************
446FUNCTION:                                                                   
447    DHL_DISP_GetBacklightOnOffStauts
448Purpose:                                                                   
449    Panel¿¡ backlight°¡ ÄÑÁ® ÀÖ´ÂÁö °Ë»ç.
450Arguments:                                                                     
451
452Returns:                                                                   
453        DHL_RESULT     
454Notes:
455*********************************************************************************/
456DHL_RESULT DHL_DISP_GetBacklightOnOffStatus(void)
457{
458        return DD_DISP_GetBacklightOnOffStatus();
459}
460
461/********************************************************************************
462FUNCTION:                                                                   
463    DHL_DISP_GetDimmingDelay
464Purpose:                                                                   
465    panelº° dimming start/end À§Ä¡ return ( backlight on/off ÀÌÈÄ ¾ó¸¶ÀÎÁö )
466Arguments:                                                                     
467        [IN]    onoff   : ON / OFF
468        [OUT]   Delay   : DELAY IN MSEC ( BETWEEN INVERT DIMMING )
469        [OUT]   Delay2  : DELAY IN MSEC ( BETWEEN DIMMING BACKLIGHT )
470Returns:                                                                   
471        DHL_RESULT     
472Notes:
473*********************************************************************************/
474DHL_RESULT DHL_DISP_GetDimmingDelay(DS_BOOL onoff, DS_S32 *Delay, DS_S32 *Delay2)
475{
476        DHL_RESULT dhlResult = DHL_OK;
477
478        if(Delay == 0){
479                dhlResult = DHL_FAIL;
480                return dhlResult;
481        }
482
483        dhlResult = DD_DISP_GetDimmingDelay(onoff,Delay,Delay2);
484
485        return dhlResult;
486}
487
488/////////////////////////////////////////////////////////////////////////////////////
489//
490// Clock Freq
491//             768P         1080P   
492//      -4:  72.000 MHz   141.750 MHz
493//      -3:  73.125 MHz   144.000 MHz
494//      -2:  74.250 MHz   146.250 MHz
495//      -1:  75.375 MHz   148.500 MHz
496//       0:  76.500 MHz   150.750 MHz
497//       1:  77.625 MHz   153.000 MHz
498//       2:  78.625 MHz   155.250 MHz
499//       3:  79.875 MHz   157.500 MHz
500//       4:  81.000 MHz   159.750 MHz
501//
502/////////////////////////////////////////////////////////////////////////////////////
503void DHL_DISP_SetLVDSClockFreq(int Offset)
504{
505        DD_DISP_SetLVDSClockFreq(Offset);
506}
507
508void DHL_DISP_SetLVDSClockPhase(int Offset)
509{
510        DD_DISP_SetLVDSClockPhase(Offset);
511}
512
513int DHL_DISP_GetLVDSClockFreq(void)
514{
515        return DD_DISP_GetLVDSClockFreq();
516}
517
518int DHL_DISP_GetLVDSClockPhase(void)
519{
520        return DD_DISP_GetLVDSClockPhase();
521}
522
523#if 0
524___CVBS_Output_Functions___()
525#endif
526
527/********************************************************************************
528FUNCTION:                                                                   
529    DHL_DISP_CCEmbedding                                                       
530
531Purpose:                                                                   
532Arguments:                                                                     
533        - pBuffer         Pointer to buffer
534        - uCount          Count of entries
535Returns:                                                                   
536        DHL_RESULT     
537*********************************************************************************/
538DHL_RESULT DHL_DISP_EmbedCC(DS_U16 *pBuffer, DS_U32 uCount)
539{
540        DHL_RESULT      dhlResult = DHL_OK;
541        unsigned char cc_char1, cc_char2;
542        DS_U32 i;
543       
544        cc_char1 = pBuffer[0] & 0x7F;
545        cc_char2 = (pBuffer[0] >> 8) & 0x7F;
546        return dhlResult;
547
548#if 0
549        DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"[AUXCC-Field%d] (0x%02x 0x%02x) %c %c\n", 0,
550                cc_char1,cc_char2,(cc_char1>=0x20&&cc_char1<=0x7F)?cc_char1:'.',(cc_char2>=0x20&&cc_char2<=0x7F)?cc_char2:'.');
551#endif
552
553        for (i=0; i<uCount; i++)
554                dhlResult = DD_DISP_EmbedCC(0, pBuffer[i] & 0xFF, (pBuffer[i]>>8)&0xFF);
555
556        return dhlResult;
557}
558
559/********************************************************************************
560FUNCTION:                                                                   
561    DHL_DISP_XDSEmbedding                                                       
562
563Purpose:                                                                   
564Arguments:                                                                     
565        - pBuffer         Pointer to buffer
566        - uCount          Count of entries
567Returns:                                                                   
568        DHL_RESULT     
569*********************************************************************************/
570DHL_RESULT DHL_DISP_EmbedXDS(DS_U16 *pBuffer, DS_U32 uCount)
571{
572        DHL_RESULT      dhlResult = DHL_OK;
573        unsigned char cc_char1, cc_char2;
574
575        cc_char1 = pBuffer[0] & 0x7F;
576        cc_char2 = (pBuffer[0] >> 8) & 0x7F;
577
578        return dhlResult;
579
580#if 0
581                DHL_DbgPrintf(gDISPDbgLvl,DHLDBG_PIC,"[AUXCC-Field%d] \t\t\t\t(0x%02x 0x%02x) %c %c\n", 1,
582                        cc_char1,cc_char2,(cc_char1>=0x20&&cc_char1<=0x7F)?cc_char1:'.',(cc_char2>=0x20&&cc_char2<=0x7F)?cc_char2:'.');
583#endif
584        dhlResult = DD_DISP_EmbedCC(1, pBuffer[0] & 0xFF, (pBuffer[0]>>8)&0xFF);
585
586        return dhlResult;
587}
588
589#if 0
590___DEBUG_APIs___()
591#endif
592void print_lvds(void)
593{
594        printf("LVDS Clock: %d\n", DHL_DISP_GetLVDSClockFreq() );
595        printf("LVDS Phase: %d\n", DHL_DISP_GetLVDSClockPhase() );
596}
597
598void change_fmt(int fmt)
599{
600        DHL_VIDEO_FORMAT vfmt;
601       
602        if ( fmt == 0 ) {
603usage:
604                printf("Usage: %s [fmt]\n", __FUNCTION__);
605                printf("   1: 480p\n");
606                printf("   2: 720p\n");
607                printf("   3: 1080i\n");
608                printf("   4: 1080p\n");       
609                return;
610        }
611       
612        switch(fmt) {
613                case 1: vfmt = DHL_VIDEO_480p; break;
614                case 2: vfmt = DHL_VIDEO_720p; break;
615                case 3: vfmt = DHL_VIDEO_1080i; break;
616                case 4: vfmt = DHL_VIDEO_1080p; break;
617                default:
618                        goto usage;
619        }
620       
621        DHL_DTV_StopAV();
622        DHL_DISP_ChangeVideoOutputFormat(vfmt);
623}
624
625#if 0
626static DS_U16 ccTestBuffer[] =
627{
628    0x4094, 0x4094, 0x2594, 0x2594,
629    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0x31B0, 0x2020,
630    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
631    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0x32B0, 0x2020,
632    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
633    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xB3B0, 0x2020,
634    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
635    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0x34B0, 0x2020,
636    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
637    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xB5B0, 0x2020,
638    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
639    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xB6B0, 0x2020,
640    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
641    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0x37B0, 0x2020,
642    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
643    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0x38B0, 0x2020,
644    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
645    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xB9B0, 0x2020,
646    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
647    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xB031, 0x2020,
648    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
649    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0x3131, 0x2020,
650    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
651    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0x3231, 0x2020,
652    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94,
653    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xB331, 0x2020,
654    0x54C1, 0x2049, 0x43C1, 0x204C, 0xE554, 0xF473, 0xAD94, 0xAD94
655};
656#else
657DS_U16 ccTestBuffer_CC1[] =
658{
659        // Move to ROW1
660        0x4191, 0x4191, 0x2794, 0x2794,
661    //Digital Stream Technology CC Test
662    0x2794, 0x6944, 0x6967, 0x6174, 0x206C, 0x7453, 0x6572, 0x6d61, 0x5420, 0x6365, 0x2e68, 0x4343, 0x5420, 0x7365, 0x2074, 0xAD94,
663    //[CC1] DST VBI Output Test 01[CR]
664    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3130, 0xAD94,
665    //[CC1] DST VBI Output Test 02[CR]
666    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3230, 0xAD94,
667    //[CC1] DST VBI Output Test 03[CR]
668    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3330, 0xAD94,
669    //[CC1] DST VBI Output Test 04[CR]
670    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3430, 0xAD94,
671    //[CC1] DST VBI Output Test 05[CR]
672    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3530, 0xAD94,
673    //[CC1] DST VBI Output Test 06[CR]
674    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3630, 0xAD94,
675    //[CC1] DST VBI Output Test 07[CR]
676    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3730, 0xAD94,
677    //[CC1] DST VBI Output Test 08[CR]
678    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3830, 0xAD94,
679    //[CC1] DST VBI Output Test 09[CR]
680    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3930, 0xAD94,
681    //[CC1] DST VBI Output Test 10[CR]
682    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3031, 0xAD94,
683    //[CC1] DST VBI Output Test 11[CR]
684    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3131, 0xAD94,
685    //[CC1] DST VBI Output Test 12[CR]
686    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3231, 0xAD94,
687    //[CC1] DST VBI Output Test 13[CR]
688    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3331, 0xAD94,
689    //[CC1] DST VBI Output Test 14[CR]
690    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3431, 0xAD94,
691    //[CC1] DST VBI Output Test 15[CR]
692    0x2794, 0x435B, 0x3143, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3531, 0xAD94,
693};
694
695DS_U16 ccTestBuffer_CC3[] =
696{
697        // Move to ROW1
698    0x4191, 0x4191, 0x2795, 0x2795,
699    //Digital Stream Technology CC Test
700    0x2795, 0x6944, 0x6967, 0x6174, 0x206C, 0x7453, 0x6572, 0x6d61, 0x5420, 0x6365, 0x2e68, 0x4343, 0x5420, 0x7365, 0x2074, 0xAD94,
701    //[CC1] DST VBI Output Test 01[CR]
702    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3130, 0xAD94,
703    //[CC1] DST VBI Output Test 02[CR]
704    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3230, 0xAD94,
705    //[CC1] DST VBI Output Test 03[CR]
706    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3330, 0xAD94,
707    //[CC1] DST VBI Output Test 04[CR]
708    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3430, 0xAD94,
709    //[CC1] DST VBI Output Test 05[CR]
710    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3530, 0xAD94,
711    //[CC1] DST VBI Output Test 06[CR]
712    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3630, 0xAD94,
713    //[CC1] DST VBI Output Test 07[CR]
714    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3730, 0xAD94,
715    //[CC1] DST VBI Output Test 08[CR]
716    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3830, 0xAD94,
717    //[CC1] DST VBI Output Test 09[CR]
718    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3930, 0xAD94,
719    //[CC1] DST VBI Output Test 10[CR]
720    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3031, 0xAD94,
721    //[CC1] DST VBI Output Test 11[CR]
722    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3131, 0xAD94,
723    //[CC1] DST VBI Output Test 12[CR]
724    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3231, 0xAD94,
725    //[CC1] DST VBI Output Test 13[CR]
726    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3331, 0xAD94,
727    //[CC1] DST VBI Output Test 14[CR]
728    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3431, 0xAD94,
729    //[CC1] DST VBI Output Test 15[CR]
730    0x2795, 0x435B, 0x3343, 0x205D, 0x5344, 0x2054, 0x4256, 0x2049, 0x5420, 0x7365, 0x2074, 0x3531, 0xAD94,
731};
732
733DS_U16 ccTestBuffer_CC1_1[] =
734{
735        // Move to ROW1
736        0x4191, 0x4191, 0x2794, 0x2794,
737    //Digital Stream Technology CC Test
738    0x2794, 0x6944, 0x6967, 0x6174, 0x206C, 0x7453, 0x6572, 0x6d61, 0x5420, 0x6365, 0x2e68, 0x4343, 0x5420, 0x7365, 0x2074, 0xAD94,
739    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3130, 0xAD94,
740    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3230, 0xAD94,
741    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3330, 0xAD94,
742    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3430, 0xAD94,
743    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3530, 0xAD94,
744    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3630, 0xAD94,
745    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3730, 0xAD94,
746    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3830, 0xAD94,
747    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3930, 0xAD94,
748    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3031, 0xAD94,
749    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3131, 0xAD94,
750    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3231, 0xAD94,
751    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3331, 0xAD94,
752    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3431, 0xAD94,
753    0x2794, 0x435B, 0x3143, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3531, 0xAD94,
754};
755
756DS_U16 ccTestBuffer_CC3_1[] =
757{
758        // Move to ROW1
759    0x4191, 0x4191, 0x2795, 0x2795,
760    //Digital Stream Technology CC Test
761    0x2795, 0x6944, 0x6967, 0x6174, 0x206C, 0x7453, 0x6572, 0x6d61, 0x5420, 0x6365, 0x2e68, 0x4343, 0x5420, 0x7365, 0x2074, 0xAD94,
762    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3130, 0xAD94,
763    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3230, 0xAD94,
764    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3330, 0xAD94,
765    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3430, 0xAD94,
766    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3530, 0xAD94,
767    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3630, 0xAD94,
768    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3730, 0xAD94,
769    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3830, 0xAD94,
770    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3930, 0xAD94,
771    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3031, 0xAD94,
772    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3131, 0xAD94,
773    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3231, 0xAD94,
774    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3331, 0xAD94,
775    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3431, 0xAD94,
776    0x2795, 0x435B, 0x3343, 0x205D, 0x3130, 0x3332, 0x3534, 0x3736, 0x3938, 0x4241, 0x4443, 0x4645, 0x2020, 0x3531, 0xAD94,
777};
778
779DS_U16 ccTestBuffer_CC1_2[] =
780{
7810x2514, 0x2d14, 0x2d14, 0x2036, 0x3143, 0x2033, 0x0032, 0x2014, 0x2014, 0x6014,
7820x6014, 0x3036, 0x2038, 0x4343, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
7830x6014, 0x6014, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3120, 0x2e35, 0x2c14,
7840x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x4014, 0x4014, 0x6f50, 0x2d70, 0x6e4f,
7850x5220, 0x776f, 0x3120, 0x2e34, 0x6014, 0x6014, 0x6f52, 0x2077, 0x3531, 0x2c14,
7860x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x6013, 0x6013, 0x6f50, 0x2d70, 0x6e4f,
7870x5220, 0x776f, 0x3120, 0x2e33, 0x4014, 0x4014, 0x6f52, 0x2077, 0x3431, 0x6014,
7880x6014, 0x6f52, 0x2077, 0x3531, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
7890x4013, 0x4013, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3120, 0x2e32, 0x6013,
7900x6013, 0x6f52, 0x2077, 0x3331, 0x4014, 0x4014, 0x6f52, 0x2077, 0x3431, 0x6014,
7910x6014, 0x6f52, 0x2077, 0x3531, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
7920x4010, 0x4010, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3120, 0x2e31, 0x2c14,
7930x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x6017, 0x6017, 0x6f50, 0x2d70, 0x6e4f,
7940x5220, 0x776f, 0x3120, 0x2e30, 0x4010, 0x4010, 0x6f52, 0x2077, 0x3131, 0x2c14,
7950x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x4017, 0x4017, 0x6f50, 0x2d70, 0x6e4f,
7960x5220, 0x776f, 0x3920, 0x002e, 0x6017, 0x6017, 0x6f52, 0x2077, 0x3031, 0x4010,
7970x4010, 0x6f52, 0x2077, 0x3131, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
7980x6016, 0x6016, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3820, 0x002e, 0x4017,
7990x4017, 0x6f52, 0x2077, 0x0039, 0x6017, 0x6017, 0x6f52, 0x2077, 0x3031, 0x4010,
8000x4010, 0x6f52, 0x2077, 0x3131, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
8010x4016, 0x4016, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3720, 0x002e, 0x2c14,
8020x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x6015, 0x6015, 0x6f50, 0x2d70, 0x6e4f,
8030x5220, 0x776f, 0x3620, 0x002e, 0x4016, 0x4016, 0x6f52, 0x2077, 0x0037, 0x2c14,
8040x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x4015, 0x4015, 0x6f50, 0x2d70, 0x6e4f,
8050x5220, 0x776f, 0x3520, 0x002e, 0x6015, 0x6015, 0x6f52, 0x2077, 0x0036, 0x4016,
8060x4016, 0x6f52, 0x2077, 0x0037, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
8070x6012, 0x6012, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3420, 0x002e, 0x4015,
8080x4015, 0x6f52, 0x2077, 0x0035, 0x6015, 0x6015, 0x6f52, 0x2077, 0x0036, 0x4016,
8090x4016, 0x6f52, 0x2077, 0x0037, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
8100x4012, 0x4012, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3320, 0x002e, 0x2c14,
8110x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x6011, 0x6011, 0x6f50, 0x2d70, 0x6e4f,
8120x5220, 0x776f, 0x3220, 0x002e, 0x4012, 0x4012, 0x6f52, 0x2077, 0x0033, 0x2c14,
8130x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x4011, 0x4011, 0x6f50, 0x2d70, 0x6e4f,
8140x5220, 0x776f, 0x3120, 0x002e, 0x6011, 0x6011, 0x6f52, 0x2077, 0x0032, 0x4012,
8150x4012, 0x6f52, 0x2077, 0x0033, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
8160x4015, 0x4015, 0x6854, 0x7369, 0x6320, 0x6e6f, 0x6c63, 0x6475, 0x7365, 0x6015,
8170x6015, 0x6f50, 0x2d70, 0x6e6f, 0x4320, 0x7061, 0x6974, 0x6e6f, 0x6e69, 0x2e67,
8180x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014,
8190x6f52, 0x6c6c, 0x5520, 0x2070, 0x0032, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014,
8200x5014, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0032, 0x2514, 0x2514, 0x2d14, 0x2d14,
8210x5014, 0x5014, 0x414d, 0x4b52, 0x5320, 0x4d59, 0x4f42, 0x204c, 0x0020, 0x3011,
8220x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x4544, 0x5247, 0x4545, 0x5320,
8230x4749, 0x204e, 0x3111, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x2f31,
8240x2032, 0x0020, 0x3211, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x4e49,
8250x4556, 0x5352, 0x2045, 0x5551, 0x5245, 0x0059, 0x3311, 0x2514, 0x2514, 0x2d14,
8260x2d14, 0x5014, 0x5014, 0x5254, 0x4441, 0x4d45, 0x5241, 0x204b, 0x0020, 0x3411,
8270x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x4543, 0x544e, 0x2053, 0x4953,
8280x4e47, 0x2020, 0x3511, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x4f50,
8290x4e55, 0x5344, 0x5320, 0x4749, 0x204e, 0x0020, 0x3611, 0x2514, 0x2514, 0x2d14,
8300x2d14, 0x5014, 0x5014, 0x554d, 0x4953, 0x2043, 0x4f4e, 0x4554, 0x2020, 0x3711,
8310x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x2061, 0x5247, 0x5641, 0x2045,
8320x0020, 0x3811, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x2065, 0x5247,
8330x5641, 0x2045, 0x0020, 0x3a11, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014,
8340x2061, 0x4943, 0x4352, 0x4d55, 0x2020, 0x3b11, 0x2514, 0x2514, 0x2d14, 0x2d14,
8350x5014, 0x5014, 0x2065, 0x4943, 0x4352, 0x4d55, 0x2020, 0x3c11, 0x2514, 0x2514,
8360x2d14, 0x2d14, 0x5014, 0x5014, 0x2069, 0x4943, 0x4352, 0x4d55, 0x2020, 0x3d11,
8370x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x206f, 0x4943, 0x4352, 0x4d55,
8380x2020, 0x3e11, 0x2614, 0x2d14, 0x2d14, 0x7113, 0x7113, 0x6f52, 0x6c6c, 0x5520,
8390x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7113, 0x7113, 0x6f52, 0x6c6c,
8400x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7113, 0x7113, 0x6f52,
8410x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7313, 0x7313,
8420x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7313,
8430x7313, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14,
8440x7313, 0x7313, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14,
8450x2d14, 0x7513, 0x7513, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614,
8460x2d14, 0x2d14, 0x7513, 0x7513, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614,
8470x2614, 0x2d14, 0x2d14, 0x7513, 0x7513, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033,
8480x2614, 0x2614, 0x2d14, 0x2d14, 0x7713, 0x7713, 0x6f52, 0x6c6c, 0x5520, 0x2070,
8490x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7713, 0x7713, 0x6f52, 0x6c6c, 0x5520,
8500x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7713, 0x7713, 0x6f52, 0x6c6c,
8510x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7913, 0x7913, 0x6f52,
8520x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x0014, 0x7913, 0x7913,
8530x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7913,
8540x7913, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14,
8550x7b13, 0x7b13, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14,
8560x2d14, 0x7b13, 0x7b13, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614,
8570x2d14, 0x2d14, 0x7b13, 0x7b13, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614,
8580x2614, 0x2d14, 0x2d14, 0x7d13, 0x7d13, 0x6f52, 0x6c6c, 0x3320, 0x2614, 0x2614,
8590x2d14, 0x2d14, 0x7d13, 0x7d13, 0x6f52, 0x6c6c, 0x3320, 0x2614, 0x2614, 0x2d14,
8600x2d14, 0x7d13, 0x7d13, 0x6f52, 0x6c6c, 0x3320, 0x2614, 0x2614, 0x2d14, 0x2d14,
8610x7f13, 0x7f13, 0x6f52, 0x6c6c, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7f13, 0x7f13,
8620x6f52, 0x6c6c, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7f13, 0x7f13, 0x6f52, 0x6c6c,
8630x2614, 0x2614, 0x2d14, 0x2d14, 0x4012, 0x4012, 0x6854, 0x7369, 0x6320, 0x6e6f,
8640x6c63, 0x6475, 0x7365, 0x0020, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x4012, 0x4012,
8650x6874, 0x7369, 0x7420, 0x7365, 0x2074, 0x666f, 0x5220, 0x6c6f, 0x2d6c, 0x7055,
8660x0020, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x4012, 0x4012, 0x6143, 0x7470, 0x6f69,
8670x696e, 0x676e, 0x002e, 0x2914, 0x2914, 0x6014, 0x6014, 0x6150, 0x6e69, 0x2d74,
8680x6e4f, 0x5220, 0x776f, 0x3120, 0x2e35, 0x2914, 0x2914, 0x4014, 0x4014, 0x6150,
8690x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3120, 0x2e34, 0x2914, 0x2914, 0x6013,
8700x6013, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3120, 0x2e33, 0x2914,
8710x2914, 0x4013, 0x4013, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3120,
8720x2e32, 0x2914, 0x2914, 0x4010, 0x4010, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220,
8730x776f, 0x3120, 0x2e31, 0x2914, 0x2914, 0x6017, 0x6017, 0x6150, 0x6e69, 0x2d74,
8740x6e4f, 0x5220, 0x776f, 0x3120, 0x2e30, 0x2914, 0x2914, 0x4017, 0x4017, 0x6150,
8750x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3920, 0x002e, 0x2914, 0x2914, 0x6016,
8760x6016, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3820, 0x002e, 0x2914,
8770x2914, 0x4016, 0x4016, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3720,
8780x002e, 0x2914, 0x2914, 0x6015, 0x6015, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220,
8790x776f, 0x3620, 0x002e, 0x2914, 0x2914, 0x4015, 0x4015, 0x6150, 0x6e69, 0x2d74,
8800x6e4f, 0x5220, 0x776f, 0x3520, 0x002e, 0x2914, 0x2914, 0x6012, 0x6012, 0x6150,
8810x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3420, 0x002e, 0x2914, 0x2914, 0x4012,
8820x4012, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3320, 0x002e, 0x2914,
8830x2914, 0x6011, 0x6011, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3220,
8840x002e, 0x2914, 0x2914, 0x4011, 0x4011, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220,
8850x776f, 0x3120, 0x002e, 0x2914, 0x2914, 0x6014, 0x6014, 0x6150, 0x6e69, 0x2d74,
8860x6361, 0x6f63, 0x706d, 0x696c, 0x002e, 0x3700, 0x4320, 0x0031, 
887};
888
889DS_U16 ccTestBuffer_CC3_2[] =
890{
8910x2514, 0x2d14, 0x2d14, 0x2036, 0x3143, 0x2033, 0x0032, 0x2014, 0x2014, 0x6014,
8920x6014, 0x3036, 0x2038, 0x4343, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
8930x6014, 0x6014, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3120, 0x2e35, 0x2c14,
8940x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x4014, 0x4014, 0x6f50, 0x2d70, 0x6e4f,
8950x5220, 0x776f, 0x3120, 0x2e34, 0x6014, 0x6014, 0x6f52, 0x2077, 0x3531, 0x2c14,
8960x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x6013, 0x6013, 0x6f50, 0x2d70, 0x6e4f,
8970x5220, 0x776f, 0x3120, 0x2e33, 0x4014, 0x4014, 0x6f52, 0x2077, 0x3431, 0x6014,
8980x6014, 0x6f52, 0x2077, 0x3531, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
8990x4013, 0x4013, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3120, 0x2e32, 0x6013,
9000x6013, 0x6f52, 0x2077, 0x3331, 0x4014, 0x4014, 0x6f52, 0x2077, 0x3431, 0x6014,
9010x6014, 0x6f52, 0x2077, 0x3531, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
9020x4010, 0x4010, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3120, 0x2e31, 0x2c14,
9030x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x6017, 0x6017, 0x6f50, 0x2d70, 0x6e4f,
9040x5220, 0x776f, 0x3120, 0x2e30, 0x4010, 0x4010, 0x6f52, 0x2077, 0x3131, 0x2c14,
9050x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x4017, 0x4017, 0x6f50, 0x2d70, 0x6e4f,
9060x5220, 0x776f, 0x3920, 0x002e, 0x6017, 0x6017, 0x6f52, 0x2077, 0x3031, 0x4010,
9070x4010, 0x6f52, 0x2077, 0x3131, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
9080x6016, 0x6016, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3820, 0x002e, 0x4017,
9090x4017, 0x6f52, 0x2077, 0x0039, 0x6017, 0x6017, 0x6f52, 0x2077, 0x3031, 0x4010,
9100x4010, 0x6f52, 0x2077, 0x3131, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
9110x4016, 0x4016, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3720, 0x002e, 0x2c14,
9120x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x6015, 0x6015, 0x6f50, 0x2d70, 0x6e4f,
9130x5220, 0x776f, 0x3620, 0x002e, 0x4016, 0x4016, 0x6f52, 0x2077, 0x0037, 0x2c14,
9140x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x4015, 0x4015, 0x6f50, 0x2d70, 0x6e4f,
9150x5220, 0x776f, 0x3520, 0x002e, 0x6015, 0x6015, 0x6f52, 0x2077, 0x0036, 0x4016,
9160x4016, 0x6f52, 0x2077, 0x0037, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
9170x6012, 0x6012, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3420, 0x002e, 0x4015,
9180x4015, 0x6f52, 0x2077, 0x0035, 0x6015, 0x6015, 0x6f52, 0x2077, 0x0036, 0x4016,
9190x4016, 0x6f52, 0x2077, 0x0037, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
9200x4012, 0x4012, 0x6f50, 0x2d70, 0x6e4f, 0x5220, 0x776f, 0x3320, 0x002e, 0x2c14,
9210x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x6011, 0x6011, 0x6f50, 0x2d70, 0x6e4f,
9220x5220, 0x776f, 0x3220, 0x002e, 0x4012, 0x4012, 0x6f52, 0x2077, 0x0033, 0x2c14,
9230x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014, 0x4011, 0x4011, 0x6f50, 0x2d70, 0x6e4f,
9240x5220, 0x776f, 0x3120, 0x002e, 0x6011, 0x6011, 0x6f52, 0x2077, 0x0032, 0x4012,
9250x4012, 0x6f52, 0x2077, 0x0033, 0x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2014, 0x2014,
9260x4015, 0x4015, 0x6854, 0x7369, 0x6320, 0x6e6f, 0x6c63, 0x6475, 0x7365, 0x6015,
9270x6015, 0x6f50, 0x2d70, 0x6e6f, 0x4320, 0x7061, 0x6974, 0x6e6f, 0x6e69, 0x2e67,
9280x2c14, 0x2c14, 0x2f14, 0x2f14, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014,
9290x6f52, 0x6c6c, 0x5520, 0x2070, 0x0032, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014,
9300x5014, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0032, 0x2514, 0x2514, 0x2d14, 0x2d14,
9310x5014, 0x5014, 0x414d, 0x4b52, 0x5320, 0x4d59, 0x4f42, 0x204c, 0x0020, 0x3011,
9320x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x4544, 0x5247, 0x4545, 0x5320,
9330x4749, 0x204e, 0x3111, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x2f31,
9340x2032, 0x0020, 0x3211, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x4e49,
9350x4556, 0x5352, 0x2045, 0x5551, 0x5245, 0x0059, 0x3311, 0x2514, 0x2514, 0x2d14,
9360x2d14, 0x5014, 0x5014, 0x5254, 0x4441, 0x4d45, 0x5241, 0x204b, 0x0020, 0x3411,
9370x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x4543, 0x544e, 0x2053, 0x4953,
9380x4e47, 0x2020, 0x3511, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x4f50,
9390x4e55, 0x5344, 0x5320, 0x4749, 0x204e, 0x0020, 0x3611, 0x2514, 0x2514, 0x2d14,
9400x2d14, 0x5014, 0x5014, 0x554d, 0x4953, 0x2043, 0x4f4e, 0x4554, 0x2020, 0x3711,
9410x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x2061, 0x5247, 0x5641, 0x2045,
9420x0020, 0x3811, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x2065, 0x5247,
9430x5641, 0x2045, 0x0020, 0x3a11, 0x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014,
9440x2061, 0x4943, 0x4352, 0x4d55, 0x2020, 0x3b11, 0x2514, 0x2514, 0x2d14, 0x2d14,
9450x5014, 0x5014, 0x2065, 0x4943, 0x4352, 0x4d55, 0x2020, 0x3c11, 0x2514, 0x2514,
9460x2d14, 0x2d14, 0x5014, 0x5014, 0x2069, 0x4943, 0x4352, 0x4d55, 0x2020, 0x3d11,
9470x2514, 0x2514, 0x2d14, 0x2d14, 0x5014, 0x5014, 0x206f, 0x4943, 0x4352, 0x4d55,
9480x2020, 0x3e11, 0x2614, 0x2d14, 0x2d14, 0x7113, 0x7113, 0x6f52, 0x6c6c, 0x5520,
9490x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7113, 0x7113, 0x6f52, 0x6c6c,
9500x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7113, 0x7113, 0x6f52,
9510x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7313, 0x7313,
9520x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7313,
9530x7313, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14,
9540x7313, 0x7313, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14,
9550x2d14, 0x7513, 0x7513, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614,
9560x2d14, 0x2d14, 0x7513, 0x7513, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614,
9570x2614, 0x2d14, 0x2d14, 0x7513, 0x7513, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033,
9580x2614, 0x2614, 0x2d14, 0x2d14, 0x7713, 0x7713, 0x6f52, 0x6c6c, 0x5520, 0x2070,
9590x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7713, 0x7713, 0x6f52, 0x6c6c, 0x5520,
9600x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7713, 0x7713, 0x6f52, 0x6c6c,
9610x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7913, 0x7913, 0x6f52,
9620x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x0014, 0x7913, 0x7913,
9630x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7913,
9640x7913, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14, 0x2d14,
9650x7b13, 0x7b13, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614, 0x2d14,
9660x2d14, 0x7b13, 0x7b13, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614, 0x2614,
9670x2d14, 0x2d14, 0x7b13, 0x7b13, 0x6f52, 0x6c6c, 0x5520, 0x2070, 0x0033, 0x2614,
9680x2614, 0x2d14, 0x2d14, 0x7d13, 0x7d13, 0x6f52, 0x6c6c, 0x3320, 0x2614, 0x2614,
9690x2d14, 0x2d14, 0x7d13, 0x7d13, 0x6f52, 0x6c6c, 0x3320, 0x2614, 0x2614, 0x2d14,
9700x2d14, 0x7d13, 0x7d13, 0x6f52, 0x6c6c, 0x3320, 0x2614, 0x2614, 0x2d14, 0x2d14,
9710x7f13, 0x7f13, 0x6f52, 0x6c6c, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7f13, 0x7f13,
9720x6f52, 0x6c6c, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x7f13, 0x7f13, 0x6f52, 0x6c6c,
9730x2614, 0x2614, 0x2d14, 0x2d14, 0x4012, 0x4012, 0x6854, 0x7369, 0x6320, 0x6e6f,
9740x6c63, 0x6475, 0x7365, 0x0020, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x4012, 0x4012,
9750x6874, 0x7369, 0x7420, 0x7365, 0x2074, 0x666f, 0x5220, 0x6c6f, 0x2d6c, 0x7055,
9760x0020, 0x2614, 0x2614, 0x2d14, 0x2d14, 0x4012, 0x4012, 0x6143, 0x7470, 0x6f69,
9770x696e, 0x676e, 0x002e, 0x2914, 0x2914, 0x6014, 0x6014, 0x6150, 0x6e69, 0x2d74,
9780x6e4f, 0x5220, 0x776f, 0x3120, 0x2e35, 0x2914, 0x2914, 0x4014, 0x4014, 0x6150,
9790x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3120, 0x2e34, 0x2914, 0x2914, 0x6013,
9800x6013, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3120, 0x2e33, 0x2914,
9810x2914, 0x4013, 0x4013, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3120,
9820x2e32, 0x2914, 0x2914, 0x4010, 0x4010, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220,
9830x776f, 0x3120, 0x2e31, 0x2914, 0x2914, 0x6017, 0x6017, 0x6150, 0x6e69, 0x2d74,
9840x6e4f, 0x5220, 0x776f, 0x3120, 0x2e30, 0x2914, 0x2914, 0x4017, 0x4017, 0x6150,
9850x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3920, 0x002e, 0x2914, 0x2914, 0x6016,
9860x6016, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3820, 0x002e, 0x2914,
9870x2914, 0x4016, 0x4016, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3720,
9880x002e, 0x2914, 0x2914, 0x6015, 0x6015, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220,
9890x776f, 0x3620, 0x002e, 0x2914, 0x2914, 0x4015, 0x4015, 0x6150, 0x6e69, 0x2d74,
9900x6e4f, 0x5220, 0x776f, 0x3520, 0x002e, 0x2914, 0x2914, 0x6012, 0x6012, 0x6150,
9910x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3420, 0x002e, 0x2914, 0x2914, 0x4012,
9920x4012, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3320, 0x002e, 0x2914,
9930x2914, 0x6011, 0x6011, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220, 0x776f, 0x3220,
9940x002e, 0x2914, 0x2914, 0x4011, 0x4011, 0x6150, 0x6e69, 0x2d74, 0x6e4f, 0x5220,
9950x776f, 0x3120, 0x002e, 0x2914, 0x2914, 0x6014, 0x6014, 0x6150, 0x6e69, 0x2d74,
9960x6361, 0x6f63, 0x706d, 0x696c, 0x002e, 0x3700, 0x4320, 0x0031, 
997};
998
999#endif
1000#define CC_TEST_BUFLEN (sizeof (ccTestBuffer_CC1) / sizeof (DS_U16))
1001
1002void test_cc_embed(int n, int l, int type)
1003{
1004        int i, j;
1005        DS_U16 s;
1006        DS_U16 *cc1_buf, *cc3_buf;
1007        int len;
1008       
1009        printf("delay: %d, count: %d, type: %d\n", n, l, type );
1010       
1011        switch(type) {
1012                case 1:
1013                        cc1_buf = ccTestBuffer_CC1_1;
1014                        cc3_buf = ccTestBuffer_CC3_1;
1015                        len = (sizeof (ccTestBuffer_CC1_1) / sizeof (DS_U16));
1016                        break;
1017                       
1018                case 2:
1019                        cc1_buf = ccTestBuffer_CC1_2;
1020                        cc3_buf = ccTestBuffer_CC3_2;
1021                        len = (sizeof (ccTestBuffer_CC1_2) / sizeof (DS_U16));
1022                        break;
1023                       
1024                case 0:
1025                default:
1026                        cc1_buf = ccTestBuffer_CC1;
1027                        cc3_buf = ccTestBuffer_CC3;
1028                        len = (sizeof (ccTestBuffer_CC1) / sizeof (DS_U16));
1029        }
1030       
1031        for (j=0; j<=l; j++) {
1032                for (i=0; i<len; i++) {
1033        #if 0
1034                        s = (ccTestBuffer[i] & 0xFF) << 8;
1035                        s += (ccTestBuffer[i] & 0xFF00) >> 8;
1036                        DHL_DISP_CCEmbedding(&s, 1);
1037        #else
1038                        DHL_DISP_EmbedCC(&cc1_buf[i], 1);
1039
1040                        if (n==0)
1041                                OS_mDelay(16);
1042                        else if (n>0)
1043                                OS_mDelay(n);
1044                        DHL_DISP_EmbedXDS(&cc3_buf[i], 1);
1045                        s=0;
1046        #endif
1047                        if (n==0)
1048                                OS_mDelay(16);
1049                        else if (n>0)
1050                                OS_mDelay(n);
1051                       
1052                }
1053        }
1054}
1055
Note: See TracBrowser for help on using the repository browser.