《赤壁》学习笔记(一)

    技术2022-05-11  120

    早就听说《赤壁》游戏是在国产游戏中的先驱,后来听说销售情况不是很好,干脆就把源码卖了,也就是业内人士常说的《G档案》。我费尽千辛万苦,在网上下载到了源码和标准版的游戏执行档。   分析了CBMain.CPP,大致情况如下:   BOOL MMXCPUID()主要是监测CPU是否支持MMX功能。   BOOL MAIN_TestInstance()检测如果已经有本游戏的实例在运行,则不再重新启用新的实例。   BOOL MAIN_TestCD()检测如果是豪华版的话,需要插入CD。   BOOL doInit()游戏初始化。     BOOL MAIN_InitOthers()游戏初始化。   int PASCAL WinMain()为游戏主程序入口。   其中主窗口初始化函数DD_InitWindow()在Ddapi.cpp中定义。     GAME_GetSrcPath()为取得游戏安装路径,在Cbgame.cpp中定义,这里取得WayAhead.dat的内容,WayAhead.dat文件内容经过加密。     主程序中有这么一句代码,应该是检测支持MMX,就显示MMX的图标。     if( IntelSplashInit() == TRUE )  {   IntelSplash();  }         不懂的地方还有很多,希望有同道一同学习,一同分析,一同进步。

    最新回复(0)