83Plus:Software:usb8x/BASIC Interface
The OpenLib( and ExecLib commands can be used to access usb8x functions from BASIC programs. Input and output is passed through a list in the Ans variable. On input, the first element of the list holds the function number of the command to execute and the remaining elements hold input values. On output, the first element holds the success/error status (where 0 is success) and the remaining elements may hold output data values. See the information page on individual functions to determine its function number and input/output values.
Note: Versions of usb8x prior to 0.10 require that the input list be seven elements long. Elements that are not part of the defined input are ignored.
Example code to quit unless a USB device is connected:
OpenLib(USBDRV8X {0 ExecLib If not(Ans(2 Return
Available Functions
0 | IsDeviceConnected | Checks if a device is connected |
1 | KillUSB | Uninitializes both USB device and usb8x driver |
2 | MouseInit | Initializes mouse driver |
3 | MouseDo | Get mouse movement/button information |
4 | GetClass | Gets class, subclass, and protocol information from device |
5 | GetIDs | Gets product and vendor IDs from device |
6 | Version | Gets usb8x version information |
7 | MSDInit | Initialize USB mass storage driver |
8 | ImportVariable | Import 8x* file in specified directory from connected USB flash drive as calculator variable in RAM/Flash |
9 | ExportVariable | Export calculator variable in RAM/Flash to connected USB flash drive in specified directory as 8x* file |
10 | KBDInit | Initialize the keyboard driver |
11 | KBDGetKey | Get a key press from the keyboard |
12 | HostInit | Initialize USB device only (for power-only devices) |