zoukankan      html  css  js  c++  java
  • VGA12h与VGA寄存器

    lingix 和 libsvga 切换到vga12h的方法有所不同.lingix 12h模式的vga reg dump是

    unsigned char g_640x480x16[] =
    {
    /* MISC */
    0xE3,
    /* SEQ */
    0x03, 0x01, 0x08, 0x00, 0x06,
    /* CRTC */
    0x5F, 0x4F, 0x50, 0x82, 0x54, 0x80, 0x0B, 0x3E,
    0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    0xEA, 0x0C, 0xDF, 0x28, 0x00, 0xE7, 0x04, 0xE3,
    0xFF,
    /* GC */
    0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x05, 0x0F,
    0xFF,
    /* AC */
    0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07,
    0x38, 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F,
    0x01, 0x00, 0x0F, 0x00, 0x00
    };


    而libvga 却是:
    static const unsigned char g640x480x16_regs[60] =
    {
    /*crt*/0x5F, 0x4F, 0x50, 0x82, 0x54, 0x80, 0x0B, 0x3E, 0x00, 0x40, 0x00, 0x00,
    0x00, 0x00, 0x00, 0x00, 0xEA, 0x8C, 0xDF, 0x28, 0x00, 0xE7, 0x04, 0xE3,/*CRT*/
    /*att*/0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B,
    0x0C, 0x0D, 0x0E, 0x0F, 0x01, 0x00, 0x0F, 0x00, 0x00, /*ATT 25-- 44 */
    /*gra*/ 0x00, 0x0F, 0x00, 0x20, 0x00, 0x00, 0x05, 0x0F, 0xFF, /*GRA 45-- 53*/
    /*seq*/ 0x03, 0x01, 0x0F, 0x00, 0x06, /*SEQ 54--58*/
    0xE3 /* Mis 59*/
    };


    比较他们的同类reg, 会发现有所差别. 并且libvga使用crtc 比lingix的少1个.

    1.这些不同带来的影响是什么呢?

    2. 我知道结果会使lingix 的直接写屏输出(不用画点方式)出异常.


    --------------------------------------
    关键寄存器没有区别。
    实际上,我切换到 vga12h 也有两个版本。一个是 vrix 提供的,一个是我从 DOS 下自己读回来。
    下次有时间我将所有寄存器的说明贴上来。
  • 相关阅读:
    Lua 有关字符串的剪切 以及匹配
    [Decode error
    mac 终端 常用命令
    mac apache 相关终端命令
    spring boot架构设计——权限验证及API接口统一返回格式
    ios 官网文档翻译—Create a Table View(swift)
    quicksqlite简介
    android ndk 环境搭建和简单实例
    android 关闭软键盘
    android 弹出全局加载等待动画
  • 原文地址:https://www.cnblogs.com/huqingyu/p/114875.html
Copyright © 2011-2022 走看看