中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS汉化世界 & 中文系统 (中文化室) » Config中文菜单驱动Confect.sys (更新为4.3版)
« [1] [2] [3] [4] [5] [6] [7] [8] »
作者:
标题: Config中文菜单驱动Confect.sys (更新为4.3版) 上一主题 | 下一主题
sanchuan
初级用户





积分 113
发帖 51
注册 2008-11-16
来自 武汉
状态 离线
『楼 主』:  Config中文菜单驱动Confect.sys (更新为4.3版)

DOS环境下的Config中文菜单驱动程序Confect.sys V4.1

Confect.sys V4.1能够直接驱动中英文菜单,使用简便,只需一个CCDOS或UCDOS的汉字库文件就能在config中显示汉字。V4.1版的字库默认为当前盘的根目录,若在其它路径,则在Config.sys配置文件的开始部分,添加以下语句:

device=Confect.sys c:\dos\hzk16

......  (详细说明见压缩包内文本文件)

特别说明:
1、Confect同原config.sys正文一样,未作严格语法检测。DOS 在处理原 Config 时,一律对错误的语句用一个 Z 替代而不作任何提示。因此,请按压缩包内说明定义confect驱动的菜单;
2、4.1版未对VGA调色板进行设置而利用字符属性选择字符集,故尾注字符较暗、提示字符较亮;
3、Confect默认为9点字符时钟,部分汉字会出现中间竖划粗或中缝的现象。若要使用8点字符时钟,可在set default语句的最后加参数8,即:
set default=1,30,8
4、各版本功能见压缩包内说明,建议使用更新的版本。         


Confect V4.3,放在76楼,点击Confect V4.3

Confect.sys V4.2 在28楼

[ Last edited by sanchuan on 2009-1-13 at 00:25 ]

附件 1: confect41.rar (2008-12-20 17:46, 4.7 K,下载次数: 443)


三川一笑
2008-12-17 23:22
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
julon
中级用户




积分 424
发帖 133
注册 2004-3-1
状态 离线
『第 2 楼』:  

支持楼主!



http://hi.baidu.com/julon
2008-12-18 07:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
supertom
初级用户





积分 62
发帖 31
注册 2008-3-28
状态 离线
『第 3 楼』:  

呵呵,楼主动作很快,强烈支持一下

2008-12-18 17:43
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wuchan
初级用户





积分 119
发帖 59
注册 2008-11-21
状态 离线
『第 4 楼』:  

谢谢楼主了.一直关注着

2008-12-19 14:45
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
本是
银牌会员





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

RE: Sanchuan:
首先,你的软件很不错,菜单使用方式特别、方便,希望有更多的人使用。

你在说明文件中说
”特别说明:
1、为了在文本方式能够显示更多的汉字,在Confect中激活了两个字符集(理论上可以容纳128个不重复汉字)。由于利用字符属性选择字符集,故尾注字符较暗、提示字符较亮。“

这是因为调色板设置问题引起的,可以先保存原寄存器值,设置成前后8个寄存器值一样,最后不需要时恢复保存的值。
getpal:
  push cs
  pop es
  mov dx,offset _palbuf
  mov ax,1009h
  int 10h  ; Video;  get palette regs to es:dx
_palbuf db 17 dup(0)

setpal:
  mov dx,offset _colo
push es
  xor ax,ax  
  mov es,ax
  test byte ptr es:410h,2
  jz __
  mov dx,offset _mono
__:
pop es
  mov ax,1002h
  int 10h  ; Video;  set palette regs from es:dx
_colo db 0,1,2,3,4,5,6,7, 0,1,2,3,4,5,6,7 ,0
_mono db 0,7,7,7,7,7,7,7, 0,7,7,7,7,7,7,7 ,0

resetpal:
  push cs
  pop es
  mov dx,offset _palbuf
  mov ax,1002h
  int 10h  ; Video;  set palette regs from es:dx
(当然最简单的恢复方法是mov ax,3和int 10h重置视频模式3)

你可以考虑加到CONFECT.SYS下一个版本中。
另外,CONFECT.SYS与什么相联系?我的理解是MenuEnv.CTL(意思是Menu菜单Env环境CTL控制驱动)。

我再附一个激活双字符集并重置调色板的实例,下载附件后改扩展名RAR为COM。运行后先显示同一亮度的6个汉字,按一键后显示西文和不同亮度。

[ Last edited by 本是 on 2008-12-19 at 16:07 ]

附件 1: 2sets.RAR (2008-12-19 16:07, 398 bytes, 下载附件所需积分 1 点 ,下载次数: 51)


my major is english----my love is dos----my teacher is the buddha----my friends--how about U
2008-12-19 16:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wuchan
初级用户





积分 119
发帖 59
注册 2008-11-21
状态 离线
『第 6 楼』:  

有个问题.用个这个文件替换原来4.0的,原来设置好的菜单表头无法显示,还有默认选项变成全黑了.要移动后才变成高亮的.

2008-12-19 16:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sanchuan
初级用户





积分 113
发帖 51
注册 2008-11-16
来自 武汉
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by 本是 at 2008-12-19 16:00:
RE: Sanchuan:
首先,你的软件很不错,菜单使用方式特别、方便,希望有更多的人使用。

你在说明文件中说
”特别说明:
1、为了在文本方式能 ...


谢谢 本是 赐教!愿多多交流。

关于CONFECT.SYS与什么相联系的问题,其实confect就是一个简单的DOS驱动程序,只不过不驻留内存罢了。

另外,如果设计巧妙,在文本方式是可以显示150个不重复汉字,现在最棘手的是9点制表符从0c0h扩展到0ffh的问题。

[ Last edited by sanchuan on 2008-12-19 at 17:30 ]



三川一笑
2008-12-19 17:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sanchuan
初级用户





积分 113
发帖 51
注册 2008-11-16
来自 武汉
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by wuchan at 2008-12-19 16:46:
有个问题.用个这个文件替换原来4.0的,原来设置好的菜单表头无法显示,还有默认选项变成全黑了.要移动后才变成高亮的.


4.0的版本在自定义时用的是rem default:,现在用的是set default=
注意将冒号改为等号



三川一笑
2008-12-19 17:11
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
本是
银牌会员





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



  Quote:
Originally posted by sanchuan at 2008-12-19 17:07:
现在最棘手的是9点制表符从0c0h扩展到0ffh的问题。 ...

其实,这就是我在开发VtMagik.com的过程曾经伤透脑筋的我称之为单字节新汉字内码问题,这在9点显示方式下尤其突出。在9点显示方式下,有一种办法可以让汉字看上去不断开——0c0h,80h;0c1h,81h;...——这样可以有32个汉字无缝显示。顺序方式n,n+1;n+2,n+3;...容易编程,但无法利用这种制表符自动复制第8列到第9列的自动特性。

而且,不管设置8点还是9点,都对VGA卡的寄存器进行了设置,所以可能带来兼容性问题——显示器频率超界,引起黑屏;不作设置,即跳了这段程序,差别是很大的,尽管视觉上看不出。程序设计中有很多东东对用户都是“不可见的”,可程序员不能不清楚。这就是我通常不想解释的原因。对于用户是要简单,难题就专为程序员独享!真是有苦说不出。所以,我的VtMagik有-M0与-M8、-M9之分。一般用户可能会嫌软件命令和参数复杂,可这是不得已的。



my major is english----my love is dos----my teacher is the buddha----my friends--how about U
2008-12-19 20:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sanchuan
初级用户





积分 113
发帖 51
注册 2008-11-16
来自 武汉
状态 离线
『第 10 楼』:  



  Quote:
Originally posted by 本是 at 2008-12-19 20:25:


其实,这就是我在开发VtMagik.com的过程曾经伤透脑筋的我称之为单字节新汉字内码问题,这在9点显示方式下尤其突出。在9点显示方式下,有一种办 ...


文本方式9点字符汉字编码也简单:n+40h, n, n1+40h, n1,.....
这种方式编码,可以去掉M0的设置,默认值为M9。一般在屏幕上有缝的汉字都排在后面,如果汉字不多,几乎就看不出来有缝的了。

另:3c0h寄存器——索引号为10h的属性方式控制寄存器有一功能是控制线图字符码的。我试过,没有成功,可能是在10h中断底层又修复了我的设置。



三川一笑
2008-12-19 22:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wuchan
初级用户





积分 119
发帖 59
注册 2008-11-21
状态 离线
『第 11 楼』:  

可以了
衷心的谢谢,
提醒下压缩包里的TXT文档实例用的是":"号,但文档前部的格式说明没有错.我粗心只看了实例...^_^

2008-12-20 11:51
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sanchuan
初级用户





积分 113
发帖 51
注册 2008-11-16
来自 武汉
状态 离线
『第 12 楼』:  



  Quote:
Originally posted by wuchan at 2008-12-20 11:51:
可以了
衷心的谢谢,
提醒下压缩包里的TXT文档实例用的是":"号,但文档前部的格式说明没有错.我粗心只看了实例...^_^

谢谢你指正,是我疏忽。现在实例中都是等号了。



三川一笑
2008-12-20 17:50
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
supertom
初级用户





积分 62
发帖 31
注册 2008-3-28
状态 离线
『第 13 楼』:  

期待三川更完美的新版本

2008-12-23 11:44
查看资料  发短消息 网志   编辑帖子  回复  引用回复
joinnow2008
初级用户





积分 37
发帖 17
注册 2008-12-22
状态 离线
『第 14 楼』:  

执行,没反应.

2008-12-27 19:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
joinnow2008
初级用户





积分 37
发帖 17
注册 2008-12-22
状态 离线
『第 15 楼』:  

奇怪,

执行之后,有头,有尾,就是没有中间????

按英文字母,或时间自动结束后,自动返回

A:>

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


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



论坛跳转: