Board logo

标题: 请求DOS编程高手开发程序! [打印本页]

作者: youjiang     时间: 2004-2-16 00:00    标题: 请求DOS编程高手开发程序!
我想开发一个程序,让这个EXE实现不让DOS支持256色的图片(包括DOS程序EXE中265的图形)在DOS下显示!

论坛上有哪位高手可以做到啊!谢谢

作者: youjiang     时间: 2004-2-16 00:00
想禁止纯DOS下显示图片,应该怎么办?

我在AUTOEXEC。BAT中试过

@echo off和ctty nul及mode 40等方法来改变显示模式,

可是仍然不行,DOS下还是可以正常显示一些如PCX等DOS下的图片!


作者: Kinglion     时间: 2004-2-16 00:00
楼主的要求我倒是头一回听说,新鲜!回去实验后再说!

作者: youjiang     时间: 2004-2-17 00:00
听一些汇编高手说要用代码实现在DOS下只支持字符方式显示就可以完成目地了!

作者: Kinglion     时间: 2004-2-19 00:00
以下是引用youjiang在2004-2-17 14:51:02的发言:
听一些汇编高手说要用代码实现在DOS下只支持字符方式显示就可以完成目地了!


这种方法好象不行,很多软件能自动转换屏幕显示方式.

作者: youjiang     时间: 2004-2-19 00:00
以下是引用Kinglion在2004-2-19 4:32:47的发言:
以下是引用youjiang在2004-2-17 14:51:02的发言:
听一些汇编高手说要用代码实现在DOS下只支持字符方式显示就可以完成目地了!


这种方法好象不行,很多软件能自动转换屏幕显示方式.

这种方法,可以,因为可以让它驻留内存啊,别的软件就不能再自动转换了,呵呵
我有一位网友,叫罗云彬的已经帮我现实了,我马上贴出源程序给大家,
让大家学习一下!

作者: youjiang     时间: 2004-2-19 00:00
code segment
assume cs:code,ds:code
org 100h
start: jmp install
msg: db 'This program is graphics mode!',0ah,0ah,0
oldint10 dd ?
newint10:
push ax
cmp ah,00
jnz NotMode
mov al,03
NotMode:
pushf
call cs<img src="images/smilies/face-surprise.png" align="absmiddle" border="0">ldint10
pop ax
retf 2


install: push cs
pop ds
mov ax,3510h
int 21h
mov word ptr oldint10,bx
mov word ptr oldint10+2,es
lea dx,newint10
mov ax,2510h
install: push cs
pop ds
mov ax,3510h
int 21h
mov word ptr oldint10,bx
mov word ptr oldint10+2,es
lea dx,newint10
mov ax,2510h
int 21h
mov dx,offset install+120h
mov cl,04h
shr dx,cl
mov ah,31h
int 21h
code ends
end start

作者: youjiang     时间: 2004-2-19 00:00
上面代码,确实可行,大家编译一下,试一下就明白了,
执行这个编译的EXE,呵呵,以后在DOS下不能显示一切图形了,

不过除非你重装系统之后就又可以在DOS下正常显示图形了!

罗老师真是一个高手,令人敬佩,这个程序我问过好多高手,都没人能帮我,
罗老师确通过一些短短的代码实现,了不起!

作者: medalas     时间: 2004-2-19 00:00
在dos下如何实现让自编的1.exe文件在接受到串口发送过来的字符1后自动运行啊?
如果还有2.exe,3.exe呢?用TC写串口程序,这又是一个EXE文件啊???

作者: pfox     时间: 2004-2-20 00:00
以下是引用youjiang在2004-2-19 12:15:30的发言:
这种方法,可以,因为可以让它驻留内存啊,别的软件就不能再自动转换了,呵呵
我有一位网友,叫罗云彬的已经帮我现实了,我马上贴出源程序给大家,
让大家学习一下!


能否联系罗先生,让其编写一个检测计算机类型对应XP里面是什么类型的程序?
见图: