中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS汉化世界 & 中文系统 (中文化室) » 在config.sys中使用的逐级执行式菜单编辑器 ConMenu.sys V2.12
« [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... [19] »
作者:
标题: 在config.sys中使用的逐级执行式菜单编辑器 ConMenu.sys V2.12 上一主题 | 下一主题
yaya
银牌会员





积分 1009
发帖 353
注册 2003-9-4
状态 离线
『楼 主』:  在config.sys中使用的逐级执行式菜单编辑器 ConMenu.sys V2.12

在config.sys中使用的菜单编辑器有BootCon.sys和Boot.sys。他们的功能强大,但体积也大。
本人编制的菜单编辑器 ConMenu.sys 只有1.78K。
功能:
12行标题和4行尾注;
        rem caption=
        rem endnote=
16项可显示菜单(A,B,C...P);
        rem cm0=[A
        ...
        rem cm0=]A
        标号必须按A,B,C...排列       
9项隐含菜单(1,2,3...9);
        rem cm0=(1
        ...
        rem cm0=)1
        标号必须按1,2,3...排列
        =]及=)后的字母数字不是必须的,只为了自我辨识
可显示菜单与隐含菜单在顺序上可混合编排;
        即A,B,1,C,2...
颜色属性(背景前景色,被选菜单项显示方式),如不输入,缺省07,F;
        背景前景色(00...FF)(背景闪烁位改为高亮)
        被选菜单项显示方式(f反色,g高亮)
        例:=07,g  =07  =,g
        rem color=       
默认属性(默认菜单项,显示时间),如不输入,缺省A,60;
        rem default=
        例:=b,30  =b  =,30
可显示菜单项里可包含同级其他菜单项(可显/隐含);
        rem include0=
        含有子菜单的菜单项里使用include,应放在子菜单结束后,本菜单项结束前
        rem cm0=[b
        rem cm1=[a
        ...
        rem cm1=[end]
        rem include0=...
        ...
        rem cm0=]b
复选菜单可多项选择(用回车键选择/清除);
        rem cm0=[?A
        ...
        rem cm0=]A
子菜单可多级嵌套;
        第一级为0,第二级为1...
        cm0,cm1...
        include0,include1...
由%cm0%,%cm1%...返回参数A,B...P;
程序结束符 rem cm0=[end];
按↑↓或相应字母选择菜单项;'?'为复选菜单,按回车选择/清除;在单选菜单按回车确定
如果子菜单中不含标题、尾注、背景前景色、被选菜单项显示方式、时间,则继承父菜单内容

例子1:(实际使用时,需由'本是'的VTMagic.com将下面的中文字体换掉)
device=config.exe    (由'本是'的VTMagic.com生成)
device=ConMenu.sys

rem color=1e
rem default=a,30
rem caption=             中文 MSDOS 7.1 启动盘
rem caption=================================================
rem endnote=按↑↓或相应字母选择菜单项;'?'为复选菜单,按回车选择/清除
rem endnote=在单选菜单按回车确定

rem cm0=[A. 保护模式  加载 EMM386 和 CD-ROM
device=himem.sys
device=emm386.sys noems
rem include0=1
rem cm0=]A

rem cm0=[B. 实模式    加载 UMBPCI 和 CD-ROM
device=umbpci.sys
device=lowdma.sys
devicehigh=himem.sys
rem include0=1
rem cm0=]B

rem cm0=[C. 保护模式  加载 EMM386 ,CD-ROM 和 USB
rem include0=A
rem include0=2
rem cm0=]C

rem cm0=[D. 实模式    加载 UMBPCI , CD-ROM 和 USB
rem include0=B
rem include0=2
rem cm0=]D

rem cm0=[E. 最小模式
rem cm0=]E

rem cm0=(1
devicehigh=vide-cdd.sys /d:ide-cd
devicehigh=aspicd.sys /d:scsi-cd
rem cm0=)1

rem cm0=(2
device=usbaspi.sys /r
device=aspiohci.sys /int /all
device=aspiuhci.sys /int /all
device=di1000dd.sys
device=usbcd.sys /d:usb-cd
rem cm0=)2

dos=high,umb,auto
fcbshigh=4,0
fileshigh=30
buffershigh=30,0
lastdrivehigh=32
stackshigh=9,256

rem cm0=[end]Sample Text

[ Last edited by yaya on 2006-2-28 at 17:14 ]

附件 1: ConMenu1.jpg (2006-1-25 12:27, 40.95 K, 下载附件所需积分 1 点 ,下载次数: 84)


附件 2: ConMenu212.rar (2006-2-28 17:09, 3.18 K, 下载附件所需积分 1 点 ,下载次数: 2266)
2006-1-15 17:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 2 楼』:  

Re yaya:

      相当不错的原创作品!

      希望它将来可以解决我做启动盘时所遇到的一些问题。不知楼主是否有计划支持多级菜单和复选菜单?

      即用户可以在一个菜单中选择子菜单,并在子菜单中一次性选择多个需要加载的驱动程序。

      另外,菜单界面的颜色,建议先做整屏处理;如果有必要,可以再做单菜单处理。



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2006-1-15 20:01
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
coolboy163
初级用户





积分 176
发帖 74
注册 2005-11-7
状态 离线
『第 3 楼』:  

GOOD,楼主很有心啊
希望能越来越好

2006-1-16 17:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
本是
银牌会员





积分 2201
发帖 789
注册 2005-1-27
状态 离线
『第 4 楼』:  

啊呀呀!真不错。也算替我了了CONFIG MENU编程的愿。前几天我的机器出了点问题,上不了网!今天弄好了,一上网就是一个惊喜!!!



my major is english----my love is dos----my teacher is the buddha----my friends--how about U
2006-1-17 14:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
brglng
银牌会员

永遠的DOS~~~



积分 1200
发帖 466
注册 2005-2-1
来自 上海
状态 离线
『第 5 楼』:  

我觉得界面最好能像config.sys中使用[menu]配置一样
另外最好能做成复选的

支持楼主继续努力!!!



32位才是DOS未来的希望
个人网志:http://sololand.moe
2006-1-17 15:31
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yaya
银牌会员





积分 1009
发帖 353
注册 2003-9-4
状态 离线
『第 6 楼』:  

计划增加多级菜单和复选菜单功能。已有思路,只是这几天比较忙。

2006-1-18 18:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yaya
银牌会员





积分 1009
发帖 353
注册 2003-9-4
状态 离线
『第 7 楼』:  

含有多级菜单和复选菜单功能ConMenu.sys已编制完毕,正在进一步验证,不日可发布。

2006-1-23 18:11
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
passion
中级用户




积分 281
发帖 51
注册 2003-1-5
状态 离线
『第 8 楼』:  

发布新版后,请附上参数说明。
感谢!

2006-1-23 20:14
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
weilong888
银牌会员




积分 1270
发帖 548
注册 2004-5-31
状态 离线
『第 9 楼』:  

谢谢啦。

===============DOS★★★永远伴随我们的DOS================
==================================================

==================================================

2006-1-24 09:11
查看资料  发送邮件  发短消息 网志  OICQ (314295922)  编辑帖子  回复  引用回复
yaya
银牌会员





积分 1009
发帖 353
注册 2003-9-4
状态 离线
『第 10 楼』:  

ConMenu.sys V2.00 已编制完毕,重新发布于1楼。

例子2:
device=config.exe
device=ConMenu.sys

rem color=1e
rem default=e,30
rem caption=             中文 MSDOS 7.1 启动盘
rem caption=================================================
rem endnote=按↑↓或相应字母选择菜单项;复选菜单按←选择,按→清除
rem endnote=在单选菜单按回车确定

rem cm0=[A. 最小模式
rem cm0=]

rem cm0=[B. 保护模式  加载 EMM386
device=himem.sys
device=emm386.sys noems
rem cm0=]

rem cm0=[C. 实模式    加载 UMBPCI
device=umbpci.sys
device=lowdma.sys
devicehigh=himem.sys
rem cm0=]

rem cm0=[?D. 加载 CD-ROM
devicehigh=vide-cdd.sys /d:ide-cd
devicehigh=aspicd.sys /d:scsi-cd
rem cm0=]

rem cm0=[?E. 加载 USB
device=usbaspi.sys /r
device=aspiohci.sys /int /all
device=aspiuhci.sys /int /all
device=di1000dd.sys
device=usbcd.sys /d:usb-cd
rem cm0=]

dos=high,umb,auto
fcbshigh=4,0
fileshigh=30
buffershigh=30,0
lastdrivehigh=32
stackshigh=9,256

rem cm0=[end]

附件 1: ConMenu2.jpg (2006-1-25 12:34, 36.28 K, 下载附件所需积分 1 点 ,下载次数: 17)


2006-1-25 12:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yaya
银牌会员





积分 1009
发帖 353
注册 2003-9-4
状态 离线
『第 11 楼』:  

例子3:
device=config.exe
device=ConMenu.sys

rem color=1e
rem default=a,30
rem caption=             中文 MSDOS 7.1 启动盘
rem caption=================================================
rem endnote=按↑↓或相应字母选择菜单项;复选菜单按←选择,按→清除
rem endnote=在单选菜单按回车确定

rem cm0=[A. 实模式    加载 UMBPCI
device=umbpci.sys
device=lowdma.sys
devicehigh=himem.sys

rem caption=             中文 MSDOS 7.1 启动盘
rem caption=================================================
rem endnote=按↑↓或相应字母选择菜单项;复选菜单按←选择,按→清除
rem endnote=在单选菜单按回车确定

rem cm1=[?A. 加载 CD-ROM
devicehigh=vide-cdd.sys /d:ide-cd
devicehigh=aspicd.sys /d:scsi-cd
rem cm1=]

rem cm1=[?B. 加载 USB
device=usbaspi.sys /r
device=aspiohci.sys /int /all
device=aspiuhci.sys /int /all
device=di1000dd.sys
device=usbcd.sys /d:usb-cd
rem cm1=]

rem cm1=[C. OK
rem cm1=]

rem cm1=[end]
rem cm0=]

rem cm0=[B. 最小模式
rem cm0=]


dos=high,umb,auto
fcbshigh=4,0
fileshigh=30
buffershigh=30,0
lastdrivehigh=32
stackshigh=9,256

rem cm0=[end]

附件 1: ConMenu31.jpg (2006-1-25 12:36, 21.92 K, 下载附件所需积分 1 点 ,下载次数: 18)


附件 2: ConMenu32.jpg (2006-1-25 12:36, 24.25 K, 下载附件所需积分 1 点 ,下载次数: 13)


2006-1-25 12:36
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yaya
银牌会员





积分 1009
发帖 353
注册 2003-9-4
状态 离线
『第 12 楼』:  

修改了1项错误:时间到返回错误。
v2.01重新发布于1楼。
欢迎大家测试。

2006-1-26 11:02
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 13 楼』:  

Re yaya:

      对 ConMenu 的复选菜单和子菜单功能做了常规测试,未发现明显的问题,在此首先对其中的界面细节提出一些疑问和建议。

     1、背景色和前景色: 这我在二楼已经提到,现在详细说明。菜单的 endnote 之下是原始的前景色和背景色,看上去不太美观,建议设置背景色和前景色后,进行类似cls的刷新动作。正在选择的菜单建议前景和背景反色处理,以免在近似颜色的界面中无法分辨;选中的复选菜单,也可以考虑同样的反色处理。

     2、caption和endnote:不知兄处于什么考虑,将其各定为四行,这样在菜单项较少时,菜单界面整体偏上,视觉效果不是很少,可以考虑不限行数,且将 endnote 显示于屏幕底部。

     3、rem cm0=[?A:很奇怪兄会用左右光标键切换复选,而非比较常用的空格或回车。

     4、default:倒计时的秒数位置很奇怪,是否可以考虑移动到菜单项下方?当然,这可能要求 rem default 设置项也随之移动。

      另外几个问题是功能上的:

     1、include:不知被包含块中是否支持或准备支持子菜单,以实现同级的连续菜单?如果是肯定的,那么要考虑的问题就比较复杂了,比如 %cm1% 的返回值问题。另外,include是否支持或准备支持递归嵌套?

     2、菜单的跳转:菜单的跳转实现可以实现菜单返回、任意多级菜单等性能,但其实现算法估计与 ConMenu.sys 目前使用的相去甚远。



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2006-1-26 21:41
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ddctczy
中级用户




积分 245
发帖 43
注册 2003-8-5
状态 离线
『第 14 楼』:  

高手就是高手!!

佩服!!    佩服!!

2006-1-26 23:10
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
weilong888
银牌会员




积分 1270
发帖 548
注册 2004-5-31
状态 离线
『第 15 楼』:  

真是高人哪。

===============DOS★★★永远伴随我们的DOS================
==================================================

==================================================

   此帖被 +1 点积分    点击查看详情   
评分人:【 freshmemoli 分数: +1  时间:2008-1-15 10:18


2006-1-27 10:00
查看资料  发送邮件  发短消息 网志  OICQ (314295922)  编辑帖子  回复  引用回复
« [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... [19] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: