-
Notifications
You must be signed in to change notification settings - Fork 17
/
Copy pathSetup.txt
59 lines (52 loc) · 5.86 KB
/
Setup.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
仙痴兄的仙剑奇侠传 配置文件 setup.dat(20字节)详解:
第01个字节代表游戏画面方向的左上,如直接使用方向键则=左键=小键盘的4键(K),如使用小键盘数字键7(G)则操作方向将和画面相同!
第02个字节代表空位,无意义,取值固定为00。
第03个字节代表游戏画面方向的右上,如直接使用方向键则=上键=小键盘的8键(H),如使用小键盘数字键9(I)则操作方向将和画面相同!
第04个字节代表空位,无意义,取值固定为00。
第05个字节代表游戏画面方向的右下,如直接使用方向键则=右键=小键盘的6键(M),如使用小键盘数字键3(Q)则操作方向将和画面相同!
第06个字节代表空位,无意义,取值固定为00。
第07个字节代表游戏画面方向的左下,如直接使用方向键则=下键=小键盘的2键(P),如使用小键盘数字键1(O)则操作方向将和画面相同!
第08个字节代表空位,无意义,取值固定为00。
第09个字节代表音乐/音效的配备选项中的八种选择(详见后面的备注),分别用00 01 02 03 04 05 06 07表示。
第10个字节代表空位,无意义,取值固定为00。
第11个字节代表音效,OFF或者ON,分别用00 01表示。
第12个字节代表空位,无意义,取值固定为00。
第13个字节代表IRQ参数的存储位,其十种参数为:2、3、4、5、6、7、8、9、10、11、分别用02 03 04 05 06 07 08 09 0A 0B 表示。
第14个字节代表空位,无意义,取值固定为00。
第15个字节代表I/O Port,200 210 220 230 240 250 260 270 280 290 300 330 分别用00 10 20 30 40 50 60 70 80 90 00 30表示。
第16个字节代表I/O Port的百位数值,当总数值为2?0时该位置用02表示,当总数值为3?0时该位置用03表示。
第17个字节代表MPU401 I/O PORT(MIDI)设定存储位的十、个位数值,330/331H 332/333H 334/335H 336/337H分别用30 32 34 36表示。
第18个字节代表MPU401 I/O PORT(MIDI)设定存储位的百位数值,当MIDI有效时固定用03表示,当MIDI无效时固定用00表示。
第19个字节代表空位,无意义,取值固定为00。
第20个字节代表空位,无意义,取值固定为00。
备注:
默认配置(方向设置为小键盘上的7、9、3、1、键;无音乐/音效)47 00 49 00 51 00 4F 00 00 00 00 00 07 00 20 02 00 00 00 00
第01~08个字节为方向设定的存储位;第09~16个字节为音乐/音效各种参数设定的存储位,第17、18字节代表MIDI,第19、20为空位。
第01、03、05、07、字节的取值范围分别是:4F 50 51 4B 4C 4D 47 48 49(而Hex则是OPQKLMGHI)分别对应小键盘上的123456789键。
音乐/音效 的八种配备选项分别为:无、声霸卡、MIDI、声霸卡+MIDI、CD音源、CD音源+声霸卡、CD音源+MIDI、CD音源+声霸卡+MIDI、
如果代表音乐/音效的八种配备选项的第09个字节数值为00(相当于在配置选项中选择“无”),那么,后面的数值无论是什么都无效!
同样,在音乐/音效的八种配备选项之中,第09个字节没有被设定的为有效的发声方式时,即使存储位上有参数设置的数值也同样无效!
==============================================================================================
有功力编程的朋友可以据此编一个小工具,而绕开狂徒的原版程式setup.exe(install.exe)
虽然,那个原版程式已被一位朋友破解(寻找E83C02改为909090),我想“本人制造--将是一种乐趣”。
SuperMouse兄给出的结构:
struct SETUP
{
unsigned short int key_leftup;
unsigned short int key_rightup;
unsigned short int key_rightdown;
unsigned short int key_leftdown;//以上均为键盘扫描码
struct
{
unsigned short int SB: 1; //1表示设置了“声霸卡”
unsigned short int MIDI: 1; //1表示设置了“MIDI”
unsigned short int CD: 1; //1表示设置了“CD”
unsigned short int : 13;
} sound_config;
unsigned short int enable_sfx; //1表示开启音效
unsigned short int sb_irq; //声霸卡的IRQ,取值范围2-11
unsigned short int sb_ioport; //声霸卡的I/O基址
unsigned short int midi_ioport; //MPU401 MIDI口的I/O基址
unsigned short int use_files_on_CD;
};
备注:最后2字节已发现是强制使用CD意。