中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-01 13:24
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » dos下allegro中set_color_depth的问题 查看 901 回复 0
楼 主 dos下allegro中set_color_depth的问题 发表于 2007-06-29 16:38 ·  中国 广东 东莞 电信
初级用户
积分 47
发帖 10
注册 2005-09-26 22:46
20年会员
UID 42859
性别 男
状态 离线
int main(int argc, char *argv[])
{


if (allegro_init() != 0)
return 1;
install_keyboard();
install_mouse();
install_timer();
set_color_depth(16);//在800X600的情况下,为什么不加这句就黑屏在320X200不加则正常
if (set_gfx_mode(GFX_AUTODETECT, 800, 600, 0, 0) != 0) {
allegro_message("Unable to set any graphic mode\n%s\n", allegro_error);
return 1;

}

set_palette(desktop_palette);


do_dialog(the_dialog, -1);

set_gfx_mode(GFX_TEXT, 0, 0, 0, 0);//回到字符模式,但是,为什么程序退出以后,屏幕的东西没有被清除,对话框等还是在屏幕上,看不到自己打的字.但是,打入命令却起作用,只是原来的屏幕没被清除,应该怎么做?程序在WIDOWS下用却是正常的.

return 0;
}
论坛跳转: