在视窗化环境下允许中文系统进入并执行的方法技术方案

技术编号:2892498 阅读:285 留言:0更新日期:2012-04-11 18:40
本发明专利技术关于一种在窗口化环境下允许以绘图模式模拟文字模式的软件(尤指中文系统)进入并执行的方法,该方法包括在进入部分荧幕磁碟操作系统区域的模式前,将显示硬件设定成适于文字模式操作的环境;以及在进入部分荧磁碟操作系统区域的模式后,使该以绘图模式模拟文字模式的软件停止将一填入文字模式视讯缓冲区的内码转成对应的文字字形并填入一绘图模式视讯缓冲区。(*该技术在2012年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术关于一种在窗口化环境下允许以绘图模式模拟文字模式的软件进入并执行的方法,特别关于一种在微软窗口部分荧幕磁碟操作系统区域(MicrosoftWindowsPartialScreenDOSSection)环境下允许以绘图模式模拟文字模式的中文系统进入并执行的方法,Microsoft(公司名)的Windows(窗口程序)是一个以图形导向的多工操作系统,为了使以前的依据磁碟操作系统(DOS)所开发的应用程序(或称应用软件)能够直接在Windows的环境下执行,Microsoft在推出Windows时,便提出一种称为Shell(外壳)的方式,模拟一个未进入Windows前的DOSSection(磁碟操作系统区域),令使用者可在Windows的环境下执DOS的命令解译程序(COMMAND.COM)。磁碟操作系统区域可分为二种模式,一个是占据整个显示荧幕的全荧幕磁碟操作系统区域(FullScreenDOSSection),另一个是多个窗口同时可存在于荧幕上的窗口化磁碟操作系统区域,亦称之为部分荧幕磁碟操作系统区域(PartialScreenDOSSection)。由于全荧幕磁碟操作系统区域允许在该模式下操作的软件程序单独控制显示硬件,例如显示卡(DisplayCard),且由于全荧幕磁碟操作系统区域已被模拟成如同磁碟操作系统的操作环境,因此以绘图模式模拟文字模式的中文系统就可以进入该操作环境并正常执行。Windows在增强模式(EnhancedMode)下可开启多个窗口的部分荧幕磁碟操作系统区域,允许文字模式的软件程序在该模式下操作。然而,由于以绘图模式模拟文字模式的软件(例如中文系统),在本质上并非是单纯的文字模式,且由于在该模式下操作的软件无法如同在全荧幕磁碟操作系统区域的模式下可以完全控制硬件,而必须通过Windows的操作控制,因此,以绘图模式模拟文字模式的中文系统并无法进入部分荧幕磁碟操作系统区域,况且,即使解决了(稍后说明)中文系统进入部分荧幕磁碟操作系统区域的问题,然而如上述,在该模式下的Windows仍能控制显示硬件,因此即使中文系可以进入该模式,但由于在该模式下的中文系统本质上还有可能占据显示硬件的控制权,使中文系统并不能够在该模式下操作,为此必须再解决中文系统与Windows在部分荧幕磁碟操作系统区域的模式下两者都要控制显示硬件的问题,否则中文系统仍无法在该模式下正常执行。所以,本专利技术的一个目的是提供一种方法,使以绘图模式模拟文字模式的软件(例如中文系统,日文系统,及韩文系统等)能够进入MicrosoftWindows的部分荧幕磁碟操作系统区域。本专利技术的另一个目的是提供一种方法,使以绘图模式模拟文字模式的软件能够在部分荧幕磁碟操作系统的模式下正常执行,使得原先以该软件(例如中文系统)为基础所发展出来的应用程序,无须作任何修改,即可直接在Windows的窗口化环境下执行。本专利技术的其他目的及详细
技术实现思路
,在配合附图说明后,可进一步获得理解。图1示出一用以储存待显示资料的存贮器;图2示出利用虚拟显示装置(VDD)服务程序,爪勾(Grabber),及显示驱动程序处理虚拟荧幕的方块图;图3示出中文系统的主要模组结构;图4示出中文系统输出模组的流程图;图5示出中文系统监控视讯缓冲区模组的流程图;图6示出由全荧幕磁碟操作系统区域切换至部分荧幕磁碟操作系统区域的流程图;图7A示出Windows透过呼叫虚拟显示装置表达式(VDD_SetVMFocus())来设定虚拟机器焦点的流程图;图7B示出本专利技术在图7A设定虚拟机器焦点的过程中插入将显示硬件的显示暂存器规划成文字模式的流程图;图8示出本专利技术在图4所示中文系统输出模组中插入判断是否在部分荧幕磁碟系统区域,并增加一可启动虚拟显示装置服务程序的流程图;图9示出Windows通过VDD输出输入端口服务程序来管理存取虚拟机器或显示硬件的方块图;为方便说明起见,以下特以Microsoft的Windows3.0配合本公司的以绘图模式模拟文字模式的中文系统为例来阐述本专利技术。将资料显示在荧幕的方式,一般有利用绘图模式的显示方式,文字模式的显示方式,以及以绘图模式模拟文字模式的显示方式三种。当然,将资料显示在荧幕的方式一般还需要与一显示硬件(例如显示卡)配合使用。图1示出一用以储存待显示资料的存贮器,该存贮器设置于一显示硬件中。该存贮器对应于存贮器位置0×A000到0×C000之间,所述显示硬件可扫瞄这一段存贮器的内容,将内容显示在荧幕上,因此,称该显示硬件上的这一块存贮器为视讯存贮器(VideoRAM),而视讯存贮器对应于存贮器中的位置区域称为视讯缓冲区(VideoBuffer),位置从0×A0000至0×B0000的存贮器称为绘图模式视讯缓冲区;位置从0×B0000至0×C0000称为文字模式视讯缓冲区。在绘图模式下,视讯缓冲区的内容与荧幕的内容是点对点地相对应的,视讯缓冲区上的几个位元对映到荧幕上的一个点,例如绘图模式视讯缓冲区的起始位置0xA0000对映到荧幕上的左上角。软件把值填在视讯缓冲区上的适当位置,即可以使硬件在荧幕上显示出对映的内容。在文字模式下,视讯缓冲区的内容就不是直接的用硬件以点对点的方式显示在荧幕上。文字模式视讯缓冲区的内容是以每个字(charcter)例如为两个位元组的形式存在,第一个位元组是显示文字的内码(SACIICode),第二个位元组则是显示该文字属性(Attribute)。在文字模式下硬件扫瞄视讯缓冲区,将缓冲区内的内码及属性转换成位元对应式的文字字形,并送到荧幕显示出来,例如在文字模式视讯缓冲区的开头,存贮器位置0×B8000上填入0×41,0×07,硬件就可以将一个黑底白字的英文字母A显示在荧幕的左上角。因此,在文字模式下,软件只须将欲显示的内码及属性填在视讯缓冲区,就可以在荧幕上显示出相对应的文字。但是这种文字模式的显示方式无法显示中文字,因为一般的显示硬件只能把英文文字的内码转换成为位元对映式的文字字形并送到荧幕上予以显示。因此,如果要在荧幕上显示中文字,软件必须在绘图模式视讯缓冲区内,将中文字形以图形的方式,一点一点的填在绘图模式视讯缓冲区内,才能将中文字显示在荧幕上。这种将中文以图形的方式填在视讯缓冲区的工作相当繁琐,如果每一个应用程序必须由自己做这些工作,必然大大增加软件发展的困难。因此中文系统提供一种方法,将这些重覆的动作集中在中文系统来处理,使应用程序要在荧幕输出中文字时,可以如同文字模式一样,只要在文字模式视讯缓冲区填入欲显示的中文字的内码及属性就可以了,其他的工作则由中文系统来完成。对于以绘图模式模拟文字模式的方式而言,中文系统为了要在绘图模式视讯缓冲区内填入中文字形,必须使显示硬件在绘图模式之下工作,但是为了使应用软件能够以文字模式工作,即要使应用软件直接将要显示的内容以代码的形式填在文字模式视讯缓冲区,中文系统必须使应用程序认为目前的模式是文字模式。为了达到这个目的,中文系统首先必须将显示硬件规划成文字模式视讯缓冲区和绘图模式视讯缓冲区可以同时被存取,并且中文系统必须修改基本输入输出系统(BIOS)资料区的部分内容,拦截部分基本输入输出系统表达式。因为应用程序通常都是由基本输入输出系统资本文档来自技高网
...

【技术保护点】
一种在窗口化环境下允许以绘图模式模拟文字模式的软件进入并执行的方法,其特征在于,包含:在进入部分荧幕磁碟操作系统区域的模式前,将显示硬件设定成适于文字模式操作的环境;以及在进入部分荧幕磁碟操作系统区域的模式后,使该以绘图模式模拟文字 模式的软件停止将一填入文字模式视讯缓冲区的内码转成相对应的文字字形并填入一绘图模式视讯缓冲区。

【技术特征摘要】

【专利技术属性】
技术研发人员:张训宾许恒博
申请(专利权)人:宏电脑股份有限公司
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1