标题:[**** 加入了压缩分卷!和扇区到扇区读写****] [原创]DOS下迷你硬盘读写器终 ...
取消只看楼主
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
 问题点数:0 回复次数:19 
[**** 加入了压缩分卷!和扇区到扇区读写****] [原创]DOS下迷你硬盘读写器终于完工

DOS下迷你硬盘读写器终于完工了!
可读写绝对扇区,支持大硬盘,U盘(需加载驱动),软盘。。
由于代码效率高,速度很快。
基本通过测试。
最后在自己的机子上大胆进行了写测试,即用坏数据写入硬盘,硬盘崩溃后,再用本程序把预先备份的数据恢复到硬盘,结果硬盘完好如初。。

有源码大家玩玩。。。

刚加了如果读写出错,给原因的提示
换成了 C 的注释,这样,不用TC3(BC31),TC2就可编译了
刚解决了基本INT13不出现出错提示的BUG..
除了考虑到能读写2048GB,没有加入起始扇区和要处理的扇区参数的对误输入负数的检测外(,否则的话,只能读写1024GB左右了.)对其他几个输入参数都进行了检测..

考虑 DOSFOREVER 的中肯意见
今天 加了 如果 不支持扩展13中断,就先获取硬盘本身的参数来显示出来,调用基本13中断以其参数CHS值来读写,这样就兼容了 非 磁头255,扇区63 的硬盘(也就是很老的硬盘),这样程序的兼容性就很强了。。

也加入了读写 "非1.44mb"软盘的功能, 说明见主帖。。。

另,即使支持扩展,也根据扩展48号功能,获取硬盘参数,显示出来。
显示出硬盘参数,能让用户心中有数。。。

另,把扩展13的读写缓冲增为100扇区的字节数,这样速度就更快了!
(不能再超过了,否则,就超过了文件读写的最大数了)

程序到此 ,基本告一段落了。。。
需要在扩展程序功能的,可在程序上再加上去吧。。

欢迎大家下载玩玩。。。
希望对有兴趣的有点帮助。。

iHeKOBX2.rar (170.89 KB) [**** 加入了压缩分卷!和扇区到扇区读写****] [原创]DOS下迷你硬盘读写器终于完工了!(带注释


[此贴子已经被作者于2006-8-13 1:36:31编辑过]



TIKj3mX6.rar (17.21 KB) [原创]DOS下迷你硬盘读写器终于完工了!



fRDW6Y6V.rar (17.92 KB) [原创]DOS下迷你硬盘读写器终于完工了!



PWylBN8v.rar (15.02 KB) [原创]DOS下迷你硬盘读写器终于完工了!



gge0Ph1H.rar (14.99 KB) [原创]DOS下迷你硬盘读写器终于完工了!(带注释)



K72Boz09.rar (16.31 KB) [原创]DOS下迷你硬盘读写器终于完工了!(带注释)



RHeisSty.rar (16.03 KB) [原创]DOS下迷你硬盘读写器终于完工了!(带注释)



w9CdgJzD.rar (16.07 KB) [原创]DOS下迷你硬盘读写器终于完工了!(带注释)



FVLB2uti.rar (32.92 KB) [原创]DOS下迷你硬盘读写器终于完工了!(带注释)



PwK5efKc.rar (33.46 KB) [原创]DOS下迷你硬盘读写器终于完工了!(带注释)



fvEkRvcK.rar (31.59 KB) [原创]DOS下迷你硬盘读写器终于完工了!(带注释)



r218V6Og.rar (31.62 KB) [原创]DOS下迷你硬盘读写器终于完工了!(带注释)



s36zHhZH.rar (31.62 KB) [原创]DOS下迷你硬盘读写器终于完工了!(带注释)



SGMQlfL5.rar (31.63 KB) [原创]DOS下迷你硬盘读写器终于完工了!(带注释)



G80VjvgW.rar (167.87 KB) [原创]DOS下迷你硬盘读写器终于完工了!(带注释)



FOxOC2VW.rar (171.3 KB) [**** 加入了压缩分卷!和扇区到扇区读写****] [原创]DOS下迷你硬盘读写器终于完工了!(带注释

搜索更多相关主题的帖子: 分卷 DOS 硬盘 数据恢复 BUG 
2006-07-08 13:16
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
得分:0 
以下是引用live41在2006-7-8 14:41:49的发言:

自称羊城什么什么的,

我什么时候自称羊城?


有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2006-07-08 16:38
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
得分:0 
以下是引用神vLinux飘飘在2006-7-8 15:08:41的发言:
不过原理、注释、代码结构什么都没,怎么看啊,连帮助都没。。。

刚完成,等一下补充上注释吧。。


有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2006-07-08 16:39
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
得分:0 
我应该说一下编译环境:
TC3(BC3.1)
如果全部去掉//双杠符号, TC2就可以了吧..

有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2006-07-10 21:22
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
得分:0 
已把注释换成了 C 规范,这样,不用 TC3(BC31),TC2就可以编译了


有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2006-07-11 15:15
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
得分:0 

程序更新了,说明见主帖。。


有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2006-07-13 18:45
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
得分:0 

刚发现我的这个程序可以作为 GHOST 和HD-COPY 的迷你版 来使用
之所以叫迷你版,是因为:
GHOST:
本程序由于没有文件压缩功能(或分卷功能),所以最大只能处理4GB内的文件(也就是说,如果你要处理的分区在4GB内,就可以试用本程序了,当然你必须知道他的开始扇区位置和总扇区个数。。另外,如果是FAT16,那只能处理2GB内了)
HD-COPY:
HD-COPY有很多其他功能,而本程序只有读写主功能。


[此贴子已经被作者于2006-7-17 16:55:39编辑过]


有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2006-07-17 14:51
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
得分:0 
哈哈,以后要解压镜象或制作镜象就用自己写的这个东东就解决啦!
好爽!

有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2006-07-17 17:10
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
得分:0 
刚刚把注释掉的代码全清理掉了,并整理了代码,补充了注释,用VC 的对齐功能对齐了,看起来清爽了。
更新了。

[此贴子已经被作者于2006-7-18 0:18:44编辑过]


有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2006-07-17 23:26
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
得分:0 
发现这个程序在获取老硬盘参数时的BUG,这个BUG导致读写老硬盘失败
已更正。

原BUG如下:
cylinder=regs.h.ch+1; /* 寄存器的 CH +1 为柱面数 应该是CL的高2位为高2位,CH的8位为低8位 */
sector=regs.h.cl; /* 寄存器的 CL 为每道扇区数 应该是 CL 的低6位 */

改为:
cylinder=((((unsigned int)regs.h.cl)>>6<<8) | regs.h.ch) + 1;
sector=regs.h.cl & 0x3F;

在取值时,没有用指针甚至一般运算,用高效而好玩的位运算。。

现在读写老硬盘就可以了。。
如果有老硬盘的,可以试玩试玩,我自己还没有呢。。


[此贴子已经被作者于2006-7-20 20:46:03编辑过]


有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2006-07-20 17:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-77204-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.716902 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved