Short said: HELL YES! And it feels good.
I first saw the new metallic keyboards on Engadget. First, take a look at a couple of pictures.

Then run to your nearest Apple store and try to buy one before they run out of stock. Fortunately I was able to buy the last one at the end of the first delivery day. I guess those keyboards will have a certain success. Only the USB version is out in stores right now in France. The Bluetooth version looks even nicer but I’m not yet ready to get rid of the key pad.
Did I tell you that I’m a Windows guy? I’m currently using Windows XP and find it rock solid. I did not say that I’m a Windows fan but I’m not an OSX fan either. Neither Am I a Linux fan. “Fan” is a word too strong to describe what I am. I started Loving Linux in its early days but do not like what they currently offer on the desktop level. I used to setup a Linux box using floppy disks. I did that with my friends even when Linux reached 99 disks… That was a lot of fun. Fortunately someone invented CDROMs. But I’m losing myself on the road of an already very long story.
So, a long story short, I don’t like Apple’s hardware or software. I find they tend to lock the customer even more to their world then Windows is. I find they are really successful at what they are doing and selling but until now they did not get me. Not the IPod (I hate ITunes), not the IMacs (only one button on that mouse what the…), not the MacBooks (nothing that has 12”?), and so on…
Lately I was getting tired of my big Logitech Cordless MX1000 mouse+keyboard Combo, more on this in another post. I wanted something that looked more like a keyboard as I do not use all the extra keys you can find on the new keyboards.
So, I bought the keyboard and plugged it in. Wow, it get’s recognized through the default standard HID interface. “Apple Keyboard”. That’s it. It’s ready to use. But… hey, what’s going on here… The keys are all mixed up… Yep, you are reading correctly. All the keys except the special keys are working but the problem is that the keys are the same function they had, based on the original PC layout… Some keys have moved. For example #/@ is located on the top left of the keyboard, replacing the 2 key on my French keyboard. Typing # on the Apple keyboard is producing 2. This means that all the keys not at the same place then on a PC keyboard will have the PC keyboard value by default. It’s the case for all the keys at the outer edge of the keyboard and most numeric keys.
Anyway. That means a couple of things. I will have to find a way of mapping keys to others, find a way to use the special keys that have specific functions, like sound up and down and finally get access to the keys that do not seems to generate events on a PC, like the Eject key. Not very usefull, but fun.
What are my options?
1. Find a hack to make all this work
2. Find a third party Apple Keyboard driver
3. Program a HID usb filter
4. Get my hands on the Apple Keyboard driver used in Boot Camp
5. Live with it? Hum, no, not an option.
Scenario one, was the easy way. It consists of a Windows feature called Scan Code Mapper for Windows that lets you map key from one usage to another. It’s a bit painful to make all the mappings and the computer needs to restart to use the new mappings. A tool called SharpKeys can help you build the mapping with a nice GUI. The problem is that only recognized keys will work. Also it does not make the difference betwenn one keyboard and the other.
Scenario two, did not bring much. I could only find AppleK Pro that looks to be a Windows replacement driver but I don’t like web pages that do not show when they have been updated. The screenshots look nice but the page talks about © 2001-2004 and also I wanted to find a solution that would not add 50% on the total keyboard price. Maybe I'll give it a try later.
Scenario three, was fun to try. You find some info here and there but nothing very easy to use. I guess that with some more work I would have managed to build something up. The nicest sources in case you are interested are the following:
The Human Interface Device controller suite by Robert Marquardt, in Delphi.
A USB HID Sniffer.
Using Raw Input from C# to handle multiple keyboards
Making USB C# friendly
Managed Library for Nintendo's Wiimote (it’s the most up to date HID sample you can find for C#, could be adapted to Apple Keybord I guess)
Also, last but not least would be Usb Sniffer for Windows
OK, all which put together could have lead to something useful that would at the end let me use ALL the keys of the apple keyboard.
While investigating Scenario three, I was also working on Scenario four. Scenario four seemed the best option as one would find normal to get drivers for the peripheral they just bought. Did I told you that Apple locks people to what Apple decide is better for them. Why should I have troubles, if I want to use an Apple Keyboard on Windows PC? Especially when the keyboard is standard USB and has existing drivers. Why is Apple not just writing on all the peripherals they sell, that they are compatible with the Windows world? I'm sure they would sell a lot of them. My keyboard box says that it requires Mac OS X 10.4.10.
Did I understand correctly when I saw that Boot Camp has ALL the drivers for ALL the Apple peripherals to use on Windows? XP, Vista, whatever.
They have the drivers. Why not make them available for the broader crown? Do you think they did not yet think about it?
I guess they did because you can hardly make it harder then Apple did at hiding a drivers disk deep inside other stuff you don't need.
Let me just rephrase something so that it finally appears clearly on the web:
What is Apple Boot Camp? Apple Boot Camp is a CD Image that provides ALL the Apple drivers for ALL (most of) the Apple Peripherals.
More generally, you can find drivers for most of the hardware you can find in Apple computers to make them work like they should under Windows.
OK, Boot Camp also provides, among other features, a boot manager that let’s you choose between Apple OS X and Microsoft Windows at startup.
Apple says on its web site that “Boot Camp will burn a CD with all the required drivers for Windows so you don't have to scrounge around the Internet looking for them”.
Very nice. Why not put the .iso file for download directly on their web site. OK, put it besides the Boot Camp download, I understand that most of the people will use it that way.
It took me a long time to figure out how to take a look inside the Boot Camp image and even longer to get my hands on the drivers CD.
Strangely no one is sharing the Drivers Disk it on the web.
Here is how *I* did.
First, download boot camp. Latest version is still in beta despite the 1.4 number. You will get an ugly BootCamp1.4.dmg file.
.dmg? How can you use this on windows? On Apple? No problem, but I don’t have an Apple computer. I only want the keyboard.
It’s an HFS filesystem virtual disk. I first thought you could mount it on Linux like that, but no, you first have to change it to ISO or to IMG.
You could use the DMG2IMG tool, but no, it’s not working on the latest 1.4 release. Maybe it’s because that this is a compressed DMG file.
You can read many things on the web on how to convert the .dmg file to iso or img. Use MagicISO, PowerISO, UltraISO, IsoBuster. I could make work none of them. Did you?
I was so desperate I even tried to download a Mac OS X 10.x image to try to run it in VMWare… Before coming to that extremity (it’s working and I had it running some weeks ago but had no usage of it, so I deleted it) I stepped by accident on TransMac.
Go no further. TransMac is THE solution. Period.
It is commercial but has a 30 days trial. Not very intuitive at first (maybe it’s just because this is all not easy anyway) but worked like a charm at the end.
I had the solution I was looking for. Happy, happy, joy, joy.
Here are all the details:
- Open the BootCamp1.4.dmg file with Transmac. It shows you a HFS+ Volume
- Double click on it.
- Drag and drop the Install Boot Camp Assistant.mpkg to the upper windows that represent you PC file system
- Browse deep to the following directory either inside Transmac or on your computer:
Install Boot Camp Assistant.mpkg\Contents\Resources\BootCampAssistant.pkg\Contents
- Here you have a file called Archive.pax.gz making more than 300GB. This is the file we need
- Extract the file content. I used WinRar for that but 7-Zip is also able to do it and also we will need 7-Zip in just a second as the Archive.pax.gz file only contains a .pax file that is an Apple compressed archive. Use 7-Zip to extract its content
- Again browse deep inside the directory you just extracted:
Archive\Applications\Utilities\Boot Camp Assistant.app\Contents\Resources
- Here you find a new DiskImage.dmg.
Fortunately as you now know how to extract .dmg files this is just taking a couple of seconds thanks to the use of TransMac. *goshhh*. No it’s not working. TransMac says No Mac HFS volumes found. I tend to work using trial-and-error all the time.
So, I played a bit with TransMac and tried its Tools->Disk/CD/DVD Image->Expand Compressed DMG file.
- Browse to your previous DiskImage.dmg it then asks you a save location. I put in DiskImage.iso
- Save. Et voila. You have what you have been reading for on that post
- Mount the ISO file using whatever you want. I’m using the excellent Alcohol 52% Free Edition. You now have a nice Mac Drivers CD.
- I just run setup.exe and installed everything. Am I a warrior or not??? I am.
I guess that the files in x:\Drivers\Apple, AppleKeyboardInstaller.exe and BootCamp.msi are just enough. But this will be a future test.
The first file gives you the correct keyboard layout. The second gives you access to the special key, like sound, brightness and CD eject, insert.
Of course the Expose and Dashboard keys are doing nothing on my XP box.
After the setup, it asks you to restart. That’s what I did. After the restart, you have a boot camp icon in the systray and the keyboard is…
WORKING!
I’ll compare the keyboard to my Logitech keyboard in a future post.
The bootcamp tool is not very useful because most of its features crash. Except Help. Also I did not try “Restart under Mac OS”, anybody?
It’s useless, but without that the special keys do not work.
Also, a bad surprise is that I still have both keyboards plugged and that now, it is my PC keyboard that has its keys swapped to the Apple layout.
A message to the Apple guys… Can you try to make sure that when you change something on a computer, it does only apply to the peripheral it is meant to change? It's OK to have that problem when you are a poor lonesome programmer but not a big company. You do that or you change your keyboard layout
While you are at it. Could you make the Boot Camp tool work even if I do not use it on an Apple computer, so that I can get access to the keyboard options? I gues it’s there that I can change the fact that the Fn key is on by default? I don’t like to have to press Fn+F2 to rename a file.
Maybe that those minor problems will make me continue the development I started concerning the USB HID tool? Maybe later when I get more time (read, never
).
Thank for reading me trough here.
I could have just written instead:
Can I use my Apple Keyboard on a Windows PC?
Yes, just extract the Drivers Disk you can find buried inside the Boot Camp disk.
Thanks to the TransMac people. Didn’t I use that tool on my Amiga 20 years ago, is this possible?
Some more references: Apple keyboards and keyboard mapping in Windows XP. Mac OS X keyboard shortcuts.
Also some info on Wikipedia.
Do you think I could/should put the drivers online here for easy download? I own the keyboard that I bought from Apple officials. Why should it be so hard for me to get my hands on Windows drivers? I guess we could write to bootcamp@apple.com to ask them what they think. I’ll write them and let you know what they say. That makes me remember that I should install the Apple update tool found on the CD. Maybe that this way it will update my drivers without having to redo all that for the next update.
Finaly, all is there. See the keyboard mapping in Windows XP on the Apple web site. For example F14 is printScreen and alt+F14 is printScreen for the current window. Only CTRL+ALT+Suppr is missing for me. It's opening the task manager, meaning it's mapped to CTRL+Shift+Esc, any hint?
Also note that the keyboard manager does not always start automatically. You can find it here: C:\Program Files\Boot Camp\KbdMgr.exe
For the French users, the AltGr keys (~#{[|\^ @]}) are still available despite the fact that they are not printed on the keys. I wonder how the programmers working on a Mac are doing.
ps: I write this all using my new toy keyboard, I'm glad I bought it.