C++ 通过asembler更改已编译应用程序/游戏的分辨率?

C++ 通过asembler更改已编译应用程序/游戏的分辨率?,c++,assembly,screen,screen-resolution,C++,Assembly,Screen,Screen Resolution,我想知道,是否有任何方法可以强制执行一个新的分辨率,例如1920x1080,用于多年前编译的已编译游戏/应用程序?我想可以通过汇编程序完成,但我不确定。有人能告诉我这件事吗?(C++中创建的游戏,使用DX9)是的,有可能。 不,不容易。至少,您需要找到屏幕分辨率的选择位置,并对其进行更改以提供新的分辨率。如果你幸运的话,那是你唯一需要做的改变;更可能的是,有关分辨率的假设分散在整个代码(缓冲区大小、UI位置等)和任何预渲染图形中。要使用如此高的分辨率,您必须使用中断10h的BIOS Vesa扩展

我想知道,是否有任何方法可以强制执行一个新的分辨率,例如1920x1080,用于多年前编译的已编译游戏/应用程序?我想可以通过汇编程序完成,但我不确定。有人能告诉我这件事吗?(C++中创建的游戏,使用DX9)

是的,有可能。


不,不容易。至少,您需要找到屏幕分辨率的选择位置,并对其进行更改以提供新的分辨率。如果你幸运的话,那是你唯一需要做的改变;更可能的是,有关分辨率的假设分散在整个代码(缓冲区大小、UI位置等)和任何预渲染图形中。

要使用如此高的分辨率,您必须使用中断10h的BIOS Vesa扩展。在没有Vesa的情况下,您可以使用的最高资源是视频模式19(13h),它是320x200像素,256色;视频模式17(11h),它是单色,640x480像素。