- cc_pokedatabyte(0xF000+FLASHPAGE_SIZE+2,
- ((adr>>8)/FLASH_WORD_SIZE)&0x7E);
- cc_debug(3, //MOV MEMCTR, (bank * 16) + 1;
- 0x75, 0xc7, 0x51);
- cc_set_pc(0xf000+FLASHPAGE_SIZE);//execute code fragment
+ cc_pokedatabyte(0xF000+MAXFLASHPAGE_SIZE+2,
+ ((adr>>8)/flash_word_size)&0x7E);
+ //Patch routine to define FLASH_WORD_SIZE
+ if(flash_routine[25]!=0xde)
+ debugstr("Ugly patching code failing in chipcon.c");
+ cc_pokedatabyte(0xF000+MAXFLASHPAGE_SIZE+25,
+ flash_word_size);
+
+ //debugstr("Wrote flash routine.");
+
+
+ //MOV MEMCTR, (bank * 16) + 1;
+ cmddata[0]=0x75;
+ cmddata[1]=0xc7;
+ cmddata[2]=0x51;
+ cc_debug_instr(3);
+ debugstr("Loaded bank info.");
+
+ cc_set_pc(0xf000+MAXFLASHPAGE_SIZE);//execute code fragment