Hi, This is a set of files to be put at /sys/src/9/bitsy/ that includes 1) makes the sdata driver work again for pcmcia disks 2) adds two commands 'sleeping' and 'reseting' to /dev/suspend 3) adds a #y/pcmevs file useful to detect card insertions plus the suspend stuff (l.s power.c) again, because I suspect that the version I sent before was not the one working (I think suspend is already fixed at the labs and will probably be included in a future update). Regarding 1), I had to change the Devconf struct to match that used by ..../port/devsd.c and also to define fake ISAConf and pcmspecial code to get devsd compiled; this required changes in several other drivers. That's why the patch includes more files than strictly needed. Regarding 2), "echo sleeping >/dev/suspend" makes the power button cause a suspend; "echo reseting >/dev/suspend" makes the power button cause a suspend + reset-on-resume (the behaviour of the distributed bitsy source). Regarding 3), the /dev/pcmevs file is handy to fire up scripts when a pcmcia card is inserted. For example, I use this to get `startsd' executed whenever I plug my pcmcia disk in: #!/bin/rc # pcmwatch: watch for insertion events cat /dev/pcmevs | { # would read a line with "#y/pcm[01]ctl" # for each card insertion. while (slot=`{read}){ if (grep -s MK2001MPL $slot) startsd if (grep -s WaveLAN/IEEE $slot) startip } } If others find this useful, I'm willing to adapt the same code for the pc architecture, as well as the man page. BTW, perhaps the man page could be renamed pcmcia(3) for all the architectures involved. To make the example complete, here is my startsd: #!/bin/rc # startsd: start using the disk; unmount at exit to keep kfs clean echo -n 'configure #SC ata 1' >/dev/pcm0ctl >[2]/dev/null if (!test -d /dev/sdC0) bind -a '#S' /dev if (!test -e /dev/sdC0/plan9) disk/fdisk -p /dev/sdC0/data >/dev/sdC0/ctl if (!test -e /dev/sdC0/fs) disk/prep -p /dev/sdC0/plan9 >/dev/sdC0/ctl disk/kfs -f /dev/sdC0/fs window ' mount -c /srv/kfs /n/kfs ; acme ; disk/kfscmd halt' Since programs will notice broken chans, I think there's no point in card removal events, sic. My current approach is that start* scripts execute acme and after acme exits, they unmount the file systems. Any better way?