Merge branch 'master' of https://bitbucket.org/Tectu/ugfx
This commit is contained in:
commit
aa601cb875
5 changed files with 56 additions and 40 deletions
64
gfx.h
64
gfx.h
|
@ -38,19 +38,6 @@
|
|||
#define TRUE -1
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Mark a function as deprecated.
|
||||
*/
|
||||
#ifndef DEPRECATED
|
||||
#if defined(__GNUC__) || defined(__MINGW32_) || defined(__CYGWIN__)
|
||||
#define DEPRECATED(msg) __attribute__((deprecated(msg)))
|
||||
#elif defined(_MSC_VER)
|
||||
#define DEPRECATED(msg) __declspec(deprecated(msg))
|
||||
#else
|
||||
#define DEPRECATED(msg)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* gfxconf.h is the user's project configuration for the GFX system. */
|
||||
#include "gfxconf.h"
|
||||
|
||||
|
@ -277,7 +264,12 @@
|
|||
|
||||
/** @} */
|
||||
|
||||
/* Try to auto-detect some stuff from the compiler itself */
|
||||
/* Set some defaults */
|
||||
#if GFX_NO_INLINE
|
||||
#define GFXINLINE
|
||||
#endif
|
||||
|
||||
/* Try to auto-detect the compiler */
|
||||
#if GFX_COMPILER == GFX_COMPILER_UNKNOWN
|
||||
#undef GFX_COMPILER
|
||||
#if defined(__MINGW32__)
|
||||
|
@ -348,6 +340,28 @@
|
|||
#define GFX_COMPILER GFX_COMPILER_UNKNOWN
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Compiler specific defines */
|
||||
#if GFX_COMPILER == GFX_COMPILER_KEIL
|
||||
#define DEPRECATED(msg) __attribute__((deprecated(msg)))
|
||||
#pragma anon_unions // Allow anonymous unions
|
||||
#pragma diag_remark 1293 // Turn off warning: assignment in condition
|
||||
#pragma diag_remark 83 // Turn off warning: type qualifier specified more than once
|
||||
#pragma diag_remark 767 // Turn off warning: conversion from pointer to smaller integer
|
||||
#pragma diag_remark 188 // Turn off warning: enumerated type mixed with another type
|
||||
#ifndef GFXINLINE // Get the Keil definition for inline
|
||||
#define GFXINLINE __inline
|
||||
#endif
|
||||
#if !defined(__BIG_ENDIAN) && !defined(__LITTLE_ENDIAN) // Oops - Keil defines __BIG_ENDIAN or nothing
|
||||
#define __LITTLE_ENDIAN
|
||||
#endif
|
||||
#elif GFX_COMPILER == GFX_COMPILER_MINGW32 || GFX_COMPILER == GFX_COMPILER_MINGW64 || GFX_COMPILER == GFX_COMPILER_CYGWIN || GFX_COMPILER == GFX_COMPILER_GCC
|
||||
#define DEPRECATED(msg) __attribute__((deprecated(msg)))
|
||||
#elif GFX_COMPILER == GFX_COMPILER_VS
|
||||
#define DEPRECATED(msg) __declspec(deprecated(msg))
|
||||
#endif
|
||||
|
||||
/* Try to auto-detect the cpu */
|
||||
#if GFX_CPU == GFX_CPU_UNKNOWN
|
||||
#undef GFX_CPU
|
||||
#if defined(__ia64) || defined(__itanium__) || defined(_M_IA64)
|
||||
|
@ -368,6 +382,8 @@
|
|||
#define GFX_CPU GFX_CPU_UNKNOWN
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Try to auto-detect the endianness */
|
||||
#if GFX_CPU_ENDIAN == GFX_CPU_ENDIAN_UNKNOWN
|
||||
#undef GFX_CPU_ENDIAN
|
||||
#if (defined(__BYTE_ORDER__)&&(__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)) \
|
||||
|
@ -389,14 +405,18 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if GFX_NO_INLINE
|
||||
#define GFXINLINE
|
||||
#else
|
||||
#if GFX_COMPILER == GFX_COMPILER_KEIL
|
||||
#define GFXINLINE __inline
|
||||
#else
|
||||
#define GFXINLINE inline
|
||||
#endif
|
||||
/**
|
||||
* @brief Mark a function as deprecated.
|
||||
*/
|
||||
#ifndef DEPRECATED
|
||||
#define DEPRECATED(msg)
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Mark a function as inline.
|
||||
*/
|
||||
#ifndef GFXINLINE
|
||||
#define GFXINLINE inline
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
|
|
@ -209,7 +209,7 @@ void gdispImageFree(gdispImage *img, void *ptr, size_t sz) {
|
|||
we.w = w;
|
||||
return (((uint16_t)we.b[0]))|(((uint16_t)we.b[1]) << 8);
|
||||
}
|
||||
uint16_t gdispImageH16toBE16(uint16_t dw) {
|
||||
uint16_t gdispImageH16toBE16(uint16_t w) {
|
||||
union wbyteorder_u we;
|
||||
|
||||
we.w = w;
|
||||
|
|
|
@ -32,16 +32,16 @@
|
|||
* There is no alignment requirement.
|
||||
*/
|
||||
#if GFX_CPU_ENDIAN == GFX_CPU_ENDIAN_LITTLE && GFX_CPU_NO_ALIGNMENT_FAULTS
|
||||
#define gidspImageGetLE16(p, idx) gdispImageGetVar(uint16_t, (p), (idx))
|
||||
#define gidspImageGetLE32(p, idx) gdispImageGetVar(uint32_t, (p), (idx))
|
||||
#define gdispImageGetLE16(p, idx) gdispImageGetVar(uint16_t, (p), (idx))
|
||||
#define gdispImageGetLE32(p, idx) gdispImageGetVar(uint32_t, (p), (idx))
|
||||
#else
|
||||
#define gdispImageGetLE16(p, idx) ( gdispImageGetByte(uint16_t, (p), (idx) , 0) | gdispImageGetByte(uint16_t, (p), (idx)+1, 8))
|
||||
#define gdispImageGetLE32(p, idx) ( gdispImageGetByte(uint32_t, (p), (idx) , 0) | gdispImageGetByte(uint32_t, (p), (idx)+1, 8)\
|
||||
|gdispImageGetByte(uint32_t, (p), (idx)+2, 16) | gdispImageGetByte(uint32_t, (p), (idx)+3, 24))
|
||||
#endif
|
||||
#if GFX_CPU_ENDIAN == GFX_CPU_ENDIAN_BIG && GFX_CPU_NO_ALIGNMENT_FAULTS
|
||||
#define gidspImageGetBE16(p, idx) gdispImageGetVar(uint16_t, (p), (idx))
|
||||
#define gidspImageGetBE32(p, idx) gdispImageGetVar(uint32_t, (p), (idx))
|
||||
#define gdispImageGetBE16(p, idx) gdispImageGetVar(uint16_t, (p), (idx))
|
||||
#define gdispImageGetBE32(p, idx) gdispImageGetVar(uint32_t, (p), (idx))
|
||||
#else
|
||||
#define gdispImageGetBE16(p, idx) ( gdispImageGetByte(uint16_t, (p), (idx) , 8) | gdispImageGetByte(uint16_t, (p), (idx)+1, 0))
|
||||
#define gdispImageGetBE32(p, idx) ( gdispImageGetByte(uint32_t, (p), (idx) , 24) | gdispImageGetByte(uint32_t, (p), (idx)+1, 16)\
|
||||
|
@ -54,19 +54,19 @@
|
|||
*/
|
||||
#if GFX_CPU_ENDIAN == GFX_CPU_ENDIAN_LITTLE
|
||||
#define gdispImageGetAlignedLE16(p, idx) gdispImageGetVar(uint16_t, (p), (idx))
|
||||
#define gdispImageGetAlignedBE16(p, idx) gidspImageGetBE16(p, (idx))
|
||||
#define gdispImageGetAlignedBE16(p, idx) gdispImageGetBE16(p, (idx))
|
||||
#define gdispImageGetAlignedLE32(p, idx) gdispImageGetVar(uint32_t, (p), (idx))
|
||||
#define gdispImageGetAlignedBE32(p, idx) gidspImageGetBE32(p, (idx))
|
||||
#define gdispImageGetAlignedBE32(p, idx) gdispImageGetBE32(p, (idx))
|
||||
#elif GFX_CPU_ENDIAN == GFX_CPU_ENDIAN_BIG
|
||||
#define gdispImageGetAlignedLE16(p, idx) gidspImageGetLE16(p, (idx))
|
||||
#define gdispImageGetAlignedLE16(p, idx) gdispImageGetLE16(p, (idx))
|
||||
#define gdispImageGetAlignedBE16(p, idx) gdispImageGetVar(uint16_t, (p), (idx))
|
||||
#define gdispImageGetAlignedLE32(p, idx) gidspImageGetLE32(p, (idx))
|
||||
#define gdispImageGetAlignedLE32(p, idx) gdispImageGetLE32(p, (idx))
|
||||
#define gdispImageGetAlignedBE32(p, idx) gdispImageGetVar(uint32_t, (p), (idx))
|
||||
#else
|
||||
#define gdispImageGetAlignedLE16(p, idx) gidspImageGetLE16(p, (idx))
|
||||
#define gdispImageGetAlignedBE16(p, idx) gidspImageGetBE16(p, (idx))
|
||||
#define gdispImageGetAlignedLE32(p, idx) gidspImageGetLE32(p, (idx))
|
||||
#define gdispImageGetAlignedBE32(p, idx) gidspImageGetBE32(p, (idx))
|
||||
#define gdispImageGetAlignedLE16(p, idx) gdispImageGetLE16(p, (idx))
|
||||
#define gdispImageGetAlignedBE16(p, idx) gdispImageGetBE16(p, (idx))
|
||||
#define gdispImageGetAlignedLE32(p, idx) gdispImageGetLE32(p, (idx))
|
||||
#define gdispImageGetAlignedBE32(p, idx) gdispImageGetBE32(p, (idx))
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
|
|
@ -76,7 +76,7 @@ typedef int32_t fixed;
|
|||
* @brief The famous number pi
|
||||
*/
|
||||
#ifndef PI
|
||||
#define PI 3.1415926535897932384626433832795028841971693993751
|
||||
#define PI 3.1415926535897932384626433832795028841971693993751
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
|
|
@ -23,10 +23,6 @@
|
|||
|
||||
#if GFX_USE_GWIN || defined(__DOXYGEN__)
|
||||
|
||||
#if GFX_COMPILER == GFX_COMPILER_KEIL
|
||||
#pragma anon_unions
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief The predefined flags for a Window
|
||||
* @{
|
||||
|
|
Loading…
Add table
Reference in a new issue