FTDI Community

Please login or register.

Login with username, password and session length.
Advanced Search  

News:

Welcome to the FTDI Community!

Please read our Welcome Note

Technical Support enquires
please contact the team
@ FTDI Support


New Bridgetek Community is now open

Please note that we have created the Bridgetek Community to discuss all Bridgetek products e.g. EVE, MCU.

Please follow this link and create a new user account to get started.

Bridgetek Community

Author Topic: Issue with FT813 and 'Ft_App_LoadRawFromFile'  (Read 10913 times)

ConfusedIrishMan

  • Newbie
  • *
  • Posts: 6
    • View Profile
Issue with FT813 and 'Ft_App_LoadRawFromFile'
« on: April 13, 2019, 01:05:59 PM »

Hi,

Relative newbie to HMI and currently trying to load the  .raw data I got when converting a PNG.

I have followed AN303 and I am attempting to replicate the following on an Arduino.

"5.4 Example Code to display ‘DXT1’ image"

Code: [Select]
ft_void_t SAMAPP_GPU_DXT1()
//c0 is paris_480x272_c0.raw
//c1 is paris_480x272_c1.raw
//b0 is paris_480x272_b0.raw
//b1 is paris_480x272_b1.raw
{
  //load each .raw file into graphics RAM from directory ‘test’
  //RAM_G is starting address in graphics RAM, for example 00 0000h
  Ft_App_LoadRawFromFile("..\\..\\..\\Test\\c0.raw", RAM_G);
  Ft_App_LoadRawFromFile("..\\..\\..\\Test\\c1.raw", RAM_G + 16320);
  Ft_App_LoadRawFromFile("..\\..\\..\\Test\\b0.raw", RAM_G + 16320 * 2);
  Ft_App_LoadRawFromFile("..\\..\\..\\Test\\b1.raw", RAM_G + 16320 * 3);
Ft_App_WrCoCmd_Buffer(phost, CLEAR(1, 1, 1)); // clear screen Ft_App_WrCoCmd_Buffer(phost,COLOR_RGB(255,255,255));
  Ft_App_WrCoCmd_Buffer(phost,SAVE_CONTEXT());
  //B0&B1 Handle
  Ft_App_WrCoCmd_Buffer(phost,BITMAP_HANDLE(0));
  Ft_App_WrCoCmd_Buffer(phost,BITMAP_SOURCE(RAM_G + 16320*2));
  Ft_App_WrCoCmd_Buffer(phost,BITMAP_LAYOUT(L1, 60, 272));
  Ft_App_WrCoCmd_Buffer(phost,BITMAP_SIZE(NEAREST, BORDER, BORDER, 480, 272));
  //C0&C1 handle
  Ft_App_WrCoCmd_Buffer(phost,BITMAP_HANDLE(2));
  Ft_App_WrCoCmd_Buffer(phost,BITMAP_SOURCE(RAM_G));
  Ft_App_WrCoCmd_Buffer(phost,BITMAP_LAYOUT(RGB565, 120*2, 68));
 Ft_App_WrCoCmd_Buffer(phost,BITMAP_SIZE(NEAREST, BORDER, BORDER, 480, 272));
// start drawing bitmaps
Ft_App_WrCoCmd_Buffer(phost,BEGIN(BITMAPS));
Ft_App_WrCoCmd_Buffer(phost,BLEND_FUNC(ONE,ZERO)); Ft_App_WrCoCmd_Buffer(phost,COLOR_A(0x55)); Ft_App_WrCoCmd_Buffer(phost,VERTEX2II(0, 0, 0, 0));
Ft_App_WrCoCmd_Buffer(phost,BLEND_FUNC(ONE,ONE));
Ft_App_WrCoCmd_Buffer(phost,COLOR_A(0xAA));
Ft_App_WrCoCmd_Buffer(phost,VERTEX2II(0, 0, 0, 1));
Ft_App_WrCoCmd_Buffer(phost,COLOR_MASK(1,1,1,0));
Ft_Gpu_CoCmd_Scale(phost, 4*65536,4*65536);
Ft_Gpu_CoCmd_SetMatrix(phost);
Ft_App_WrCoCmd_Buffer(phost,BLEND_FUNC(DST_ALPHA,ZERO));
Ft_App_WrCoCmd_Buffer(phost,VERTEX2II(0, 0, 2, 1));
Ft_App_WrCoCmd_Buffer(phost,BLEND_FUNC(ONE_MINUS_DST_ALPHA,ONE));
Ft_App_WrCoCmd_Buffer(phost,VERTEX2II(0, 0, 2, 0));
Ft_App_WrCoCmd_Buffer(phost, RESTORE_CONTEXT());
Ft_App_WrCoCmd_Buffer(phost,END());
Ft_App_WrCoCmd_Buffer(phost,DISPLAY());
//swap the current display list with the new display list
Ft_Gpu_CoCmd_Swap(phost);
  //write to the FT800 FIFO command buffer - bitmap will appear after this command
  Ft_App_Flush_Co_Buffer(phost);
}

However when I try to compile the sketch I am getting

"Ft_App_LoadRawFromFile not declared in this scope" which suggests to me that the library is missing. I have checked the .h files given in the examples but can't find the FT_App commands in any.

Thanks for any help.

John
Logged

FTDI Community

  • Administrator
  • Hero Member
  • *****
  • Posts: 891
    • View Profile
Re: Issue with FT813 and 'Ft_App_LoadRawFromFile'
« Reply #1 on: April 16, 2019, 02:27:09 PM »

Hello,

The example included in AN_303 uses old source code form out main 'SampleApp', this has been updated to use the 'Gpu_Hal_WrMemFromFlash' function in place of the 'Ft_App_LoadRawFromFile'. This should be defined in the GPU_HAL.cpp file in your project:

Code: [Select]
void SAMAPP_GPU_DXT1() {
//load each .raw file into graphics RAM from directory ‘test’
//RAM_G is starting address in graphics RAM, for example 00 0000h
uint16_t imgWidth = 128, imgHeight = 128, c0_c1_width = 32, c0_c1_height = 32, c0_c1_stride = c0_c1_width * 2, b0_b1_width = imgWidth, b0_b1_height = imgHeight, b0_b1_stride = b0_b1_width/ 8, szPerFile = 2048;

#if defined(ARDUINO_PLATFORM) || defined(FT900_PLATFORM) || defined(FT93X_PLATFORM)
Gpu_Hal_WrMemFromFlash(phost, RAM_G, SAMAPP_Tomato_DXT1_C0_Data_Raw, szPerFile);
Gpu_Hal_WrMemFromFlash(phost, RAM_G + szPerFile, SAMAPP_Tomato_DXT1_C1_Data_Raw, szPerFile);
Gpu_Hal_WrMemFromFlash(phost, RAM_G + szPerFile * 2, SAMAPP_Tomato_DXT1_B0_Data_Raw, szPerFile);
Gpu_Hal_WrMemFromFlash(phost, RAM_G + szPerFile * 3, SAMAPP_Tomato_DXT1_B1_Data_Raw, szPerFile);
#endif

Gpu_CoCmd_Dlstart(phost);
App_WrCoCmd_Buffer(phost, CLEAR(1, 1, 1));
App_WrCoCmd_Buffer(phost, COLOR_RGB(255, 255, 255));

#if defined(MSVC_PLATFORM) || defined(MSVC_FT800EMU)
Gpu_Hal_WrMemFromFlash(phost, RAM_G, SAMAPP_Tomato_DXT1_C0_Data_Raw, szPerFile);
Gpu_Hal_WrMemFromFlash(phost, RAM_G + szPerFile, SAMAPP_Tomato_DXT1_C1_Data_Raw, szPerFile);
Gpu_Hal_WrMemFromFlash(phost, RAM_G + szPerFile * 2, SAMAPP_Tomato_DXT1_B0_Data_Raw, szPerFile);
Gpu_Hal_WrMemFromFlash(phost, RAM_G + szPerFile * 3, SAMAPP_Tomato_DXT1_B1_Data_Raw, szPerFile);
#endif

Gpu_CoCmd_LoadIdentity(phost);
Gpu_CoCmd_SetMatrix(phost);

App_WrCoCmd_Buffer(phost, SAVE_CONTEXT());
//B0&B1 handle
App_WrCoCmd_Buffer(phost, BITMAP_HANDLE(1));
App_WrCoCmd_Buffer(phost, BITMAP_SOURCE(RAM_G + szPerFile*2));
App_WrCoCmd_Buffer(phost, BITMAP_LAYOUT(L1, b0_b1_stride, b0_b1_height)); //L1 format stride is 1 bit per pixel
App_WrCoCmd_Buffer(phost,
BITMAP_SIZE(NEAREST, BORDER, BORDER, imgWidth, imgHeight)); //draw in full size
//C0&C1 handle
App_WrCoCmd_Buffer(phost, BITMAP_HANDLE(2));
App_WrCoCmd_Buffer(phost, BITMAP_SOURCE(RAM_G));
App_WrCoCmd_Buffer(phost, BITMAP_LAYOUT(RGB565, c0_c1_stride, c0_c1_height)); //RGB565 format stride is 2 bytes per pixel
App_WrCoCmd_Buffer(phost,
BITMAP_SIZE(NEAREST, BORDER, BORDER, imgWidth, imgHeight)); //draw in full size
// start drawing bitmaps
App_WrCoCmd_Buffer(phost, BEGIN(BITMAPS));
App_WrCoCmd_Buffer(phost, BLEND_FUNC(ONE, ZERO));
App_WrCoCmd_Buffer(phost, COLOR_A(0x55));
App_WrCoCmd_Buffer(phost, VERTEX2II(DispWidth / 2 - b0_b1_width / 2, DispHeight / 2 - b0_b1_height / 2, 1, 0));
App_WrCoCmd_Buffer(phost, BLEND_FUNC(ONE, ONE));
App_WrCoCmd_Buffer(phost, COLOR_A(0xAA));
App_WrCoCmd_Buffer(phost, VERTEX2II(DispWidth / 2 - b0_b1_width / 2, DispHeight / 2 - b0_b1_height / 2, 1, 1));
App_WrCoCmd_Buffer(phost, COLOR_MASK(1, 1, 1, 0));
Gpu_CoCmd_Scale(phost, 4 * 65536, 4 * 65536);
Gpu_CoCmd_SetMatrix(phost);
App_WrCoCmd_Buffer(phost, BLEND_FUNC(DST_ALPHA, ZERO));
App_WrCoCmd_Buffer(phost, VERTEX2II(DispWidth / 2 - b0_b1_width / 2, DispHeight / 2 - b0_b1_height / 2, 2, 1));
App_WrCoCmd_Buffer(phost, BLEND_FUNC(ONE_MINUS_DST_ALPHA, ONE));
App_WrCoCmd_Buffer(phost, VERTEX2II(DispWidth / 2 - b0_b1_width / 2, DispHeight / 2 - b0_b1_height / 2, 2, 0));
App_WrCoCmd_Buffer(phost, END());
App_WrCoCmd_Buffer(phost, RESTORE_CONTEXT());

//reset the transformation matrix because its not part of the context, RESTORE_CONTEXT() command will not revert the command.
Gpu_CoCmd_LoadIdentity(phost);
Gpu_CoCmd_SetMatrix(phost);

App_WrCoCmd_Buffer(phost, COLOR_RGB(255, 0, 0));
Gpu_CoCmd_Text(phost, (DispWidth / 2), 50, 31, OPT_CENTER, "DXT1: 8KB.");
Gpu_CoCmd_Text(phost, (DispWidth / 2), 80, 31, OPT_CENTER,
"Original: 32KB.");

App_WrCoCmd_Buffer(phost, DISPLAY());
//swap the current display list with the new display list
Gpu_CoCmd_Swap(phost);
//write to the FT800 FIFO command buffer - bitmap will appear after this command
App_Flush_Co_Buffer(phost);
Gpu_Hal_WaitCmdfifo_empty(phost);
Gpu_Hal_Sleep(3000);
}

Best Regards,
FTDI Community
Logged

ConfusedIrishMan

  • Newbie
  • *
  • Posts: 6
    • View Profile
Re: Issue with FT813 and 'Ft_App_LoadRawFromFile'
« Reply #2 on: April 19, 2019, 01:29:53 PM »

Thanks for the reply.

Still having an issue with the raw files. How are these expected to be declared? I see the comment  //load each .raw file into graphics RAM from directory ‘test’ is this still applicable?

When I try run the code I get

Code: [Select]
Arduino: 1.8.9 (Mac OS X), Board: "Arduino/Genuino Uno"

exit status 1
'SAMAPP_Tomato_DXT1_C0_Data_Raw' was not declared in this scope

Logged

FTDI Community

  • Administrator
  • Hero Member
  • *****
  • Posts: 891
    • View Profile
Re: Issue with FT813 and 'Ft_App_LoadRawFromFile'
« Reply #3 on: April 23, 2019, 10:46:10 AM »

Hello,

The function takes a data buffer, in this case declared as 'SAMAPP_Tomato_DXT1_C0_Data_Raw'.

Code: [Select]
void Gpu_Hal_WrMemFromFlash(Gpu_Hal_Context_t *host,uint32_t addr,const prog_uchar8_t *buffer, uint32_t length)
{
    uint32_t SizeTransfered = 0;     

    Gpu_Hal_StartTransfer(host, GPU_WRITE, addr);
    while (length--) {
        Gpu_Hal_Transfer8(host,pgm_read_byte_near(buffer));
        buffer++;
    }
    Gpu_Hal_EndTransfer(host);
}

In the previous example this is defined in the 'SampleApp_RawData.cpp' file.

You can have a look at the updated Arduino source code in the main SampleApp:
https://brtchip.com/wp-content/uploads/EVE_Projects/SampleApp.zip


Best Regards,
FTDI Community
Logged

ConfusedIrishMan

  • Newbie
  • *
  • Posts: 6
    • View Profile
Re: Issue with FT813 and 'Ft_App_LoadRawFromFile'
« Reply #4 on: May 02, 2019, 09:01:54 AM »

Thanks for the reply.

That example really cleared a lot of my issues up.

One issue I am still having is how to convert from png to the required .cpp code. that is shown below.

Code: [Select]
PROGMEM prog_uchar8_t SAMAPP_Tomato_DXT1_C1_Data_Raw[] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x21,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc4,0xd1,0x21,0x00,0xa3,0xe1,0xc3,0xe9,0xa3,0xe9,0x82,0xe9,0x31,0xbe,0xc3,0x00,0xc5,0xd2,0x62,0xf1,0x61,0xf1,0x00,0x00,0xf1,0xa4,0x00,0x00,0x20,0x00,0x38,0xce,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x62,0x00,0xa4,0x81,0x42,0x21,0xa3,0x39,0xe4,0x39,0xc7,0xaa,0x65,0xf2,0x44,0x3a,0x44,0x42,0xa5,0x4a,0x84,0xf1,0x07,0xf2,0x43,0x01,0x45,0x02,0xa2,0x08,0x21,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x37,0xde,0xc3,0xf1,0x20,0xe9,0x66,0xea,0x86,0xea,0x86,0xea,0x47,0xda,0x03,0x02,0x44,0x32,0x85,0x4a,0x63,0x29,0xe3,0x31,0x65,0x4a,0x65,0xfa,0x44,0x4a,0xa5,0x52,0xc5,0xc1,0x84,0xf1,0x61,0xf1,0x62,0x00,0xc3,0xf1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x81,0xf1,0xc2,0xf1,0x24,0xf2,0x66,0xea,0x29,0xeb,0x29,0xeb,0x88,0xe2,0x05,0xc2,0xa3,0x81,0x22,0x71,0xa5,0x4a,0x04,0x4a,0x81,0x10,0x62,0x29,0x62,0x29,0xe3,0x39,0xe4,0x89,0x45,0x82,0x65,0x82,0xa5,0xf1,0x44,0xe9,0x82,0xf1,0x82,0xf1,0x60,0xe9,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x81,0xf9,0xa2,0xf9,0xc2,0xf9,0x6a,0xf3,0x29,0xf3,0xac,0xf3,0x4a,0xeb,0x6a,0xeb,0x65,0x4a,0x85,0x42,0x24,0x42,0x84,0x22,0xc1,0x48,0x81,0x10,0x81,0x10,0xe2,0x30,0xc3,0x39,0x85,0x4a,0x84,0xe9,0xc6,0x4a,0xc6,0x5a,0x26,0x0b,0x86,0x91,0x60,0xf9,0x62,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x42,0x00,0x80,0xf9,0x24,0xfa,0xcc,0xf3,0xd1,0xec,0x90,0xec,0xe9,0xb2,0x03,0x3a,0x04,0x42,0xc4,0x89,0x42,0x69,0x83,0x71,0xc4,0x81,0x84,0x79,0x22,0x29,0x44,0x42,0x26,0x63,0x23,0xb9,0xe2,0xb8,0xa1,0xc0,0xc1,0xd0,0x02,0xd9,0xc6,0x52,0x01,0xe1,0xc0,0xe0,0x41,0xe9,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc2,0xf1,0x81,0xf9,0x25,0xfa,0x25,0xfa,0x29,0xf3,0x4f,0xec,0x8e,0xeb,0x03,0x3a,0xe3,0x31,0xea,0xaa,0x6b,0xeb,0x2d,0xf4,0x69,0xfb,0x08,0xfb,0xe8,0xfa,0x66,0xfa,0x05,0xfa,0x68,0x63,0x68,0x63,0xc4,0x81,0x60,0xc0,0x60,0xb0,0x60,0xc0,0x80,0xc0,0x45,0x7a,0xc0,0xd0,0x21,0xe9,0x41,0xf1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa1,0xf1,0x40,0xf9,0xa0,0xf9,0x24,0xfa,0xee,0xeb,0xd1,0xec,0xd1,0xec,0x23,0x32,0x4b,0xcb,0xc8,0xe2,0x29,0xeb,0xc8,0xf2,0xa6,0xf2,0x65,0xfa,0x25,0xfa,0xe4,0xf9,0x43,0xf1,0xc1,0xe8,0x23,0xe9,0x63,0x79,0xa1,0xb0,0x20,0xb0,0x20,0xa8,0xa0,0xb8,0xe0,0xc0,0x60,0xd0,0x81,0xd8,0x21,0xe9,0x00,0x00,0x00,0x00,0x00,0x00,0xc2,0xf1,0x40,0xf9,0x40,0xf9,0xa1,0xf9,0xe3,0xf9,0x66,0xea,0x8c,0xeb,0xac,0xd3,0xc9,0xc2,0x27,0xd2,0xc5,0xd1,0xa4,0xd9,0xa4,0xe1,0xa4,0xe9,0xa3,0xf1,0x42,0xf1,0xe2,0xe8,0xc2,0xe8,0x81,0xe0,0x20,0xc0,0x20,0xb8,0x40,0xb0,0x20,0xa8,0x20,0xa0,0x40,0xb0,0xc0,0xc0,0x00,0xc9,0x80,0xd8,0x01,0xe1,0x00,0x00,0x00,0x00,0x00,0x00,0xa1,0xf1,0x20,0xf9,0x40,0xf9,0x01,0xf1,0x25,0xea,0xa4,0xe1,0x46,0xda,0x27,0xd2,0xa5,0xc9,0x64,0xc1,0xe2,0xc0,0xe2,0xc8,0xc2,0xc8,0xc1,0xd0,0x80,0xd8,0x20,0xd8,0x20,0xd8,0x20,0xc8,0x40,0xc8,0x20,0xb8,0x20,0xa0,0x20,0xb0,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x80,0xb0,0x40,0xc0,0xc0,0xd0,0x62,0xe1,0x41,0xf1,0x00,0x00,0x00,0x00,0x81,0xf9,0x00,0xf1,0x01,0xe1,0x00,0xe1,0x01,0xe1,0x02,0xd9,0x02,0xc9,0x03,0xc1,0x61,0xb8,0x81,0xb8,0x60,0xb8,0x60,0xb8,0x60,0xb8,0x60,0xc0,0x20,0xc8,0x40,0xc8,0x40,0xc8,0x40,0xc8,0x40,0xc0,0x20,0xb0,0xc1,0xf8,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x20,0xa8,0x40,0xb0,0x40,0xc8,0x80,0xd0,0xa4,0xd9,0x61,0xe9,0x00,0x00,0x00,0x00,0x41,0xe9,0xe0,0xd8,0xc0,0xd8,0xc0,0xd8,0xa0,0xd0,0x80,0xc8,0x80,0xc0,0x60,0xb8,0x40,0xb0,0x00,0xa8,0x00,0xb0,0x20,0xb0,0x20,0xb0,0x20,0xb8,0x20,0xb8,0x20,0xb8,0x20,0xc0,0x20,0xb8,0x20,0xb8,0x20,0xb8,0x60,0xf8,0x20,0xa8,0x20,0xa0,0x40,0xa8,0x20,0xa8,0x60,0xb8,0x40,0xc0,0x60,0xc8,0x63,0xd9,0x26,0xe2,0x00,0x00,0x00,0x00,0xe0,0xd8,0xa0,0xd0,0xa0,0xd0,0xa0,0xd0,0x80,0xc0,0x60,0xb8,0x60,0xb8,0x60,0xb8,0x00,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x00,0xa8,0x20,0xb0,0x20,0xb0,0x20,0xb8,0x20,0xb8,0x20,0xb8,0x20,0xb8,0x20,0xa8,0xac,0xe3,0x20,0xa0,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x40,0xb0,0x60,0xb8,0x80,0xc8,0x01,0xd9,0x62,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x60,0xc0,0x80,0xc0,0x60,0xb8,0x60,0xb8,0x60,0xb8,0x60,0xb8,0x00,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa0,0x20,0xa8,0x20,0xa8,0x20,0xb0,0x20,0xb0,0x20,0xb0,0x20,0xb0,0x20,0xb0,0x20,0xb0,0x20,0xb0,0x20,0xb0,0x20,0xb0,0x20,0xa8,0x20,0xa8,0x40,0xa8,0x40,0xb0,0x60,0xb8,0xc0,0xd0,0xc0,0xd8,0x83,0xe1,0x00,0x00,0x00,0x00,0x21,0x00,0x40,0xb8,0x60,0xb8,0x60,0xb8,0x60,0xb8,0x60,0xb8,0x00,0xa8,0x00,0xa8,0x20,0xa8,0x20,0xa0,0x20,0xa0,0x20,0xa8,0x40,0xa8,0x20,0xb0,0x20,0xb8,0x20,0xb8,0x20,0xb0,0x20,0xb0,0x20,0xb0,0x20,0xb0,0x00,0xb8,0x60,0xb0,0x20,0xa8,0x20,0xa8,0x60,0xb8,0x60,0xb8,0x60,0xb8,0xa0,0xd0,0x41,0xe1,0x61,0xe9,0x00,0x00,0x00,0x00,0x00,0x00,0xc2,0xa0,0xa1,0xb0,0x60,0xb8,0x60,0xb8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x40,0xa8,0x20,0xb0,0x20,0xb0,0x20,0xb8,0x20,0xb8,0x20,0xb8,0x20,0xb0,0x20,0xb0,0x00,0xb8,0x40,0xb0,0x00,0xb0,0x40,0xb0,0x60,0xb8,0x40,0xb8,0x80,0xb8,0xa0,0xc8,0x00,0xd9,0x54,0xbd,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x81,0xb0,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x00,0xa8,0x20,0xb0,0x20,0xb0,0x00,0xb0,0x20,0xb8,0x00,0xb8,0x20,0xb0,0x60,0xb0,0x00,0xb0,0x60,0xb0,0x60,0xb0,0x40,0xb0,0x60,0xb8,0x60,0xb8,0x80,0xc0,0x80,0xb8,0x41,0xd9,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xa9,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x40,0xa8,0x20,0xa8,0x20,0xa8,0x40,0xb0,0x20,0xb0,0x20,0xb0,0x20,0xb0,0x20,0xb0,0x00,0xb8,0x20,0xb0,0x60,0xb8,0x40,0xb0,0x40,0xb0,0x60,0xb8,0xa0,0xc0,0xa0,0xc0,0xe6,0xb1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x54,0xbd,0x21,0x10,0x20,0x98,0x20,0x98,0x20,0x98,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x40,0xa8,0x20,0xa8,0x40,0xa8,0x20,0xa8,0x00,0xa8,0x00,0xb0,0x20,0xb0,0x40,0xa8,0x40,0xb0,0x00,0xb0,0x00,0xa8,0x40,0xa8,0x00,0xa8,0xa1,0xb0,0x80,0xb0,0x40,0xb8,0xa1,0xb8,0xa3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x28,0x20,0x98,0x20,0x90,0x20,0x90,0x20,0x98,0x20,0x98,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x20,0xa0,0x40,0xa0,0x00,0xa0,0x20,0xa8,0x20,0xa8,0x20,0xa8,0x00,0xa0,0x00,0xa8,0x20,0xa8,0x40,0xa8,0x40,0xb0,0x29,0x02,0x21,0xe1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa2,0x98,0x00,0x88,0x00,0x80,0x20,0x98,0x20,0x90,0x20,0x90,0x20,0x98,0x20,0x90,0x20,0x98,0x20,0x98,0x20,0x98,0x20,0x98,0x00,0x98,0x00,0x98,0x20,0x98,0x20,0x98,0x20,0x98,0x20,0x98,0x00,0x98,0x81,0x98,0x20,0x98,0xf0,0x33,0x41,0x00,0xcb,0x5a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xcb,0x5a,0xcb,0x5a,0x28,0x62,0x00,0x78,0x00,0x78,0x00,0x78,0x00,0x80,0x00,0x80,0x00,0x80,0x20,0x88,0x00,0x88,0x00,0x88,0x20,0x90,0x00,0x88,0x00,0x78,0x20,0x90,0x20,0x90,0x20,0x90,0x20,0x90,0x00,0x88,0x00,0x88,0x41,0x98,0xeb,0x62,0x28,0x52,0x28,0x5a,0x96,0xb5,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xcb,0x5a,0x00,0x00,0x20,0x08,0x28,0x52,0x61,0x90,0x2c,0x63,0x20,0x68,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x78,0x00,0x70,0x00,0x78,0x00,0x78,0x00,0x68,0x00,0x70,0x00,0x70,0x00,0x78,0x00,0x68,0x00,0x78,0x00,0x78,0x2c,0x5b,0x92,0x4c,0x0b,0x6b,0x2c,0x5b,0x28,0x52,0xcb,0x5a,0xcb,0x5a,0x00,0x00,0x00,0x00,0xcb,0x5a,0x28,0x5a,0x0c,0x6b,0x28,0x52,0xeb,0x62,0x0c,0x63,0xeb,0x5a,0xeb,0x52,0xe7,0x41,0x00,0x60,0x00,0x68,0x00,0x60,0x00,0x60,0x00,0x68,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x68,0x00,0x58,0x00,0x60,0x25,0x31,0x07,0x3a,0x48,0x4a,0xeb,0x5a,0x0c,0x63,0xeb,0x62,0x0b,0x53,0x28,0x5a,0xcb,0x5a,0x00,0x00,0x00,0x00,0x00,0x00,0x28,0x52,0x2c,0x5b,0xeb,0x62,0x2c,0x63,0x0c,0x63,0xaa,0x52,0xe7,0x41,0x45,0x31,0xa6,0x21,0x41,0x20,0x41,0x28,0x00,0x50,0x00,0x40,0x00,0x40,0x00,0x48,0x00,0x40,0x00,0x40,0x00,0x50,0x41,0x20,0x82,0x00,0x61,0x20,0x45,0x31,0x49,0x4a,0xeb,0x5a,0x0c,0x63,0xeb,0x62,0x28,0x52,0x28,0x5a,0xcb,0x5a,0x00,0x00,0x00,0x00,0xcb,0x5a,0x28,0x5a,0x28,0x52,0x2c,0x5b,0x4d,0x63,0xeb,0x62,0x0c,0x63,0xeb,0x5a,0xc5,0x39,0x62,0x20,0x41,0x20,0x41,0x20,0x41,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x41,0x20,0x41,0x20,0x41,0x20,0x25,0x29,0xc5,0x39,0xeb,0x5a,0xeb,0x62,0x4d,0x63,0x49,0x52,0x2c,0x6b,0x00,0x00,0xcb,0x5a,0x00,0x00,0x00,0x00,0x00,0x00,0xcb,0x5a,0x00,0x00,0x20,0x08,0xc7,0x41,0x28,0x52,0x08,0x32,0x8a,0x52,0x49,0x52,0x61,0x20,0x61,0x20,0x61,0x20,0x61,0x20,0x61,0x20,0x75,0xad,0x61,0x20,0x61,0x20,0x61,0x20,0x61,0x20,0x61,0x20,0x61,0x20,0x61,0x28,0x49,0x52,0x8a,0x52,0x29,0x52,0xc7,0x41,0x00,0x00,0x75,0xb5,0x96,0xb5,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0xcb,0x5a,0x96,0xb5,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};

Thanks in advance,
John
Logged

FTDI Community

  • Administrator
  • Hero Member
  • *****
  • Posts: 891
    • View Profile
Re: Issue with FT813 and 'Ft_App_LoadRawFromFile'
« Reply #5 on: May 02, 2019, 09:16:24 AM »

Hello,

If you open your .png file in a hex editor, this will give you the required data which can be copied into your code.

Section 7.3 in the following covers this briefly:
https://brtchip.com/wp-content/uploads/Support/Documentation/Application_Notes/ICs/EVE/BRT_AN_014_FT81X_Simple_PIC_Library_Examples.pdf

Best Regards,
FTDI Community
Logged