Alexander Zangerl schreef: >> What do you mean by "if the config size is set to three"? >> Do you mean that you change the chip definition line to something like this? >> >> {"pic12f635", 1024, 0, 0x3000, 3, 14, 0, 0, flash4, 128, eeprom, 0x0fa0}, >> > sorry for the late response; that's what i meant.
I have made some changes to hexfile.cc and picport.cc and now it seems working fine here (not well tested, but picprog doesn't give an error-message). Can you check if this also works for you? pts/3 jan ~/picprog.12f635/picprog-1.8.3.12f635$ ./picprog --pic /dev/ttyS1 --ihx32 --output /tmp/pic1.hex Picprog version 1.8.3, Copyright © 2006 Jaakko Hyvätti <[EMAIL PROTECTED]> Picprog comes with ABSOLUTELY NO WARRANTY; for details type `picprog --warranty'. This is free software, and you are welcome to redistribute it under certain conditions; type `picprog --copying' for details. /dev/ttyS1: id 0x0fa4: detected pic12f635 version 0x04 Device pic12f635, program memory: 1024, data memory: 128. Reading program memory, reading data memory, reading id words, reading fuses, done. --- ../picprog-1.8.3/hexfile.cc 2006-09-24 17:05:41.000000000 +0200 +++ hexfile.cc 2007-05-18 09:15:02.000000000 +0200 @@ -224,12 +224,15 @@ {"pic12ce674", 2048, 1, 0, 1, 14, 0, 0, eprom, 16, eeprom, -1}, {"pic12f629", 1024, 1, 0x3000, 1, 14, 0, 0, flash4, 128, eeprom, 0x0f80}, {"pic12f675", 1024, 1, 0x3000, 1, 14, 0, 0, flash4, 128, eeprom, 0x0fc0}, {"pic16c505", 1024, 1, 0, 1, 12, 0, 0, eprom, 0, rom, -1}, + // 635: has 2 calibration words in 2008 and 2009, no osccal + {"pic12f635", 1024, 0, 0x3000, 3, 14, 0, 0, flash4, 128, eeprom, 0x0fa0}, + // 18f original series // Multi-panel writes // Write Buffer Size 8 {"pic18f242", 16 * 1024, 0, 0, 14, 16, 8*1024, 8, flash18, 256, eeprom, 0x0480}, {"pic18f248", 16 * 1024, 0, 0, 14, 16, 8*1024, 8, flash18, 256, eeprom, 0x0800}, {"pic18f252", 32 * 1024, 0, 0, 14, 16, 8*1024, 8, flash18, 256, eeprom, 0x0400}, --- ../picprog-1.8.3/picport.cc 2006-09-24 17:03:34.000000000 +0200 +++ picport.cc 2007-05-18 09:17:52.000000000 +0200 @@ -479,18 +479,18 @@ tmp1 = p_in (); for (i = 0; i < 14; i++) shift |= p_in () << i; tmp2 = p_in (); set_clock_data (0, 0); // set data down - // Start and stop bits must be 1. + // Start and stop bits must be 1. ***(Disabled : test PIC12f635)*** - if (!tmp1 || !tmp2) { - cerr << portname << ":PIC programmer missing or chip fault" << endl; - return -1; - } + // if (!tmp1 || !tmp2) { + // cerr << portname << ":PIC programmer missing or chip fault" << endl; + // return -1; + // } if (data_from_data == comm) { // Check that the leftover bits were valid, all 1's. // This detects if the programmer is not connected to the port. // Unfortunately later chips clear these bits, so we must -- Met vriendelijke groetjes - Jan Wagemakers - ... Everybody's just consuming What the media's dictating And they all have forgotten The joy that is to creating --L'âme Immortelle -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]