亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
亚洲精品欧美激情| 亚洲va在线va天堂| 中文字幕av免费专区久久| 国产亚洲成年网址在线观看| 亚洲国产精品激情在线观看| 久久久亚洲欧洲日产国码αv| 欧美精品一区二区三区很污很色的| 欧美色电影在线| 337p亚洲精品色噜噜| 7777精品伊人久久久大香线蕉的| 欧美zozo另类异族| 一区二区三区四区五区视频在线观看| 亚洲国产中文字幕| 韩国成人精品a∨在线观看| 黄色资源网久久资源365| 成人av午夜电影| 在线观看免费一区| 久久久久久久久久久久久女国产乱| 久久久精品国产99久久精品芒果| 中文字幕色av一区二区三区| 蜜臀久久99精品久久久画质超高清 | 精品久久人人做人人爱| 国产免费久久精品| 亚洲成人先锋电影| 99久久免费精品| 欧美一区二区三区影视| 亚洲欧洲av色图| 国产高清精品网站| 精品对白一区国产伦| 亚洲大片一区二区三区| 色婷婷香蕉在线一区二区| 久久久综合九色合综国产精品| 久久久久国产精品厨房| 亚洲第四色夜色| 色综合av在线| 亚洲一区影音先锋| 欧美精品精品一区| 亚洲狠狠丁香婷婷综合久久久| 国产精品12区| 国产日韩欧美精品一区| 高清成人在线观看| 最近日韩中文字幕| 色国产综合视频| 亚洲成人av福利| 欧美性大战久久久久久久 | 粉嫩av一区二区三区在线播放| 精品福利一二区| 国产成人免费视| 久久久久久久久久久久久久久99 | 亚洲成人7777| 在线不卡一区二区| 日韩成人av影视| 久久综合久色欧美综合狠狠| 国产91色综合久久免费分享| 国产精品第13页| 欧美日韩一级大片网址| 日韩av电影免费观看高清完整版在线观看| 欧美三级在线看| 成人国产在线观看| 亚洲成人一区二区| 国产精品久久久久影视| 99久久免费国产| 久久激情五月婷婷| 午夜视频在线观看一区二区| 精品欧美一区二区久久| 不卡视频在线看| 日韩av午夜在线观看| 中文字幕一区三区| 久久久91精品国产一区二区三区| 欧美三级日韩三级国产三级| 东方欧美亚洲色图在线| 精品一区二区免费| 欧美一区二区三区在线电影| 日本不卡视频在线观看| 久久综合精品国产一区二区三区 | 91麻豆精品久久久久蜜臀| 成人伦理片在线| 国产高清视频一区| 亚洲综合色噜噜狠狠| 国产精品福利一区| 国产精品免费人成网站| www国产成人| 欧美电影免费观看高清完整版在线 | 国产亚洲精品超碰| 久久久久久亚洲综合| 久久一区二区视频| 久久精品亚洲麻豆av一区二区| 日韩美女在线视频| 精品不卡在线视频| 久久色在线视频| 国产精品久久久久久久久快鸭| 久久一区二区三区国产精品| 国产欧美日韩视频一区二区| 国产精品久久毛片av大全日韩| 欧美激情一区二区三区四区| 国产精品久久久久久久久快鸭 | 欧美三级欧美一级| 欧美精品一级二级三级| 欧美疯狂性受xxxxx喷水图片| 日韩一区二区三区在线观看| 久久中文娱乐网| 亚洲男人的天堂一区二区| 午夜免费久久看| 激情文学综合网| 91黄色免费版| 精品国产3级a| 亚洲制服丝袜一区| 成人激情黄色小说| 91精品国产一区二区人妖| 国产丝袜美腿一区二区三区| 亚洲自拍另类综合| 丁香另类激情小说| 欧美一级精品在线| 洋洋av久久久久久久一区| 久久国产福利国产秒拍| 欧美视频三区在线播放| 国产精品免费看片| 国产乱理伦片在线观看夜一区| 欧美日韩国产高清一区二区三区 | av网站免费线看精品| 精品视频一区 二区 三区| 国产精品国产三级国产专播品爱网| 国产精品久久久久影院色老大 | 国产精品午夜在线观看| 国产真实精品久久二三区| 欧美日韩一二三区| 日韩精品一级中文字幕精品视频免费观看 | 国产福利一区二区三区视频| 日韩一级成人av| 久久精品国产精品亚洲精品| 在线不卡a资源高清| 日本aⅴ精品一区二区三区 | 午夜欧美视频在线观看 | 日本aⅴ亚洲精品中文乱码| 欧美浪妇xxxx高跟鞋交| 蜜桃视频免费观看一区| 91精品国产欧美日韩| 久久99精品一区二区三区| 国产午夜精品久久久久久免费视 | 18成人在线观看| 欧美影片第一页| 午夜精品福利在线| 久久久久久夜精品精品免费| 99久久精品免费| 午夜伦欧美伦电影理论片| 久久久噜噜噜久噜久久综合| 日本高清无吗v一区| 日本人妖一区二区| 国产日本欧洲亚洲| 欧美美女喷水视频| 国产精品一二二区| 日本美女视频一区二区| 国产精品久久久久久久裸模| 欧美日韩精品系列| 成人伦理片在线| 韩国精品主播一区二区在线观看| 亚洲欧美国产77777| 国产亚洲美州欧州综合国| 欧美无砖专区一中文字| 色综合一个色综合亚洲| 成人在线视频一区二区| 日本成人超碰在线观看| 亚洲高清免费视频| 中文字幕一区二区不卡| 精品国产区一区| 欧美一区二区三区在线看| 97精品超碰一区二区三区| 激情综合亚洲精品| 久久精品国产99| 国产一区二区不卡| 激情五月婷婷综合网| 美女视频一区二区三区| 蜜桃视频免费观看一区| 麻豆精品久久精品色综合| 久久成人免费电影| 国产呦精品一区二区三区网站| 日韩av电影免费观看高清完整版| 亚洲综合丁香婷婷六月香| 亚洲一区二区欧美激情| 欧美aaa在线| 天天操天天色综合| 韩国欧美国产1区| 99久久精品免费| 色婷婷综合在线| 欧美一区二视频| 国产精品久久久久一区二区三区共| 国产三级精品视频| 亚洲色图第一区| 日韩二区三区在线观看| 日韩不卡手机在线v区| 国产成人免费视频精品含羞草妖精| 99re66热这里只有精品3直播 | 午夜伦理一区二区| 精东粉嫩av免费一区二区三区| 成人午夜视频在线观看| 色综合久久中文字幕综合网| 欧美mv日韩mv国产网站| 一区二区三区在线观看网站| 蜜桃久久av一区| 欧美放荡的少妇|