gplink is a gp32 linking tool for linux. It should also be possible to compile it for any platform supported by libusb, though some endian stuff probably needs fixing for non x86 architectures. Requirements: Set up usbdevfs: http://www.linux-usb.org/USB-guide/x173.html When you plug in and switch on your gp32 you should see an extra entry appear under /proc/bus/usb// Permissions: For gplink to be able to access the usb bus you need to either: a) set permissions on usbdevfs to 0666 using an fstab entry like: none /proc/bus/usb usbdevfs devmode=0666 0 0 b) use gplink as root, or c) use something like linux hotplug (http://linux-hotplug.sourceforge.net) to manage the permissions. A statically linked binary for linux is included in the archive. To build gplink requires libusb (http://libusb.sourceforge.net). usage: gplink [-lchx] command arguments gplink info get smc info gplink ids get ids (pduid etc) gplink ls [directory name] smc directory listing -l print file sizes gplink get source [destination dir] download file -r download files recursively gplink put file [file...] destination upload file(s) to given destination -c do 8.3 filename conversion gplink install file.fpk install fpk archive gplink mkdir path create directory gplink rmdir path delete directory gplink rm file delete file gplink run file run .gxb or .fxe file (requires pc-link/multi-fw) options: -h print numbers in human readable format -x end link mode after operation Paths can be specified in either /gpmm/blah.fxe or gp:\gpmm\blah.fxe format, but remember to escape backslashes if you use them. Error recovery isn't too good yet. If an operation doesn't work you might have to switch your gp32 off and on for the link command to start working again.