Index: stm50flw0x0x.c =================================================================== --- stm50flw0x0x.c (revision 960) +++ stm50flw0x0x.c (working copy) @@ -85,7 +85,7 @@ { int i; - for (i = 0; i < flash->total_size; i+= flash->page_size) { + for (i = 0; i < flash->total_size * 1024; i+= flash->page_size) { if(unlock_block_stm50flw0x0x(flash, i)) { fprintf(stderr, "UNLOCK FAILED!\n"); return -1; Index: 82802ab.c =================================================================== --- 82802ab.c (revision 960) +++ 82802ab.c (working copy) @@ -97,7 +97,7 @@ int i; //chipaddr wrprotect = flash->virtual_registers + page + 2; - for (i = 0; i < flash->total_size; i+= flash->page_size) + for (i = 0; i < flash->total_size * 1024; i+= flash->page_size) { chip_writeb(0, flash->virtual_registers + i + 2); }