Subscribe

Archives

  • Categories

  • License

    Creative Commons License


    All work on this site, excepting software and unless otherwise noted, is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported License.




    Source Code!

    Well, we do call it Open Development, after all. :)

    I was recently reminded that the source code for a few of the applications hosted on this website is not yet available, something that I’ve put off for a while. The time is far overdue, and here’s a shout out to JAWS for sticking it to me. I’m releasing the source code for two projects, L’Hospital’s Rule Illustrator and APID. Although currently neither are being actively developed any longer, both are available for modification/redistribution under the GPL v2 license (which basically means, please retain author credit somewhere if you wish to redistribute any of them — and I’d love to hear how you’re using either or both).

    What follows is a brief description for each, as well as the SVN repositories and development notes for each. On Windows, you might find the TortoiseSVN client useful for checking out the source code; Linux users might prefer KSvn over the command line.

    L’Hospital’s Rule Illustrator

    infinityThis app illustrates L’Hopital’s rule, intended for Calc I students. There are two independent editions available, mostly because I wanted to learn Java/SWT at the time!

    Qt edition:
    Repository: http://svn.odevelop.com/lhospital
    Devel. notes: C++, Qt 4.2 (also imports directly into Qt Creator and compiles with 4.5)
    Platforms: Windows, Linux, possibly Mac (not tested)

    Java edition:
    Repository: http://svn.odevelop.com/jlhospital
    Devel. notes: Java, SWT, Eclipse. You’ll want to run this from the .JAR so resources are found correctly (I’ve set up the ANT build.xml with this configuration). JLHospital was my first attempt at Java and the Standard Widget Toolkit, so please forgive the hardly-object-oriented code! :)
    Platforms: Windows, Linux, possibly Mac (not tested). Requires the specific SWT native library compiled for each platform.

    lhospital

    lhospital2

    APID (Win32 API Debugger)

    APID LogoAPID is intended for a bit more advanced audience; that is, those who find delving into Assembler and low-level addressing redirection intriguing (like myself!). A relatively unstable proof-of-concept application. Please use responsibly.

    Source code repository: http://svn.odevelop.com/apid
    Devel. notes: Microsoft Assembler (MASM) v9, RadASM IDE, OllyDbg for debugging
    Platform: Windows (NT based systems only, i.e. Win. 2000 and above)

    Features I’d love to see implemented: Multi-threaded support, redirect routine using a code trampoline instead of the same offset for each call, reliability for heavily-used API (such as Send/PostMessage etc.).

    apid_launch

    apid

    Note: if you’re just interested in just trying the applications out, the release packages for both of these are available on the download page.

    If you are interested in contributing, drop me an email at cameron {at} odevelop {dot} com.

    2 Responses to “Source Code!”

    1. Jared Says:

      These are all really nice (thanks for the shoutout too). You did some good writeups. I’m just about to check out the code for APID.

    2. cameron Says:

      Cool, let me know if you have any questions on setting up the dev environment for APID (getting RadASM/MASM to play nice can be a hassle sometimes). If you download the IDE, you’ll need both the IDE pack and the programming pack (top two links) from this page: http://radasm.110mb.com/. The latter needs to be unzipped so that its masm.ini resides in the root directory of wherever you installed the former.

      Also, you can find the MASM package here: http://www.masm32.com/masmdl.htm. If you install it to c:\masm32, you shouldn’t have to tweak anything in masm.ini.

    Leave a Reply

    Spam Protection by WP-SpamFree