New Website, Screensaver, and Parsing Fun
Also of note is that the Code Cortex Screensaver has now been released. It’s fixed at 20 frames per second, and modern CPUs should easily be able to handle it (since an older CPU I was testing on was easily able to run it at more than 20 frames per second after I optimized it). The source code for it is released as a sample project with PwnIDE, and on Google Code Hosting. The video tutorial and the heavily debated speed comparison will be coming; I’ve just been side-tracked with a lot of other things. I’ve implemented and compared versions in assembly, C/C++ (both VisualC++ and GCC), and Java. The results are quite surprising, but you’ll have to wait a bit longer to see them in the videos.
I recently released what I’m calling PwnIDE 0.2.2b, with many bugs fixed from version 0.2.2. The reason that it’s not 0.2.3 is that I’ve got 2 particular requirements for 0.2.3, namely proper support for external libraries (e.g. the Windows API) and a new language data format (which shouldn’t change any functionality until 0.2.4).
To support external libraries by parsing include files for those libraries, there also needs to be support for code elements without doc comments. To support code elements without doc comments, all datatypes need to be identified before variables can be identified properly. That means the code parser needs to change significantly from it’s current single-pass approach to a multi-pass approach. Ironically, this should make initially parsing the code significantly faster, solving the long load time problem. (The reason for that has to do with the observer pattern notifying everything whenever anything is parsed in the single-pass approach.) This also gives me an excuse to organize the language handling code much better than the current all-in-one-file approach (see MASM.java). Overall, things should be much better… after a lot of work.