Cache刷新方式设置不当引起的游戏无声故障

Author: 章海涛 Date: 1997-01-01

#2  故障现象:
  一台486兼容机,配置为486DX2/80 CPU,Hippo-10主板(带有128K缓存),ESS688声卡,在安装流行游戏《命令与征服》时出现游戏无声现象。具体表现为在安装或调整配置时,经测试发声正常,但进入游戏后多则半个小时、少则几分钟鼠标就会锁死,这时游戏情节继续进行,键盘控制也有效。如在配置中指定为无声卡,则操作、控制一切正常。
#2  故障分析与排除:
  故障表现为鼠标与声卡不能共存,因此主要考虑为硬件冲突。声卡的跳线设置可选择IRQ为:5、7、10三种,I/O口地址为:200H、220H、240H三种,DMA通道为0、1两种,加上鼠标可接在COM1和COM2上,我将这四个条件所组成的几十种组合全部试了一遍,故障现象依旧。后又将鼠标驱动程序分别试用MSMOUSE 820、AMOUSE、QMOUSE以及TRMOUSE,将声卡类型设置成各种兼容型号,也不能解决问题。
  后来在一个朋友处发现一台与本机硬件完全相同的PC机运行游戏时声音、鼠标都正常。于是把该机CMOS设置参数全部抄下,并以此对我的微机CMOS参数进行对照修改(修改前保存原资料),果然恢复正常。再将各种配置参数一项项依次改回,逐步缩小范围,最后终于集中到CHIPSET FEATURS SETUP中的“L1 Cache Update Scheme”一项,当为Wr-Through(通写)时一切正常,而为Wr-Back(回写)时,故障再次出现。
  众所周知,在Cache的刷新方式中,“回写”比“通写”好,但由于Cache质量或其它一些原因,在运行象“命令与征服”这种计算复杂、数据吞吐量大的软件时,回写方式可能导致一些奇怪的错误。希望大家碰到类似情况时不要把目光局限在硬件配置方面,试着改变一下Cache的写入方式或将其关掉,也许能很快解决问题。