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

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

?? gal16v8反匯編程序.txt

?? gal16v8反匯編程序 gal16v8是一款古老的電可擦除gal芯片
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
//GAL16V8反匯編源程序JED2ABEL.C
#include <stdio.h>
#include <io.h>
#include <conio.h>
#include <string.h>
#include <fcntl.h>
#include <alloc.h>
#include <stdlib.h>
#include <sys\stat.h>
unsigned int getfusessum(unsigned char *str);
unsigned int getfusessum(unsigned char *str){
unsigned char ch;
unsigned int fusessum=0;
unsigned int i,j;
    for(i=0;i<275;i++){
       ch=0;
       for(j=0;j<8;j++){
          ch>>=1;
          if(*str++=='1') ch|=0x80;
       }
       fusessum+=ch;
    }
    return fusessum;
}
unsigned char getstrhex(unsigned char *str);
unsigned char getstrhex(unsigned char *str)
{
unsigned char ch=0;
unsigned int i;
    for(i=0;i<8;i++){
       ch<<=1;
       if(*str++=='1') ch++;
    }
    return ch;
}
main(int argc,char *argv[])
{
FILE *fp1,*fp2,*fp3;
unsigned int  x,y,z,i,j,k;
unsigned char *filename1,*filename2,*str,*ptr,*ctr,ch,ck;
unsigned char *p1=".jed",*p2=".pld";
unsigned long pccount,address=0,addressx=0;
unsigned char STX=0x02,ETX=0x03;
unsigned int SYN=2192,AC0=2193,XORN=2120;
unsigned char *buffer="Jed2Abel Version 3.01 Copyright (c) 1993,2008 HotPower";
unsigned char fuses[2200];
unsigned char outpins[]={2,1,3,19,4,18,5,17,6,14,7,13,8,12,9,11};//P16V8S
unsigned char outpinc[]={2,1,3,18,4,17,5,16,6,15,7,14,8,13,9,11};//P16V8C
unsigned char outpinr[]={2,19,3,18,4,17,5,16,6,15,7,14,8,13,9,12};//P16V8R
unsigned char *pinname[]={
              "P01     ",
              "P02     ",
              "P03     ",
              "P04     ",
              "P05     ",
              "P06     ",
              "P07     ",
              "P08     ",
              "P09     ",
              "GND     ",
              "P11     ",
              "P12     ",
              "P13     ",
              "P14     ",
              "P15     ",
              "P16     ",
              "P17     ",
              "P18     ",
              "P19     ",
              "VCC     "};
unsigned char *outpin;
unsigned int crc0=0,crc1=0;
unsigned int crcs0=0,crcs1=0;
unsigned int fusesum=0;
unsigned int pin;
    puts(buffer);
    if (argc<2 || argc>3) {
       puts("Syntax: Jed2Abel Jedfilename[.JED] [Abelfilename][.PLD]");
       exit(1);
    }
    filename1=(unsigned char*)calloc(64,sizeof(char));
    filename2=(unsigned char*)calloc(64,sizeof(char));
    str=argv[1];
    ptr=(argc==3) ? argv[2] : filename2;
    strcpy(filename1,str);
    strcpy(filename2,ptr);
    str=filename1;
    ptr=filename2;
    strlwr(str);
    strlwr(ptr);
    if(islower(*str)) *str^=0x20;
    if(islower(*str)) *ptr^=0x20;
    while (*str && (*str!='.')) str++;
    if (*str!='.') strcat(filename1,p1);
    if ((fp1=fopen(filename1,"rb+"))==NULL) {
       printf("Not found Jedfile:[");
       printf(filename1);
       puts("]");
       free(filename1);
       free(filename2);
       exit(1);
    }
    while(!feof(fp1) && (ch=fgetc(fp1))!=STX);
    if(ch!=STX){
       free(filename1);
       free(filename2);
       exit(1);
    }
    crc0=ch;
    while(!feof(fp1) && (ch=fgetc(fp1))!=ETX) crc0+=ch;
    crc0+=ch;
    if(ch==ETX){
       address=ftell(fp1);
       fscanf(fp1,"%04X",&crcs0);
    }
    if(crc0!=crcs0){//CRC出錯
       printf("MoveData_CRC Error!!!\r\n");
       if(ch==ETX){
          printf("OverWrite(Y/N)\n");
          ch=getch();
          printf("\r\n");
          if(ch=='Y' || ch=='y'){
         fseek(fp1,address,SEEK_SET);
         fprintf(fp1,"%04X",crc0);//強行改寫CRC錯誤!
          }
          else{
         free(filename1);
         free(filename2);
         exit(1);
          }
       }
       else{
          printf("OverWrite(Y/N)\n");
          ch=getch();
          printf("\r\n");
          if(ch=='Y' || ch=='y'){
         fseek(fp1,address,SEEK_SET);
         fprintf(fp1,"%04X",crc0);//強行改寫CRC錯誤!
          }
          else{
         free(filename1);
         free(filename2);
         exit(1);
          }
       }
    }
    rewind(fp1);
    while(!feof(fp1)){
       while(!feof(fp1) && fgetc(fp1)!='Q');
       if(!feof(fp1) && fgetc(fp1)=='F'){
          fscanf(fp1,"%04d",&fusesum);//QF2194
          break;
       }
    }
    if(feof(fp1) || fgetc(fp1)!='*' || fusesum!=2194){
       printf("No GAL16V8 JedFile!!!\n");
       printf("OverWrite(Y/N)\n");
       ch=getch();
       printf("\r\n");
       if(ch=='Y' || ch=='y'){
         rewind(fp1);
         fusesum=2194;//強行反匯編
       }
       else{
         free(filename1);
         free(filename2);
         exit(1);
       }
    }
    str=fuses;
    for(i=0;i<2200;i++) *str++='0';
    ck=0;
    while(!feof(fp1)){
       ch=fgetc(fp1);
       if(ch=='L' && ck==0x0a) break;
       ck=ch;
    }
    while(ch=='L'){
       address=ftell(fp1);
       pccount=0;
       while(!feof(fp1) && (ch=fgetc(fp1))>='0' && ch<='9'){
          pccount*=10;
          pccount+=ch&0x0f;
       }
       str=fuses+pccount;
       while(ch!='*'){
          if(ch=='1' || ch=='0'){
         *str++=ch;
         pccount++;
          }
          ch=fgetc(fp1);
       }
       addressx=ftell(fp1);
       while(!feof(fp1) && (ch=fgetc(fp1))!='L' && ch!='C' && ch!='V');
    }
    while(!feof(fp1) && ch=='V'){
        while(!feof(fp1) && (ch=fgetc(fp1))!='*' && (ch=fgetc(fp1))!='\n');
        ch=fgetc(fp1);
    }
    while(!feof(fp1) && ch!='C') ch=fgetc(fp1);
    if(ch=='C'){
        address=ftell(fp1);
        fscanf(fp1,"%04X",&crcs1);
    }
    str=fuses;
    crc1=getfusessum(str);
    if(crc1!=crcs1){
       printf("FusesData_CRC Error!!!\n");
       if(ch=='C'){
          printf("OverWrite(Y/N)\n");
          ch=getch();
          printf("\r\n");
          if(ch=='Y' || ch=='y'){
         fseek(fp1,address,SEEK_SET);
         fprintf(fp1,"%04X",crc1);
          }
          else{
         free(filename1);
         free(filename2);
         exit(1);
          }
       }
    }
    if (argc==2) {
       str=filename1;
       while (*str!='.') *ptr++=*str++;
       *ptr=0;
       strcat(filename2,p2);
    }
       else {
          while (*ptr && (*ptr!='.')) ptr++;
          if (*ptr==0) strcat(filename2,p2);
          else {
         ptr++;
         printf("Jed2Abel Abelfile:[");
         printf(filename2);
         printf("] (Y/N)?");
         ch=getch();
         printf("\r\n");
         if (ch=='Y' || ch=='y') {
            printf("Jed2Abel Convert (Y/N)?");
            ch=getch();
            printf("\r\n");
            if ((ch&=0x0df) !='Y') {
               fclose(fp1);
               free(filename1);
               free(filename2);
               exit(1);
            }
         }
         else {
            fclose(fp1);
            free(filename1);
            free(filename2);
            exit(1);
         }
          }
       }
    if (_chmod(filename2,1,0x20)==0x20) {
       printf("Overwrite existing Abelfile:[");
       printf(filename2);
       printf("] (Y/N)?");
       ch=getch();
       printf("\r\n");
       if ((ch&0x0df)!='Y') {
          fclose(fp1);
          free(filename1);
          free(filename2);
          exit(1);
       }
    }
    if ((fp2=fopen(filename2,"wt"))==NULL) {
       printf("Not open Abelfile:[");
       printf(filename2);
       puts("]");
       fclose(fp1);
       free(filename1);
       free(filename2);
       exit(1);
    }
    for(pin=0;pin<20;pin++){
       ctr=pinname[pin];
       while(*ctr && *ctr!=' ') ctr++;
       *ctr=0;
    }
    ptr=filename2;
    while(*ptr&&*ptr!='.') ptr++;
    ctr=ptr;
    *ctr++='.';//用戶定義管腳文件默認"*.PIN"
    *ctr++='P';
    *ctr++='i';
    *ctr++='n';
    *ctr=0;
    if ((fp3=fopen(filename2,"rt"))!=NULL){//用戶定義管腳文件"pldfilename.pin"
       while(!feof(fp3)){
          while(!feof(fp3) && (ch=fgetc(fp3))!='P');//只認大寫字母P
          pin=0;
          while(!feof(fp3) && (ch=fgetc(fp3))>='0' && ch<='9'){//只認數字管腳號
         pin*=10;
         pin+=ch&0x0f;
          }
          if(ch=='=' && pin>0 && pin<20){//P1=....P20=...
         ctr=buffer;
         while(!feof(fp3) && (ch=fgetc(fp3))!=';'){//每個管腳定義以分號;結尾
            *ctr++=ch;
         }
         *ctr=0;
         *(ctr+8)=0;
         if(ch==';'){
            ctr=buffer;
            strcpy(pinname[pin-1],ctr);//管腳定義名稱  P2=ABC;<CR>...P13=OUT;<CR>...
         }
          }
       }
       fclose(fp3);
    }
    else{
       if(fuses[SYN]=='0' && fuses[AC0]=='1'){
          strcpy(pinname[0],"Clk");
          strcpy(pinname[10],"OE");
       }
    }
    *ptr=0;
    ptr=filename2;
    str=filename1;
    while(*str&&*str!='.') str++;
    *str=0;
    str=filename1;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美综合色免费| 精品蜜桃在线看| 精品一区二区三区在线播放视频| 国产人成一区二区三区影院| 日本韩国精品在线| 国产麻豆欧美日韩一区| 亚洲国产中文字幕在线视频综合| 欧美精品一区二区蜜臀亚洲| 色综合天天综合网天天看片| 麻豆精品视频在线观看视频| 亚洲美女区一区| 国产拍揄自揄精品视频麻豆| 91精品国产品国语在线不卡| av不卡在线观看| 久久爱另类一区二区小说| 亚洲一区二区三区激情| 国产色91在线| 精品欧美久久久| 欧美精品一级二级| 91麻豆国产在线观看| 国产精品影音先锋| 久久国产尿小便嘘嘘尿| 亚洲一区二区三区精品在线| 国产精品不卡一区| 国产无遮挡一区二区三区毛片日本| 欧美三区在线观看| 波多野结衣中文一区| 国内精品在线播放| 久久99精品网久久| 奇米精品一区二区三区在线观看一 | 国产精品一卡二卡| 精品在线视频一区| 日本欧美一区二区三区乱码| 亚洲电影欧美电影有声小说| 亚洲va韩国va欧美va精品| 国产精品无码永久免费888| 久久久久久黄色| 久久综合色8888| 日韩亚洲欧美在线| 日韩一区二区三| 欧美一二区视频| 日韩午夜av电影| 日韩美女视频一区二区在线观看| 欧美一区二区性放荡片| 3d成人动漫网站| 91精品午夜视频| 日韩欧美国产成人一区二区| 欧美一区二区观看视频| 91精品国产综合久久蜜臀| 91精品国产综合久久久久久久 | 欧美精品一区二区三区蜜桃视频| 日韩一区二区免费高清| 日韩美女天天操| 26uuu亚洲婷婷狠狠天堂| 久久人人爽爽爽人久久久| 久久精品欧美日韩| 中文欧美字幕免费| 亚洲色图19p| 亚洲黄色免费网站| 亚洲h精品动漫在线观看| 天堂午夜影视日韩欧美一区二区| 日韩电影免费在线看| 精品制服美女久久| 国产精品一区一区三区| 99久久精品一区| 在线免费一区三区| 欧美一卡2卡3卡4卡| 久久影视一区二区| 最新热久久免费视频| 亚洲大片免费看| 国产一区二区三区视频在线播放| 成人免费视频播放| 欧美视频在线一区二区三区| 日韩视频一区二区| 亚洲国产精品二十页| 亚洲一区二区三区影院| 久久精品国产成人一区二区三区| 国产精品一区在线观看你懂的| 91小视频免费观看| 欧美一区二区精美| 中文字幕亚洲不卡| 亚洲动漫第一页| 国产麻豆午夜三级精品| 在线观看三级视频欧美| 欧美成人一区二区| 亚洲久本草在线中文字幕| 日本亚洲免费观看| 成人黄色综合网站| 日韩手机在线导航| 亚洲三级免费电影| 美腿丝袜一区二区三区| 成人短视频下载| 91精品国产aⅴ一区二区| 亚洲靠逼com| 精品在线播放免费| 色94色欧美sute亚洲线路一久| 欧美xxxxxxxx| 香港成人在线视频| www.亚洲精品| 26uuu色噜噜精品一区二区| 亚洲最色的网站| 床上的激情91.| 欧美另类videos死尸| 国产精品第五页| 韩国一区二区视频| 在线综合视频播放| 一区二区三区色| 国产白丝网站精品污在线入口| 3d动漫精品啪啪| 亚洲图片欧美综合| 91香蕉视频黄| 亚洲国产成人自拍| 国产精品一二二区| 欧美xxx久久| 亚洲第一久久影院| 色婷婷综合久色| 亚洲特级片在线| 国产成人福利片| 日韩一区二区电影在线| 亚洲 欧美综合在线网络| 成人h版在线观看| 国产视频一区不卡| 久色婷婷小香蕉久久| 91麻豆精品国产91久久久久久| 亚洲精品日韩一| 色婷婷综合激情| 亚洲欧美日韩在线| jlzzjlzz亚洲日本少妇| 国产日韩精品一区| 亚洲欧美福利一区二区| www激情久久| 琪琪一区二区三区| 99久久99久久久精品齐齐| 久久先锋资源网| 精品一区二区在线免费观看| 3d动漫精品啪啪1区2区免费| 亚洲成人第一页| 欧美日韩三级在线| 亚洲成人一二三| 欧美撒尿777hd撒尿| 亚洲综合丁香婷婷六月香| 欧洲视频一区二区| 亚洲在线免费播放| 在线欧美小视频| 午夜精品久久久久久久久久| 欧美性色欧美a在线播放| 亚洲最大成人综合| 欧美日韩成人高清| 日韩精品久久久久久| 日韩欧美综合在线| 久久99精品久久久久久| 日韩你懂的在线观看| 韩国毛片一区二区三区| xvideos.蜜桃一区二区| 蜜臀久久99精品久久久久久9| 日韩一本二本av| 国产黑丝在线一区二区三区| 中文欧美字幕免费| 91成人免费在线| 首页欧美精品中文字幕| 777午夜精品视频在线播放| 免费观看日韩电影| 精品久久久三级丝袜| 国产成人免费在线视频| 午夜国产精品影院在线观看| 欧美丰满一区二区免费视频| 天堂资源在线中文精品| 精品动漫一区二区三区在线观看| 国产精品18久久久久| 亚洲视频免费观看| 欧美军同video69gay| 免费成人av在线| 中文字幕av一区二区三区| 日本伦理一区二区| 久久国产福利国产秒拍| 国产精品久久久久精k8| 欧美精品第1页| 成人黄页在线观看| 日韩黄色一级片| 久久综合国产精品| 91视频国产观看| 麻豆91精品91久久久的内涵| 国产精品乱人伦一区二区| 欧美日本一道本在线视频| 国产一区不卡精品| 亚洲高清在线视频| 久久一区二区三区国产精品| 欧美怡红院视频| 高清国产一区二区| 日韩不卡一区二区| 亚洲欧美在线视频| 欧美一级夜夜爽| 一本到一区二区三区| 紧缚捆绑精品一区二区| 亚洲精品免费视频| 国产无人区一区二区三区| 欧美理论片在线| 波多野结衣亚洲| 美女脱光内衣内裤视频久久网站| 日韩美女啊v在线免费观看|