📄 intel.cpp
字号:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 8; //{8 x 8k}
pInfo->Sectors[ 0, 1 ] = 64;
pInfo->Sectors[ 1, 0 ] = 15; //{15 x 64k}
pInfo->Sectors[ 1, 1 ] = 512;
pInfo->Size = 1024;
strcpy(pInfo->Name, "28F008B3-B/3V" );
break;
case 0x98:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 256; //{'page' size, program 128 words at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 7; //{7 x 128k}
pInfo->Sectors[ 0, 1 ] = 1024;
pInfo->Sectors[ 1, 0 ] = 1; //{1 x 96k}
pInfo->Sectors[ 1, 1 ] = 768;
pInfo->Sectors[ 2, 0 ] = 2; //{2 x 8k}
pInfo->Sectors[ 2, 1 ] = 64;
pInfo->Sectors[ 3, 0 ] = 1; //{1 x 16k}
pInfo->Sectors[ 3, 1 ] = 128;
pInfo->Size = 1024;
strcpy(pInfo->Name, "28F008-T series (5V/3V/2.7V)" );
break;
case 0x99:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 256; //{'page' size, program 128 words at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 1; //{1 x 16k}
pInfo->Sectors[ 0, 1 ] = 128;
pInfo->Sectors[ 1, 0 ] = 2; //{2 x 8k}
pInfo->Sectors[ 1, 1 ] = 64;
pInfo->Sectors[ 2, 0 ] = 1; //{1 x 96k}
pInfo->Sectors[ 2, 1 ] = 768;
pInfo->Sectors[ 3, 0 ] = 7; //{7 x 128k}
pInfo->Sectors[ 3, 1 ] = 1024;
pInfo->Size = 1024;
strcpy(pInfo->Name, "28F008-B series (5V/3V/2.7V)" );
break;
/* 0x9C : Begin {v1.24 16-bit removed}
pInfo->Flags = 0; {sector mode}
pInfo->PgSize = 256; {'page' size, program 128 words at a time}
pInfo->Program = IntelSecProgW;
pInfo->F_Erase = IntelSecEraseW;
pInfo->Sectors[ 0, 0 ] = 7; {7 x 128k}
pInfo->Sectors[ 0, 1 ] = 1024;
pInfo->Sectors[ 1, 0 ] = 1; {1 x 96k}
pInfo->Sectors[ 1, 1 ] = 768;
pInfo->Sectors[ 2, 0 ] = 2; {2 x 8k}
pInfo->Sectors[ 2, 1 ] = 64;
pInfo->Sectors[ 3, 0 ] = 1; {1 x 16k}
pInfo->Sectors[ 3, 1 ] = 128;
pInfo->Size = 1024;
Name = ConstPtr( '28F800-T/5V' );
End;
0x9D : Begin
pInfo->Flags = 0; {sector mode}
pInfo->PgSize = 256; {'page' size, program 128 words at a time}
pInfo->Program = IntelSecProgW;
pInfo->F_Erase = IntelSecEraseW;
pInfo->Sectors[ 0, 0 ] = 1; {1 x 16k}
pInfo->Sectors[ 0, 1 ] = 128;
pInfo->Sectors[ 1, 0 ] = 2; {2 x 8k}
pInfo->Sectors[ 1, 1 ] = 64;
pInfo->Sectors[ 2, 0 ] = 1; {1 x 96k}
pInfo->Sectors[ 2, 1 ] = 768;
pInfo->Sectors[ 3, 0 ] = 7; {7 x 128k}
pInfo->Sectors[ 3, 1 ] = 1024;
pInfo->Size = 1024;
Name = ConstPtr( '28F800-B/5V' );
End;
0xF1 : Begin
pInfo->Flags = 0; {sector mode}
pInfo->PgSize = 256; {'page' size, program 128 words at a time}
pInfo->Program = IntelSecProgW;
pInfo->F_Erase = IntelSecEraseW;
pInfo->Sectors[ 0, 0 ] = 15; {15 x 64k}
pInfo->Sectors[ 0, 1 ] = 512;
pInfo->Sectors[ 1, 0 ] = 8; {8 x 8k}
pInfo->Sectors[ 1, 1 ] = 64;
pInfo->Size = 1024;
Name = ConstPtr( '28F800F3-T/3V' );
End;
0xF2 : Begin
pInfo->Flags = 0; {sector mode}
pInfo->PgSize = 256; {'page' size, program 128 words at a time}
pInfo->Program = IntelSecProgW;
pInfo->F_Erase = IntelSecEraseW;
pInfo->Sectors[ 0, 0 ] = 8; {8 x 8k}
pInfo->Sectors[ 0, 1 ] = 64;
pInfo->Sectors[ 1, 0 ] = 15; {15 x 64k}
pInfo->Sectors[ 1, 1 ] = 512;
pInfo->Size = 1024;
Name = ConstPtr( '28F800F3-B/3V' );
End;
case 0xD0:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 31; //{31 x 64k}
pInfo->Sectors[ 0, 1 ] = 512;
pInfo->Sectors[ 1, 0 ] = 8; //{8 x 8k}
pInfo->Sectors[ 1, 1 ] = 64;
pInfo->Size = 2048;
strcpy(pInfo->Name, "28F016B3-T/3V" );
break;
case 0xD1:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 8; //{8 x 8k}
pInfo->Sectors[ 0, 1 ] = 64;
pInfo->Sectors[ 1, 0 ] = 31; //{31 x 64k}
pInfo->Sectors[ 1, 1 ] = 512;
pInfo->Size = 2048;
strcpy(pInfo->Name, "28F016B3-B/3V" );
break;
case 0xA7:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 8; //{8 x 64k}
pInfo->Sectors[ 0, 1 ] = 512;
pInfo->Size = 512;
strcpy(pInfo->Name, "28F004Sx series (5V/3.3V/2.7V)" );
break;
case 0xA6:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 16; //{16 x 64k}
pInfo->Sectors[ 0, 1 ] = 512;
pInfo->Size = 1024;
strcpy(pInfo->Name, "28F008Sx series (5V/3.3V/2.7V)" );
break;
case 0xA2:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 16; //{16 x 64k}
pInfo->Sectors[ 0, 1 ] = 512;
pInfo->Size = 1024;
strcpy(pInfo->Name, "28F008SA/12V" );
break;
case 0xAA:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 32; //{32 x 64k}
pInfo->Sectors[ 0, 1 ] = 512;
pInfo->Size = 2048;
strcpy(pInfo->Name, "28F016Sx series (5V/3.3V/2.7V)" );
break;
case 0xA0:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 32; //{32 x 64k}
pInfo->Sectors[ 0, 1 ] = 512;
pInfo->Size = 2048;
strcpy(pInfo->Name, "28F016S5/SA (5V/3.3V)" );
break;
case 0x16:
case 0x14:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 32; //{32 x 128k}
pInfo->Sectors[ 0, 1 ] = 1024;
pInfo->Size = 4096;
if ( DevId == 0x16 )
{
strcpy( pInfo->Name, "28F320J3A/3V" );
}
else if ( DevId == 0x14 )
{
strcpy( pInfo->Name, "28F320J5/5V" );
}
break;
case 0x17:
case 0x15:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 64; //{64 x 128k}
pInfo->Sectors[ 0, 1 ] = 1024;
pInfo->Size = 8192;
if ( DevId == 0x17 )
{
strcpy( pInfo->Name, "28F640J3A/3V" );
}
else if ( DevId == 0x15 )
{
strcpy( pInfo->Name, "28F640J5/5V" );
}
break;
case 0x18:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->Program = IntelSecProg;
pInfo->F_Erase = IntelSecErase;
pInfo->Sectors[ 0, 0 ] = 128; //{128 x 128k}
pInfo->Sectors[ 0, 1 ] = 1024;
pInfo->Size = 16384;
strcpy( pInfo->Name, "28F128J3A/3V" );
break; */
case 0xAD:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->F_Program = IntelSecProgU;
pInfo->F_Erase = IntelSecEraseU;
pInfo->Sectors[ 0][ 0 ] = 8; //{8 x 64k}
pInfo->Sectors[ 0][ 1 ] = 512;
pInfo->Size = 512; //{4Mb}
strcpy( pInfo->Name, "82802AB/3.3V (Firmware Hub)" );
break;
case 0xAC:
pInfo->Flags = 0; //{sector mode}
pInfo->PgSize = 128; //{'page' size, program 128 bytes at a time}
pInfo->F_Program = IntelSecProgU;
pInfo->F_Erase = IntelSecEraseU;
pInfo->Sectors[ 0][ 0 ] = 16; //{16 x 64k}
pInfo->Sectors[ 0][ 1 ] = 512;
pInfo->Size = 1024; //{8Mb}
strcpy( pInfo->Name, "82802AC/3.3V (Firmware Hub)" );
break;
default:
;
}
strcpy( pInfo->Manuf, "Intel" );
bRet = TRUE;
return bRet;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -