Brian, any advice or pointers on how to start my own GPS program but use as much of your code as possible? Is it possible to fork certain files in your project so that bug fixes make their way over?
Hmmm, that is really tough since once you fork the code and then you make changes its really hard to align the different changes because all the code becomes very quickly different. Just think of all the changes from update to update! So i think the auto kinda thing is completely out.
The other option of course is to start out your application very very basic. Single serial in for GPS and decode nmea. Single OpenGL window for displaying the map. Basic information displayed on the screen etc. and just the basic buttons. Then, you add stuff. Carefully look at how AgOpenGPS does it, the algorithms used, how it works and copy and place as much code as possible into your application. Or just take the framework idea and build upon it using your own variables. The second method you will learn a lot more and be more comfortable with it.
The most important part is that YOU know how it all works.
Right now i'm working on the ITEC Pro version. A lot of code changes in a lot of places because things like ITEC now need to control functions that were never controlled before. But, if you understand the concept of how ITEC works, and tricks that i will use - then its "easy" to add those ideas.
Shoot, C# is so nice to use and winforms are quite intuitive. You'll be surprised how easy it is to quickly put together an application. When i come up with a new feature it takes 80% of the time researching how the he11 it can even be done. 15% researching the math behind it, 5% actually coding the idea.
So look at it this way, without writing a single line of code - you are 95% of the way there by having an open source app to give you a start. Go for it - Lots of help around if you get stuck.