diff --git a/README-veserver.md b/README-veserver.md index 50dba77..e152814 100644 --- a/README-veserver.md +++ b/README-veserver.md @@ -14,6 +14,11 @@ place of the ADTPro server for this purpose. VEServer is a much smaller and simpler program, so it is easier to modify and better suited to being run as a system service. +VEServer can also support RS232 serial connections, in which case ADTPro's +`VSDRIVE.SYSTEM` should be used on the Apple II rather than `VEDRIVE.SYSTEM`. +The default mode of operation is to use ethernet. See the Command Line +Options section below for information on how to switch to serial mode. + ## Principle of Operation VEServer uses IPv6 and listens on UDP port 6502 for incoming datagrams from @@ -34,12 +39,19 @@ ProDOS 2.5 please specify the `--prodos25` flag to use the new format. ## Command Line Options -There are only a few options: +VEServer accepts the following command line options; each option has a short +form and a verbose form: - `-h`, `--help` - Display brief usage information. - `-p`, `--prodos25` - Use new ProDOS 2.5 date/time format (see above.) - - `-1 FNAME`, `--disk1=FNAME` - Specify filename for disk 1 image. - - `-2 FNAME`, `--disk2=FNAME` - Specify filename for disk 1 image. + - `-1 FNAME`, `--disk1=FNAME` - Specify filename for disk 1 image. + - `-2 FNAME`, `--disk2=FNAME` - Specify filename for disk 1 image. + - '-s', '--serial' - Use RS232 serial rather than Ethernet. + - '-b nnnnn', '--baud=nnnnn' - Specify baud rate when using serial connection. + +If the `--disk1=FNAME` or `--disk2=FNAME` options are not specified, VEServer +will fall back to using the default values hard coded at the top of the +Python script. ## Running in a Shell @@ -75,3 +87,28 @@ following command: Rather than using colour to indicate reads and writes the letter 'R' or 'W' is shown before the block number in the log. +## Working with Multiple Apple II Clients (Advanced) + +If you use `VEDRIVE.SYSTEM` on more than one Apple II machine, it is sometimes +convenient to be able to use different disk images on each machine. VEServer +offers a way to do this. + +Suppose the disk1 filename is set to `virtual-1.po` and the disk2 filename is +set to `virtual-2.po` (either using the `--disk1=FNAME` / `--disk2=FNAME` +command line parameters, or using the hard-coded default.) Further, suppose +the IP address of the Apple II client is 192.168.0.100. In this case, when +accessing drive 1, VEServer will first look for the file: + + - `virtual-1-192.168.0.100.po` + +If this is found that file will be served. If not found, VEServer will fall +back to: + + - `virtual-1.po` + +Similarly for drive 2, `virtual-2-192.168.0.100.po` will be used if it exists, +or `virtual-2.po` otherwise. + +This mechanism allows you to serve different disk images for each client, +allowing read/write access with no risk of data corruption due to simultaneous +access.