Vault 7: Projects
This publication series is about specific projects related to the Vault 7 main publication.
• Added dsPIC33EPXXX device family support.
• Added S1D13522 EPD Controller Driver.
• Added E-Paper Epson Demo.
• Added Alpha-Blend support for Bar() function.
• Graphics Resource Converter (GRC) now allows for padding and non-padding bitmap images. Bitmap images are
padded which means that each horizontal line will start on a byte boundary. The option has been added to allow for
conversion of bitmap resources to be non-padded which allows the least resource space and controllers with windowing
that auto increments to use them.
• For XC16 or C30 builds, internal fonts can now be placed program memory. If the font data or a combination of font data
resources exceed the 32 Kbyte limit of the data memory space, a define, USE_GFX_FONT_IN_PROGRAM_SECTION
should be defined in graphics configuration header. This will place the font resource data in program memory space.
Changes:
• Graphics Object Demo now uses images that are RLE compressed.
• Address range check for GFX_EPMP_CS1_MEMORY_SIZE and GFX_EPMP_CS2_MEMORY_SIZE in Graphics Module
in PIC24FJ256DA210 Display Driver file (mchpGfxDrv.c) is modified for strict checks of allocated address pins for the
EPMP. See "Migration Changes" below for the address lines needed to be allocated.
• Swapped the bit orientation for the 1 BPP bitmap images. The previous versions of the library expects the left most pixel
at the MSBit. This has been changed so the the left most pixel is located at the LSBit. The change was made to
accommodate controllers that have windowing. This also makes the pixel orientation consistent with the pixel orientation
of 4bpp images.
Fixes:
• Fix FillBevel() & FillCircle() to avoid rendering lines more than once.
Deprecated Items: The following Resistive Touch Screen macro names are replaced for readability and flexibility if use:
• TRIS_XPOS - replaced by ResistiveTouchScreen_XPlus_Config_As_Input()
• TRIS_YPOS - replaced by ResistiveTouchScreen_YPlus_Config_As_Input()
• TRIS_XNEG - replaced by ResistiveTouchScreen_XMinus_Config_As_Input()
• TRIS_YNEG - replaced by ResistiveTouchScreen_YMinus_Config_As_Output()
• LAT_XPOS - replaced by ResistiveTouchScreen_XPlus_Drive_High()
• LATS_YPOS - replaced by ResistiveTouchScreen_YPlus_Drive_High()
• LAT_XNEG - replaced by ResistiveTouchScreen_XMinus_Drive_Low()
• LAT_YNEG - replaced by ResistiveTouchScreen_YMinus_Drive_Low()
Migration Changes:
• To use the new Resistive Touchscreen macros, replace the TouchScreenResistive.c file with the version in this release.
Then replace the hardware profile macros to use the new macro names. Existing hardware profile can still be used but
build warnings will appear.
• If custom display driver is used and the PutImage() functions are implemented for faster rendering, the new partial image
rendering feature requires these PutImage() functions to be modified. See PutImagePartial() API description and
implementation in Primitive.c for details.
• Address range check for GFX_EPMP_CS1_MEMORY_SIZE and GFX_EPMP_CS2_MEMORY_SIZE that are defined in
hardware profile are modified when using the Graphics Module in PIC24FJ256DA210 Device and using external memory
for display buffer, the driver file (mchpGfxDrv.c). This check allocates address pins for the EPMP. Modify the
GFX_EPMP_CS1_MEMORY_SIZE and GFX_EPMP_CS2_MEMORY_SIZE values set in the hardware profile to match
the table shown below:
EPMP Memory Size EPMP Address Lines
GFX_EPMP_CSx_MEMORY_SIZE <= 0x20000 (bytes) Use PMA[15:0]
0x20000 (bytes) < GFX_EPMP_CSx_MEMORY_SIZE <= 0x40000(bytes) Use PMA[16:0]
0x40000 (bytes) < GFX_EPMP_CSx_MEMORY_SIZE <= 0x80000(bytes) Use PMA[17:0]
1.3 Release Notes MLA - Graphics Library Help
27
Protego_Release_01_05-Related-OEM-Documentation-MLA_v2013_12_20-help_mla_gfx.pdf