JclDebug

If you are a Delphi Programmer like me, you surely know the problem with users reporting an exception here and there but you cannot reproduce it at your place. This can get even more dramatical if such exceptions are thrown within threads as this will lead to an immediate bluescreen in Windows 9x/ME and to a “visit” by Dr. Watson in the NT-based versions of windows.

Imagine you could get a detailed error-report containing a full callstack of where the error occured combined with information about file and line-number. This report could be generated directly on the users computer and be sent to you via email or directly via the internet, using a custom procedure – even directly creating entries in the bugtracking-tool you are using.

This and more is made possible by the Project JEDI – more accuratly, the JCL-Subproject with its JclDebug-Framework. When you have completed the installation of the package, a new Menu Option called “Inser JCL Debug Data” will be added to the Project-Menu of your Delphi-IDE.

Now you add an Exception-Dialog to the Application using “File, New, Other…” followed by “Dialog, Exception Dialog”.

The newly added Form can easily be customized to your likings.

Now make a complete build. The IDE-Plugins will create a MAP-File, compress it and add it to the .EXE-File of your Project. When an Exception is thrown, the new error-dialog will be used, displaying a complete callstack with filenames and linenumbers.

I’ve created a small CGI-Script for receiving such reports and automatically filing it into my phpBugTracker (a very nice “Bugzilla-Light” written in PHP). This has already helped me to track two stupid bugs down which I was never able to reproduce on my development system.

Oh and before I forget: The whole thing can be downloaded on it’s Webpage at Sourceforge.

PostgreSQL 7.3 – it works

I’ve installed the new release of my favourite database, PostgreSQL today and I can happily announce that the upgrade from 7.2.3 went without any problems (a strange thing to announce when having my luk with software in mind ;-).

I’ve not yet had the time to check out all the wonderful new features (Schemas, Domains, a very extended ALTER TABLE and much more), but I will try it somewhere this week.

What I’ve noticed during the update: The current Webmin-Module (1.030) for administering Postgres’ users does not work with the current format of pg_hba.conf but editing the file by hand is quite straightforward – more so because of the very extensive comments in the file.

Amazing delivery times

Three days ago, I finally deceided theat I had to the the OST of my favourite Game, Xenogears. Last year, I bought the OST of Chrono Cross and FFVII through Amazon an had to wait about 3 weeks from order to delivery.

As I really like the Xenogears Soundtrack (no wonder: it’s from Yasunori Mitsuda, the same guy that created to soundtrack for Chrono Cross and Chrono Trigger) I did not want to wait this long.

So I gave Animenation a shot. I was surprised when they asked me for a photograph of my credit card for security reasons but I gave it to them anyway. They where satisfied with my picture where I blurred out the mid six digits of the number. I’ve suggested them that I would gladly provide an unaltered picture, if they would provide me with their GPG Public Key.

What was really amazing: Three days after I placed the order, a small package was on my office-desk: The delivery already arrived.

So: What took amazon 3 weeks to do, was done in 3 days by Animenation! Congratulations! I will definitly buy there again!

Fun with Linux and new Hardware

Ooops… what a delay between the last post and this one. I really should post more often or this really gets uninteresting.

However: Recently, I could not resist anymore and bought myself a new desktop PC – initially intended to use at home, but I never could get araound moving it out of the office. One of the reasons may be Richard and our common love in Unreal Tournament which ceratinly works better on a 2.5 GHz P4 with a Radeon 9700 than on my Thinkpad ;-)

Anyway: After having seen KDE 3.1rc3 using TrueType-Fonts with Font-Hinting on my Gentoo-Box at home, I finally deceided that it is time to give linux a shot on this new PC to finally use it for the daily development-work (which I did in jEdit [see below] under Windows on SAMBA-exported directories).

I mean: The time was right: ATI just released a driver for the new Radeon series and I finally wanted to give it a shot.

And I shouldn’t have.

I chose Gentoo as my distribution. One one side because I wanted to see how long the new box takes for compiling the whole stuff I need and on the other side because I really knew that every other distribution will not work as they do not let the user do enough customizing in the installation and they certainly will not recognize my new hardware.

In short: Even installing Gentoo with its always-brand-new software-packages was a time-consuming frustrating thing. Some points:

  • I used the integrated Braodcom NetXtreme Gigabit Chipset on my Asus P4PE mainboard. Unfortunatly the driver is not included in the kernel and on the gentoo-install-cd is no compiler to compile a module matching to the running kernel. My solution was using Knoppix with a /lib copied to the partition I wanted to use for Gentoo. Another one would have been trying to get the kernel-headers used to compile the gentoo-install-kernel and compile the driver on another machine.
  • 2.4.19 does not support the ICH4-integraded IDE-Controller, so I had to install 2.4.20-rc2. I was to lazy to patch in the cool Gentoo-Patches. I will not upgrade the kernel anytime soon as I will certainly forget to re-compile all the modules I had to compile in addition to the ones provided with the kernel.
  • In the first night of using emerge &lt<a lot of stuff>> without sitting in front of the monitor, emerge failed about 10 Minutes after I left when compiling PostgreSQL because of a bug in that ebuild. One night the PC run in vain.
  • The ATI-Drivers did not work for me: When Starting XFree a strange error about fglrx not containing some object-data appeared and X closed down. Possibly, the DRI-Project was of help in at least getting X to work (the current CSV-version seems to support the new Radeon-Chips) – although not very fast and without all the 3D-features I could have. As I am currently not sitting in front of the machine, I could just see X not going down but I could not check if it really works, yet.

    I’ve learned that I will *never again* install linux on anything newer than 6 months old. I really am no crack in setting up Linux and the procedure I had to go through was a pain in the ass. Many times I wanted to give up as with every problem I solved, another one arised.

    Finally, my liking for Gentoo may be another problem. Compiling everything from Source is cool, but on the other hand does not bring that much of a performance improvement and certainly takes time, even more if ebuilds marked for production use are strictly broken and do not compile. As compiling is a time consuming process, I nearly *demand* that it works without myself having to sit in front of the monitor just to fix a compile-problem here ant there as this (nearly) defeats the whole sense of using gentoo instead of LFS

    Anyway: I am looking forward to the evening when I will possibly finally be ready to start using linux productivly.

MacOS 10.2.2

MacOS X 10.2.2 has just been released. As always there is a document describing what’s changed. It’s unexplicable to me why they have not fixed the bug with Mac Mail not recognizing the IMAP-Folder-Prefix, leading to IMAP-Folders not being displayed. Apple itself suggests quite a stupid workaround: Create another dummy-accout and the folders will be displayed.

After all just setting the IMAP-Folder-Prefix in the Account-Properties to “INBOX” does help in most of the cases without having the user to create a dummy account. Anyway: This is clearly a bug and should be fixed by Apple. I don’t know why the did not.

Xenogears – Yepp. I like it

This seems to be becoming more game-centered than I intended… However:

Yesterday I did another lengthy session with Kingdom Hearts on my video-beamer and after not being able to kill the boss in Atlantica (Ursula, it’s name), remembering the frustrating hours used up for my tries to kill the fish-boss in “Zelda – Majoras Mask”, I switched my playstation off, entered the Xenogears-CD and turned it on again.

The next 7 hours where most interesting. I began playing just after Fei and his crew where shot down by Bart when fleeing from the attack against Kislev when I arrived at the Thames fleet. From there I played until the fight against bishop Stone in his gear where I screwed up and deceided that two o clock in the morning is a good time to stop playin anyway (why must this always happen to me in fights after a long cut-scene without a chance to save after having seen it? Square should consider giving the possibility to skip a scene if you at least have seen it once).

All Squaresoft RPG’s (with the exception of Kingdom Hearts) have a good deep story, but Xenogears has the best of them. I remember lively when the whole plot araund the Ethos, something the player fears for the whole game, got revealed to Billy. It’s jsut great.

If you find the game somwhere, consider buying it. It’s just great. I would even suggest you to import an americain PS just for Xenogears as the game was never released here in Europe (I’ve imported mine for CronoCross which too is great but not nearly as great as Xenogears).