FabGL
ESP32 VGA Controller and Graphics Library
fabglconf.h
Go to the documentation of this file.
1 /*
2  Created by Fabrizio Di Vittorio (fdivitto2013@gmail.com) - <http://www.fabgl.com>
3  Copyright (c) 2019 Fabrizio Di Vittorio.
4  All rights reserved.
5 
6  This file is part of FabGL Library.
7 
8  FabGL is free software: you can redistribute it and/or modify
9  it under the terms of the GNU General Public License as published by
10  the Free Software Foundation, either version 3 of the License, or
11  (at your option) any later version.
12 
13  FabGL is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  GNU General Public License for more details.
17 
18  You should have received a copy of the GNU General Public License
19  along with FabGL. If not, see <http://www.gnu.org/licenses/>.
20  */
21 
22 
23 #pragma once
24 
25 
26 
39 #define FABGLIB_XTAL 40000000
40 
41 
43 #define FABGLIB_DEFAULT_BLINK_PERIOD_MS 500
44 
45 
47 #define FABGLIB_EXEC_QUEUE_SIZE 1024
48 
49 
51 #define FABGLIB_TERMINAL_INPUT_QUEUE_SIZE 1024
52 
53 
55 #define FABGLIB_TERMINAL_OUTPUT_QUEUE_SIZE 32
56 
57 
58 #define FABGLIB_TERMINAL_XOFF_THRESHOLD (FABGLIB_TERMINAL_INPUT_QUEUE_SIZE / 2)
59 #define FABGLIB_TERMINAL_XON_THRESHOLD (FABGLIB_TERMINAL_INPUT_QUEUE_SIZE / 4)
60 
61 
63 #define FABGLIB_CHARS_CONSUMER_TASK_STACK_SIZE 2048
64 
65 
67 #define FABGLIB_CHARS_CONSUMER_TASK_PRIORITY 5
68 
69 
71 #define FABGLIB_KEYBOARD_READER_TASK_STACK_SIZE 2048
72 
73 
75 #define FABGLIB_KEYBOARD_READER_TASK_PRIORITY 5
76 
77 
79 #define FABGLIB_SCODETOVK_TASK_STACK_SIZE 800
80 
81 
83 #define FABGLIB_SCODETOVK_TASK_PRIORITY 5
84 
85 
87 #define FABGLIB_UNDERLINE_POSITION 0
88 
89 
91 #define FABGLIB_CACHE_FONT_IN_RAM 0
92 
93 
95 #define FABGLIB_HAS_VirtualKeyO_STRING 1
96 
97 
99 #define FABGLIB_USE_APLL_AB_COEF 0
100 
101 
103 #define FABGLIB_MAX_CSI_PARAMS 12
104 
105 
107 #define FABGLIB_MAX_DCS_CONTENT 12
108 
109 
111 #define FABGLIB_VIEWPORT_MEMORY_POOL_COUNT 10
112 
113 
115 #define FABGLIB_KEYBOARD_VIRTUALKEY_QUEUE_SIZE 32
116 
117 
119 #define FABGLIB_MOUSE_EVENTS_QUEUE_SIZE 64
120 
121 
123 #define FABGLIB_EMBEDS_ADDITIONAL_FONTS 0
124 
125 
126 // debug options
127 #define FABGLIB_TERMINAL_DEBUG_REPORT_IN_CODES 0
128 #define FABGLIB_TERMINAL_DEBUG_REPORT_OUT_CODES 0
129 #define FABGLIB_TERMINAL_DEBUG_REPORT_ESC 0
130 #define FABGLIB_TERMINAL_DEBUG_REPORT_DESCS 0
131 #define FABGLIB_TERMINAL_DEBUG_REPORT_DESCSALL 0
132 #define FABGLIB_TERMINAL_DEBUG_REPORT_UNSUPPORT 1
133 
134 
135 
136 /************ Preset Resolution Modelines ************/
137 
139 #define VGA_256x192_50Hz "\"256x192@50\" 8.13 256 288 296 328 192 196 198 202 -HSync -VSync DoubleScan"
140 
142 #define VGA_320x200_75Hz "\"320x200@75Hz\" 12.93 320 352 376 408 200 208 211 229 -HSync -VSync DoubleScan"
143 
145 #define VGA_320x200_75HzRetro "\"320x200@75Hz\" 12.93 320 352 376 408 200 208 211 229 -HSync -VSync DoubleScan MultiScanBlank"
146 
148 #define QVGA_320x240_60Hz "\"320x240@60Hz\" 12.6 320 328 376 400 240 245 246 262 -HSync -VSync DoubleScan"
149 
151 #define VGA_400x300_60Hz "\"400x300@60Hz\" 20 400 420 484 528 300 300 302 314 -HSync -VSync DoubleScan"
152 
154 #define VGA_480x300_75Hz "\"480x300@75Hz\" 31.22 480 504 584 624 300 319 322 333 -HSync -VSync DoubleScan"
155 
157 #define VGA_512x384_60Hz "\"512x384@60Hz\" 32.5 512 524 592 672 384 385 388 403 -HSync -VSync DoubleScan"
158 
160 #define VGA_512x448_60Hz "\"512x448@60Hz\" 21.21 512 542 598 672 448 469 472 527 -HSync -VSync"
161 
163 #define VGA_512x512_58Hz "\"512x512@58Hz\" 21.21 512 538 594 668 512 513 516 545 -HSync -VSync"
164 
166 #define VGA_640x200_70Hz "\"640x200@70Hz\" 25.175 640 663 759 808 200 208 211 226 -HSync -VSync DoubleScan"
167 
169 #define VGA_640x200_70HzRetro "\"640x200@70Hz\" 25.175 640 663 759 808 200 208 211 226 -HSync -VSync DoubleScan MultiScanBlank"
170 
172 #define VGA_640x240_60Hz "\"640x240@60Hz\" 25.175 640 656 752 800 240 245 247 262 -HSync -VSync DoubleScan"
173 
175 #define VGA_640x350_70Hz "\"640x350@70Hz\" 25.175 640 656 752 800 350 387 389 449 -HSync -VSync"
176 
178 #define VGA_640x350_70HzAlt1 "\"640x350@70HzAlt1\" 25.175 640 658 754 808 350 387 389 449 -HSync -VSync"
179 
181 #define VESA_640x350_85Hz "\"640x350@85Hz\" 31.5 640 672 736 832 350 382 385 445 -HSync -VSync"
182 
184 #define VGA_640x382_60Hz "\"640x382@60Hz\" 40 640 672 740 840 382 385 387 397 -HSync +VSync DoubleScan"
185 
187 #define VGA_640x384_60Hz "\"640x384@60Hz\" 40 640 672 740 840 384 384 386 397 -HSync +VSync DoubleScan"
188 
190 #define VGA_640x400_70Hz "\"640x400@70Hz\" 25.175 640 656 752 800 400 412 414 449 -HSync -VSync"
191 
193 #define VGA_640x480_60Hz "\"640x480@60Hz\" 25.175 640 656 752 800 480 490 492 525 -HSync -VSync"
194 
196 #define VGA_640x480_60HzAlt1 "\"640x480@60HzAlt1\" 27.5 640 672 768 864 480 482 488 530 -HSync -VSync"
197 
199 #define VGA_640x480_60HzD "\"640x480@60HzD\" 54.00 640 688 744 900 480 480 482 500 +HSync +VSync DoubleScan"
200 
202 #define VGA_640x480_73Hz "\"640x480@73Hz\" 31.5 640 664 704 832 480 489 491 520 -HSync -VSync"
203 
205 #define VESA_640x480_75Hz "\"640x480@75Hz\" 31.5 640 656 720 840 480 481 484 500 -HSync -VSync"
206 
208 #define VESA_720x400_85Hz "\"720x400@85Hz\" 35.5 720 756 828 936 400 401 404 446 -HSync -VSync"
209 
211 #define PAL_720x576_50Hz "\"720x576@50Hz\" 27 720 732 795 864 576 581 586 625 -HSync -VSync"
212 
214 #define VESA_768x576_60Hz "\"768x576@60Hz\" 34.96 768 792 872 976 576 577 580 597 -HSync -VSync"
215 
217 #define SVGA_800x300_60Hz "\"800x300@60Hz\" 40 800 840 968 1056 300 301 303 314 -HSync -VSync DoubleScan"
218 
220 #define SVGA_800x600_56Hz "\"800x600@56Hz\" 36 800 824 896 1024 600 601 603 625 -HSync -VSync"
221 
223 #define SVGA_800x600_60Hz "\"800x600@60Hz\" 40 800 840 968 1056 600 601 605 628 -HSync -VSync"
224 
225 
226 
227