Now, this would be nice interfacing-and-networking case study, if you are in the mood to undertake such a thing.

First, you have to deliver one bit of information (pressed/not pressed) your door bell button is capable of to something a bit more cerebral. Since you probably won't want to buy a dedicated digital I/O board fro one of PCs just for this, perhaps you can use one of handshaking lines on a serial or parallel port for this. If the button has only one set of contacts, you will have to isolate the 'input port' from the actual bell circuitry via a relay, optocoupler or something like that.

Next, you will have to build a piece of SW that monitors that one-bit I/O port. Probably the clenest thing would be to write a driver, but I don't know absolutely nothing about Windows device drivers, and very little about drivers elsewhere, so I would stay in userland. The problem is, I am not sure whether XP lets userland apps to access bare metal in any way. Somebody else will have to fill in here.

Assuming we found a way to let a piece of program know the state of out bell port, we have to think of a way to let your numerous devices know about is. Here we have several approaches:

We can have XP run a trivial server that will, when contacted on a specific UDP/IP or TCP/IP port say 'yes' or 'no', and devices will run programs that will poll that port and pop a message when an interesting event occurs. Of course, we can avoid polling by having a (semi-)permanent TCP connection from each 'client', but then our 'server' has to be multithreaded or spawn a process for every connection.

It can be other way around: clients run little processes listening on a port, and central XP simply broadcasts a message on that port when somebody rings.

How to write client programs is another cup of tea. I know how to do it on 'normal' OSes (Windoze or Linux, say), so empegs, presumably receivers and TiVos should not be a problem. For PDAs, it depends on OS, but I think it should be doable. Anyway, any device more exotic than, say, empeg will pose its ow challanges (in starting the client SW, handling the message display etc).

Ah, yes, there is another approach: I believe there are little boxes available (I will try and look them up) with a couple of assorted I/O ports and ethernet, running a rudimentary web server. That eliminates XP device drivers problem, and the rest is similar.

All in all, nice excercise! Good luck!
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue