Virtual H89 Computer USB/Serial Device by Norberto Collado

This device is a virtualization of Norberto Collado's H89 USB/Serial modern add-on to H89 computers. This add-on is of interest because it connects an H89 to a modern host computer, and is essentially a point-to-point network. With CP/Net running on the H89 and appropriate software running on the host (e.g. HostFileBdos) it would provide an easy way to exchange files between an H89 and the modern world. Having a virtual implementation of the hardware allowed development and testing of a CP/Net SNIOS module without requiring real hardware.

The device takes over the H89 Modem serial port address, and adds two standard H89 serial ports for LinePrinter and Auxiliary. It cannot be used with other devices that supply serial ports, although if the virtual H89 discovers it before, say, the MMS 77320 then it should work fine. This requires using a lower numbered slot for the USB/Serial card than for the MMS 77320. The MMS 77320 may also be specified with the "ns" option which disable its serial ports and allows another board to supply serial ports.

This device is configured as a CP/Net Device, and shares much of the configuration method with CPNetDevice, although the property prefix will be "ft245rdevice_" instead of "cpnetdevice_". Properties for HostFileBdos are the same in either case.

slot_p504, slot_p505, slot_p506
Any of these slots may be used to specify the USB/Serial interface using the value "H89USBSERIAL".
The program to attach to the other end of the USB serial connection.

This device is based on the FT245R USB chip, hence the property names.

To use this device, something must be attached to the "other end". In real hardware, some program would be running on the host computer and be attached to the tty device (serial port) associated with the USB. The JAVA application CpnetSerialServer.jar is designed to do that, using the "tty=" argument to select a tty device. This may also be set to "stdio" for use in the virtual H89, where the "ft245rdevice_att=ProgramSerial..." property is used to invoke it.

Typical usage for Virtual H89 would be:

The config file ("rc") contains properties to setup the client as well as known servers. Typically, server 00 will be a local HostFileBdos server. Property prefix is "cpnet_". This would include a property "cpnet_tty=stdio", which is required to make it function properly in this environment.

For real hardware, this program would be invoked something like:

And the "rc" file would contain (e.g. on Linux) a property "cpnet_tty=/dev/ttyUSBX" (where 'X' is replaced by the appropriate index for the associated tty device). TBD: do baud, or other serial parameters, need to be specified.

Any use of CpnetSerialServer requires that the RXTX JAVA extension be installed, even if it is only used with "tty=stdio".

Accessible servers are setup using "cpnet_server##" properties, as described for Virtual CP/Net Device.