|
From: Frans S. <fra...@gm...> - 2010-03-02 12:10:34
|
Hi Francesco,
On Tue, 2010-03-02 at 01:05 +0100, Francesco wrote:
> Hi,
> I've pushed a few other commits which
> 1) adds debug precompiled binaries to the win\deps folder, so that
> testing & debugging the Windows port of upp should now be easier (by
> building upp_wx using the "Static Debug" configuration of MSVC project
> files);
Looks good.
> 2) introduces some done-by-hand changes in uppmainwindow_base.cpp
> which theorically is wxFormBuilder-generated; this fixes a resizing
> problem I noticed since a long time ago ;)
Nice, but it doesn't compile against wxWidgets 2.9.0. Are you using the
trunk again?
>
> I've also uploaded the r836 releases on the usbpicprog server but
> unfortunately I had few time to test them... anyway hopefully we
> should be very near to perfection now :)
> Tomorrow I'll test these releases on my virtualized WinXP and I'll try
> to get my hands on a copy of Windows Vista (thanks MSDNAA!) to test
> the installation on that OS, too.
>
> Francesco
>
>
> 2010/3/1 Francesco <f18...@ya...>:
> > Hi Frans,
> >
> > 2010/3/1 Frans Schreuder <fra...@gm...>:
> >> I found a problem in the usbpicprog windows version which seemed to
> >> exist since we moved to libusb-1.0.
> >> The problem was that 3 bytes of data were added to every data package
> >> while programming. I first thought this might be a problem with
> >> libusb-1.0-win32, but it is a difference between mingw and msvc. (I also
> >> moved from mingw to msvc 2008 at the same time).
> > ouch. Unfortunately I didn't have time to effectively test the
> > programmed PICs in a real circuits recently so I didn't notice this
> > problem! (I just trusted UPP when it was saying that the programming
> > was successful).
> >
> >> The difference is the way this union was being handled:
> >>
> >> 146typedef union
> >> 147{
> >> 148 struct
> >> 149 {
> >> 150 unsigned cmd:8; /// One of the CMD_ defines above
> >> 151 unsigned size:8; /// Size of the datafield
> >> 152 unsigned addrU:8; /// The address is devided in 3 bytes, Upper, High and Low
> >> 153 unsigned addrH:8;
> >> 154 unsigned addrL:8;
> >> 155 unsigned blocktype:8; /// The blocktype can be middle, first or last (or first|last)
> >> 156 unsigned char dataField[32];
> >> 157 } fields;
> >> 158 unsigned char data[38];
> >> 159} UppPackage;
> >>
> >> msvc added 3 bytes between blocktype and dataField in data[],
> > maybe this is because of some required data alignment?
> > I think there exist flags which force MSVC to avoid stuffing
> > additional bytes in a structure but I'd need to look how they can be
> > used...
> >
> >> so I changed it into
> >>
> >> 144typedef enum
> >> 145{
> >> 146 up_cmd,
> >> 147 up_size,
> >> 148 up_addrL,
> >> 149 up_addrH,
> >> 150 up_addrU,
> >> 151 up_blocktype,
> >> 152 up_data
> >> 153}UPP_INDEX;
> >> 154/**
> >> 155 UppPackage is the data header which is sent to the programmer hardware.
> >> 156*/
> >> 157typedef struct
> >> 158{
> >> 159 /*struct
> >> 160 {
> >> 161 unsigned cmd:8; /// One of the CMD_ defines above
> >> 162 unsigned size:8; /// Size of the datafield
> >> 163 unsigned addrU:8; /// The address is devided in 3 bytes, Upper, High and Low
> >> 164 unsigned addrH:8;
> >> 165 unsigned addrL:8;
> >> 166 unsigned blocktype:8; /// The blocktype can be middle, first or last (or first|last)
> >> 167 unsigned char dataField[32];
> >> 168 } fields;*/
> >> 169 unsigned char data[38];
> >> 170} UppPackage;
> > this has the drawback that basically UppPackage is seen by the
> > compiler as a homogeneous set of bytes; i.e. basically UppPackage is
> > an untyped array.
> > This theorically makes easier to write bugs in the code, even if I see
> > that the modifications in hardware.cpp are fairly straightforward...
> >
> >> Also the libusb-1.0 without pthread is out now, so I updated the x86 dll in svn.
> > hmmm, I already updated the win\deps stuff in r832 with the new libusb
> > without pthread dependency (and in fact I removed pthread.lib/dll from
> > the repo).
> > I see that the libusb-1.0.dll that you committed is 599kbytes while
> > the one I had built was 135 kbytes. Perhaps did you build it in debug
> > mode?
> > All other deps I placed in win\deps are built in release mode because
> > that's the cfg to use when producing final releases for the end user
> > (I wrote something about the build mode used for all deps in
> > http://usbpicprog.svn.sourceforge.net/viewvc/usbpicprog/trunk/upp_wx/win/deps/info.txt?revision=815&view=markup).
> > Anyway it would be important to avoid mixing different flags (like
> > e.g. /MD or /MT or those regarding optimization or debug infos) in the
> > precompiled binaries which we provide.
> > Maybe we should have win\deps\release and win\deps\debug folders
> > containing the x86 and amd64 precompiled binaries to make it easier
> > also the development process instead of only the release process...
> >
> >> Francesco, could you build version 834 adm64 with the new libusb-1.0?
> > sure. I'll do it this evening as soon as I get back home and upload
> > the result on the server.
> >
> > Francesco
> >
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Usbpicprog-technical mailing list
> Usb...@li...
> https://lists.sourceforge.net/lists/listinfo/usbpicprog-technical
|