Commit 77e1bebb authored by Vincent Wei's avatar Vincent Wei

tune words for MiniGUI 4.0.4 (dri -> drm)

parent 228264b1
......@@ -252,7 +252,7 @@ in order to support [HybridOS Foundation Class Library].
to support the input events from devices other than standard mouse
and keyboard. We call these messages as 'extra input messages'.
* The NEWGAL engine of `dri` to support modern DRI/DRM-driven graphics cards
* The NEWGAL engine of `drm` to support modern DRI/DRM-driven graphics cards
or GPUs on Linux.
* The IAL engine of `libinput` to support all modern input devices including
......
......@@ -9,18 +9,18 @@ We maintains the documents for MiniGUI Core and MiniGUI components in this repos
- [MiniGUI Programming Guide](programming-guide/README.md)
- [MiniGUI Supplementary Documents](supplementary-docs/README.md)
- API Reference Manuals for MiniGUI Core
* [MiniGUI 4.0 API Reference (MiniGUI-Processes mode)](http://www.minigui.com/doc-api-ref-minigui-procs-4.0.0/html/index.html) - The API reference for MiniGUI V4.0 multi-process runmode.
* [MiniGUI 4.0 API Reference (MiniGUI-Threads mode)](http://www.minigui.com/doc-api-ref-minigui-ths-4.0.0/html/index.html) - The API reference for MiniGUI V4.0 multi-thread runmode.
* [MiniGUI 4.0 API Reference (MiniGUI-Standalone mode)](http://www.minigui.com/doc-api-ref-minigui-sa-4.0.0/html/index.html) - The API reference for MiniGUI V4.0 standalone runmode.
* [MiniGUI 4.0 API Reference (MiniGUI-Processes mode)](http://www.minigui.com/doc-api-ref-minigui-procs-4.0.4/html/index.html) - The API reference for MiniGUI V4.0 multi-process runmode.
* [MiniGUI 4.0 API Reference (MiniGUI-Threads mode)](http://www.minigui.com/doc-api-ref-minigui-ths-4.0.4/html/index.html) - The API reference for MiniGUI V4.0 multi-thread runmode.
* [MiniGUI 4.0 API Reference (MiniGUI-Standalone mode)](http://www.minigui.com/doc-api-ref-minigui-sa-4.0.4/html/index.html) - The API reference for MiniGUI V4.0 standalone runmode.
* [MiniGUI 3.2 API Reference (MiniGUI-Processes mode)](http://www.minigui.com/api_ref/minigui-3.2.0/procs/index.html) - The API reference for MiniGUI V3.2 multi-process runmode.
* [MiniGUI 3.2 API Reference (MiniGUI-Threads mode)](http://www.minigui.com/api_ref/minigui-3.2.0/ths/index.html) - The API reference for MiniGUI V3.2 multi-thread runmode.
* [MiniGUI 3.2 API Reference (MiniGUI-Standalone mode)](http://www.minigui.com/api_ref/minigui-3.2.0/sa/index.html) - The API reference for MiniGUI V3.2 standalone runmode.
- API Reference for MiniGUI Components
* [mGUtils 1.2 API Reference](http://www.minigui.com/doc-api-ref-mgutils-1.2.2/html/index.html) - The API reference for mGUtils V1.2.
* [mGPlus 1.4 API Reference](http://www.minigui.com/doc-api-ref-mgplus-1.4.0/html/index.html) - The API reference for mGUtils V1.4.
* [mGEff 1.2 API Reference](http://www.minigui.com/doc-api-ref-mgeff-1.2.2/html/index.html) - The API reference for mGEff V1.2.
* [mGNCS 1.2 API Reference](http://www.minigui.com/doc-api-ref-mgncs-1.2.4/html/index.html) - The API reference for mGNCS V1.2.
* [mGNCS4Touch 1.2 API Reference](http://www.minigui.com/doc-api-ref-mgncs4touch-1.2.2/html/index.html) - The API reference for mGNCS4Touch V1.2.
* [mGPlus 1.4 API Reference](http://www.minigui.com/doc-api-ref-mgplus-1.4.2/html/index.html) - The API reference for mGUtils V1.4.
* [mGEff 1.2 API Reference](http://www.minigui.com/doc-api-ref-mgeff-1.2.3/html/index.html) - The API reference for mGEff V1.2.
* [mGNCS 1.2 API Reference](http://www.minigui.com/doc-api-ref-mgncs-1.2.5/html/index.html) - The API reference for mGNCS V1.2.
* [mGNCS4Touch 1.2 API Reference](http://www.minigui.com/doc-api-ref-mgncs4touch-1.2.4/html/index.html) - The API reference for mGNCS4Touch V1.2.
- Links to Release Notes
* [MiniGUI Core](https://github.com/VincentWei/minigui/blob/master/RELEASE-NOTES.md)
* [mGUtils](https://github.com/VincentWei/mgutils/blob/master/RELEASE-NOTES.md)
......@@ -64,6 +64,9 @@ We hope that we can finish this work at the end of the year 2019.
### ChangeLog
- 2019-12-24
Tune for MiniGUI version 4.0.4.
- 2019-10-30
MiniGUI Programming Guide is ready.
......
......@@ -1146,7 +1146,7 @@ in non-GNU environment; we do not repeat them here.
[Using Enhanced Font Interfaces]: /supplementary-docs/Using-Enhanced-Font-Interfaces.md
[Using Images and Fonts on System without File System]: /supplementary-docs/Using-Images-and-Fonts-on-System-without-File-System.md
[Using SyncUpdateDC to Reduce Screen Flicker]: /supplementary-docs/Using-SyncUpdateDC-to-Reduce-Screen-Flicker.md
[Writing DRI Engine Driver for Your GPU]: /supplementary-docs/Writing-DRI-Engine-Driver-for-Your-GPU.md
[Writing DRM Engine Driver for Your GPU]: /supplementary-docs/Writing-DRM-Engine-Driver-for-Your-GPU.md
[Writing MiniGUI Apps for 64-bit Platforms]: /supplementary-docs/Writing-MiniGUI-Apps-for-64-bit-Platforms.md
[MiniGUI User Manual]: /user-manual/README.md
......
......@@ -91,12 +91,12 @@ of MiniGUI core. Instead, you implement the engines outside the MiniGUI
Core by defining some external functions. In this way, we reduce the
amount of work required to port MiniGUI to a new target board.
Since MiniGUI 4.0.0, the NEWGAL engine `dri` for Linux also supports
Since MiniGUI 4.0.0, the NEWGAL engine `drm` for Linux also supports
the target name `external`. So you can implement the sub-driver of
`dri` engine outside MiniGUI Core. For more information, please refer to:
- [Using CommLCD NEWGAL Engine and Comm IAL Engine]
- [Writing DRI Engine Driver for Your GPU]
- [Writing DRM Engine Driver for Your GPU]
The following table lists the options and macros related to
various target boards.
......@@ -163,7 +163,7 @@ so we can see the MiniGUI screens in the window. This engine is
helpful for developing MiniGUI apps on Linux or MS Windows.
- `FBCon`: A `NEWGAL` engine uses Linux frame buffer device driver
(`/dev/fb`).
- `DRI` (Since MiniGUI 4.0): A `NEWGAL` engine uses Linux DRI/DRM
- `DRM` (Since MiniGUI 4.0): A `NEWGAL` engine uses Linux DRM (Direct Rendering Manager)
to support modern graphics devices with 2D/3D hardware acceleration.
- `CommLCD`: A simple `NEWGAL` engine to support LCD without hardware
acceleration. We often use this engine on traditional real-time
......@@ -180,11 +180,11 @@ The table below lists the common `NEWGAL` engines.
| ---------------|------------------|-------------|----------|---------
| `videodummy` | `_MGGAL_DUMMY` | `dummy` | Enabled | All operating system
| `videopcxvfb` | `_MGGAL_PCXVFB` | `pc_xvfb` | Enabled | Linux/Windows PC; The universal virtual buffer engine
| `videodri` | `_MGGAL_DRI` | `dri` | Enabled | Linux
| `videofbcon` | `_MGGAL_FBCON` | `fbcon` | Enabled | Linux/uClinux
| `videodrm` | `_MGGAL_DRM` | `drm` | Enabled | Linux
| `videofbcon` | `_MGGAL_FBCON` | `fbcon` | Enabled | Linux/uClinux (Disabled by default since 4.0.4)
| `videocommlcd` | `_MGGAL_COMMLCD` | `commlcd` | Disabled | All operating system
| `videoshadow` | `_MGGAL_SHADOW` | `shadow` | Disabled | All operating system, but only for MiniGUI-Threads and MiniGUI-Standalone runtime modes
| `videodfb` | `_MGGAL_DFB` | `dfb` | Disabled | Run MiniGUI on DirectFB on Linux; Deprecated, use DRI instead
| `videodfb` | `_MGGAL_DFB` | `dfb` | Disabled | Run MiniGUI on DirectFB on Linux; Deprecated, use DRM instead
| `videoqvfb` | `_MGGAL_QVFB` | `qvfb` | Disabled | Linux PC; The virtual buffer engine for QVFB; Deprecated
| `videowvfb` | `_MGGAL_WVFB` | `wvfb` | Disabled | Win32; virtual buffer graphics engine for Win32; Deprecated
......@@ -876,7 +876,7 @@ However, for MiniGUI components, you use the default options in most cases.
[Using Enhanced Font Interfaces]: /supplementary-docs/Using-Enhanced-Font-Interfaces.md
[Using Images and Fonts on System without File System]: /supplementary-docs/Using-Images-and-Fonts-on-System-without-File-System.md
[Using SyncUpdateDC to Reduce Screen Flicker]: /supplementary-docs/Using-SyncUpdateDC-to-Reduce-Screen-Flicker.md
[Writing DRI Engine Driver for Your GPU]: /supplementary-docs/Writing-DRI-Engine-Driver-for-Your-GPU.md
[Writing DRM Engine Driver for Your GPU]: /supplementary-docs/Writing-DRM-Engine-Driver-for-Your-GPU.md
[Writing MiniGUI Apps for 64-bit Platforms]: /supplementary-docs/Writing-MiniGUI-Apps-for-64-bit-Platforms.md
[MiniGUI User Manual]: /user-manual/README.md
......
......@@ -189,7 +189,7 @@ Therefore, you can try to set a lower resolution by modify
[Using Enhanced Font Interfaces]: /supplementary-docs/Using-Enhanced-Font-Interfaces.md
[Using Images and Fonts on System without File System]: /supplementary-docs/Using-Images-and-Fonts-on-System-without-File-System.md
[Using SyncUpdateDC to Reduce Screen Flicker]: /supplementary-docs/Using-SyncUpdateDC-to-Reduce-Screen-Flicker.md
[Writing DRI Engine Driver for Your GPU]: /supplementary-docs/Writing-DRI-Engine-Driver-for-Your-GPU.md
[Writing DRM Engine Driver for Your GPU]: /supplementary-docs/Writing-DRM-Engine-Driver-for-Your-GPU.md
[Writing MiniGUI Apps for 64-bit Platforms]: /supplementary-docs/Writing-MiniGUI-Apps-for-64-bit-Platforms.md
[MiniGUI User Manual]: /user-manual/README.md
......
......@@ -530,7 +530,7 @@ mg-demos 中的 softkbd 提供了中英文输入法的示例,可以直接使
[Using Enhanced Font Interfaces]: /supplementary-docs/Using-Enhanced-Font-Interfaces.md
[Using Images and Fonts on System without File System]: /supplementary-docs/Using-Images-and-Fonts-on-System-without-File-System.md
[Using SyncUpdateDC to Reduce Screen Flicker]: /supplementary-docs/Using-SyncUpdateDC-to-Reduce-Screen-Flicker.md
[Writing DRI Engine Driver for Your GPU]: /supplementary-docs/Writing-DRI-Engine-Driver-for-Your-GPU.md
[Writing DRM Engine Driver for Your GPU]: /supplementary-docs/Writing-DRM-Engine-Driver-for-Your-GPU.md
[Writing MiniGUI Apps for 64-bit Platforms]: /supplementary-docs/Writing-MiniGUI-Apps-for-64-bit-Platforms.md
[MiniGUI User Manual]: /user-manual/README.md
......
......@@ -422,7 +422,7 @@ respond events of desktop.
[Using Enhanced Font Interfaces]: /supplementary-docs/Using-Enhanced-Font-Interfaces.md
[Using Images and Fonts on System without File System]: /supplementary-docs/Using-Images-and-Fonts-on-System-without-File-System.md
[Using SyncUpdateDC to Reduce Screen Flicker]: /supplementary-docs/Using-SyncUpdateDC-to-Reduce-Screen-Flicker.md
[Writing DRI Engine Driver for Your GPU]: /supplementary-docs/Writing-DRI-Engine-Driver-for-Your-GPU.md
[Writing DRM Engine Driver for Your GPU]: /supplementary-docs/Writing-DRM-Engine-Driver-for-Your-GPU.md
[Writing MiniGUI Apps for 64-bit Platforms]: /supplementary-docs/Writing-MiniGUI-Apps-for-64-bit-Platforms.md
[MiniGUI User Manual]: /user-manual/README.md
......
......@@ -405,7 +405,7 @@ before running `mguxdemo`.
[Using Enhanced Font Interfaces]: /supplementary-docs/Using-Enhanced-Font-Interfaces.md
[Using Images and Fonts on System without File System]: /supplementary-docs/Using-Images-and-Fonts-on-System-without-File-System.md
[Using SyncUpdateDC to Reduce Screen Flicker]: /supplementary-docs/Using-SyncUpdateDC-to-Reduce-Screen-Flicker.md
[Writing DRI Engine Driver for Your GPU]: /supplementary-docs/Writing-DRI-Engine-Driver-for-Your-GPU.md
[Writing DRM Engine Driver for Your GPU]: /supplementary-docs/Writing-DRM-Engine-Driver-for-Your-GPU.md
[Writing MiniGUI Apps for 64-bit Platforms]: /supplementary-docs/Writing-MiniGUI-Apps-for-64-bit-Platforms.md
[MiniGUI User Manual]: /user-manual/README.md
......
......@@ -4,7 +4,7 @@
* [Section `system`](#section-system)
* [Section `pc_xvfb`](#section-pc_xvfb)
* [Section `fbcon`](#section-fbcon)
* [Section `dri`](#section-dri)
* [Section `drm`](#section-drm)
* [Section `libinput`](#section-libinput)
* [Section `systemfont`](#section-systemfont)
* [Section `cursorinfo`](#section-cursorinfo)
......@@ -185,38 +185,44 @@ defaultmode=1024x768-16bpp
dpi=96
```
### Section `dri`
### Section `drm`
This section is dedicated to the `dri` graphics engine which runs on
Linux DRI/DRM.
It is available since MiniGUI 4.0.0.
This section is dedicated to the `drm` graphics engine which runs on
Linux DRI (Direct Rendering Infrastructure).
It is available since MiniGUI 4.0.4.
The section `dri` is only effective when you define the key
`system.gal_engine` with value `dri`.
The section `drm` is only effective when you define the key
`system.gal_engine` with value `drm`.
The valid keys in the section `dri` are listed as follow:
The valid keys in the section `drm` are listed as follow:
- `defaultmode`: The display mode of the graphics engine `fbcon`.
- `dpi`: The pixel density of the display, in dots (physical pixels) per inch;
the default value is 96.
- `pixelformat`: The pixel format.
- `device`: The DRI device.
- `exdriver`: The filename of the shared library for the external DRM driver.
The key `defaultmode` also defines the default display mode for the `dri`
The key `defaultmode` also defines the default display mode for the `drm`
engine. This key value will override the value defined by `system.defaultmode`.
If the section is undefined or the key value is invalid, the `dri`
If the section is undefined or the key value is invalid, the `drm`
engine will use the key value of `system.gal_engine`.
For `dri` engine, we introduced a new key `pixelformat` to
For `drm` engine, we introduced a new key `pixelformat` to
define the pixel format precisely. We use DRM fourcc code (like `XR24`)
to define the pixel format of the video surface. For more information,
please see the header file `drm/drm_fourcc.h` of libdrm.
Note that only 8/16/24/32 bpp RGB formats are supported.
The key `exdriver` defines the filename of the shared library for the
external driver for MiniGUI DRM NEWGAL engine. The default value is
`libhidrmdrivers.so.0`. You can also change the value of this key
by the system environment variable: `MG_GAL_DRM_DRIVER`.
The content of the section in the default `MiniGUI.cfg` is as follow:
```ini
[dri]
[drm]
defaultmode=1024x768-32bpp
# We use DRM fourcc code to defined the pixel format of the video surface.
......@@ -230,6 +236,10 @@ device=/dev/dri/card0
# It is defined in dots (physical pixels) per inch
# The default value is 96.
dpi=96
# The filename of the shared library for the external driver.
# The equivalent environment variable: MG_GAL_DRM_DRIVER
exdriver=libhidrmdrivers.so.0
```
### Section `libinput`
......@@ -1413,7 +1423,7 @@ fontfile0=../res/fonts/SourceHanSans-Normal.ttc
[Using Enhanced Font Interfaces]: /supplementary-docs/Using-Enhanced-Font-Interfaces.md
[Using Images and Fonts on System without File System]: /supplementary-docs/Using-Images-and-Fonts-on-System-without-File-System.md
[Using SyncUpdateDC to Reduce Screen Flicker]: /supplementary-docs/Using-SyncUpdateDC-to-Reduce-Screen-Flicker.md
[Writing DRI Engine Driver for Your GPU]: /supplementary-docs/Writing-DRI-Engine-Driver-for-Your-GPU.md
[Writing DRM Engine Driver for Your GPU]: /supplementary-docs/Writing-DRM-Engine-Driver-for-Your-GPU.md
[Writing MiniGUI Apps for 64-bit Platforms]: /supplementary-docs/Writing-MiniGUI-Apps-for-64-bit-Platforms.md
[MiniGUI User Manual]: /user-manual/README.md
......
......@@ -94,7 +94,7 @@ and
[Using Enhanced Font Interfaces]: /supplementary-docs/Using-Enhanced-Font-Interfaces.md
[Using Images and Fonts on System without File System]: /supplementary-docs/Using-Images-and-Fonts-on-System-without-File-System.md
[Using SyncUpdateDC to Reduce Screen Flicker]: /supplementary-docs/Using-SyncUpdateDC-to-Reduce-Screen-Flicker.md
[Writing DRI Engine Driver for Your GPU]: /supplementary-docs/Writing-DRI-Engine-Driver-for-Your-GPU.md
[Writing DRM Engine Driver for Your GPU]: /supplementary-docs/Writing-DRM-Engine-Driver-for-Your-GPU.md
[Writing MiniGUI Apps for 64-bit Platforms]: /supplementary-docs/Writing-MiniGUI-Apps-for-64-bit-Platforms.md
[MiniGUI User Manual]: /user-manual/README.md
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment