16 extern char const *
const menuOptionsFlash[];
17 extern uint8_t
const kMenuOptionFlashMax;
20 extern uint16_t flashid;
21 extern uint32_t flashSize;
22 extern uint32_t blank;
23 extern uint8_t mapping;
26 extern uint32_t flashBanks;
27 extern bool flashX16Mode;
28 extern bool flashSwitchLastBits;
29 extern uint8_t flashromType;
30 extern uint8_t secondID;
32 extern uint32_t sectorSize;
33 extern uint16_t bufferSize;
44 void printFlashSize(
int index);
45 void printFlashType(
int index);
46 uint8_t selectFlashtype(
bool option);
47 bool getFlashDetail();
56 void writeByte(uint32_t myAddress, uint8_t myData);
57 uint8_t readByte(uint32_t myAddress);
58 void writeWord(uint32_t myAddress, uint16_t myData);
59 uint16_t readWord(uint32_t myAddress);
60 void writeByteCommand(uint8_t command);
61 void writeByteCommandShift(uint8_t command);
62 void writeWordCommand(uint8_t command);
63 void writeByteCommand(uint8_t command);
64 void busyWait(uint32_t address, uint8_t data);
65 void busyWait(uint32_t address);
67 void resetFlash29F032();
68 void idFlash39SF040();
70 void eraseFlash29F032();
71 void writeFlash29F032();
72 bool busyCheck29F032(uint32_t addr, uint8_t c);
73 void resetFlash29F1610();
74 void writeFlash29F1610();
75 void writeFlash29F1601();
76 void idFlash29F1610();
77 void eraseFlash29F1610();
78 void writeFlash29LV640();
79 void writeFlash29GL(uint32_t sectorSize, uint8_t bufferSize);
80 void writeFlash29F800();
82 void resetFlash28FXXX();
83 uint8_t statusFlash28FXXX();
84 void eraseFlash28FXXX();
85 void writeFlash28FXXX();
86 void writeFlashE28FXXXJ3A();
87 void writeFlashLH28F0XX();
89 void verifyFlash(
bool closeFile =
true);
90 void verifyFlash(uint8_t currChip, uint8_t totalChips,
bool reversed,
bool closeFile =
true);
92 void printFlash(
int numBytes);
96 void writeFlash16_29F1601();
98 uint8_t readStatusReg16();
101 void verifyFlash16(
bool closeFile =
true);
103 void printFlash16(
int numBytes);
105 void busyCheck16_29LV640(uint32_t myAddress, uint16_t myData);
106 void writeFlash16_29LV640();
107 uint16_t writeWord_Eprom(uint32_t myAddress, uint16_t myData);
108 uint16_t readWord_Eprom(uint32_t myAddress);
109 void blankcheck_Eprom();
113 void print_Eprom(
int numBytes);
114 void sendCFICommand(uint8_t cmd);
115 uint8_t readByteCompensated(
int address);
116 void writeByteCompensated(
int address, uint8_t data);
117 void startCFIMode(
bool x16Mode);
118 bool identifyCFIbyIds(
bool x16Mode =
false);
120 void adjustFileSizeOffset(uint8_t currChip, uint8_t totalChips,
bool reversed);
121 void writeCFI(uint8_t currChip, uint8_t totalChips,
bool reversed);