USBasp 2005.11.14.
[pub/USBasp.git] / firmware / main.c
index 9d79354..c5624d3 100644 (file)
@@ -10,7 +10,7 @@
 
   Target.........: ATMega8 at 12 MHz
   Creation Date..: 2005-02-20
-  Last change....: 2005-04-20
+  Last change....: 2005-10-08
 
   PC2 SCK speed option. GND  -> slow (8khz SCK),
                         open -> fast (375kHz SCK)
@@ -55,7 +55,7 @@ static uchar prog_state = PROG_STATE_IDLE;
 
 static unsigned int prog_address;
 static unsigned int prog_nbytes = 0;
-static uchar prog_pagesize;
+static unsigned int prog_pagesize; //TP: Mega128 fix
 static uchar prog_blockflags;
 static uchar prog_pagecounter;
 
@@ -106,7 +106,8 @@ uchar usbFunctionSetup(uchar data[8]) {
   } else if (data[1] == USBASP_FUNC_WRITEFLASH) {
     prog_address = (data[3] << 8) | data[2];
     prog_pagesize = data[4];
-    prog_blockflags = data[5];
+    prog_blockflags = data[5] & 0x0F;
+    prog_pagesize += (((unsigned int)data[5] & 0xF0)<<4); //TP: Mega128 fix
     if (prog_blockflags & PROG_BLOCKFLAG_FIRST) {
       prog_pagecounter = prog_pagesize;
     }