|
Wengier
系统支持
             “新DOS时代”站长
积分 27736
发帖 10521
注册 2002-10-9
状态 离线
|
『楼 主』:
[讨论]关于精简COMMAND.COM的问题
使用 LLM 解释/回答一下
MS-DOS 7.x中的必备文件COMMAND.COM等的体积比较大,占用了不少空间,应该好好减减肥了。不过,UPX、aPack等软件都不能对它进行压缩的。而COMPREXE压缩的结果是,能运行但不能做为SHELL,否则会出现“Invalid COMMAND.COM”的错误。
我观察了一下,发现COMMAND.COM目前最多只能减2个字节,连3个字节都不可以的。给他加字节或修改原来的字节也都可以的,但就是不能减去超过2个的字节。显然,COMMAND.COM在做SHELL时会做体积校验的,若少于94,290字节就不行。谁有办法解决一下呢?
The necessary files such as COMMAND.COM in MS-DOS 7.x are relatively large and occupy quite a bit of space, so they should be slimmed down properly. However, software like UPX, aPack, etc., cannot compress it. And the result of compression with COMPREXE is that it can run but cannot be used as a SHELL; otherwise, an "Invalid COMMAND.COM" error will occur.
I observed and found that COMMAND.COM can currently be reduced by at most 2 bytes, not even 3 bytes. It is also possible to add bytes or modify the original bytes, but just cannot reduce by more than 2 bytes. Obviously, COMMAND.COM will perform a volume check when acting as a SHELL, and it won't work if it is less than 94,290 bytes. Does anyone have a way to solve this?
|

Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
 |
|
2003-6-3 00:00 |
|
|
minisheep
高级用户
   
积分 830
发帖 233
注册 2002-11-29
状态 离线
|
『第 2 楼』:
使用 LLM 解释/回答一下
用破解的眼光来看!他检验自己的大小是吧!你不让他检验!他用条件语句吧!你用无条件语句!在就是把大小改成你修改后的大小!别用崇拜的眼光看我!我只是知道原理!方法不会!
From a cracking perspective! He is checking his own size, right! You don't let him check! He uses conditional statements! You use unconditional statements! Then change the size to the size you modified! Don't look at me with an adoring eye! I just know the principle! I don't know the method!
|

┃ \\\\//// ┃通缉:杨小邪 特点:贼丑
┃ (-●●-) ┃年龄:刚成年 性别:男
┃ \ / ┃罪名:长的丑/总想见网友
┃ \︶/ ┃犯罪事实:吓死一片~ |
|
2003-6-3 00:00 |
|
|
如是大师
元老会员
         步行的人
积分 9654
发帖 3351
注册 2003-3-11 来自 湖北
状态 离线
|
『第 3 楼』:
使用 LLM 解释/回答一下
哈哈。。。。。我也会说。谁来崇拜崇拜我呀。。。。
Haha.....I can say it too. Who will come to worship me.....
|

弄花香满衣,掬水月在手。
明月鹭鸟飞, 芦花白马走。
我自一过后,野渡现横舟。
青云碧空在,净瓶水不流。
http://dos.e-stone.cn/guestbook/index.asp
======中國DOS聯盟=====
我的新网页http://rsds.7i24.com欢迎光顾 |
|
2003-6-3 00:00 |
|
|
Wengier
系统支持
             “新DOS时代”站长
积分 27736
发帖 10521
注册 2002-10-9
状态 离线
|
『第 4 楼』:
使用 LLM 解释/回答一下
Roy、lydong等高手也来说说一下方法吧。
Experts like Roy, lydong, etc., also come and share the methods.
|

Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
 |
|
2003-6-4 00:00 |
|
|
9zhmke
中级用户
  
积分 355
发帖 99
注册 2003-1-6
状态 离线
|
『第 5 楼』:
使用 LLM 解释/回答一下
以前有个游戏要打个大于10M的电影文件,结果一查执行文件里,10M的地方只有两个,第一次没对,第二次.....,从此那个游戏就可以在硬盘玩了。
............试试吧。
There was a game before that needed to play a movie file larger than 10M. As a result, when I checked the executable file, there were only two places at 10M. The first time it wasn't right, the second time..... From then on, that game could be played on the hard drive.
............Give it a try.
|
|
2003-6-5 00:00 |
|
|
Wengier
系统支持
             “新DOS时代”站长
积分 27736
发帖 10521
注册 2002-10-9
状态 离线
|
『第 6 楼』:
使用 LLM 解释/回答一下
刚才我对COMMAND.COM进行了一番研究,发现对COMMAND.COM进行大精简确实不太容易呢,除非做一些较大的修改。因为,COMMAND.COM会直接存取文件内部的地址,而不像普通程序那样的。比如,通过对COMMAND.COM的5F10H处的修改,就至少可以减少COMMAND.COM好几十字节的内容,但再想精简的话就得修改COMMAND.COM中更多的内容了。希望大家共同努力吧。
Just now I did some research on COMMAND.COM and found that it's really not easy to drastically streamline COMMAND.COM, unless some major modifications are made. Because COMMAND.COM directly accesses the internal addresses of files, unlike ordinary programs. For example, by modifying the 5F10H position in COMMAND.COM, at least tens of bytes of content in COMMAND.COM can be reduced, but to streamline further, more content in COMMAND.COM needs to be modified. I hope everyone can work together.
|

Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
 |
|
2003-6-13 00:00 |
|
|
dos时代菜鸟
初级用户
 
积分 672
发帖 216
注册 2003-6-12
状态 离线
|
『第 7 楼』:
使用 LLM 解释/回答一下
command程序只不过是一个外挂的命令解析程序而已,我们为什么不可以用其他的代替?比如ndos
The command program is just an external command parsing program. Why can't we replace it with others? For example, ndos
|

我是女孩,我怕谁? |
|
2003-6-13 00:00 |
|
|
Wengier
系统支持
             “新DOS时代”站长
积分 27736
发帖 10521
注册 2002-10-9
状态 离线
|
『第 8 楼』:
使用 LLM 解释/回答一下
以下是引用dos时代菜鸟在2003-6-13 9:26:29的发言:
command程序只不过是一个外挂的命令解析程序而已,我们为什么不可以用其他的代替?比如ndos
因为NDOS等不支持长文件名呀。而MS-DOS 7.10中的COMMAND在DOSLFN下是完全支持长文件名的,而且兼容性好。
The following is a quote from dos era rookie on 2003-6-13 9:26:29:
The COMMAND program is just an external command parsing program. Why can't we replace it with others? For example, NDOS
Because NDOS and others do not support long filenames. However, COMMAND in MS-DOS 7.10 fully supports long filenames under DOSLFN and has good compatibility.
|

Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
 |
|
2003-6-13 00:00 |
|
|
Roy
管理员
          專業島民
积分 4869
发帖 1633
注册 2002-12-10
状态 离线
|
|
2003-6-13 00:00 |
|
|
Wengier
系统支持
             “新DOS时代”站长
积分 27736
发帖 10521
注册 2002-10-9
状态 离线
|
『第 10 楼』:
使用 LLM 解释/回答一下
以下是引用Roy在2003-6-13 15:35:51的发言:
用ROM-DOS的COMMAND.COM吧
ROM-DOS的COMMAND.COM和MS-DOS 7.10的配合有些问题,而且不支持LOCK等命令呢。
The following is a quote from Roy at 2003-6-13 15:35:51:
Use the COMMAND.COM of ROM-DOS
There are some problems with the cooperation between COMMAND.COM of ROM-DOS and MS-DOS 7.10, and it does not support commands like LOCK.
|

Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
 |
|
2003-6-13 00:00 |
|
|
沈洁
金牌会员
      小飞侠
积分 4590
发帖 1812
注册 2003-4-2 来自 上海市
状态 离线
|
『第 11 楼』:
使用 LLM 解释/回答一下
Wengier版主的新logo是挺漂亮的!
可惜为什么一个男孩子会选一个女孩头像作logo,
相比之下Roy和如是大师的头像就更有点男人味!
The new logo of moderator Wengier is quite beautiful!
It's a pity why a boy would choose a girl's avatar as the logo,
In comparison, the avatars of Roy and Master Rushiyou are more manly!
|

 |
|
2003-6-13 00:00 |
|
|
沈洁
金牌会员
      小飞侠
积分 4590
发帖 1812
注册 2003-4-2 来自 上海市
状态 离线
|
『第 12 楼』:
使用 LLM 解释/回答一下
还有就是希望Wengier版主能把command压缩成功!
And also hope that moderator Wengier can successfully compress command!
|

 |
|
2003-6-13 00:00 |
|
|
lydong
元老会员
        
积分 1468
发帖 407
注册 2002-10-21 来自 广州
状态 离线
|
『第 13 楼』:
使用 LLM 解释/回答一下
以下是引用Wengier在2003-6-4 19:36:34的发言:
Roy、lydong等高手也来说说一下方法吧。
给Wengier称为"高手"真的令人愧不敢当(有点脸红)啊,在论坛中我主要还是在向大家学习呢,虽然我很有兴趣跟大家一起研究DOS方面的问题,但自己知识肤浅,真的不敢居于"高手"之列(有点惭愧)……
上面提到的问题中,我想COMMAND.COM能不能也像精简IO.SYS时一样,把程序分成几段,去掉一些不重要的内容,来达到精简呢。其次,校验COMMAND.COM大小的程序我想应该是在IO.SYS之中,因为若换成其它的SHELL时,都会有同样的出错提示,问题应该不会出在COMMAND.COM 身上。而是IO.SYS 对COMMAND.COM 的大小进行检查而出现的。不知说的对不对,请Wengier指教!
The following is a quote from Wengier on 2003-6-4 19:36:34:
Experts like Roy, lydong, etc., also come and share some methods.
Being called a "expert" by Wengier really makes me feel unworthy (a bit embarrassed)! In the forum, I mainly am still learning from everyone. Although I am very interested in researching DOS-related issues with everyone, my own knowledge is superficial, and I really don't dare to be in the "expert" category (a bit ashamed)...
Regarding the problem mentioned above, I think whether COMMAND.COM can also be divided into several segments like when streamlining IO.SYS, and some unimportant contents can be removed to achieve streamlining. Secondly, the program that checks the size of COMMAND.COM should be in IO.SYS, because when other SHELLs are replaced, there will be the same error prompt. The problem should not be with COMMAND.COM itself. Instead, it is the check by IO.SYS on the size of COMMAND.COM that causes the issue. I don't know if what I said is correct. Please give me your advice, Wengier!
|

欢迎大家观临我的个人主页:
http://dosdiy.bluepc.com.cn/
http://dosdiy.ys168.com/
EMAIL: lydong@china.com.cn lydong@yeah.net
----------------------------------------------
|
|
2003-6-14 00:00 |
|
|
Wengier
系统支持
             “新DOS时代”站长
积分 27736
发帖 10521
注册 2002-10-9
状态 离线
|
『第 14 楼』:
使用 LLM 解释/回答一下
以下是引用lydong在2003-6-14 4:19:17的发言:
上面提到的问题中,我想COMMAND.COM能不能也像精简IO.SYS时一样,把程序分成几段,去掉一些不重要的内容,来达到精简呢。其次,校验COMMAND.COM大小的程序我想应该是在IO.SYS之中,因为若换成其它的SHELL时,都会有同样的出错提示,问题应该不会出在COMMAND.COM 身上。而是IO.SYS 对COMMAND.COM 的大小进行检查而出现的。不知说的对不对,请Wengier指教!
唉,可惜不是这样的。据我观察,IO.SYS和COMMAND.COM的结构完全是两回事,所以上回精减IO.SYS的经验无法应用于COMMAND.COM中。对IO.SYS进行的是精减,而对COMMAND.COM只能是进行压缩了。但校验大小并不是在IO.SYS中进行的,而是在COMMAND.COM内部进行的,这点已被我通过研究和试验证实了,但目前却还没有很好的解决办法。
The following is a quote from lydong on 2003-6-14 4:19:17:
Among the problems mentioned above, I wonder if COMMAND.COM can also be divided into several segments like when slimming down IO.SYS, and some unimportant contents removed to achieve slimming. Secondly, the program to check the size of COMMAND.COM should be in IO.SYS, because when replacing with other SHELLs, there will be the same error prompt, the problem should not be with COMMAND.COM itself. Instead, it is the check of the size of COMMAND.COM by IO.SYS that causes the problem. I don't know if it's right. Please give your instructions, Wengier!
Alas, it's not like that. As I observed, the structures of IO.SYS and COMMAND.COM are completely different, so the previous experience of slimming down IO.SYS cannot be applied to COMMAND.COM. What was done to IO.SYS is slimming, while for COMMAND.COM it can only be compressed. But the size check is not in IO.SYS, but inside COMMAND.COM, which has been confirmed by my research and experiments, but there is currently no good solution.
|

Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
 |
|
2003-6-14 00:00 |
|
|
沈洁
金牌会员
      小飞侠
积分 4590
发帖 1812
注册 2003-4-2 来自 上海市
状态 离线
|
『第 15 楼』:
使用 LLM 解释/回答一下
这就麻烦了的先压缩一下知道压缩后的体积,
然后在在没有压缩过的command中修改标注文件体积的地址,
最后再用同样的方法,把此程序再压缩一遍!
真麻烦啊!
This is troublesome. First, compress it to know the volume after compression, then modify the address of the annotation file volume in the uncompressed command, and finally compress this program again in the same way! It's really troublesome!
|

 |
|
2003-6-14 00:00 |
|