<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to bugs</title><link>https://sourceforge.net/p/openprogrammer/bugs/</link><description>Recent changes to bugs</description><atom:link href="https://sourceforge.net/p/openprogrammer/bugs/feed.rss" rel="self"/><language>en</language><lastBuildDate>Thu, 05 Oct 2023 13:41:07 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/openprogrammer/bugs/feed.rss" rel="self" type="application/rss+xml"/><item><title>Can't execute latest version of Opgui.exe</title><link>https://sourceforge.net/p/openprogrammer/bugs/14/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Downloaded latest Opgui, installed the latest release of GTK runtime (form the link in the readme) but when i try to execute the Opgui.exe i alkways get the missing "libgdk-3.0.dll" lib error.&lt;br/&gt;
I have no problem with the old release.&lt;/p&gt;
&lt;p&gt;P.S. If it is possible remove dependencies for that version of GTK, it's heavly bugged and has a terrible bug with system PATH (The installer overwrites the entire PATH with it's own instead of adding itself alongside the other entries)&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Anonymous</dc:creator><pubDate>Thu, 05 Oct 2023 13:41:07 -0000</pubDate><guid>https://sourceforge.net5c238827d561c08c05e21f9e1c9076c4938f088c</guid></item><item><title>#13 Bug in Write18FKx</title><link>https://sourceforge.net/p/openprogrammer/bugs/13/?limit=25#e42e/1452</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;I unfortunately don't have the simple test cases anymore. But I ran them &lt;br/&gt;
with a debugger and also with "printf-debugging", and definitely found &lt;br/&gt;
this problem (not hitting the end conditions) while debugging a crash.&lt;/p&gt;
&lt;p&gt;I am using the modified op now and it works flawlessly and is super-fast.&lt;/p&gt;
&lt;p&gt;Here is a case where the code length is uneven (produced by XC8).&lt;/p&gt;
&lt;p&gt;What maybe also was special about the hex file is that some 0xff were &lt;br/&gt;
omitted (some 'lines' were shorter).&lt;/p&gt;
&lt;p&gt;Printing the hex file in more readable form, the end looks like this:&lt;/p&gt;
&lt;p&gt;2e50 - fe d7 02 2e fc d7 00 d0 12 00 0d 0e e0 ec 16 f0&lt;br/&gt;
   2e60 - 0a 0e e0 ec 16 f0 12 00 c8 0e 00 d0 e8 2e fd d7&lt;br/&gt;
   2e70 - 12 00&lt;br/&gt;
   2e74 - ff 00 11 00 4c&lt;/p&gt;
&lt;p&gt;Hope this helps&lt;/p&gt;
&lt;p&gt;On 03/07/2022 14.40, Alberto Maccioni wrote:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Can you provide an example where dim is not even?&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;em&gt;&lt;a class="alink" href="/p/openprogrammer/bugs/13/"&gt;[bugs:#13]&lt;/a&gt; &lt;a href="https://sourceforge.net/p/openprogrammer/bugs/13/"&gt;https://sourceforge.net/p/openprogrammer/bugs/13/&lt;/a&gt; Bug in &lt;br/&gt;
Write18FKx&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Status:&lt;/em&gt; open&lt;br/&gt;
&lt;em&gt;Group:&lt;/em&gt; No milestone&lt;br/&gt;
&lt;em&gt;Created:&lt;/em&gt; Fri Jul 01, 2022 10:54 AM UTC by Pascal&lt;br/&gt;
&lt;em&gt;Last Updated:&lt;/em&gt; Sun Jul 03, 2022 12:14 PM UTC&lt;br/&gt;
&lt;em&gt;Owner:&lt;/em&gt; nobody&lt;/p&gt;
&lt;p&gt;I believe that there is a bug in function Write18FKx:&lt;/p&gt;
&lt;p&gt;void Write18FKx(int dim, int dim2, int options, int nu1, int nu2, int nu3)&lt;/p&gt;
&lt;p&gt;"op" reports programming errors, and upon closer inspection these seem &lt;br/&gt;
to be related to "shortcuts" the function is taking by not programming &lt;br/&gt;
0xff bytes.&lt;/p&gt;
&lt;p&gt;This concerns programming the Q43 types:&lt;/p&gt;
&lt;p&gt;Here:&lt;/p&gt;
&lt;p&gt;|for(i=k=0;i&amp;lt;dim;i+=2){if(memCODE&lt;span&gt;[i]&lt;/span&gt;&amp;lt;0xFF||memCODE&lt;span&gt;[i + 1]&lt;/span&gt;&amp;lt;0xFF){...|&lt;/p&gt;
&lt;p&gt;This leads to a difference between the i and k counters at the end of &lt;br/&gt;
the write loop. If I deactivate this check, i and k are equal at the end &lt;br/&gt;
of the loop...&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;Sent from sourceforge.net because you indicated interest in &lt;br/&gt;
&lt;a href="https://sourceforge.net/p/openprogrammer/bugs/13/"&gt;https://sourceforge.net/p/openprogrammer/bugs/13/&lt;/a&gt; &lt;br/&gt;
&lt;a href="https://sourceforge.net/p/openprogrammer/bugs/13/"&gt;https://sourceforge.net/p/openprogrammer/bugs/13/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;To unsubscribe from further messages, please visit &lt;br/&gt;
&lt;a href="https://sourceforge.net/auth/subscriptions/"&gt;https://sourceforge.net/auth/subscriptions/&lt;/a&gt; &lt;br/&gt;
&lt;a href="https://sourceforge.net/auth/subscriptions/"&gt;https://sourceforge.net/auth/subscriptions/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Alberto Maccioni</dc:creator><pubDate>Tue, 05 Jul 2022 14:47:46 -0000</pubDate><guid>https://sourceforge.net8961f5ee076490b9013ea389839097b58cced2d5</guid></item><item><title>#13 Bug in Write18FKx</title><link>https://sourceforge.net/p/openprogrammer/bugs/13/?limit=25#e42e</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Can you provide an example where dim is not even?&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Alberto Maccioni</dc:creator><pubDate>Sun, 03 Jul 2022 12:40:53 -0000</pubDate><guid>https://sourceforge.netce3c1f40e70b6554798a2159fa1ec0238379c215</guid></item><item><title>#12 Bug in read code for new PIC18F devices</title><link>https://sourceforge.net/p/openprogrammer/bugs/12/?limit=25#d07d</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;status&lt;/strong&gt;: open --&amp;gt; closed&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Alberto Maccioni</dc:creator><pubDate>Sun, 03 Jul 2022 12:19:19 -0000</pubDate><guid>https://sourceforge.netd58a0c5f0502019710f8ab52c33ec39b21a285bf</guid></item><item><title>#12 Bug in read code for new PIC18F devices</title><link>https://sourceforge.net/p/openprogrammer/bugs/12/?limit=25#a497</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Not a bug.&lt;br/&gt;
Dim2 does not have the meaning you describe; you can look at the comment:&lt;br/&gt;
// dim2=if&amp;gt;0 use eeprom, size is automatic when reading DCI&lt;br/&gt;
So it is pointless to specify a value, as it is anyways read from the DCI area.&lt;br/&gt;
So the meaningful values are 0 and not 0 (I use 1).&lt;br/&gt;
To be more precise the comment should be:&lt;br/&gt;
// dim2=if&amp;gt;0 use eeprom, size is automatically determined by reading DCI&lt;br/&gt;
"Forcing config words" is not in that source file; please add another ticket with a test case.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Alberto Maccioni</dc:creator><pubDate>Sun, 03 Jul 2022 12:18:51 -0000</pubDate><guid>https://sourceforge.net26805a1b8340f438f3fa8844bb6131423d9168ae</guid></item><item><title>#13 Bug in Write18FKx</title><link>https://sourceforge.net/p/openprogrammer/bugs/13/?limit=25#0089</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;I have fixed this by enforcing an even code size in FileIO for P18 devices, plus have incorporated various other fixes to support the Q84 types, specifically the 18F26Q84 that I have. This includes adding a new 'type 2' device (Q84) with more config words, and changing the hard-coded number of config words to CONFIGlen.&lt;/p&gt;
&lt;p&gt;While working with the code, I have changed tabs with spaces and re-formatted some code because I found it very hard to read. Therefore, I unfortunately cannot provide a reasonable 'diff' and instead attach the modified files. Hopefully they are useful to porting these changes back to the original code. &lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Pascal</dc:creator><pubDate>Fri, 01 Jul 2022 18:46:25 -0000</pubDate><guid>https://sourceforge.net6efdc63c18bade5c7d5d7c4861ad8fa211237139</guid></item><item><title>#13 Bug in Write18FKx</title><link>https://sourceforge.net/p/openprogrammer/bugs/13/?limit=25#82bf</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hmm, this seems complicated.&lt;/p&gt;
&lt;p&gt;'size' seems to be set in 'FileIO' and the buffer allocated there... Not sure where this adjustment is best made. And maybe this problem also occurs with other devices so that it should be solved somewhere 'globally' ?&lt;/p&gt;
&lt;p&gt;Any advice from the code owner?&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Pascal</dc:creator><pubDate>Fri, 01 Jul 2022 13:29:57 -0000</pubDate><guid>https://sourceforge.net07806e922b70bf27a440cfe69e4148314eeb6e35</guid></item><item><title>#13 Bug in Write18FKx</title><link>https://sourceforge.net/p/openprogrammer/bugs/13/?limit=25#6ed3</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;The problem is that for an &lt;em&gt;uneven&lt;/em&gt; value of dim, the end check condition is missed and the final packet is not written.&lt;/p&gt;
&lt;p&gt;A solution may be to grow the buffer when its size is even:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;dim&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="nv"&gt;x01&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt; {
      &lt;span class="nv"&gt;memCODE&lt;/span&gt;[&lt;span class="nv"&gt;dim&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;] &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="nv"&gt;xff&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
    }

    &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;k&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="c1"&gt;; i &amp;lt; dim; i += 2) {&lt;/span&gt;
        ...
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Pascal</dc:creator><pubDate>Fri, 01 Jul 2022 12:26:24 -0000</pubDate><guid>https://sourceforge.netde41c60cac04fe98416a8974ba0c55bd68fa7be0</guid></item><item><title>Bug in Write18FKx</title><link>https://sourceforge.net/p/openprogrammer/bugs/13/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;I believe that there is a bug in function Write18FKx:&lt;/p&gt;
&lt;p&gt;void Write18FKx(int dim, int dim2, int options, int nu1, int nu2, int nu3)&lt;/p&gt;
&lt;p&gt;"op" reports programming errors, and upon closer inspection these seem to be related to "shortcuts" the function is taking by not programming 0xff bytes.&lt;/p&gt;
&lt;p&gt;This concerns programming the Q43 types:&lt;/p&gt;
&lt;p&gt;Here:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;k&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dim&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;+=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;memCODE&lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mh"&gt;0xFF&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;||&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;memCODE&lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="n"&gt;i + 1&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mh"&gt;0xFF&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;{&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;This leads to a difference between the i and k counters at the end of the write loop. If I deactivate this check, i and k are equal at the end of the loop...&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Pascal</dc:creator><pubDate>Fri, 01 Jul 2022 10:54:47 -0000</pubDate><guid>https://sourceforge.nete56741f069fe6a5c488e3dea5c1c3c2147abb7dc</guid></item><item><title>Bug in read code for new PIC18F devices</title><link>https://sourceforge.net/p/openprogrammer/bugs/12/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;There is a bug in the read code for the "new" PIC18F devices:&lt;/p&gt;
&lt;p&gt;progP18.c:1595:&lt;/p&gt;
&lt;p&gt;void Read18FKx(int dim,int dim2,int options)&lt;/p&gt;
&lt;p&gt;Here dim2 is the eeprom size in bytes.&lt;/p&gt;
&lt;p&gt;There are several bugs (I think) related to this.&lt;/p&gt;
&lt;p&gt;1) In the device table, for some devices there is a "1" for the dim2&lt;br/&gt;
value, for example here:&lt;/p&gt;
&lt;p&gt;{"18F27Q43,18F47Q43,18F57Q43",&lt;br/&gt;
PIC18,8.5,1,&lt;br/&gt;
Read18FKx,{0x20000,1,0x10},0,&lt;br/&gt;
Write18FKx, {0x20000,0x400,0x10,0,0,0},0}, //128K, 1k, --, LV&lt;/p&gt;
&lt;p&gt;The "1" for the read parameter should really be 0x400.&lt;/p&gt;
&lt;p&gt;2) when dim2==0, the read function is supposed to take the EEPROM size&lt;br/&gt;
from the device config information stored in the PIC.&lt;/p&gt;
&lt;p&gt;This is done in line 1753:&lt;/p&gt;
&lt;p&gt;if(z&amp;lt;DIMBUF-2){&lt;br/&gt;
    sizeEE=(bufferI&lt;span&gt;[z+1]&lt;/span&gt;&amp;lt;&amp;lt;8)+bufferI&lt;span&gt;[z+2]&lt;/span&gt;;&lt;br/&gt;
    PrintMessage1("EEPROM size: %d\r\n", sizeEE);&lt;br/&gt;
}&lt;/p&gt;
&lt;p&gt;But then later down in the function, tests are made checking the value&lt;br/&gt;
of dim2 (which is set to 0 for automatic detection).&lt;/p&gt;
&lt;p&gt;e.g. line 1899:&lt;/p&gt;
&lt;p&gt;//&lt;strong&gt;&lt;em&gt;*&lt;/em&gt;&lt;/strong&gt;&lt;strong&gt;&lt;em&gt;*&lt;/em&gt;&lt;/strong&gt;&lt;strong&gt;&lt;em&gt;* read eeprom &lt;/em&gt;&lt;/strong&gt;&lt;strong&gt;&lt;em&gt;*&lt;/em&gt;&lt;/strong&gt;&lt;strong&gt;&lt;em&gt;*&lt;/em&gt;&lt;/strong&gt;***&lt;br/&gt;
if(dim2){                   //EEPROM&lt;/p&gt;
&lt;p&gt;Another thing that is not nice is that "Forcing config words" is printed&lt;br/&gt;
even when no config words are specified.... But this has no functional&lt;br/&gt;
consequence and is easily fixed.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Pascal</dc:creator><pubDate>Fri, 01 Jul 2022 10:53:12 -0000</pubDate><guid>https://sourceforge.net42912afc327ab0a4c8e0b8323d9727287b64a636</guid></item></channel></rss>