最新WPS NT 1.0的内存优化
CONFIG.SYS内容:
DEVICE=c:\dos\HIMEM.SYS
device=c:\213\ansi.sys
dos=HIGH
device=c:\dos\dblspace.sys/MOVE
LASTDRIVE=E
FILES=20
buffers=20
stacks=0,0
AUTOEXEC.BAT内容:
@echo off
path d:\DOS;d:\public
set prompt=$P$g
SPEEDKEY
mouse/3/1
(2)启动WPS NT 1.0的优化批处理程序WPSNT.BAT内容如下:
@ECHO OFF
C:
CD\WPSNT
WPSAS (WPS自动存盘工具)
SPLIB
SPDOS
py cizu (或五笔模块WBX)
WPS %1 %2
注意:拼音模块PY.COM和五笔模块WBX.COM只能取其中一个。启动SPDOS NT汉字系统后,可留给WPS NT大约398KB,可运行主文件WPS.EXE。此时,也可在WPSNT6BAT增加一个PCSHELL 6.0提供的磁盘高速缓冲程序PC-CACHE.COM,它仅占用12KB常规空间(不用SMARTDRV.EXE程序,它将占用27KB常规空间),还有386KB空间可用,也可运行WPS.EXE程序。
因WPS NT提供的拼音模块增加了众多的词组,因而,占用了121KB的常规空间,为了更好地优化WPS NT的内存使用,实际上使用SPDOS 5.0提供的PY.COM拼音模块,它仅占用64KB内存空间,其中词组空间2KB。因为SODOS NT 1.0中提供了一个仿真SPDOS 6.0F的环境程序SPDOS6.COM,该程序为PY.COM装入SPDOS NT提供了可能。经笔者分析,SPDOS NT已将SPDOS 6.0F中的INT 16H扩充并改为INT 18H,因此,需将PY.COM模块中检测版本号的程序段去年,并将PY.COM中所有INT 16H改为INT 18H,就能使PY.COM也能运行于SPDOS NT环境中。下面就是修改方法。
C:\WPSNT>DEBUG pyNT.com (先应将PY.COM换名为PYNT.COM)
-u f51d
0B96:F51D B80028 MOV AX,2800 ;SPDOS的版本号的获取
0B96:F520 CD16 INT 16
0B96:F522 3B06FAF6 CMP AX,[F6FA]
0B96:F526 750C JNZ F534
0B96:F528 81FBF7CE CMP BX,CEF7 ;BX='西'
0B96:F52C 7506 JNZ F534
0B96:F52E 81F9BDC9 CMP CX C9BD ;CX='山'
0B96:F532 7409 JZ F53D ;版本正确转到CS:F53D
0B96:F534 B409 MOV AH,09
0B96:F536 BAFCF6 MOV DX,F6FC
0B96:F539 CD21 INT 21
0B96:F53B CD20 INT 20
0B96:F53D(安装PY.COM程序)
-A F51D
0B96:F51D JMP F53D ;跳过版本号的检查
-S 100 FFFF CD 16 ;查找INT 16的地址
0B96:E8DA 0B96:ED42 ;查到的地址
0B96:E927 0B96:ED46
0B96:EC38 0B96:ED5D
0B96:EC8C 0B96:EDEF
0B96:EC90 0B96:EDF3
0B96:ECCB 0B96:F693
0B96:ECCF 0B96:F69F
-E E8DB -E ED43 ;修改
16.18 16.18
-E E928 -E ED47
16.18 16.18
-E EC39 -E ED5E
16.18 16.18
-E EC8D -E EDF0
16.18 16.18
-E EC91 -E EDF4
16.18 16.18
-E ECCC -E F694
16.18 16.18
-E ECB0 -E F6A0
16.18 16.18
-W
-Q
因此,WPSNT.BAT批处理文件内容又可修改如下,该批处理可让拼音模块PYNT.COM和五笔WBX.COM模块同时驻留内存,而且留给WPS.EXE有401KB内存空间:
@ECHO OFF
C:
CD\WPSNT
WPSAS
SPLIB
SPDOS
SPDOS6 ;SPDOS 6.0F仿真程序
pyNT CIZU
WBX WBXCZ ;WBXCZ为五笔词组扩充文件
WPS %1 %2
(曹国钧)