Make your Apple Aluminium Keyboard really work under Linux, X.org

Like many others, I've bought an Aluminium Keyboard for its cool style the smooth typing experience it provides. Mine is a wired version, ISO variant (international, 110-keys). It's not working 100% out-of-the-box under Linux, so this post explains what I did to make it happen:

  • Supporting the additional keys (F13..F19) and geometry (physical layout) under X.org

  • Making the keyboard auto-configured at X.org startup. No need to mess with xorg.conf!

But wait, there's more. If you're accustomed to PC keyboards, you really need those ones too:

  • Making this fn key located on top of the delete key behave like a regular PC keyboard: Insert!

  • Making multimedia keys output Fxx symbols by default

  • Making F13..F15 behave like those charmingly obsolete Scroll Lock..Print Screen keys

  • Keeping the multimedia keys accessible when the fn key is remapped to Insert

Read more…

Hello MikMod!

As promised earlier, I've packaged an obligatory example of how to use the iPhone port of libmikmod which I've talked about recently. Go grab this tarball which implements a very simple "Hello World!":

  • It shows how to play a module within a UIKit application. This is an adaptation of the skeleton program found in MikMod Documentation.

  • It shows how to use the higher level sound API Celestial to control mikmod output. For instance, how to react to volume change events when iPhone buttons are pressed.

Read more…

MikMod library ported to iPhone

I've always been a big fan of old skool computer music, like chiptunes or demoscene music. Perhaps because they remind me the Good Old Days (tm) of my Amiga. Or perhaps for the same reason I like demoscene: real-time computer art! Because it's definitely cool, I've decided to port MikMod to the iPhone! We'll see later if it might be useful to someone else :)

Read more…

Hello World!

I'm opening this blog to share my bits of code, hacks or thoughts I have during the time I spend in front of my computer. That will be a great occasion for me to retrieve all the goodies laying in my attic and that I should take the time to package cleanly! Moreover, that will be a good way of talking about the cool things I work on nowadays... Okay, I know... it sounds so vague... but hey, it's only a Hello World after all :)