⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 display.lst

📁 智原mp3 SDK 开发包 与巨力 有mp3 wma ogg decoder
💻 LST
字号:
C51 COMPILER V7.50   DISPLAY                                                               08/18/2008 13:49:45 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE DISPLAY
OBJECT MODULE PLACED IN ..\output\output_bin\output_fm\display.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\..\code\ap_fm\src\display.c LARGE OPTIMIZE(9,SIZE) BROWSE INCDIR(..\..\.
                    -.\bsp\include;..\..\code\ap_fm\src\include;..\..\code\global;..\..\code\include) DEFINE(CONFIG_ASIC,dynamic_load) DEBUG 
                    -OBJECTEXTEND PRINT(..\output\output_bin\output_fm\display.lst) OBJECT(..\output\output_bin\output_fm\display.obj)

line level    source

   1          /*******************
   2           *    display.c
   3           *******************/
   4          
   5          #include <string.h>
   6          #include "api.h"
   7          #include "lcd.h"
   8          #include "common.h"
   9          #include "display.h"
  10          
  11          #if 1
  12          void gfx_bg(void)
  13          {
  14   1              UINT8 i;
  15   1              
  16   1              gfx_set_bg(COLOR_WHITE);
  17   1              
  18   1              lcd_set_rw_area(SCREEN_START_X,SCREEN_START_Y,SCREEN_WIDTH,SCREEN_HEIGHT);
  19   1                      
  20   1              for(i = 0; i < SCREEN_HEIGHT; i++)
  21   1                      lcd_put_data((UINT16)bg_pixel, sizeof(bg_pixel));
  22   1      }
  23          
  24          void gfx_bg_rectangle(UINT8 x, UINT8 y, UINT8 w, UINT8 h)
  25          {
  26   1              lcd_set_rw_area(x, y, w, h);
  27   1              
  28   1              while(h--)
  29   1                      lcd_put_data((UINT16)bg_pixel, w << 1);
  30   1      }
  31          
  32          void gfx_set_bg(UINT16 color)
  33          {
  34   1              UINT8 i;
  35   1              static UINT16 curr_color;
  36   1      
  37   1              if(curr_color != color)
  38   1                      curr_color = color;
  39   1                      
  40   1              /* Init background pixel */
  41   1              for(i = 0; i < SCREEN_WIDTH; i++)
  42   1                      bg_pixel[i] = color;
  43   1      }
  44          #endif
  45          
  46          #if 0
              
              void gfx_filename(UINT8 x, UINT8 y)
              {       
                      if(*(UINT16 xdata *)curr_finfo.pu8LongFileName == 0) {
                              get_short_name(&curr_finfo, _buf);
                              lcd_puts(x, y, _buf, FONTSIZE_HYPER);
                      }
C51 COMPILER V7.50   DISPLAY                                                               08/18/2008 13:49:45 PAGE 2   

                      else {
                              get_long_name(&curr_finfo, _buf);
                              lcd_puts_unicode(x, y, (UINT16 *)_buf, FONTSIZE_HYPER);
                      }
              }
              
              #endif
  61          
  62          #if 0
              void vScollDataUpdate(INT8U *buf)
              {
                      if(!bDisplayLongFileName)
                              u8ScrollLen = strlen(u8ScrollData);
                      else
                      {
                              INT8U i;
                              u8ScrollLen = u16GetUniStringLength(buf);       
                              for(i=0; i<u8ScrollLen; i++)
                                      u8ScrollData[i] = buf[i];
                              u8ScrollData[i] = 0x20; u8ScrollData[i+1] = 0x00;
                              u8ScrollLen += 2;   
                      }
                      u8ScrollPos = 0;
                      bNeedScroll = TRUE;
                      vLcd_ScollDataUpdate();
              }
              
              //--------------------------------------------------------------------------
              void vLcd_SongName()
              {
                      if(FALSE == api_bGetCurrMusicInfo(&cMusic))
                              return;
                              
                      bDisplayLongFileName = FALSE;
                    
                      if(cMusic.pu8Title[0] != 0 || cMusic.pu8Artist[0] != 0 || cMusic.pu8Album[0] != 0) 
                      {
                              my_sprintf(u8ScrollData, "%s %s %s ", cMusic.pu8Title, cMusic.pu8Artist, cMusic.pu8Album);
                      }
                      else
                      {  
                              if(cMusic.pu8LongFileName[0] == 0 && cMusic.pu8LongFileName[1] == 0) {
                                      my_sprintf(u8ScrollData, "%s.%s", cMusic.pu8FileName, cMusic.pu8FileExt);               
                              }       
                              else
                                      bDisplayLongFileName = TRUE;
                      }
              
                      vScollDataUpdate(cMusic.pu8LongFileName);
              }
              
              //--------------------------------------------------------------------------
              void vLcd_ScollDataUpdate(void)
              {
                      INT8U i,j;
                      INT16U u16unicode;
                                            
                      if(!bNeedScroll)
                         return;
                         
                      for(i=0, j=u8ScrollPos; i<SCREEN_WIDTH; i++)
                      {
C51 COMPILER V7.50   DISPLAY                                                               08/18/2008 13:49:45 PAGE 3   

                              if(i >= u8ScrollLen)
                                      break;
                              u8LCDData[i] = u8ScrollData[j];
                              if(++j >= u8ScrollLen)
                                      j = 0;          
                      }   
                    
                      u8LCDData[i] = u8LCDData[i+1] = 0;  
                      
                      //vLcdSetPosition(LCD_ADDR_4LINE_START);
                      if(bDisplayLongFileName)
                      {       
                              /*
                              for(j=0; j<SCREEN_WIDTH; )
                              {
                                      u16unicode = u8LCDData[j++];
                                      u16unicode += (u8LCDData[j++]<<8);
                                      if(u16unicode == 0)
                                              break;
                                      if(api_bGetUniFont16x16BMP(u16unicode))
                                              vLcdPut16x16Char();
                              }
                              */
                              lcd_puts(0, 95, u8LCDData, FONTSIZE_HYPER);
                              //j = u8ScrollLen;
                      }
                      else
                      {
                              /*
                              vLcdOutString(u8LCDData, 16); 
                              j = 0;
                              for(i=0; i<u8ScrollLen; i++)
                              {
                                      if(u8ScrollData[i] >= 0x80)
                                              i++;
                                      j+=2;              
                              }
                              */
                              lcd_puts_unicode(x, y, (UINT16 *)_buf, FONTSIZE_HYPER);  
                      }
                      
                      if(SCREEN_WIDTH >= j)
                      bNeedScroll = FALSE;   
                              
                      u8ScrollPos++;
                      if(bDisplayLongFileName || (u8LCDData[0] >= 0x80))
                      u8ScrollPos++;
              
                      if(u8ScrollPos >= u8ScrollLen)
                              u8ScrollPos = 0;
              }
              #endif


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    139    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =      2       5
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
C51 COMPILER V7.50   DISPLAY                                                               08/18/2008 13:49:45 PAGE 4   

END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -