Attached to this email is yet another updated patch that provides a partial implementation of play-sound-internal (the :device argument is ignored and the :data argument is not supported). I have incorporated into it all the suggestions that were made since the previous patch I submitted. I have tested this patch under Windows XP using MSVC 6.0 and MinGW 2.0 and under GNU/Linux. Also, I have tested the system caret support for Windows using the screen reader, JAWS, that my company develops. It works great! For the first time JAWS really works well with emacs. I want to thank everyone who worked on this feature. NOTE: When I first tried to build with MinGW, I tried using CygWin Bash as my shell. When I did this, I received the same encoded-kb error I have seen several people mention. When I used rxvt.exe from MSYS-1.0.8-rc-1 as my shell, I did not get this error. As a general rule, I have found that if you are getting a weird error while building the lisp directory, you need to try using a different shell.