Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 在640x480 16色VGA模式下绘制像素时出现问题_C_Graphics_Colors_Bitmap_Vga - Fatal编程技术网

C 在640x480 16色VGA模式下绘制像素时出现问题

C 在640x480 16色VGA模式下绘制像素时出现问题,c,graphics,colors,bitmap,vga,C,Graphics,Colors,Bitmap,Vga,我正在尝试在VGA视频模式12下用C绘制一个红色像素。我编写的代码在视频模式13(200p 256色)下的效果与预期一样 在视频模式13中,在屏幕上绘制单个红色像素。这就是我想在视频模式12中发生的事情。当此代码与视频模式12一起使用时,将显示发送字节中的位的表示形式(即,复制字节00011000,显示三个黑色像素、两个白色像素和三个以上黑色像素。16色模式是平面模式,这意味着一个字节是八个像素,将设置像素的特定位。在端口0x3c4索引2中有一个掩码寄存器,您可以在其中设置写入mem时要设置的平

我正在尝试在VGA视频模式12下用C绘制一个红色像素。我编写的代码在视频模式13(200p 256色)下的效果与预期一样

在视频模式13中,在屏幕上绘制单个红色像素。这就是我想在视频模式12中发生的事情。当此代码与视频模式12一起使用时,将显示发送字节中的位的表示形式(即,复制字节00011000,显示三个黑色像素、两个白色像素和三个以上黑色像素。

16色模式是平面模式,这意味着一个字节是八个像素,将设置像素的特定位。在端口0x3c4索引2中有一个掩码寄存器,您可以在其中设置写入mem时要设置的平面这比使用每像素字节模式要复杂得多

例如,您可以从中获得有关平面写入启用寄存器和不同图形模式的更多信息

volatile char *video = (volatile char*) 0xA0000;
*video = 4;