Ancient Domains Of Mystery (ADOM)

Mac Migration, part I

November 17th, 2009 · 3 Comments

Tonight I tried to migrate JADE from developing on my trusty nice Windows notebook to my shiny and fine Macbook. Here’s the summary.

Eclipse is as stupid as usual. I went for installing Subclipse and at first didn’t install the optional SVN Client Kit… which immediately caused errors when trying to connect to an SVN repository. Thanks Subclipse :-^And SVN repository browsing still forces me to input an URL by hand… thanks again for the modern UI. Stupid me choosing Subclipse because some blogs mentioned that it has a better UI compared to Subversive. Probably if you love the command line.

The Mac Java implementation obviously works differently than the Windows version. Keyboard input in JADE no longer works on the map (but on all input screens). On the input screens there is a problem with cursor rendering which seems to be caused by some wrong offset. In contrast on the map the block cursor mode does not work.And the monospace fonts are really ugly… sometimes almost unreadable.

Which makes me wonder if the Mac port will cause all kinds of pain while trying to keep it compatible to the Windows port. And I didn’t even mention the Linux port. So much for write once, run anywhere. But who am I to complain? Java was my choice and I know the Swing pain since 1998. I just had hoped that things might have improved a bit more.

Ok, so much for a cynical evening report… I yet have to decide if I want to fix the keyboard problems first, take care of the cursor mess or just try to get JADE started as an Applet.I’ll finish for today because I now have some trouble merging some sources from Windows that where not yet checked in with the checked in sources… don’t ask. I guess I have to make a new attempt… *sigh*

And I just noticed that Safari seems to swallow all line breaks in my Wordpress version… *double-sigh* Maybe I’ll immediately give up the thought to develop JADE on a Mac… so much pain in so little time… and I didn’t even mention the lack of my preferred shareware tools.

Categories: JADETags: · · ·

3 responses so far ↓

  • 1 Al-Khwarizmi // Nov 17, 2009 at 11:36 am

    Wow, you must be using lots of low-level code there.

    I regularly write UIs in Java, and the “Write Once Run Anywhere” thing works pretty much as advertised for me. The only problem I’ve had in recent years was with a threading bug that would cause an UI to crash in Linux and not in Windows, due to the OS’s executing threads in a different order for some reason. But it was a bug in my code, anyway.

  • 2 admin // Nov 18, 2009 at 12:41 pm

    Yes. Basically I have written my own Curses (e.g. terminal) emulation to be able to work nicely with ASCII graphics :-)

    And that uses a JPanel (or several) and e.g. get a blinking cursor like I want it to be (with switchable block mode, etc.) I wrote my own code. I always wanted to investigate what Swing is offering in that regard but so far didn’t get around to do it.

    And my map drawing code also is hand-written in order to faciliate other “graphic modes” (e.g. you can define new ASCII tiles, exchange them and might even be able to insert simple graphics if someone feels like drawing them - although the latter feature is completely untested and probably doesn’t work out of the box).

    While doing all that I probably got some font measurements incorrect and some offsets might be wrong. Happened a couple of times and it seems that the Mac handles these values differently.

  • 3 admin // Nov 18, 2009 at 12:42 pm

    To add that: I probably should not be complaining about Swing… I just was in a bad mood. It’s highly likely that the problems arise from my incorrect usage of Swing.

    Sorry, Swing team ;-)

You must log in to post a comment.