I know someone here was asking about my simpledisplay.d on 64 bit a while ago.. I don't remember who so here's a general announcement.

I got it working for at least the parts I tried (display image, get keyboard input) compiled with -m64:

https://github.com/adamdruppe/misc-stuff-including-D-programming-language-web-stuff/blob/master/simpledisplay.d

Quite a hassle, my xlib binding was apparently almost completely wrong, and it worked on 32 bit just by sheer luck. Many of the structs were the wrong sizes even there! General tip to C porters: do a static assert(S.sizeof) and make sure it matches what your C program gives. I got snagged in part here because unsigned long in X is apparently 64 bit. I thought it was the same as D's uint in all cases.

The file it also depends on color.d from the same repo. Another minor change is the key event used to take a delegate (int key){}. Now it takes (int key, bool pressed) instead. There's a static assert with a reminder message too, so just compile and if you need it, it will tell you. The (dchar){} event remains the same as before.

Been a few random bug fixes in the last few months too, timer events now work right on windows and linux is the big one that comes to mind.

Reply via email to