中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS汉化世界 & 中文系统 (中文化室) » 关于"无需中文平台"的中文DOS软件的疑问?
« [1] [2] »
作者:
标题: 关于"无需中文平台"的中文DOS软件的疑问? 上一主题 | 下一主题
本是
银牌会员





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



  Quote:
Originally posted by xugaohui at 2008-11-29 17:32:
本是:
也有人用与vt系统软件相同的技术来显示中文。
http://bbs.wuyou.com/viewthread. ... page%3D1&page=1
这个东西非常好。
目前的 ...

RE:xugaohui:
无忧的帖子我看了,.PSF字体文件格式我也研究了,制作很简单。不过,我不想抢人家风头,就让他风光一下吧!——不过那个hzpsf.exe竟然500多K,太夸张了,我250字节就差不多了。窗口编程的最大问题可能就是体积庞大,让我至今不想学窗口编程。

VT技术应该可用于任何高低级语言。如果用BIOS编程即中断调用,Qbasic编程还要多费一番周折。用QB、Turbo Basic、First Basic或其它编译型语言要简单些。

附件是我用FirstBasic编的范例(源程序及.EXE),其它BASIC应该类似。

附件 1: BASVTFNT.RAR (2008-11-30 22:07, 20.57 K, 下载附件所需积分 1 点 ,下载次数: 24)


my major is english----my love is dos----my teacher is the buddha----my friends--how about U
2008-11-30 22:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xugaohui
高级用户




积分 774
发帖 293
注册 2003-4-16
来自 湖北仙桃
状态 离线
『第 17 楼』:  

谢谢本是。运行之后可以显示中文了,我学习下。
不了解First basic,用google搜索一下。
在这里发现了:
http://www.cn-dos.net/forum/view ... ge=1&sid=dSaGju
本是真是专家级。
Norton Utilities 8.0中文版 for DOS的窗口界面不正是power basic生成窗口界面吗?完全一模一样,可能是power basic+.RTLink 编写的。

[ Last edited by xugaohui on 2008-12-1 at 01:24 ]



下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
2008-11-30 23:04
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
julon
中级用户




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

我用qboot工具启动,应该是加载了vtm,为什么用英文edit编辑有中文的文件,不能正常显示中文呢?中英文双语版的软件也不能正常显示中文。谢谢!



http://hi.baidu.com/julon
2008-12-1 07:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
本是
银牌会员





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

单字节编码、双字节编码。如果知道两者的差别,就容易理解VtMagiK的所谓新、旧汉字内码了。也就能明白汉字系统制表符智能识别的来源了。也能明白VT技术使用后,软件制表符混乱了。



my major is english----my love is dos----my teacher is the buddha----my friends--how about U
2008-12-1 08:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
雨露
管理员

DOS非常爱好者


积分 6209
发帖 2598
注册 2006-1-20
状态 离线
『第 20 楼』:  



  Quote:
Originally posted by xugaohui at 2008-11-29 17:32:
雨露:
freedos的command.com汉化后也只能在freedos下运行。直接替换msdos 7.1的command.com后就不能用了。

不会呀,我用汉化的freedos1.0的command.com直接替换小云汉化的MSDOS7.1的command.com,照样正常运行!并不是专用的!



2008-12-1 10:37
查看资料  发短消息 网志  OICQ (156647374)  编辑帖子  回复  引用回复
xugaohui
高级用户




积分 774
发帖 293
注册 2003-4-16
来自 湖北仙桃
状态 离线
『第 21 楼』:  

freedos的command.com在执行for命令时变量是延迟处理的,不像ms是读是整行for命令后一起执行的。98se的引导盘根本不认freedosr command.com,替换后在config.sys菜单那里按f5键,总是提示你输入command.com的路径,就算你输入正确也还是提示你输入。输入ms的command.com路径就好了。
freedos的command.com不能识别这个命令set path=D:\,这不是搜索D:\目录,只能写成set path=D:
ms的command.com能识别这两种搜索路径。
ms的COMSPEC变量是C:\COMMAND.COM
freedos的COMSPEC变量是c:\command.com
反过来也不能用ms的替换freedos的command.com
还有好多细节都不相同。

[ Last edited by xugaohui on 2008-12-1 at 11:33 ]



下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
2008-12-1 11:28
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
雨露
管理员

DOS非常爱好者


积分 6209
发帖 2598
注册 2006-1-20
状态 离线
『第 22 楼』:  

肯定是有区别的,但跟汉化不汉化没有关系的吧!?



2008-12-1 11:54
查看资料  发短消息 网志  OICQ (156647374)  编辑帖子  回复  引用回复
xugaohui
高级用户




积分 774
发帖 293
注册 2003-4-16
来自 湖北仙桃
状态 离线
『第 23 楼』:  

回16楼本是的例子程序。
我是使用vbdos 1.0,将firstbas的bas改动了一下就可以了,但生成所程序运行第一次可以。第二次在运行的时侯总是显示出 “显示汉字”,不会再有乱码了。你而且你的程序是每次运行开始是乱码,然后是才是显示汉字,不过你使用了screen语句会清屏。
也就是说改后的basvtfnt程序可能会影响到其它有扩展acsii显示的程序,可能出现乱码了。
我是这样改的
' $INCLUDE: 'VBDOS.BI'
..................省略,去掉screen 0 和cls清屏
DEFINT A-Z
a$ = ""
FOR i = 0 TO (8 * 16 - 1)
  READ b
  a$ = a$ + CHR$(b)
NEXT
PRINT "Before replacing font: ";
PRINT CHR$(&H80); CHR$(&H81); CHR$(&H82); CHR$(&H83); CHR$(&H84); CHR$(&H85); CHR$(&H86); CHR$(&H87)

PRINT "Press any key to see font changed..."
b$ = INPUT$(1)

DIM regs AS regtypex
regs.AX = &H1100
regs.BX = &H1000
regs.CX = 8
regs.DX = &H80
regs.BP = SADD(a$) '下面三行改成vbdos的命令了。
regs.ES = SSEG(a$)
CALL INTERRUPTX(&H10, regs, regs)

PRINT "After  replacing font: ";
PRINT CHR$(&H80); CHR$(&H81); CHR$(&H82); CHR$(&H83); CHR$(&H84); CHR$(&H85); CHR$(&H86); CHR$(&H87)

PRINT "Press any key to see font restored..."
b$ = INPUT$(1)
'去掉改为显示模式0
END

vbdos的程序如果有窗口界面时,只能用screen 0.默认本来就是0.
如果在窗口程序退出时加入语句screen 12 : screen 0
这会导致把dos提示符界面给清屏。
请问要实现每次运行都是开始显示乱码,按任意键后显示中文,又不会清除屏幕上以前显示的内容,也不会影响到其它有扩展ascii字符的程序,怎么改程序?

[ Last edited by xugaohui on 2009-1-2 at 16:07 ]



下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
2009-1-2 14:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
本是
银牌会员





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

下面的程序是用系统默认8X16的ASCII点阵重置字符集,但不清除屏幕字符。你可以试验一下。
  mov ax,1130h
  mov bh,6
  int 10h ;  get font type bh info into;   cx=points,dl=rows, es:bp=ptr
  xor dx,dx;mov dx,0
  mov cx,100h
  mov bx,1000h
  mov ax,1110h
  int 10h ;  font load bh=points, bl=block;   cx=qty, dx=1st char code;   es:bp=ptr to font table
  ret

[ Last edited by 本是 on 2009-1-2 at 23:34 ]



my major is english----my love is dos----my teacher is the buddha----my friends--how about U
2009-1-2 23:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xugaohui
高级用户




积分 774
发帖 293
注册 2003-4-16
来自 湖北仙桃
状态 离线
『第 25 楼』:  

看不懂汇编,先收藏了。谢谢本是。




下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
2009-1-3 00:03
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
本是
银牌会员





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

“请问要实现每次运行都是开始显示乱码,按任意键后显示中文,又不会清除屏幕上以前显示的内容,也不会影响到其它有扩展ascii字符的程序,怎么改程序?”
    只要每次想显示正常英文字形时就调用如下程序段就可以了。

DIM regs AS regtypex
regs.AX = &H1130
regs.BX = &H0600
CALL INTERRUPTX(&H10, regs, regs)

regs.AX = &H1110
regs.BX = &H1000
regs.CX = &H100
regs.DX = 0
'regs.BP, regs.ES 从上一中断调用中获得
CALL INTERRUPTX(&H10, regs, regs)

RETURN

[ Last edited by 本是 on 2009-1-3 at 00:35 ]



my major is english----my love is dos----my teacher is the buddha----my friends--how about U
2009-1-3 00:31
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xugaohui
高级用户




积分 774
发帖 293
注册 2003-4-16
来自 湖北仙桃
状态 离线
『第 27 楼』:  

在vbdos中试了,很好,很实用。再次感谢本是。



下载
09年7月7日 更新
感谢网友 囧HQY 提供空间
2009-1-4 00:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fjb007
新手上路





积分 2
发帖 1
注册 2009-3-6
状态 离线
『第 28 楼』:  

下载,才发现下不了,大概是没有积分吧

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


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



论坛跳转: