BOOL WriteFingerprint() { int i; DWORD addr = BOOTLOADER_FINGERPRINT_ADDRESS; BYTE* fp = fingerprint; for (i = 0; i < FINGERPRINT_SIZE / 2; ++i) { DWORD_VAL dw = {0}; dw.byte.LB = *fp++; dw.byte.HB = *fp++; if (!FlashWriteDWORD(addr, dw.Val)) return FALSE; addr += 2; } return TRUE; }
bool WriteFingerprint(BYTE fp[FINGERPRINT_SIZE]) { log_printf("WriteFingerprint()"); if (!EraseFingerprint()) return false; int i; DWORD addr = BOOTLOADER_FINGERPRINT_ADDRESS; BYTE* p = fp; for (i = 0; i < FINGERPRINT_SIZE / 2; ++i) { DWORD_VAL dw = {0}; dw.byte.LB = *p++; dw.byte.HB = *p++; if (!FlashWriteDWORD(addr, dw.Val)) return false; addr += 2; } return true; }
bool WriteOscTun(BYTE tun) { DWORD dw = 0xFFFFFF00 | tun; return FlashWriteDWORD(BOOTLOADER_OSCTUN_ADDRESS, dw); }