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

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

?? tmwrb.c

?? 可用于TM1300/PNX1300系列DSP(主要用于視頻處理)壓縮庫即應用例子。
?? C
?? 第 1 頁 / 共 3 頁
字號:

   /* relocate the executable */
   if((tmdl_ret = TMDwnLdr_relocate(handle, (tmHostType_t) host_int,
         (Address) mmio_base, (UInt) tm_freq, sdram_base,
         sdram_length,cache_support)) != TMDwnLdr_OK) {
      fprintf(stdout, "Error TMDwnLdr_relocate: %s\n", TMDwnLdr_get_last_error(tmdl_ret) );
      exit(-1);
   }

   /* extract load image to memory image address */
   if((tmdl_ret = TMDwnLdr_get_memory_image(handle, mimem)) != TMDwnLdr_OK) {
      fprintf(stdout, "Error TMDwnLdr_get_memory_image : %s\n", TMDwnLdr_get_last_error(tmdl_ret) );
      exit(-1);
   }
   
   /* get the unshuffled sections of text */
   TMDwnLdr_get_text_positions( handle, 
                                  &text_len, &locked_text_len, &locked_text_base);

   /* return the handle */
   if((tmdl_ret = TMDwnLdr_unload_object(handle)) != TMDwnLdr_OK) {
      fprintf(stdout, "Error TMDwnLdr_unload_object: %s\n", TMDwnLdr_get_last_error(tmdl_ret) );
      exit(-1);
   }

}


/*------------------------ compression function  ----------------------*/

static int compressSrc (int src, char *buffer, int *blocksize)
{
   int usize, misize;
   uLongf csize;
   int lv_ret;
   void *inmem = NULL;
   void *mimem = NULL;

   /* inmem is input memory */
   inmem = (void *)malloc(*blocksize);

   /* buffer will be output memory */
   if (inmem == NULL)
   {
      printf("%s: out of memory\n", progname);
      free(inmem);
      exit(1);
   }
   
   /* read the source into buf */
   usize= read  (src,  inmem, *blocksize);
   if(usize <= 0 )
   {
       printf("%s: read failure\n", progname);
      free(inmem);
      return usize;
   }

   /* if the input format and output format are different */
   if(inmi == False && out == False){

      /* inmem is input memory */
      mimem = (void *)malloc(usize);
      
      /* buffer will be output memory */
      if (mimem == NULL)
      {
         printf("%s: out of memory\n", progname);
         free(inmem);
         free(mimem);
         exit(-1);
      }

      /* convert input image from out to mi */
      ConvertOutToMI(inmem,usize,mimem,&misize);

      /* free inmem ; not required anymore*/
      free(inmem);

      /*update the new size and memory pointer */
      inmem = mimem;
      *blocksize = usize = misize;
   }
      
   /* fill in output length */
   csize = usize + (int)((usize*0.015)+1.0) +12;

   lv_ret = compress((unsigned char *)buffer,&csize,inmem,usize);
   if (lv_ret != Z_OK)
   {
      /* this should NEVER happen */
      printf("internal error - compression failed: %d\n", lv_ret);
      free(inmem);
      exit(2);
   }

   free(inmem);

   return (int)csize;   
}

/*------------------------ Recursive directory printing ----------------------*/

static int copy_file(char *inpath)
{
    int src = open(inpath, O_RDONLY|O_BINARY);
    unsigned int size, count = 0;
    unsigned int c_size =0,total_size =0;
    int ret, misize;
    void *mimem;
    char *buffer;
    struct stat statBuf;
    
    if (src == -1) {
        printf("* F %s SOURCE FAILED\n", inpath, errno);
        return False;
    } else {
        printf("  Packing %s \n", inpath );

        /* write extern for the datafile in the header  */
        sprintf(buf,"extern Byte DataFile%d[];\n",NumElements);
        write(fh, buf, strlen(buf));
        
        sprintf(buf,"{.global _DataFile%d}\n{_DataFile%d:}\n",NumElements,NumElements);
        write(ft, buf, strlen(buf));

        /* get size of file */
        ret = fstat(src,&statBuf);
        if(ret == -1) {
           close(src);
           return False;
        }

        total_size = statBuf.st_size;

        if(NoCompression == True){
           /* allocate space for buffer */
           buffer = (char *)malloc(total_size);
           
           /* read data from original file */
           size= read  (src,  buffer, total_size);

           /* if the input format and output format are different */
           if(inmi == False && out == False){
              
              /* mimem is input memory */
              mimem = (void *)malloc(total_size);
              
              /* buffer will be output memory */
              if (mimem == NULL)
              {
                 printf("%s: out of memory\n", progname);
                 free(mimem);
                 free(mimem);
                 exit(-1);
              }
              
              /* convert input image from out to mi */
              ConvertOutToMI(buffer,total_size,mimem,&misize);
              
              /* free inmem ; not required anymore*/
              free(buffer);
              
              /*update the new size and memory pointer */
              buffer = mimem;
              size=total_size = misize;
           }
           
        }
        else{
           /* compressed image can be bigger than uncompressed some times */
           buffer = (char *)malloc(total_size+ (unsigned int)((total_size*0.015)+1) +12);
           
           /* need to set value 'size', and have compressed data in 'buffer' */
           size = c_size = compressSrc (src, buffer,(int *)&total_size);
        }

        count = 0;
        
        /* while data left in this block */
        while (count < size){
           
           /* if its one of the middle 64 */   
           if((count % 64 != 0 ) && (count % 64 != 63))
              sprintf(buf,",0x%2.2x",(unsigned char)buffer[count]);
           /* if this is the first byte of 64 */
           else if((count % 64) == 0)
              sprintf(buf,"{.byte 0x%2.2x",(unsigned char)buffer[count]);
           /*else  this is the last of 64 */   
           else
              sprintf(buf,",0x%2.2x}\n",(unsigned char)buffer[count]);
           
           /* write to tree file */
           write(ft, buf, strlen(buf));              
           
           count++;
        }
           
        /* no need to do this - fill in last few bytes */
        while(count % 4 != 0 ){
           /* write 0 values */
           sprintf(buf,",0x00");
           write(ft, buf, strlen(buf));
           count++;
        }
        
        /* if this is the not a 64th byte will need to add end curly brace */
        if(size % 64 != 0){
           /* write final bit for this file in output file */
           sprintf(buf,"}\n");
           write(ft, buf, strlen(buf));
        }
        
        /* fill in path names in header file */
        sprintf(buf,"Char Path%d[] = \"%s\";\n", NumElements,inpath);

        write(fh, buf, strlen(buf));
        
        /* fill in data struct in temp output file 3 */
        /* if this is not the first element don print a comma at start */
        if(NumElements != 0)
           sprintf(buf,",\n   {\n   File, Path%d, %d, %d, DataFile%d\n   }",
                 NumElements, total_size, c_size, NumElements);
        else
           sprintf(buf,"\n   {\n   File, Path%d,  %d, %d, DataFile%d\n   }",
                 NumElements, total_size, c_size, NumElements);
        
        write(fo, buf, strlen(buf));

        /* if the down loaded does unshuffling */
        if(download_unshuffled == True){
           sprintf(buf,"\n#define TEXT_LEN %d\n", text_len);
           write(fh, buf, strlen(buf));

           sprintf(buf,"#define LOCKED_TEXT_BASE %d\n", locked_text_base);
           write(fh, buf, strlen(buf));

           sprintf(buf,"#define LOCKED_TEXT_LEN %d\n", locked_text_len);
           write(fh, buf, strlen(buf));
        }
    }

    free(buffer);
    
    if (src  != -1) { close(src ); }

    return True;
}

/************************************************************************
//   
*************************************************************************/
static void InitImage(){


   out_name_temp = (char *)malloc( strlen(TEMP_BASE)+5);
   out_namet = (char *)malloc( strlen(TEMP_BASE)+3);
   out_nameh = (char *)malloc( strlen(TEMP_BASE)+3);
   
   sprintf(out_name_temp,"%s.tmp",TEMP_BASE);
   sprintf(out_namet,"%s.t",TEMP_BASE);
   sprintf(out_nameh,"%s.h",TEMP_BASE);

   /* unlink the files just in case they already exist */
   chmod(out_name_temp,0x1FF);
   chmod(out_namet,0x1FF);
   chmod(out_nameh,0x1FF);
   unlink(out_name_temp);
   unlink(out_namet);
   unlink(out_nameh);

   /* open/create specified file  this is temp file */
   fo = open(out_name_temp,O_RDWR|O_CREAT|O_BINARY,0x1FF);
   if (fo == -1)
   {
      printf("%s: cannot create output file %s\n", progname, out_name_temp);
      exit(1);
   }

   /* open temp output file #2 */
   ft = open(out_namet,O_RDWR|O_CREAT|O_BINARY,0x1FF);
   if (ft == -1)
   {
      printf("%s: cannot create temp output file %s\n", progname, out_namet);
      return;
   }
   
   /* open temp output file #3 */
   fh = open(out_nameh,O_RDWR|O_CREAT|O_BINARY,0x1FF);
   if (fh == -1)
   {
      printf("%s: cannot create temp output file %s\n", progname, out_nameh);
      return;
   }
   
   /* initialize the header file */
   sprintf(buf,"#include \"tmlib/tmtypes.h\"\n\n");
   write(fh, buf, strlen(buf));
   
   sprintf(buf,"#define File  1\n#define Dir   0\n\n");
   write(fh, buf, strlen(buf));

   if(NoCompression == False)
      sprintf(buf,"#define _COMPRESSION_  1\n\n");
   else
      sprintf(buf,"#undef _COMPRESSION_ \n\n");
   
   write(fh, buf, strlen(buf));

   if(unshuffled == True)
      sprintf(buf,"#define _PRE_UNSHUFFLED_  1\n\n");
   else
      sprintf(buf,"#undef _PRE_UNSHUFFLED_ \n\n");
   
   write(fh, buf, strlen(buf));

   if(download_unshuffled == True)
      sprintf(buf,"#define _DOWN_UNSHUFFLED_  1\n\n");
   else
      sprintf(buf,"#undef _DOWN_UNSHUFFLED_ \n\n");
   
   write(fh, buf, strlen(buf));
   
   if(host_int == tmNoHost)
      sprintf(buf,"#define _NOHOST_  1\n\n");
   else
      sprintf(buf,"#undef _NOHOST_ \n\n");
   write(fh, buf, strlen(buf));

   if(verbose == True)
      sprintf(buf,"#define _VERBOSE_  1\n\n");
   else
      sprintf(buf,"#undef  _VERBOSE_ \n\n");
   write(fh, buf, strlen(buf));
   

   /* if the input image is embedded as a *.out file */
   if(out == True)
      sprintf(buf,"#undef _MEMORY_IMAGE_ \n\n");
   else
      sprintf(buf,"#define _MEMORY_IMAGE_ 1\n\n");
   
   write(fh, buf, strlen(buf));

   sprintf(buf,"#define MEM_START 0x%x \n",mem_start);
   write(fh, buf, strlen(buf));
   sprintf(buf,"#define MEM_END   0x%x \n\n",mem_end);
   write(fh, buf, strlen(buf));
   
   sprintf(buf,"struct FileDirList\n{\n   Int     File_Dir;  \n");
   write(fh, buf, strlen(buf));
   sprintf(buf,"   Char    *Pathname;  \n   UInt32  FileLength;\n");
   write(fh, buf, strlen(buf));
   sprintf(buf,"   UInt32  CompLen;\n   Byte    *Data;     \n};\n\n");
   write(fh, buf, strlen(buf));
   
   /* initialize temp output file  (data struct file) */
   sprintf(buf,"struct FileDirList  FDList[FDLIST_ARRAY_LENGTH] =\n{");
   write(fo, buf, strlen(buf));
   
   /* initialize t file  (data file) */
   sprintf(buf,"{.data }\n{.align 4}\n");
   write(ft, buf, strlen(buf));  
}

/* copy the image file */
static int copy_image(char *inpath){

   struct stat buf;

   if (stat(inpath,&buf) == -1) printf("STAT ERROR \"%s\"\n", inpath);
   
   if(copy_file(inpath)!= True)
      return False;
      
   NumElements++;

   return True;
}

/* finish the  image */
static void FinishImage(){

   int  size;

   /* finish header file (Path file) */
   sprintf(buf,"\n\n#define FDLIST_ARRAY_LENGTH %d\n\n",NumElements);

   write(fh, buf, strlen(buf));

   /* finish temp output file (data struct file) */
   sprintf(buf,"\n};\n");

   write(fo, buf, strlen(buf));

   /* concatinate end of temp output file to header file */

   /* seek to start of f2 */
   lseek(fo,0,SEEK_SET);

   /* copy from f2 to fo */
   do {
      size= read  (fo,  buf, BLOCKSIZE);
      write (fh, buf, size);
   } while (size > 0);

   
   /* close temp output file */
   if (fo) close(fo);

   /* close t output file */
   if (ft) close(ft);

   /* close header output file */
   if (fh) close(fh);
   
   /* delete temp files */
   unlink(out_name_temp);

   /* change mode of output files */
   chmod(out_namet,0x1FF);
   chmod(out_nameh,0x1FF);

   free(out_name_temp);
   free(out_namet);
   free(out_nameh);
}

static int ReadImage(void){

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩毛片视频在线看| 日韩精彩视频在线观看| 亚洲综合丝袜美腿| 紧缚奴在线一区二区三区| 一本大道综合伊人精品热热| 日韩视频国产视频| 亚洲午夜精品在线| 国产精品久久久久影院老司| 亚洲精品在线网站| 在线播放91灌醉迷j高跟美女| 综合分类小说区另类春色亚洲小说欧美 | 日韩电影在线免费| 色域天天综合网| 中文在线免费一区三区高中清不卡| 日日骚欧美日韩| 欧美亚洲国产怡红院影院| 国产精品三级视频| 国产一区二区不卡在线| 欧美一区二区二区| 亚洲电影视频在线| 91黄视频在线观看| 亚洲免费av网站| 不卡的av电影| 国产精品久久夜| 国产高清不卡一区| 久久精品免视看| 国产美女在线精品| 久久婷婷综合激情| 久久99蜜桃精品| 亚洲精品在线观| 国产一区中文字幕| 国产亚洲午夜高清国产拍精品| 精品制服美女丁香| 精品国产乱码久久久久久蜜臀 | 午夜成人免费电影| 欧美在线视频全部完| 亚洲乱码国产乱码精品精98午夜| 国产成人精品一区二区三区网站观看| 精品久久国产字幕高潮| 国产一级精品在线| 亚洲国产精品二十页| 国产激情一区二区三区| 国产欧美一区二区精品性| 粉嫩在线一区二区三区视频| 国产丝袜欧美中文另类| 成人av在线看| 亚洲在线视频一区| 5858s免费视频成人| 久久精品国产亚洲高清剧情介绍| 26uuu亚洲综合色| 成人一区二区三区视频在线观看 | 国产精品国产自产拍在线| 不卡电影一区二区三区| 亚洲精品国产第一综合99久久| 欧美专区日韩专区| 麻豆精品视频在线观看免费 | 欧美性极品少妇| 天天综合天天做天天综合| 欧美一区二区三区色| 极品少妇xxxx精品少妇| 国产精品欧美久久久久一区二区| 91影院在线免费观看| 日韩高清不卡一区二区| 久久综合九色综合欧美亚洲| eeuss影院一区二区三区| 亚洲国产精品久久一线不卡| 日韩美女视频在线| 91视频免费看| 麻豆精品视频在线观看| 亚洲天堂精品在线观看| 91精品福利在线一区二区三区 | 欧美电影免费观看高清完整版在| 黄页视频在线91| 亚洲美腿欧美偷拍| 日韩欧美一二区| 91毛片在线观看| 久久99精品国产麻豆婷婷| 综合激情成人伊人| 久久综合色播五月| 日本高清视频一区二区| 精品中文字幕一区二区小辣椒| 亚洲欧洲国产日韩| 精品国产一区二区亚洲人成毛片| 91蜜桃在线免费视频| 国产精品一区二区久激情瑜伽| 亚洲国产精品一区二区久久| 欧美激情在线看| 日韩视频在线你懂得| 日本韩国一区二区三区| 成人av网址在线观看| 精品无码三级在线观看视频| 亚洲一级二级三级在线免费观看| 欧美国产精品v| 日韩欧美专区在线| 欧美乱妇15p| 欧美在线999| 91色porny在线视频| 国产乱码精品一区二区三区五月婷| 亚洲国产wwwccc36天堂| 一区二区三区 在线观看视频| 国产欧美日韩麻豆91| 久久综合成人精品亚洲另类欧美| 国产精品国产三级国产aⅴ无密码| 欧美一区二区三区精品| 91黄色免费网站| 色婷婷激情综合| 91丨porny丨中文| av综合在线播放| 99视频有精品| 波多野洁衣一区| 99精品视频中文字幕| 国产91精品一区二区麻豆亚洲| 国产在线不卡一区| 黄页网站大全一区二区| 久久国产精品免费| 黑人巨大精品欧美黑白配亚洲| 日本视频免费一区| 蜜桃av一区二区三区电影| 日本免费新一区视频| 日本亚洲电影天堂| 狠狠色2019综合网| 国产精品一二三区在线| 国产jizzjizz一区二区| 国产成人av一区二区三区在线| 国产精品综合一区二区三区| 成人午夜短视频| 成人av在线资源| 在线观看中文字幕不卡| 欧美午夜不卡视频| 91精品国产一区二区三区| 91精品国产免费| 国产日产欧产精品推荐色| 国产精品久久久久久福利一牛影视 | 久久se这里有精品| 国产98色在线|日韩| 99精品一区二区三区| 欧美色图在线观看| 日韩欧美一级特黄在线播放| 国产欧美视频在线观看| 亚洲欧洲中文日韩久久av乱码| 五月天久久比比资源色| 久久99精品久久久久久国产越南| 成人综合在线视频| 欧美日韩中文字幕一区| 日韩欧美国产午夜精品| 欧美国产亚洲另类动漫| 亚洲综合精品自拍| 九九精品一区二区| 色国产综合视频| 日韩免费电影网站| 亚洲欧洲中文日韩久久av乱码| 丝袜美腿成人在线| 福利电影一区二区三区| 欧美中文字幕一区| 久久久一区二区三区捆绑**| 亚洲欧洲一区二区在线播放| 亚洲成人精品在线观看| 国产精品影视在线观看| 欧美日韩亚洲综合一区| 国产亚洲女人久久久久毛片| 亚洲一区二区视频在线观看| 国产精品一区二区久久精品爱涩 | 欧美一区二区视频在线观看2020 | 国产高清亚洲一区| 欧美视频一区二区| 国产农村妇女毛片精品久久麻豆 | 中文在线免费一区三区高中清不卡| 亚洲电影一区二区三区| 国产成人午夜片在线观看高清观看| 欧美视频在线播放| 国产精品久久二区二区| 韩国欧美一区二区| 欧美裸体一区二区三区| 日韩一区在线播放| 国产超碰在线一区| 日韩视频在线永久播放| 亚洲电影在线播放| 一本一本大道香蕉久在线精品 | 国产日韩欧美精品电影三级在线| 亚洲成人综合在线| 色系网站成人免费| 国产片一区二区三区| 奇米888四色在线精品| 欧美三级午夜理伦三级中视频| 亚洲欧美综合网| k8久久久一区二区三区| 欧美激情一区二区三区全黄| 精品一区二区三区视频 | 色美美综合视频| 国产精品色眯眯| 福利一区在线观看| 国产欧美日产一区| 国产福利精品导航| 国产视频一区二区在线观看| 精品一区二区三区欧美| 久久伊人蜜桃av一区二区| 激情国产一区二区| 国产日产欧美精品一区二区三区| 精品一区二区三区免费播放 | 91精品国产91久久综合桃花|