Friday, December 18, 2015

PLL 4.5.x Reboot


Ok, got a bit of perspective and what I deludely call a stable base to work from.

1) I can compile what I am calling the 4.5.0 codebase.
- This includes the full suite of tools
- This includes the installer projects

* This will install on Windows 7 but crashes in the Player.
* Also needs two changes to the xmlConfig file to turn off the parallel port and set the refresh rate to 60.


Question.  Will this run on XP?

Virtual Machine time.  Nope. Corrupt installer.... some weird dll issue with the crap tools.

Back to the Wix installer... bah.


The next big job is trying to merge the branches to bring this compiling code up to date with the features set in the other branch without merging the unicode crap fest.

Thursday, December 17, 2015

Ghosts from the past

I have had cause to re-visit PointLightLab and I have to say that its a freakin mess.

Since I last worked on it in 2013 it has rusted pretty badly.  The versions in svn do not look right, the working directory on my hard drives are all out of whack and there was an abortive attempt to update the code to be Unicode compliant. What a mess.

I now have three different branches of the code:

The old version 4 Tag in the repo was stable when I put it in.

The version 5 branch was a never completed major upgrade.

The Unicode branch turned into a mess of epic proportions but seems to be based mostly on the version 4 codebase.

Somewhere in there is atleast two releases of partial toolsets to hack in various features for projects.

I really don't have time for this but its has fallen to me to try...

1) Get a stable code base?

Pulled the old v4 code from the repo and set it up.  Tried to compile it... needs to upgrade all the project files to VS2013.  Rejects the setup projects as expected.  Deja Vu.


2) Try compiling.  All the libraries are broken, old versions or not correctly set up in the environment variables. (This will probably bite me if I move back to the other code branch but WTF right now)

3) Update VS, libraries, tools, environment vars, project properties, third party compilers etc.  2 days later.... Found an extention that will handle the old setup project too... Awesome!  Much fiddling to get CodeSynthesis XSD working... but generally straight forward.

4) BUILT!

Insert stunned look here..... (Couple of link warnings that I have documented in the past but otherwise seems stable.)

BTW this is building win32 Debug Version against DX9 for Windows 7.  Have not tried the setup projects yet.

Swapped to the Windows XP toolchain and compiled each project.  One of the Unit Test projects is throwing a whole bunch of link errors.


Swapped to Release version and tried to build the project...

The HelpNDoc project is failing because the tool version has changed and I have not re-configured it yet.

PLLEditor is throwing a link error. WTF?
LINK : fatal error LNK1117: syntax error in option 'VERSION:4.3.0'
This is in the Linker > General > Version field.  I remember I used to have some version number in everything but its back a couple of versions of Visual Studio.  This may be a hangover from that. I have removed the number and its linking.

Link errors
1>  LINK : /LTCG specified but no code generation required; remove /LTCG from the link command line to improve linker performance
1>XMLFileLoaderBase.obj : warning LNK4248: unresolved typeref token (01000018) for 'xercesc_3_1.XMLGrammarPool'; image may not run
1>WaveFile.obj : warning LNK4248: unresolved typeref token (0100001E) for 'libSndFile.SNDFILE_tag'; image may not run

The linker throws the same two unresolved typedef errors as PLLPlayer and a flag error. /LTCG  which is link time code generation. No idea why that is set or changed from default. Set it back to inherit from solution settings and the flag error disapears.

I have previously solved the typedef errors by creating a stub typedef to shut the linker up.  Ignore for now.


The help file project is not working.  Its an old format with a configuration set up for VS2010 (I think).  Solution: Import the project from the other branch and patch it in.
No idea what the changes are at the moment.... This is generating a helpFile for v4.5.10. The rest of the project seems to be about v4.5.0.  This is not good.

Removed some trash from the project folder that was being generated by various tools or previous bad ideas.


Updated the versions of InpOut that are in the package.
http://www.highrez.co.uk/downloads/inpout32/  for the 64bit version
http://logix4u.net/parallel-port/16-inpout32dll-for-windows-982000ntxp  for the older 32bit version

Updated the target .Net version in the setup package to .NET 4.0 full profile
Updated the target prerequisites to Windows Installer v4.5. 

This means I will need to update all the stand alone pcs that I am trying to install onto... fudge!

OK found how to set the Launch Conditions with this new editor.  Fixed the warning about mismatch between the .NET installer prerequ an the Launch Condition versions.  (Dragged it all up to .NET 4.0)  I don't think it will matter except to piss off users who are still running antique configurations of XP. (Probably me...)