Windows NT Utilities ---------------------------------------------------------------------------- * Swapping CapsLock and Left-Control. Many people coming from the Unix world, particularly heavy Emacs users, are unhappy with the placement of CapsLock and Control on PC keyboards. I have created three keyboard layout files for Windows NT. For Unix X users, look here. * A US English layout with CapsLock changed to be Control * A US English layout with CapsLock and Control swapped. * A US Dvorak layout with CapsLock change to be Control To use one, pick up the U.S. keyboard distribution * swapcapslock.zip and follow the instructions for NT 4.0 or the instructions for NT 3.5. * For a U.K. version of the DLL that was provided by Charles Reindorf, get kbduksw1.dll. * For doing this on Windows 95, check the utility swap95capslock.zip created by Mark Russinovich. If you are looking for a CapsLock switcher that will work for any keyboard layouts, check the work done by Mark Russinovich and Bryce Cogswell at www.ntinternals.com. The site has some very useful utilities including a CapsLock switcher. ---------------------------------------------------------------------------- * Expect for Windows NT ---------------------------------------------------------------------------- * SSH and SCP for Windows NT (command line only version) I've done a port of ssh and scp to Windows NT. SSH is the Secure Shell, and it basically lets you do secure logins to Unix machines. I created is so that I could securely use remote CVS source code repositories. This also required a small patch to cvs-1.9.10. Here is a binary version of the patched cvs. If you want to use ssh with cvs, you'll need to set the CVS_RSH environment variable to the pathname of ssh.exe. The FAQ has lots more information about ssh. Since I live in the United States, I am a munitions dealer if I export this software. If you live outside the U.S., I can only provide a patch to the source code since this includes no cryptographic code. The patch is against the ssh-1.2.14 distribution. However, Jonathan Chen kindly applied my patch to the distribution and created binaries, and you can find the binaries at ssh-1.2.14-win32bin.zip. This version is not a full terminal. It allows you to run commands such as ssh remote_machine -l chaffee ls, and it even lets you log into other machines interactively, but it gives you only dumb terminal capabilities. You'll need to create a c:\ssh\etc directory to keep your ssh_config, ssh_host_key, and ssh_host_key.pub in. You need to generate the keys on your Unix box with ssh-keygen as I haven't fixed it yet. It does get compiled, but it doesn't work. Next, make sure your HOME environment variable is set. This can be done via the Control Panel->System. Finally, create a %HOME%\.ssh directory like you would under Unix. Put your identity and identity.pub files that and whatever other ones you might use. With that, things should work. If you make a copy of ssh.exe to sshc.exe, it will automatically run with compression on. I find this useful when running with cvs. ---------------------------------------------------------------------------- * SU command for Windows NT Binary Source Code README For people coming from the Unix world, this command needs no explanation. For non-Unix people, su allows you to run a shell as a different user on the same desktop that you are logged in. This can be very useful if you need to do something as Administrator and you don't want to logout. Credit for this utility goes to David Wihl and Steffen Krause. ---------------------------------------------------------------------------- DDK Work Source Code (Utilities and Drivers) skel.tar.gz This is a PCI skeleton driver that can map PCI memory into user space. skel_pci_dma.tar.gz This is a PCI skeleton driver that can map PCI memory into user space. It also has code to do busmaster DMA transfers. loaddrv.tar.gz This is Paula Thomlinson's utility from the May 95 issue of Windows/DOS magazine. It is used to dynamically load and unload NT device drivers. moveatboot.tar.gz A utilty that moves files on reboot. This can be helpful if you need to replace a system DLL that is normally always in use. Use with the -f option to forcibly overwrite an existing file. All rename operations should end up in the registry under HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\ FileRenameOperations in case you need to stop a rename from occurring. ---------------------------------------------------------------------------- Back to Gordon's Home Page.