diff -r 631f53604811 -r e6c42e1e2a96 test.cpp --- a/test.cpp Wed May 21 10:19:22 2014 +0200 +++ b/test.cpp Wed May 21 16:11:09 2014 +0200 @@ -574,6 +574,12 @@ } /** +Set the defined pixel block to the given value. +@param X coordinate of our pixel block starting point. +@param Y coordinate of our pixel block starting point. +@param The height of our pixel block. +@param The size of our pixel data. Number of pixels divided by 8. +@param The value set to 8 pixels. */ void MainWindow::SetPixelBlock(int aX, int aY, int aHeight, int aSize, unsigned char aValue) { @@ -594,6 +600,30 @@ int res = hid_write(connected_device, iOutputReportBuffer, KFutabaOutputReportLength); } +/** +Send an output report to a Futaba VFD device. +*/ +/* +void MainWindow::SendFutabaOutputReport(unsigned char* aReportData, unsigned char aSize) + { + // + memset(iOutputReportBuffer, 0x0, KFutabaOutputReportLength); + iOutputReportBuffer[0]=0x00; //Report ID is always null + iOutputReportBuffer[1]=0x08+aSize; //Report length + iOutputReportBuffer[2]=0x1B; // + iOutputReportBuffer[3]=0x5B; // + iOutputReportBuffer[4]=0xF0; // + iOutputReportBuffer[5]=aX; //X + iOutputReportBuffer[6]=aY; //Y + iOutputReportBuffer[7]=aHeight; //Y length before return. Though outside the specs, setting this to zero apparently allows us to modify a single pixel without touching any other. + iOutputReportBuffer[8]=0x00; //Size of pixel data in bytes (MSB) + iOutputReportBuffer[9]=aSize; //Size of pixel data in bytes (LSB) + memset(iOutputReportBuffer+10, aValue, KFutabaOutputReportLength); + //iOutputReportBuffer[10]=aValue; //Pixel data + int res = hid_write(connected_device, iOutputReportBuffer, KFutabaOutputReportLength); + } +*/ + /** */