device-contract.c
device-contract.ctypedef xyw_byte (*xyw_input)(xyw_byte *data, xyw_byte addr, xyw_byte *error);
typedef void (*xyw_output)(xyw_byte *data, xyw_byte addr, xyw_byte *error);
typedef struct xyw_device
{
xyw_byte *data;
xyw_input input;
xyw_output output;
} xyw_device;