1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/notrynohigh-BabyOS

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
arm_2d_cfg.h 6.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
notrynohigh Отправлено 2 лет назад 1b027e8
/*
* Copyright (c) 2009-2022 Arm Limited. All rights reserved.
*
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the License); you may
* not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef __ARM_2D_USER_CFG_H__
#define __ARM_2D_USER_CFG_H__
/*============================ INCLUDES ======================================*/
#include "b_config.h"
#if (defined(_GUI_RGB_888) && (_GUI_RGB_888 == 1))
#define __GLCD_CFG_COLOUR_DEPTH__ 32
#elif (defined(_GUI_RGB_565) && (_GUI_RGB_565 == 1))
#define __GLCD_CFG_COLOUR_DEPTH__ 16
#else
#define __GLCD_CFG_COLOUR_DEPTH__ 8
#endif
#if (defined(__LCD_PRINT_ENABLE) && (__LCD_PRINT_ENABLE == 1))
#define __RTE_ACCELERATION_ARM_2D_EXTRA_LCD_PRINTF__ 1
#endif
#define RTE_Acceleration_Arm_2D_Helper_Disp_Adapter0
//-------- <<< Use Configuration Wizard in Context Menu >>> -----------------
//
// <h>Arm-2D General Configurations
// =======================
//
// <q>Enable Asynchronous Programmers' model support
// <i> Note that if you don't have any hardware accelerator, disable this feature can reduce code
// size and gain a small performance uplift. <i> This feature is enabled by default.
#ifndef __ARM_2D_HAS_ASYNC__
#define __ARM_2D_HAS_ASYNC__ 0
#endif
// <q>Enable anti-alias support for all tranform operations.
// <i> Note that enabling this feature suffers a non-negligible performance drop.
// <i> This feature is disabled by default.
#ifndef __ARM_2D_HAS_ANTI_ALIAS_TRANSFORM__
#define __ARM_2D_HAS_ANTI_ALIAS_TRANSFORM__ 1
#endif
// <q>Enable support for accessing individual colour channels
// <i> Note that enabling this feature will add the support for a special colour type:
// ARM_2D_CHANNEL_8in32 <i> This feature is disabled by default to save code size
#ifndef __ARM_2D_CFG_SUPPORT_COLOUR_CHANNEL_ACCESS__
#define __ARM_2D_CFG_SUPPORT_COLOUR_CHANNEL_ACCESS__ 1
#endif
// </h>
// <h>Patches for improving performance
// =======================
//
// <c1> Do NOT treat alpha value 255 as completely opaque in mask related operations
// <i> When define this macro, alpha value 0xFF will not be treated as opaque in mask related
// operations and you can barely see the background. Defining this macro improves performance.
// #define __ARM_2D_CFG_UNSAFE_IGNORE_ALPHA_255_COMPENSATION__
// </c>
// <c1> Ignore calibrartion for small angles in transform operations
// <i> This option is used to speed up M-cores without DSP support. It skips saturation in the
// QADD/QDADD/QDSUB involved in the rotation. The chances of overflow remain low as elements
// involved are using non-accumulating Q15.16 format and integer parts are in the range of the
// screen size providing enough margin.
// #define __ARM_2D_CFG_UNSAFE_IGNORE_CALIB_IN_TRANSFORM__
// </c>
// <c1> Ignore satuation protection in fixed-point operations
// <i> This option is used to remove calibration in angle computations to gain a better performance,
// small error might be noticible for angles like 90, 180, 270 etc.
// #define __ARM_2D_CFG_UNSAFE_NO_SATURATION_IN_FIXED_POINT__
// </c>
// <q> Optimize the scaler version of transform operations for pointer-like resources
// <i> This feature is enabled by default. There is no guarantee that the performance will increase
// or decrease. It is all depends your applications. In most of the case, enabling it helps. <i>
// This feature has no meaning when the anti-alias transform is disabled or the helium acceleration
// is available.
#ifndef __ARM_2D_CFG_OPTIMIZE_FOR_POINTER_LIKE_SHAPES_IN_TRANSFORM__
#define __ARM_2D_CFG_OPTIMIZE_FOR_POINTER_LIKE_SHAPES_IN_TRANSFORM__ 1
#endif
// </h>
// <h>Extra Components
// =======================
//
#ifndef __GLCD_CFG_COLOUR_DEPTH__
// <o __GLCD_CFG_COLOUR_DEPTH__> Select the screen colour depth
// <8=> 8 Bits
// <16=> 16Bits
// <32=> 32Bits
// <i> The colour depth of your LCD
// <i> Default: 16
#define __GLCD_CFG_COLOUR_DEPTH__ 16
#endif
// <o> The size of the LCD printf text buffer <16-65535>
// <i> The text buffer size for the lcd printf service. It determins how many character you can use
// in one printf string.
#ifndef __LCD_PRINTF_CFG_TEXT_BUFFER_SIZE__
#define __LCD_PRINTF_CFG_TEXT_BUFFER_SIZE__ 64
#endif
// <h>Benchmark
// <o>Width of the screen <8-32767>
// <i> The width of your screen for running benchmark
// <i> Default: 320
#ifndef __GLCD_CFG_SCEEN_WIDTH__
#define __GLCD_CFG_SCEEN_WIDTH__ 240
#endif
// <o>Height of the screen <8-32767>
// <i> The height of your screen for running benchmark
// <i> Default: 240
#ifndef __GLCD_CFG_SCEEN_HEIGHT__
#define __GLCD_CFG_SCEEN_HEIGHT__ 320
#endif
// <o>Number of iterations <1-2000>
// <i> run number of iterations in arm-2d benchmark before calculating the result.
#ifndef ITERATION_CNT
#define ITERATION_CNT 1000
#endif
// <q>Use Tiny mode to run benchmark
// <i> Enable this mode to reduce the benchmark memory footprint (removing background picture etc.)
// <i> This feature is disabled by default.
#ifndef __ARM_2D_CFG_BENCHMARK_TINY_MODE__
#define __ARM_2D_CFG_BENCHMARK_TINY_MODE__ 0
#endif
// <q> Enable Stopwatch mode in the Benchmark:Watch-panel
// <i> Only update the second-hand (i.e. red pointer) every second in the watch-panel demo
// <i> This feature is disabled by default.
#ifndef __ARM_2D_CFG_WATCH_PANEL_STOPWATCH_MODE__
#define __ARM_2D_CFG_WATCH_PANEL_STOPWATCH_MODE__ 0
#endif
// <q> Enable the nebula effect mode in the Benchmark:Watch-panel
// <i> This feature is disabled by default and it is only available in the Tiny mode.
#ifndef __ARM_2D_CFG_BENCHMARK_WATCH_PANEL_USE_NEBULA__
#define __ARM_2D_CFG_BENCHMARK_WATCH_PANEL_USE_NEBULA__ 0
#endif
// <q> Exit benchmark when finished
// <i> Exit the arm_2d_run_benchmark() after running specified iterations
// <i> This feature is disabled by default.
#ifndef __ARM_2D_CFG_BENCHMARK_EXIT_WHEN_FINISH__
#define __ARM_2D_CFG_BENCHMARK_EXIT_WHEN_FINISH__ 0
#endif
//</h>
// </h>
// <<< end of configuration section >>>
/*============================ TYPES =========================================*/
/*============================ GLOBAL VARIABLES ==============================*/
/*============================ LOCAL VARIABLES ===============================*/
/*============================ PROTOTYPES ====================================*/
#ifdef __cplusplus
}
#endif
#endif

Комментарий ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://gitlife.ru/oschina-mirror/notrynohigh-BabyOS.git
git@gitlife.ru:oschina-mirror/notrynohigh-BabyOS.git
oschina-mirror
notrynohigh-BabyOS
notrynohigh-BabyOS
master