20010131: V1.002 released. Now supports Quake3 IP settings and works with programs that return to the slave.
First, download the IP upload slave and burn it onto a CD-R using the instructions available elsewhere. Then boot the DC from this CD-R. You should get an orange screen displaying your ethernet address and IP address and hostname (if set). If you instead get back to the main menu after the SEGA logo, check that your Broadband Adapter is properly installed.
If you have configured a static IP number in your broadband browser, the IP upload slave should be able to find and use this number. If not, the slave will not know its own IP number. DHCP is not supported. However, not knowing its own IP number will only affect the slaves ability to identify itself via ARP. If you add the Dreamcast's MAC address (displayed at the top of the screen) to your computers address resolution table manually, you can upload to the IP slave even if it doesn't have any idea about its IP address.
To make the slave run a program, connect to TCP port 4711 on the Dreamcast, and write an ELF binary. When the socket is closed, the program will be started if received correctly. To abort an upload, just close the socket before the entire binary is sent.
Currently, only ELF32 little endian (elf32-shl) is supported. If there is great demand for COFF, that could probably be added...