`

SVGALib

阅读更多

http://en.wikipedia.org/wiki/SVGALib

 

SVGAlib is an open-source low-level graphics library which runs on Linux and FreeBSD and allows programs to change video mode and display full-screen graphics. Some popular games like Quake and Doom used it in their original releases.

 

The library was popular in mid-1990s. Toward 2000, many applications that used it migrated to X11 and SDL , which itself can make use of SVGAlib as a video driver.

 

A sample of SVGAlib code is shown below.

 

#include <stdlib.h>
#include <unistd.h>
#include <vga.h>
 
int main(void)
{
   int color = 4;
   int x = 10;
   int y = 10;
   unsigned int seconds = 5;
 
   /* detect the chipset and give up supervisor rights */
   if (vga_init() < 0)
        return EXIT_FAILURE;
 
   vga_setmode(G320x200x256);
   vga_setcolor(color);
   vga_drawpixel(x, y);
 
   sleep(seconds);
 
   /* restore textmode and fall back to ordinary text console handling */
   vga_setmode(TEXT);
 
   return EXIT_SUCCESS;
}
 
分享到:
评论

相关推荐

    SvgaLib:用于解析和绘制SVGA动画的C ++库

    SvgaLib是一个专门针对SVGA( Scalable Vector Graphics Animation)格式的C++库,它致力于解析和绘制SVGA动画。在深入理解SvgaLib之前,我们需要先了解什么是SVGA动画。 SVGA是一种轻量级的矢量图形动画格式,它...

    Svgalib Game Development Platform-开源

    SVGALib游戏开发平台(SGDP)是一个专为Linux系统设计的开源软件,它提供了一个用C语言编写的框架,使开发者能够轻松地创建2D游戏和图形应用程序。这个平台的核心在于svgalib库,它是一个低级的图形库,直接与硬件...

    linux图形化系统.docx

    本文将深入探讨Linux中的X Window系统、SVGALib和Framebuffer这三种主要的图形化技术。 1. X Window系统:X Window是Linux中最常见的图形用户界面(GUI)系统,起源于UNIX系统,其设计目标是为了支持远程图形会话和...

    LED跑马灯项目

    这两个函数虽然不是SVGALIB库的一部分,但它们的出现可能是为了说明如何在使用SVGALIB库的同时处理文件操作。 - `fclose`函数用于关闭一个文件流。 - `feof`函数用于检查文件流是否已经到达文件末尾。 #### 五、...

    linux图形化系统.pdf

    Linux图形化系统主要涉及到几个关键组件,包括X Window系统、SVGALib和FrameBuffer。这些组件都是Linux系统中实现图形用户界面(GUI)的基础。 X Window系统是Linux和Unix环境中广泛使用的桌面图形系统,它为应用...

    Linux图形基础.pdf

    随着Framebuffer的引入,SVGALib的重要性逐渐降低,许多软件转而支持Framebuffer,尤其是那些高级的函数库如QT和GTK。 1.3 FrameBuffer是一个在Linux内核2.2.xx版本中引入的驱动程序接口。它将显示设备抽象为帧缓冲...

    模苡LED项目书 好东西

    - **2.1 Linux下SVGALIB库安装**:SVGALIB是一个开源的图形库,为Linux提供低级的VGA图形支持。在开发过程中,需要先在Linux环境中安装SVGALIB库,以便程序能直接与显卡进行通信。 - **2.2 SVGA函数介绍**:...

    Linux图形基础[借鉴].pdf

    本文主要探讨了Linux图形领域的基础知识,包括X Window系统、SVGALib、FrameBuffer以及相关的图形库。 首先,X Window系统是Linux图形化的核心,它是一个通信协议,由X server和X client两部分组成。X server负责...

    嵌入式GUI简绍

    嵌入式Linux图形系统的核心在于其图形基础设施,主要包括XWindow、SVGALib、FrameBuffer等,它们构成了图形处理的基石,支撑着各种高级图形库和GUI系统的运行。以下是对这些基础设施的详细介绍: ##### XWindow系统...

    嵌入式Linux系统图形及图形用户界面综述.doc

    然而,SVGALib的接口杂乱,没有充分利用新显示芯片的能力,对硬件细节的隐藏不足,移植性差,且随着FrameBuffer驱动的引入,其地位逐渐被替代。因此,对于新的项目,开发者通常会选择其他更先进的图形库。 ...

    嵌入式linux图形界面开发介绍.doc

    该领域的基础设施主要包括 SVGALib、X Window、Frame Buffer 等,它们一般是作为其他高级图形或者图形应用程序的基本函数库。 SVGALib 是 Linux 系统中最早出现的非 X 图形支持库。这个库从最初对标准 VGA 兼容芯片...

    嵌入式Linux中GUI研究与移植

    目前,在嵌入式Linux系统中,有一些成熟的GUI系统底层支持库,如SVGAlib、LibGGI、Xwindow和framebuffer等。这些库各自拥有不同的特性和适用场景。 - **SVGAlib**:一种简单的图形库,适用于较简单的硬件配置。 - *...

    MPlayer是一款开源多媒体播放器

    它可以在X11、Xv、DGA、OpenGL、SVGAlib、fbdev、AAlib、DirectFB下工作,且能使用GGI和SDL和一些低级的硬件相关的驱动模式(比如Matrox、3Dfx和Radeon、Mach64、Permedia3)。MPlayer还支持通过硬件MPEG解码卡显示...

    基于Linux系统中嵌入式GUI的研究与分析.pdf

    文章提到了几种应用于嵌入式Linux系统的成熟GUI底层支持库,如SVGAlib、LibGGI、X Window和Frame Buffer。这些底层图形发生引擎提供了基本的图形和输入功能,可以作为高级图形应用程序的基础。 其中,LibGGI是一个...

    MPlayer播放器源代码

    它可以在X11、Xv、DGA、OpenGL、SVGAlib、fbdev、AAlib、DirectFB下工作,而且你也能使用GGI和SDL和一些低级的硬件相关的驱动模式(比如Matrox、3Dfx和Radeon、Mach64、Permedia3)。MPlayer还支持通过硬件MPEG解码...

    Mplayer播放器

    它可以在X11、Xv、DGA、OpenGL、SVGAlib、fbdev、AAlib、DirectFB下工作,而且你也能使用GGI和SDL和一些低级的硬件相关的驱动模式(比如Matrox、3Dfx和Radeon、Mach64、Permedia3)。MPlayer还支持通过硬件MPEG解码...

    mplayer.tar——1.0rc4

    它可以在X11、Xv、DGA、OpenGL、SVGAlib、fbdev、AAlib、DirectFB下工作,而且你也能使用GGI和SDL和一些低级的硬件相关的驱动模式(比如Matrox、3Dfx和Radeon、Mach64、Permedia3)。MPlayer还支持通过硬件MPEG解码...

    gnome-mplayer-0.8.0.tar.gz.gz_RGB YUV_gnome-mplay_mp3_sdl_yuv to

    它不仅可以使用 X11, Xv, DGA, OpenGL, SVGAlib, fbdev, AAlib, libcaca, DirectFB, Quartz, Mac OS X CoreVideo, 也能使用 GGI, SDL (及它们的所有驱动), 所有 VESA 兼容显卡上的 VESA (甚至不需要 X11), 某些低级...

    Linux程序设计 第6章 使用curses函数库管理基于文本的屏幕

    Linux提供有svgalib函数库,但这并不是一个标准的UNIX函数库。许多全屏幕应用程序都使用了curses函数库。即使是编写基于字符的全屏幕程序,使用curses函数库的方案也更简明,而程序本身也更独立于具体的终端。在编写...

    基于ARM-Linux环境下MiniGUI的移植.pdf

    它依赖于SVGALib和LinuxThreads库,可以在多种操作系统上运行,包括Linux、eCos、uC/OS-II和VxWorks等。作为国内早期的自由软件之一,MiniGUI的核心特性在于它的轻量级设计、资源占用少和高度稳定性。 【MiniGUI...

Global site tag (gtag.js) - Google Analytics