Mercurial > public > ostc4
view Discovery/Inc/gfx_fonts.h @ 303:90e65971f15d cleanup-4
bugfix, cleanup: simplify stopwatch logic and fix fallout
The previous 2 commits (making the depth switch between surface
and diving consistent) increased the time difference (in the
simulator) to about 4 seconds. This commit fixes this again, and
we are back at 1 sec. difference between the 2 timers (notice:
in the simulator). Still not the wanted 0 sec. difference, but
the old stopwatch logic logic was rather convoluted. Resetting to
1 second (instead of 0), and second-1 logic. Basically, this feels
like a bug fixed with a second bug on top to mask it. The code
is now much more logic and consistent (despite the fact that the
real reason for the 1 sec. difference is not yet found).
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
author | Jan Mulder <jlmulder@xs4all.nl> |
---|---|
date | Mon, 20 May 2019 12:57:31 +0200 |
parents | f2d98ad6f1be |
children | 1c95f811967c |
line wrap: on
line source
/////////////////////////////////////////////////////////////////////////////// /// -*- coding: UTF-8 -*- /// /// \file Discovery/Inc/gfx_fonts.h /// \brief Header file to control placement of font in STM32 Flash /// \author heinrichs weikamp gmbh /// \date 14-Aug-2014 /// /// $Id$ /////////////////////////////////////////////////////////////////////////////// /// \par Copyright (c) 2014-2018 Heinrichs Weikamp gmbh /// /// This program is free software: you can redistribute it and/or modify /// it under the terms of the GNU General Public License as published by /// the Free Software Foundation, either version 3 of the License, or /// (at your option) any later version. /// /// This program is distributed in the hope that it will be useful, /// but WITHOUT ANY WARRANTY; without even the implied warranty of /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the /// GNU General Public License for more details. /// /// You should have received a copy of the GNU General Public License /// along with this program. If not, see <http://www.gnu.org/licenses/>. ////////////////////////////////////////////////////////////////////////////// /* Define to prevent recursive inclusion -------------------------------------*/ #ifndef GFX_FONTS_H #define GFX_FONTS_H #include "gfx.h" // From image_heinrichs_weikamp.c enum { indexHWcolorSIZE = 256 }; // Forward declarations // // 2018-01-01 jDG: // - the exact address is fixed in linker script CPU1-F429.ld, // so that every font can be used even when not included in the actual // binary (boot-loader, fonts, or firmware). // // - Actual font data is defined by the OSTC4/FontPack project, that shall // be loaded before the firmware is executed. // // - Font directory starts at address 0x081E0000. Each header is 12 bytes. // A 0xFFFFFFFF (32 bits) marks the directory's end. // It is stored between __font_directory and __font_directory_end; // // - Font data (chars) is stored after 0x08132040 (end of font's SFirmareData). // So there is space for 0x081E0000 - 0x08132040 = ADFC0 = 694 KB of fonts. // Actual data is stored between __upper_font_data and __upper_font_data_end, // and uses 0x081b9a3a - 0x08132040 = 879FA = 542 KB. // extern const tFont Awe48; extern const tFont FontT24; extern const tFont FontT42; extern const tFont FontT48; extern const tFont FontT54; extern const tFont FontT84; extern const tFont FontT105; extern const tFont FontT144; extern const tFont Batt24; extern const tImage ImgHWcolor; extern const tImage ImgOSTC; extern const uint32_t indexHWcolor[indexHWcolorSIZE]; // Macro to store in UPPER rom font sections /* TODO: Looking at older map files the directories should be placed within the firmware memory */ /* As well as the image data => to be confirmed */ #define UPPER_FONT_DIRECTORY __attribute__ (( used, section(".upper_font_directory") )) #define UPPER_IMAGE_DIRECTORY __attribute__(( section(".lower_image_directory") )) #define UPPER_IMAGES __attribute__(( section(".lower_images") )) #endif // GFX_FONTS_H