![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-06 09:31 |
共 47,812 主题排行 / 349,914 发帖 / 今日 0 篇 / 48,268 会员排行 |
| DOS启动盘 & LOGO技术 (启动盘室) » [新手必看]很多人都问的开机LOGO的格式 |
| 可打印版本 1,168 / 1 |
| 第1楼 playboy2925 | 发表于 2003-07-21 00:00 |
| 银牌会员 发帖 393 积分 1,275 | |
|
[新手必看]很多人都问的开机LOGO的格式 用过Windows95(MS-DOS 7.x)的朋友都知道,C盘下的logo.sys就是开机画面。
但logo.sys是什么格式呢? 1. bmp格式的位图 2. 大小必须为320×400Pix 3. 256色 4. 文件名必须是logo.sys,并且必须放在C盘或A盘的根目录下。 5. 如果想做会动的,可以用16进制编辑器,当然有xrx和开机魔术师也可以。 所以,把一张图片让其符合以上要求,并保存成名为logo.sys的文件,放在C盘或A盘的根目录下就OK了。这下大家都知道了吗??? Win98 WinME 和Dos 也可以用。 但在msdos.sys裡,要設置LOGO=1這項 Dos的开机时间太短,可能会看不清楚。 大家都知道bmp格式的图片是不会动的,可为什么windows给让它动起来呢? 呵呵,ms的logo动的是调色板,大家用一下开机动画魔术师就知道了。 开机动画魔术师下載:http://www.newhua.com/down/CLogoMag.exe Xrx Logo Utilities下載:http://www.xrx.ca/logoutils/download_sites.htm 以上由dosbbs发表,playboy2925整理。 |
|
| 第2楼 playboy2925 | 发表于 2003-07-24 00:00 |
| 银牌会员 发帖 393 积分 1,275 | |
|
Windows 的引导图形界面及抖动变色图像的形成 一、引言 Windows 95以更新更好的界面展现在用户面前,而给人印象最深 的是表明其是"彻底"图形界面的引导及结束时的标志图形。Windows 95使系统由图形引导启动并在图形界面中关闭,系统在显示微软启动 徽标的同时进行初始化,在显示等待信息的同时完成系统退出并以一 个图形化的提示信息结束系统工作。此外,Windows 95还为旧DOS程序 的运行设计了很好的图形化界面, 从而使系统的整个工作过程完全可 以脱离过去的命令行方式。本文介绍这些界面图形的定制和使启动封 面图形抖动变色的方法。 二、Windows 95的三幅界面图 Windows 95用三幅图完成其初始化和关闭传递信息工作,即启动 徽标(封面)、封底1(显示 "Please wait while your computer shut s down" 、封底2(显示 "It's now safe toturn off your computer" 。其中封底1和封底2的图形是两个256色的位图文件,名字分别为LOGOW.SYS和LOGOS.SYS,存放在Windows的工作目录下,负责这两个图形 显示的程序分别是USER.EXE和WIN.COM,它们在打开相应的图形文件后 分别作文件格式检查。 WIN.COM的检查段代码为: debug win.com -u 3b68 3b83 0AF4:3B68 813F424D CMP WORD PTR ,4D42 0AF4:3B6C F9 STC 0AF4:3B6D 75B9 JNZ 3B28 0AF4:3B6F BBCE40 MOV BX,40CE 0AF4:3B72 833F28 CMP WORD PTR ,+28 0AF4:3B75 75F5 JNZ 3B6C 0AF4:3B77 837F0C01 CMP WORD PTR ,+01 0AF4:3B7B 75EF JNZ 3B6C 0AF4:3B7D 837F0E08 CMP WORD PTR ,+08 0AF4:3B81 75E9 JNZ 3B6C 0AF4:3B83 60 DB 60 寄存器BX中装的是打开成功的文件LOGOS.SYS首地址的偏移值,通 过对比位图文件的首部结构,我们可以立即得到所打开的文件LOGOS.S YS是一个非压缩、位面数是1、256色的位图图像文件(关于位图文件 的头部标志域可见附录1 的简述)。实际上LOGOS.SYS文件确实是一个 完整的位图文件,可以用Paintbrush编辑,它显示封底2的信息。因此 我们可产生相应格式的位图文件取代,试验证明完全可行。 USER.EXE对LOGOW.SYS也作类似处理,只是对位图标志域检查对比 的部分语句不连续,其各项检查如下: ren user.exe userexe debug userexe -u 5ada:abb8 5ADA:ABB8 813F424D CMP WORD PTR ,4D42 -u 5ada:abc4 5ADA:ABC4 833F28 CMP WORD PTR ,+28 -u 5ada:abcb 5ADA:ABCB 837F0C01 CMP WORD PTR ,+01 -u 5ada:abd3 5ADA:ABD3 837F0E08 CMP WORD PTR ,+08 其中寄存器BX中为打开的LOGOW.SYS存储首址。由此可见,可以用 相应格式的位图来取代LOGOW.SYS用作封底1的显示。 值得注意的是,显示时自动按设定的屏幕分辨率来做全屏幕显示, 对640×480、256色的屏幕,其位图大小最好设定为320×400像素。 三、启动徽标封面的定做方法 Windows 95的封面没有独立文件形式的位图文件,这与WIN.COM对 LOGOS.SYS的处理和USER.EXE对LOGOW.SYS的处理不同。笔者在剖析引 导文件IO.SYS的过程中发现,Windows 95的启动封面徽标是嵌入在引 导文件IO.SYS中的,并经DBLSPACE压缩过,图像数据区长度为64KB。在 笔者剖析的Windows 95版本中,图像数据占据IO.SYS(文件长度223748 B)217~344扇区,数据内部有多处"DS"标识,这是DBLSPACE压缩文件的 标志,由于DBLSPACE是分段校验压缩文件,因此,即使此区内有一个字 节的改动也会造成图像的大幅破坏。在上述IO.SYS中,图像显示执行 代码部分起始于以"DBLSBIN$\LOGO.SYS"标志的地方并占据110-112扇 区。由于DBLSPACE的压缩文件很复杂并分段校验,使我们不能像对Win dows3.1的WIN.COM 那样通过改动组合文件或重编WIN.COM的部分代码 来定做启动封面,但可以在MSDOS.SYS中以Logo=0来消隐显示。关于配 置文件MSDOS.SYS的设定已有文献可查,本文附录2简述了其配置设定 选择。 实际上,启动封面也是可以定做的。笔者在分析IO.SYS的过程中 发现,IO.SYS在显示内部嵌入封面前先试图打开一个在引导目录下名 为LOGO.SYS的文件(利用DOS功能调用INT 21H,AH=3DH子功能),若打开 失败(此文件不存在)则转显示内部嵌入封面(在WIN.COM及USER.EXE中 打开文件失败时则不显示图形,而代之以文本显示有关信息),若打开 成功则做文件格式检查,其要求的格式比WIN.COM对LOGOS.SYS的检查 条件苛刻。 IO.SYS对LOGO.SYS检查的代码如下: debug io.sys -u de0e 12B9 E0E 813C424D CMP WORD PTR ,4D4212B9 E12 0F DB 0F12B9 E13 854801 TEST CX,12B9 E16 83C60E ADD SI,+0E-u de19 12B9 E19 833C28 CMP WORD PTR ,+28-u de20 12B9 E20 837C0C01 CMP WORD PTR ,+01-u de28 12B9 E28 837C0E08 CMP WORD PTR ,+08-u de30 12B9 E30 817C044001CMP WORD PTR ,0140-u de39 12B9 E39 817C089001CMP WORD PTR ,0190-u de42 12B9 E42 837C1000 CMP WORD PTR ,+00从以上代码我们可以立即看出,所打开的文件是一个非压缩、幅 度320×400、位面数为 1、256色的位图文件。因此,可以用Paintbrush等工具形成一个256 色非压缩、320像素×400像素的位图文件并命名为LOGO.SYS,将其?在引导目录下即可。要求的LOGO.SYS格式恰好与LOGOS.SYS及LOGOW.S YS的格式一致。作为验证,可将LOGOS.SYS或LOGOW.SYS命名为LOGO.SY S并放在引导目录下,实验证明完全可行。如果引导目录下有名为LOGO .SYS的文件,但没有通过上述所有检查,则拒绝显示并且也不再显示内 部嵌入的徽标封面。 四、撤销对LOGO.SYS的格式检查并形成抖动变色的徽标封面 用上述方法显示的外部封面图像是静止的,而IO.SYS中的图像下 面具有一个滚动的颜色条,如碌姆椒ㄔ蚩梢允雇枷裱丈浠抖?如果去掉引导目录下的 LOGO.SYS,则IO.SYS内嵌的图像也可以做到整 幅图面"彩云流动",具有很强的动感。位图的抖动变色是由IO.SYS处 理的,其有关处理标志嵌入到上面对LOGO.SYS 的判断语句内,因此将 相关的语句作一赂亩纯伞7椒ㄎ?用PCTOOLS或其它工具(DEBUG等 )找到下面有下划线的部分,将其均改写为16进制机器代码90(nop不作 任何操作的空指令),在首尾之间共60字节,其中含有一些代码在上文 的反汇编中并未列出。 debug io.sys -d de00 12B9 E00 00 93 BA 02 00 E8 D6 02 -0F 82 52 01 8B F2 81 3C ..........R.... 12B9 E10 42 4D 0F 85 48 01 83 C6 -0E 83 3C 28 0F 85 3E 01 BM..H..... 12B9 E20 83 7C 0C 01 0F 85 36 01 -83 7C 0E 08 0F 85 2E 01 .|....6..|..... 12B9 E30 81 7C 04 40 01 0F 85 25 -01 81 7C 08 90 01 0F 85 .|.@...%..|.... 12B9 E40 1C 01 83 7C 10 00 0F 85 -14 01 8B 44 24 1E 2E 8E ...|.......D$.. 12B9 E50 1E 3E 0F A2 D8 02 F6 D8 -04 FF A2 D9 02 84 E4 74 .>............. 12B9 E60 06 A3 DA 02 A3 DC 02 1F -2E C6 06 F2 8E 00 16 07 ............... 12B9 E70 83 EC 26 8B FC BD 5F 03 -E8 45 02 B9 00 80 E8 E9 ..&..._..E..... 对IO.SYS作上述改动后,可以显示任何位图,但由于显示是根据系 统显示驱动程序及屏幕调整图形大小,因此尺度上仍以原设定为好。 若想做改动应先测试,结果可能会失真,但不影响显示及运行。经过上 述改动后,在没有外部LOGO.SYS 的情况下,内嵌的封面可以抖动和变 色。若将LOGOS.SYS或LOGOW.SYS命名为LOGO.SYS并放在引导目录下即 可代替内部封面而且具有变化的色彩。但若对这两个位图进行了编辑 或是用Paintbrush形成的新文件一般不能变色,这是由于 Paintbrush 形成的文件实际用到的色彩很少,位图颜色表大部分是空的。要形成 一个新的变色徽标应该: 1.用Paintbrush等形成一个普通256色位图; 2.使形成的位图具有完全的256颜色索引表,这可以从LOGOW.SYS 或LOGOS.SYS 的颜色索引表中得到,即复制LOGOW.SYS或LOGOS.SYS文 件偏移36H~436H的域到新文件相同的域。注意不要改动位图前0~36 H字节。将新文件命名为LOGO.SYS并放在引导目录下即可。 五、撤销WIN.COM及USER.EXE对LOGOS.SYS 和LOGOW.SYS的格式检 查 方法与前面类似,此处不再一一详述。 由于引导文件非常重要,在做改动时一定要在拷贝上改动,现在DO S7用IFSHIP.SYS可以处理长达255B的文件名,而此文件名的存储是将 目录项属性字节改为0FH,即系统(04)+隐藏(02)+只读(01)+卷标(08)= VFAT的文件名属性(0FH),并利用多个目录项区将长文件名连续存放。 为了防止数据丢失,DOS7屏蔽了绝对磁盘写INT 26H, 而PCTOOLS等工 具的EDIT功能是调用INT 26H进行写盘的的,若在硬盘上改动会造成系 统死锁而取消写盘,在软盘上则没有这个问题,因此建议对IO.SYS的修 改在系统软磁盘上进行。 对DOS7的系统软盘形成很容易,在DOS7下初始化的磁盘,只将IO.S YS、MSDOS.SYS、COM-MAND.COM拷进即可引导Windows 95,这是由于DO S7有更精巧的 BOOT引导区,引导文件IO.SYS可以不连续存放、不占起 始簇、文件名项不是第一目录项。 六、附录: MSDOS.SYS 的配置和位图文件结构 附录1:本文涉及到的位图文件首部重要域 偏移 长度(Bytes) 标识信息 00H 2 424DH 即 "BM" 0EH 4 位图信息头大小 28H=40字节 12H 4 位图宽度像素数 4001H=320个像素 16H 4 位图高度像素数 9001H=400个像素 1AH 2 位图目标设备位面数 1 1CH 2 位图阵列每像素所需位数,可取值为 1:单色,4:16色,8:256色,24:16G色 1EH 4 位图压缩标志,可取值:0:未压缩,1:行程压缩8 位位 图,2:4位压缩位图 因此本文IO.SYS所读的位图LOGO.SYS是非压缩、位面数为1、 256色、宽320像素、高400像素的位图。 附录2:MSDOS.SYS 中的配置选择 Logo=1/0;1:显示徽标,0:消隐徽标 BootGUI=1/0;1: 启动后直接引导视窗,0:启动后显示DOS提示符 Network=1/0;1:网络已安装,0:未安装 BootWin=1/0;1: 引导视窗系统,0:引导旧的DOS系统 BootDelay=2 ;1:Starting Windows 95 标志延迟可以改成它 值, 0:不显示 BootKeys=1/0 ;1:激活启动控制功能键F4/F5/F8,0:屏蔽启动功 能键 DrvSpace=1/0 ;1/0:加载/不加载磁盘压缩程序 Dblspace=1/0 ;1/0:加载/不加载磁盘压缩程序 DoubleBuffer=1/0 ;1:需为不兼容设备保留常规内存,0:不保留 UninstallDir=D:\ ;取消安装驱动器,其根目录上有2个用于恢复的文件 WinDir=C:\Windows ;工作目录 WinBootDir=C:\Windows ;启动目录 HostWinBootDrv=C: ;所在磁盘 对不同的安装设置,上面所示可能有的没有,可以对MSDOS.SYS进 行编辑。 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |