无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 35375|回复: 313
打印 上一主题 下一主题

DOS下查找磁盘里的grub.exe并运行,增加一个刷入BIOS的img

  [复制链接]
1#
发表于 2015-1-23 10:38:36 | 显示全部楼层

若整个硬盘或usb上没有grub.exe,或grub.exe放在较后的位置,这程式会花长时间搜索,甚至死机。
有没有必要作文件夾搜寻?这个还需参详。

通常情况,grub.exe会放在根目录或 \boot\grub下
其实两句batch命令便可以了,当然也可以写个小汇编来实行,大概能小于500bytes
把下面的文字写入一个 xxx.bat,执行则可,前提是grub.exe须放在任何一个驱动器(包括硬盘、光盘和usb)的  \   或  \boot\grub下

@echo off
FOR %%A IN (C: D: E: F: G: H: I: J: K: L: M: N: O: P: Q: R: S: T: U: V: W: X: Y: Z: ) DO if exist %%A\grub.exe %%A\grub.exe %1 %2 %3 %4 %5 %6 %7  
FOR %%A IN (C: D: E: F: G: H: I: J: K: L: M: N: O: P: Q: R: S: T: U: V: W: X: Y: Z: ) DO if exist %%A\boot\grub\grub.exe %%A\boot\grub\grub.exe %1 %2 %3 %4  %5 %6 %7
回复

使用道具 举报

2#
发表于 2015-1-23 16:04:52 | 显示全部楼层

这个汇编也不复杂,照batch的思路便可,依次找寻每一个盘的\grub.exe 和 \boot\grub\grub.exe
找到则载入,找不到离开。
另外,你的程式并不传递变量,比如 g help之类,grub.exe 是不能接收到的。

这个小 com  和 batch 功能一样,比batch还小,只有312 bytes
G.rar (328 Bytes, 下载次数: 33)
回复

使用道具 举报

3#
发表于 2015-1-23 17:41:16 | 显示全部楼层
本帖最后由 TajuraTong 于 2015-1-23 17:42 编辑
2013abcdefg 发表于 2015-1-23 17:10
可否提供i源码学习一下?


噢,对不起忘了源码!

尽管思路一样,batch和汇编仍有差别,因为batch面对的是command.com,
command.com代做了许多麻烦事,汇编面对是int 21h,利用ah=43h int21h读取file属性,
读到则表示存在,马上执行,读不到则不存在,盘符+1继续读,直到盘符到Z:为止。
找完 \grub.exe 后若无果则继续找  \boot\grub\grub.exe

比较麻烦的是,无论开启file或者读取file属性,只要盘符不存在或者碰到光盘(没有插片),
dos都会弹出错误讯息如:装置未就绪 或 Drive not ready之类的句子(batch好像没有这个烦), 
所以还要拦截int 23h和int 24h(错误处理中断),让自己的编码处理,其实就是不处理,消灭了错误讯息!
g-asm.rar (1017 Bytes, 下载次数: 16)
回复

使用道具 举报

4#
发表于 2015-1-24 12:14:35 | 显示全部楼层
你想找grub.exe 还是 ghost.exe,其实只要改一下file地址便可以了。
我更改了g.asm的设定,改成g2.asm,新的g2.com把档案路径移到程式最末,你可以任意添加多条路径,比如
A:\dos\ghost.exe
A:\pe\ghost.exe
其中,[A:\] 和 程式名称如   [ghost.exe',0]  是必须的,新的搜查方式是会逐条路径逐个盘符搜查。
直到没有新路径为止。

为什么不搜索文件夹?其实我也用汇编写了,但速度太慢,每部机子情况不同,没必要浪费时间。

这程式是com 制式,必须将exe ->com,压缩包里包含了exe to com 的工具和g2.asm源码
你可以任意 [修改] 或 [添加]  g2.asm 里最末的路径和执行档案名称,编译成exe后再用exe2bin工具转为com

exe to com使用方法
dos 之下键入
loadfix exe2bin XXX.exe  XXX.com

其中xxx是执行档名称

exe2com.rar (8.34 KB, 下载次数: 31)
回复

使用道具 举报

5#
发表于 2015-1-24 13:29:45 | 显示全部楼层
2013abcdefg 发表于 2015-1-24 12:51
我是想实现这样的效果
使用参数如   g.com /ghost   是查找根目录的ghost.exe并运行
                    ...

用参数方式查找也很简单,我的程式改一下就可以了,不过今天特忙,有空再给你看看吧,dos程式的参数,即 xxx.exe  [参数1]  [参数2]
参数都会放在cs: 区块80h的位置,80h是参数的bytes数(包括空白),82h开始才是真正的参数,汇编要自己处理,不像c那么简单就是
回复

使用道具 举报

6#
发表于 2015-1-24 22:37:03 | 显示全部楼层
2013abcdefg 发表于 2015-1-24 21:01
TajuraTong, 其实你的程式还可以做得更通用性, 把文件名作为参数变量,直接查找XXX.EXE 并运行. 如: g.com   ...

分析 /grub 或者 /ghost 之类的参数,弹性比较少,不如直接给出位置和程式。

这个版本加入参数分析,但不须指定/grub或/ghost

用法: g2x [程式完整路径]     (不用给出盘符)

例如1: g2x \grub.exe   (程式会由A:\grub.exe开始搜,到Z:\grub.exe,只要找到则执行。
例如2: g2x \boot\pe\ghost.exe   (程式会由A:\boot\pe\grub.exe开始,到Z:\boot\pe\grub.exe,只要找到则执行        。
没有参数或者找不到程式则直接结束。

这版本也可以传递参数:
  g2x \boot\pe\ghost.exe xxxxx yyyyy zzzzz
      跟
  ghost.exe xxxxx yyyyy zzzzz  等价,三个参数依次传递。


刚抽空写好了这个版本才看到你的回复,哈哈,忽忙写的,没有怎么测试,看看有没有bug吧

g2x.rar (2.67 KB, 下载次数: 22)

回复

使用道具 举报

7#
发表于 2015-1-25 08:56:14 | 显示全部楼层
2013abcdefg 发表于 2015-1-24 23:08
好的,谢谢,你的效率很高. 我测试再看有什么.

暂时看不出那里出错,这版本加了错误讯息,会显示什幺出错。你可以试在实机测试一下。
运行的program必须为com或exe,程式没有做检查,若是bat或cmd或其他,运行结果将是灾难。
g2x.rar (2.47 KB, 下载次数: 17)
回复

使用道具 举报

8#
发表于 2015-1-25 10:38:46 | 显示全部楼层
2013abcdefg 发表于 2015-1-25 09:20
在windows下测试是正常的
用MSDOS的IMG是正常的,可能我上面的IMG有问题吧

刚才想了想,要运行bat和cmd一点也不难,不过要修改一下程式,等有空再说
今天也很忙,回头再看看你的msdos吧
回复

使用道具 举报

9#
发表于 2015-1-25 17:38:26 | 显示全部楼层
2013abcdefg 发表于 2015-1-25 13:55
ROMD64KB.zip, 这个是freedos的,我是用这个刷入网卡ROM的, 经测试发现,你的第一版的g.com, 完全正常.

从 ...


freeDos分折参数的方式可能和别的dos有分别,暂时没空研究.
但你可以在加入参数的时候多加一个空白或以上,即

g2x \ghost.exe  <--- 1个空白,失败
g2x  \ghost.exe <--- 2个空白,我这里测试正常 
  
回复

使用道具 举报

10#
发表于 2015-1-25 19:39:25 | 显示全部楼层
2013abcdefg 发表于 2015-1-25 18:55
按你说的测试 ,居然可以成功!  
g2x  \ghost.exe

这里做了一个特殊处理,照理可以适合 freedos或其他dos,不用理会多少空白,一个或以上皆可,你可以test一下,去吃饭了,今天到此为止,嗯...
g2x.rar (2.68 KB, 下载次数: 32)
回复

使用道具 举报

11#
发表于 2015-1-27 14:44:36 | 显示全部楼层
2013abcdefg 发表于 2015-1-26 15:14
自己用C写了一个运行BAT的小程序
格式: runbat xxx.bat

在程式里叫用batch档,必然要经command.com处理
每一代的command.com都有差异,大抵是50k到90k大小,而且不大能互相混用
你的程式可以在大部份command.com(即dos)下运行
但有没有在 ROMD64KB.IMG的freedos下运行过?
那个4k不到的command.com基本上连if,for, prompt等等最简单的命令都无法运作
若靠它去跑 batch档,实在有点强人所难....
回复

使用道具 举报

12#
发表于 2015-1-27 16:30:27 | 显示全部楼层
2013abcdefg 发表于 2015-1-27 15:06
您说的完全正确! 我的程序在 ROMD64KB.IMG的freedos下是不能运行的. 我现在的方案是把 bat(内容就是g2x \gr ...

嗯...
我有一个想法,在freedos下载入另一个版本的command.com
之后由这个新的command.com接管dos的运作,透过之前的写的g2.com就可以了

我找到一个dos7版本的command.com,为免和其他command.com混淆,
我把它改名为 : 71comm.com
这个71comm.com你可以把它放在和 \grub.exe 或者 \ghost.exe同一个位置
(因为这个command.com太大了, ROMD64KB.IMG不可能塞入它)

这个版本的g2.com的运作方式是:

1.由A:\71comm.com开始找寻,直到Z:\71comm.com为止,找到则载入它

2.载入之同时,传递一个参数给71comm.com,[ dosset.bat 盘符:]
这里面的 [盘符:],和  [盘符:]\71comm.com是一样的,
即,若由H:\71comm.com载入,则参数将是 dosset.bat H:


71comm.com是所谓dos shell,要通知freedos的核心它的存在,
可以用 set COMSPEC=[盘符]\command.com的方式
不这样做,其他程式,比如你写的runbat.exe只会仍然呼叫旧的a:\command.com或者a:\command.com

但由g2.com载入 71comm.com,好像只能传递一组参数,换言之
同时传递 prompt $p$g 和 set COMSPEC=[盘符]\71comm.com似乎不可能
这样就呼叫一个dosset.bat吧,由它去做全盘设定,用家还可以加添其他命令

dosset.bat里接收由g2.com传过来的[盘符]参数,比如A:....H:之类,然后再
用 set COMSPEC=%1\71comm.com  的方式去改变 COMSPEC参数

dosset.bat的内容:
---------
@echo off
prompt $p$g
for %%A in (A: B: C: D: E: F: G: H: I: J: K: L: M: N: O: P: Q: R: S: T: U: V: W: X: Y: Z:)  do if %%A==%1 set COMSPEC=%1\71comm.com
---------

说了这么多,实作的方式其实很简单,把新的g2.com(可以改任意名)和dosset.bat写入ROMD64KB.IMG
71comm.com放到 \grub.exe 或者 \ghost.exe同一个位置

完了,键入g2.com便是!

这之后,71comm.com会接管dos,其他需要足够支援的程式,比如你的runbat.exe
应该可以正常运作
另外,其他较复杂的dos指令,如dir,不会连日期,file大小都看不见了


我这里没有你的测试环境,你可以试试有没有bug....


g2-new.rar (42.82 KB, 下载次数: 23)
回复

使用道具 举报

13#
发表于 2015-1-27 18:33:12 | 显示全部楼层

先要知道71comm.com是否存在

可以键入
g2x  \71comm.com  /K dosset.bat  A:

这句和g2.com几乎是等价的,只差最后的A:,因为g2x.com不会自动填入dosset.bat后的参数,需要手动输入
若你的71comm.com在Z:
便要键入:g2x  \71comm.com  /K dosset.bat Z:

若成功再键入SET看看有没有改变

g2.com做的工作只是加参数而已
回复

使用道具 举报

14#
发表于 2015-1-27 19:25:20 | 显示全部楼层
2013abcdefg 发表于 2015-1-27 18:52
已经按你说的键入:g2x  \71comm.com  /K dosset.bat Z:测试成功!
运行set后已经有CMDLINE=g2 ...,
dir ...

71comm.com之下,一切方便得多了,你可以跑跑其他软件试试

暂时看不出g2.com哪里出问题,在我的虚拟机是正常的
既然g2x.com正常,有空我会修改一下g2x.com,若发现有dos command.com的参数,
自动给dosset.bat填入盘符....

另外,还想把g2x.com变为gui,读取ini,其实程式不复杂,我写过比它复杂百倍的东西,只差有没有精神而已...
回复

使用道具 举报

15#
发表于 2015-1-28 11:56:46 | 显示全部楼层
本帖最后由 TajuraTong 于 2015-1-28 16:55 编辑
TajuraTong 发表于 2015-1-27 19:25
71comm.com之下,一切方便得多了,你可以跑跑其他软件试试

暂时看不出g2.com哪里出问题,在我的虚拟机 ...


之前说修改g2x.com,给dosset.bat自动填入盘符,想想,这样做太琐碎。
不如由g2x.com传回errorlevel更具弹性,因为别的程式或batch均可读取,再做处理。

好吧,g2x.com只做了小修改,发现file,并顺利执行则传回执行档案的盘符编号

比如键入g2x \71comm.com
若成功执行71comm.com且在A盘则传回1,B盘传回2.....Z盘传回26

压缩包里有新版的g2x.com,一个sdos.bat批次档和71comm.com
键入sdos.bat就可以了,不须任何参数。

运行流程:
sdos.bat第一次被载入,当前环境,还是freeDos那个弱爆command.com
不认得第一行的 if,直接无视跳到第2行,执行g2x  \71comm.com /K sdos.bat  XX:
/K 表示不返回,载入新的dos 7.1后由它执行sdos.bat XX:

sdos.bat第2次被载入,当前环境,已是威力相当的dos 7.1,有能力解释第一句了
因着参数"%1"=="XX:",于是跳到done,然后再次执行g2x  \71comm.com  /c echo  ..
/c 表示返回,这样才可以获取errorlevel。(freeDos下的command.com没有本事解释errorlevel)

根据errorlevel跳到相关的位置设定变nn,若errorlevel=26,nn=Z,errorlevel=25,nn=Y.....
然后再跳到去设定COMSPEC

set COMSPEC=%nn%:\71comm.com
prompt $p$g
cls
echo Dos 7.1 Loading...
(收工)


sdos.bat 的样子很丑陋,因为dos 7.1尽管比freedos强,但远没有windows的cmd.exe那样无所不能,
连&&也不支援,不能简化代码,只好将就。


用法:
把sdos.bat和g2x.com放进ROMD64KB.IMG,71comm.com放到任何盘里,
若71comm.com不在\,可自行修改sdos.bat,之前的dosset.bat可以丢了。
键入sdos.bat就是。
若不小心按了exit,会返回freedos,可以再键入sdos.bat跳回dos7.1


-------------------------------------------------------------
if "%1"=="XX:" goto done      (第1行)
g2x  \71comm.com  /K sdos.bat  XX:  (第2行)
:done
g2x  \71comm.com  /c echo  ..
if errorlevel 27 goto error
if errorlevel 26 goto Z
if errorlevel 25 goto Y
.
.
.
.
if errorlevel 1  goto A
.
.
.
:A
set nn=A
goto NX
.
.
.
:NX
set COMSPEC=%nn%:\71comm.com
prompt $p$g
cls
echo Dos 7.1 Loading...

-------------------------------------------------------------


g2x-dos.rar (42.71 KB, 下载次数: 32) g2x-dos.rar (41.59 KB, 下载次数: 33)
回复

使用道具 举报

16#
发表于 2015-1-28 15:29:17 | 显示全部楼层
2013abcdefg 发表于 2015-1-28 14:29
经测试使用正常! 直接sdos是成功的, 71commd.com接管DOS.
键入exit后,再set查看,里面还有comspec=c:\71c ...


这是因为按exit回到原来的sdos.bat,[当前环境] 换回弱爆的command.com
无法解释接下来的命令,包括goto, if, exit 之类,于是一直执行到最后的
set COMSPEC=%nn%:\71comm.com
这个set它居然又认得,所以set成了COMSPEC=%nn%:\71comm.com

没法由中间处离开,权宜的方法是叫用一个外置bat,让它直接离开

方法:
在sdos,bat 第2句下加一个sexit.bat就可以了
g2x  \71comm.com  /K sdos.bat  XX:
sexit.bat    <---加这一句

sexit.bat的内容,请自行建立和sdos.bat放在一起
------------
Echo back to freeDOS
------------

完成!

你可以在两个dos下按set,看看有没有各自的comspec
回复

使用道具 举报

17#
发表于 2015-1-29 12:52:48 | 显示全部楼层
最好预留2k-3k给g2x gui化
找空会动手
回复

使用道具 举报

18#
发表于 2015-1-30 11:43:00 | 显示全部楼层
roytam1 发表于 2015-1-30 09:44
減少並合併函數,以減少體積 (雖然FAT中的大小無法減少啦。)

对的,每次缩减须以磁区(512)的倍数为单位,否则实质意义不大。
回复

使用道具 举报

19#
发表于 2015-1-30 12:40:20 | 显示全部楼层
2013abcdefg 发表于 2015-1-30 12:16
原来这样的,谢谢指教!

每个档案起码占一个磁区,在fat中,1byte和512同样占一个磁区,硬盘的磁区byte数更大,所以才有那些压缩磁盘的方法,先不说压缩率,把那些琐碎的档案合拼处理后,减省许多byte小而占大空间的情况
回复

使用道具 举报

20#
发表于 2015-1-31 10:51:49 | 显示全部楼层
roytam1 发表于 2015-1-31 10:11
這個要在minicmd中實視,稍後時間我試試看

pwrmenu好像只是把command.com载入,没有传递参数,并不能执行batch,
即便传了,command.com不支持 /c 也没用。

minicmd.com似乎也没有 /c 的机制。

设想中新的gui - g2x可以执行bat(当然也要command支持),大概两三天后完成(要找时间写),暂时不用折腾pwrmenu了。
回复

使用道具 举报

21#
发表于 2015-2-1 13:47:57 | 显示全部楼层
2013abcdefg 发表于 2015-2-1 13:23
这个是测试用的怕空间不够,晚点换了再上传一个

g3x.com (Mini Menu by T.T v 0.1) 版本说明:-

g3x.com是g2x.com的GUI版,所有操作无须经参数传递,但仍保留了g2x.com全部特性。

g3x.com操作方式

1. 键入 g3x [ini 档案] ,ini档案可以是任意名称,必须以ini作后缀。若找不到
ini档案,而第一参数亦非可执行档,程式会结束。

2. 直接键入 g3x,程式会以g3x.ini为预设档案,若找不到g3x.ini,程式会结束。

3.键入  g3x  [执行档案],执行档案须以com ,exe,bat,cmd作后缀,若找不到该档案,或
该档案没有四种执行档的后缀 (com ,exe,bat,cmd),若有g3x.ini,会直接开启g3x.ini。

4. g3x.com 的 menu 内,上下键选择,回车键(enter) 执行,ESC键离开,左右键?哈哈...

----g3x.ini的内容 (括号里是解释,不能键入,否则视作参数处理)----

{ Search and Run Grub}\grub.exe                (搜寻所有盘的\grub.exe,找到则执行)  
{ Search and Run Ghost}\boot\ghost.exe        (搜寻所有盘的\boot\grub.exe,找到则执行)  
{ Run local Editor}Wd.com                (执行本地 [目前文件夹] 的wd.com并执行,不作搜寻)
{ Run local Editor}word\Wd.com                (执行本地 [word] 文件夹的wd.com并执行,不作搜寻)
{ ------------------------------}                ('}'后没有可执行档,视作分隔行,不予处理)
{ Switch to Dos 7.1 batch}Sdos.bat        (找寻系统参数COMSPEC所指定的command.com,用参数/c呼叫并传递所有参数)
{ Switch to Dos 7.1 }\71comm.com /k test.bat how come? (执行外部command.com,用参数/k呼叫不返回,并传递所有参数)
{ Run Batch test file}test.bat hi hello        (找寻系统参数COMSPEC所指定的command.com,用参数/c呼叫并传递所有参数)
{  -----------------------------}
{ Reboot}Reboot.com                        (执行本地程式)               
{ Shutdown}OFF.COM                (执行本地程式)               
{}                                (视为空白行)               
{ Sub Menu}g3x_sub.ini                (载入g3x_sub.ini,取代g3x.ini,可视为次选单,用同样方式可返回主选单)

----------------------------------

g3x.ini编写规格:
1.  {xx},括号内文字会视为表单文字显示。
2.  {xx},括号内文字不能大于70字元。
3.  } 后若无可执档名称,视为表单文字显示,但不作处理。
4.  } 后执行档案 加上 参数不能超过128字元。
5.  表单列不能超过23行。
6.  ini档案不能超过4000字元。
7.  ini档案内没有{xx}和执行档案名称,程式会结束。
8.  不建议直接键入 g3x.com \xxxx.bat(暂时仍未写传递参数的code),但可以在表单内执行批次(可传递参数)。
9.  minicom或一些弱爆的command.com不能处理/c的批式方式,但可呼叫外部71comm.com处理,见示范。
10.因为要节省空间,许多条目的检查都省了,用家请不要把ini档案改得面目全非,否则程式可能会当掉。


压缩包里包含g3x.com及两个示范的ini,用家可自行修改。

时间匆忙,程式应该有不了bug,请在下面回报。

g3x.rar (44.34 KB, 下载次数: 15)



点评

精品。很强大!马上试用!谢谢TajuraTong!  详情 回复 发表于 2015-2-1 13:59
即使沒動但畫面重繪,重繪閃爍的問題有點礙眼…  详情 回复 发表于 2015-2-1 13:52
回复

使用道具 举报

22#
发表于 2015-2-1 14:37:46 | 显示全部楼层
2013abcdefg 发表于 2015-2-1 13:59
精品。很强大!马上试用!谢谢TajuraTong!
背景可以用纯蓝色吗?现在有一点点闪(可能是有一竖一竖原因 ...

任何颜色都可以修改,待你测试正常,我一次把bug修正,并附上原始码,现在的code仍十分乱,不容易看懂。
回复

使用道具 举报

23#
发表于 2015-2-1 14:43:05 | 显示全部楼层
roytam1 发表于 2015-2-1 13:52
即使沒動但畫面重繪,重繪閃爍的問題有點礙眼…

在我的机器上好像没闪动,嗯,可以关掉时间更新,闪动大概是它作怪吧
回复

使用道具 举报

24#
发表于 2015-2-1 15:20:03 | 显示全部楼层
2013abcdefg 发表于 2015-2-1 15:05
** "1. 键入 g3x  ,ini档案可以是任意名称,必须以ini作后缀。若找不到
ini档案,而第一参数亦非可执行档 ...

剛有點事忙,先记下了,容后跟进...
回复

使用道具 举报

25#
发表于 2015-2-1 15:21:33 | 显示全部楼层
roytam1 发表于 2015-2-1 13:52
即使沒動但畫面重繪,重繪閃爍的問題有點礙眼…

这个版本是停了时间显示的,请看看还会不会闪?
G3X.rar (1.82 KB, 下载次数: 14)

点评

這個沒閃爍現象了,謝謝  详情 回复 发表于 2015-2-1 15:54
回复

使用道具 举报

26#
发表于 2015-2-1 15:27:41 | 显示全部楼层
2013abcdefg 发表于 2015-2-1 15:05
** "1. 键入 g3x  ,ini档案可以是任意名称,必须以ini作后缀。若找不到
ini档案,而第一参数亦非可执行档 ...

因为要兼顾参数和表单,可能会有混乱,表单里可以吗?
请多试不同情况,我找空一拼处理,谢谢!

点评

表单测试是正常的。我再多试一下看还有什么问题  详情 回复 发表于 2015-2-1 15:55
回复

使用道具 举报

27#
发表于 2015-2-1 19:43:20 | 显示全部楼层
2013abcdefg 发表于 2015-2-1 18:42
谢谢您的支持!已经更新!希望G3x.com可以配置色彩

颜色配置,可以改为在ini加入设定,例如

#BG_color=D1   
#Head_color=70
....
....


其中,BG_color和Head_color是背景颜色和标题颜色,D1,70是color编码(16进制)

这是给自己添麻烦,哈哈,有空再处理吧。

另外须注意,ini档案须为ANSI纯文字档,
Unicode, UTF-8或其他格式g3x.com是看不懂的。

下面这个是纯蓝背景


G3X-blue.rar (1.82 KB, 下载次数: 15)

点评

很好,收下了! 真的不好意思让您直接加到ini中,其实有源码的话我还是会改一下颜色的。谢谢!  详情 回复 发表于 2015-2-1 20:03
回复

使用道具 举报

28#
发表于 2015-2-1 21:06:45 | 显示全部楼层
2013abcdefg 发表于 2015-2-1 20:03
很好,收下了! 真的不好意思让您直接加到ini中,其实有源码的话我还是会改一下颜色的(只会这么多了)。 ...

WD是我编写的一个超小型编辑器,功能当然无法跟DOS的EDIT和其他编辑器比较。
它的唯一优点是小,不到3K,只比g3x.com大一点点。

它可以编辑简单ANSI文件,或者当文件浏览器也可以。
注意,在romos的环境里,原档案都给锁定了,并不一定可以正常编辑存取。

习惯了功能强大的EDITOR会嫌WD.COM太阳春太弱,它不过是我学习汇编的练习罢了。

别外,g3x.ini最后一列之后,最好加一两列空行,这是我发现的一个bug。

今天到此為止,要去忙其他東西。

wd.rar (2.88 KB, 下载次数: 21)

点评

說到這個,我自己推 NTED,不到3扇區的大小。  详情 回复 发表于 2015-2-1 23:48
回复

使用道具 举报

29#
发表于 2015-2-2 08:09:32 | 显示全部楼层
roytam1 发表于 2015-2-1 23:48
說到這個,我自己推 NTED,不到5扇區的大小。

哈哈,这原来是同一模组,其实我为它添了一倍的编码,功能多了一些
回复

使用道具 举报

30#
发表于 2015-2-2 17:15:35 | 显示全部楼层
本帖最后由 TajuraTong 于 2015-2-2 21:27 编辑

這版新增了用家选用颜色的功能,在g3x.ini里加添便可以,程式会自动判别规格是否正确,
不符规格便忽略,用回原来的设定。

使用方法:

在任何空白行以##开头的规格文字,只有四项设定,请看下面...

##BCol=73 表示 [背景] 颜色是编号73,或可任意更改。
##TCol=4f     表示 [标题] 颜色是编号4f,或可任意更改。
##MCol=57   表示[表单](menu) 颜色是编号57,或可任意更改。
##ACol=6e    表示 [选项] 颜色是编号6e,或可任意更改。
##ACol=7e    表示 [选项] 颜色是编号7e,因为和上句相同,以最后一句为准,即7e。

颜色编号是由16进制的00-FF,程式会读取 [=] 后的编号,作为程式的颜色设定。
不接受全形,中间不能有空白,英文大小写不区,如 ##BCol或##BCoL均可。
但若写##ACol=6t是错误的,因为16进制是0-9,A-F!。
要注意的是,##BCol=,只有这一项,[背景] 颜色是指字元颜色,选择时请留意。

压缩包里有新版的g3x.com,g3x.ini的示范,和一个tcol.com程式。
tcol.com是我写的一个dos常驻程式,运行后按Alt+3弹出,
用以查看颜色编号,看完了按ESC返回原来工作,用家可以在修改g3x.ini或其他运作时呼叫。
按上下键查看color 编号,挺方便的,Windows下的Dos也可工作,要完全退出键入tcol - 即可,
或整个关掉Dos box。

另外,这版用了另一种方式显示时钟,若仍有闪动,请反映。
若有其他BUG,也请在下面反映,谢谢。


g3x-color.rar (4.35 KB, 下载次数: 15)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-5-7 07:44

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表