+ case 0x15: //chip erase
+ Putch4(0x45);
+ increaseled();
+ if(FLASH_ChipErase() != 1) {
+ panic();
+ }
+ Putch4(0x23);
+ break;
+
+ case 0x12: //erase
+ Putch4(0x11);
+ address = recvdword();
+ increaseled();
+
+ size = recvword();
+ increaseled();
+
+ PDR14 = 0xff;
+ for(i=0; i<(size+4); i+=4) { /* erase */
+ if(FLASH_SectorErase(address + i) != 1) {
+ panic();
+ }
+ increaseled();
+ }
+ Putch4(0x18); //Erasing done.
+ break;
+