News‎ > ‎

PICEDIT and Java

posted 31 Oct 2010, 13:32 by Lance Ewing
I haven't really followed much of what has happened in the AGI community over the past decade but in the last week I've been looking back over the comments various people have made about PICEDIT at different times. I've decided to add some of these comments to the bottom of my PICEDIT page for a laugh. I think the AGI community was quite divided over their thoughts regarding PICEDIT. I think you either loved it or you hated it.

Thinking back though, PICEDIT is probably the only lasting contribution I made to the AGI community. I know I released the first version of the AGI specs, which I guess is still very useful, but as far as AGI utilities go, everything else I wrote is probably a long time extinct. Reading back over those comments about PICEDIT made me realise that there were a lot of people asking for new features or for a Windows version. Once upon a time (back in 1999) I did begin working on version 1.3 written in C that was using the Allegro library and would have been a lot more Windows friendly. It was still a full screen non-Windows application but compiled under and written for a Windows friendly compiler (DJGPP) and API (Allegro). I've lost that version of PICEDIT now. I never really finished it. A part of me still wants to continue development on PICEDIT even though it isn't needed by the AGI community due to there being other nicer Windows and Linux alternatives. A part of me wants to continue development on it just for my own sense of having resurrected the application. But even though I have the original C source code, I'm not a C developer anymore...   and besides, I think if I was a C developer I'd probably take one look at the code and fall over from shock. The code really was quite bad, written by an amateur with no commercial experience and very little formal training in C.

For the past 13 years I've been a Java developer. That is what my career is and that is what I know really well. The C programming language is something I'm glad I left behind me a long time ago. 

I guess you have all guessed where this is leading. If I'm going to resurrect PICEDIT then it will be as a Java application. Once again this is probably something that will completely divide the AGI community. There will be those that love Java because it runs on every platform you can think of, making it instantly accessible to Linux, Mac and Windows. On the other hand there will be those that will frown on the need to download and install the Java Runtime Environment in order to run the application. For me that isn't an issue because every PC I've ever worked on over the past 13 years has had Java on it. 

There will also be those that don't like the idea of having standalone AGI utilities anymore since we now have full IDEs/studios that give us everything in one go. I guess I like the idea of having alternatives, which is what this really is. No one is asking for a Java version of PICEDIT but I'd like to give it a go anyway. I'll keep you posted with progress. And who knows, being Java I will probably end up putting it on this web site as an applet.

For now though, here is a screen shot of where I'm up to:

  • Basic interface is drawn.
  • Status line updates with tool selection, mouse position, priority band, and  visual and priority colours.
  • Tool selection and colours selection is implemented.
As you can see I've called this version 1.2.1. The idea is that I'm going to convert the whole application mostly as-is over to Java. The end result will be almost identical to the original version. Any differences will be where I've added some minor features that seemed easy enough to add at the time, but for the most part it will be identical. I am deliberately not using Windows style components because one thing that I personally like about PICEDIT is that it looked like the original AGI games and it looked like the original Sierra editors. If you run PICEDIT next to one of the old AGI games using something like DOSBOX then you can see a lot of similarities.

Once I've finished the conversion to Java, I'll have a starting point at which I can begin to add new and more complex features.