China DOS Union

-- Unite DOS · Advance DOS · Grow DOS --

Union site: www.cn-dos.net Forum site: www.cn-dos.net/forum
DOS stands for freedom, openness and progress. Let us work hard, learn from the openness and GNU spirit of FreeDOS and Linux, and together build and grow a free GNU GPL world!

中国DOS联盟论坛
The time now is 2026-06-25 07:21
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » Comprehensively enhance the integration of "disk/system backup/files/compression" all in one TOdisk View 23,664 Replies 183
Floor 106 Posted 2007-03-17 03:24 ·  泰国
新手上路
Credits 6
Posts 3
Joined 2007-03-17 01:48
19-year member
UID 82001
Gender Male
Status Offline
Floor 107 Posted 2007-03-17 14:06 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
Credits 5,154
Posts 1,827
Joined 2003-07-18 00:00
22-year member
UID 7105
Gender Male
Status Offline
Added the following functions:
1
Backup and restore partition table chains (support single hard drive and all hard drives)
2
Compress and decompress files (only support single file)
3
Print sectors and offset bytes (support hard drives and files (including compressed files made by this program))
4
Rewrite sectors and offset bytes (support hard drives)

The function of comparing sectors and bytes (support hard drives and files (including compressed)) will be added soon.

**********
Parameters are as follows:
*********
1
Backup and restore partition table chains (support single hard drive and all hard drives)
/spt Save Partition Table
/rpt restore Partition Table

TOdisk /spt /all file Save partition table chains of all hard drives
TOdisk /spt 2 file Save partition table chains of the second hard drive


TOdisk /rpt /all file Restore partition table chains of all hard drives
TOdisk /rpt 2 file Restore partition table chains of the second hard drive

2
/zip
/unzip
TOdisk /zip infile outfile 6 Compress infile into outfile, compression strength 6 (1-9)
TOdisk /unzip infile outfile Unzip infile into outfile

3
Print sectors and offset bytes (support hard drives and files (including compressed files made by this program))

/pds Print Drive Sector
/pfs Print File Sector

/pdb Print Drive Byte
/pfb Print File Byte


TOdisk /pds 2 123 10 Print the 123rd sector of the second hard drive, total 10 sectors, no pause (so that it can be saved as a file using the redirection symbol >)
TOdisk /pfs /pause file 123 10 Print the 123rd sector of the file (support compressed), total 10 sectors, pause when full screen

TOdisk /pdb /pause 2 123 456 10 Print the 123rd sector of the second hard drive, offset 456, total 10 sectors, pause when full screen
TOdisk /pfb /pause file 123 456 10 Print the 123rd sector of the file (support compressed), offset 456, total 10 sectors, pause when full screen

4
Rewrite sectors and offset bytes (support hard drives)
/wfc Write (Drive Byte) From Commandline
/wff Write (Drive Byte) From File

TOdisk /wfc 2 123 456 AD EF CF ...
Write values from the command line to the second hard drive, sector 123, offset 456, total three bytes...
TOdisk /wff 2 123 456 7 file 456 123
Write the sector 456, offset 123 of the file to the second hard drive, sector 123, offset 456, total 7 bytes...

Welcome to try and test...
Since it is the initial version, make sure the parameters are entered correctly, it is best to find a useless hard drive.
However, I have made basic tests, basically it can pass, no problem at present...

[ Last edited by GOTOmsdos on 2007-4-17 at 07:08 AM ]
Floor 108 Posted 2007-03-26 08:26 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
Credits 5,154
Posts 1,827
Joined 2003-07-18 00:00
22-year member
UID 7105
Gender Male
Status Offline
The remaining functions are completed.
In this way, the sector functions that can basically replace and surpass DEBUG are achieved...

**********
Adjustments are as follows:
*********
1
Backup and restore partition table chains (support single hard disk and all hard disks)

-SALL Save Partition Table (DBR included)
-RALL Restore Partition Table (DBR included)
This function can make all partitions return to their original state (including the DBR of partitions) after misoperation of partition software and writing to the disk.

TOdisk -SALL file
Save the partition table chain of all hard disks

TOdisk -SALL 2 file
Save the partition table chain of the second hard disk


TOdisk -RALL file
Restore the partition table chain of all hard disks

TOdisk -RALL 2 file
Restore the partition table chain of the second hard disk

2
Compression and decompression
-ZIP
-UNZIP

TOdisk -ZIP infile outfile 6
Compress infile into outfile with compression strength 6 (1-9)

TOdisk -UNZIP infile outfile
Decompress infile to outfile

3
Print sectors and offset bytes (support hard disks and files <including compressed files generated by this program>)

-PDS Print Drive Sector
-PFS Print File Sector
-PDB Print Drive Byte
-PFB Print File Byte


TOdisk -PDS 2 123 10
Print the 123rd sector of the second hard disk, total 10 sectors, without pause (so it can be saved as a file using the redirection symbol >)

TOdisk -PFS -PAUSE file 123 10
Print the 123rd sector of the file (supporting compression), total 10 sectors, pause when full screen

TOdisk -PDB 2 123 456 10
Print the 123rd sector of the second hard disk, offset at 456, total 10 bytes, without pause

TOdisk -PFB -PAUSE file 123 456 10
Print the 123rd sector offset at 456 of the file (supporting compression), total 10 bytes, pause when full screen

4
Rewrite sectors and offset bytes (support hard disks)
-DWD from Drive1 Write to Drive2
-CWD from Command Line Write to Drive
-FWD from File Write to Drive
-CFD from Command Line Fill Drive
-DWF from Drive Write to File

TOdisk -DWD 1 123 456 2 456 123 7
Write 7 bytes from sector 123, offset 456 of hard disk 1 to sector 456, offset 123 of hard disk 2

TOdisk -CWD 2 123 456 AD EF CF
Write the values AD, EF, CF from the command line to sector 123, offset 456 of the second hard disk, total 3 bytes...

TOdisk -FWD file 456 123 2 123 456 7
Write 7 bytes from sector 456, offset 123 of the file to sector 123, offset 456 of the second hard disk

TOdisk -CFD 2 123 456 7 AD EF CF
Write the values from the command line to sector 123, offset 456 of the second hard disk in a loop, total 7 bytes...

TOdisk -DWF 2 123 456 file 4567 -ZIP 9
Write 4567 bytes from sector 123, offset 456 of hard disk 2 to the file, and compress it with level 9

5
Compare disks and files (including compressed files generated by this program)
-DCD Drive Compare Drive
-DCF Drive Compare File
-FCF File Compare File

TOdisk -DCD 1 234 12 2 345 13 789
Compare sector 234, offset 12 of hard disk 1 and sector 345, offset 13 of hard disk 2, total 789 bytes

TOdisk -DCF -PAUSE 1 234 12 file 345 13 789
Compare sector 234, offset 12 of hard disk 1 and sector 345, offset 13 of the file, total 789 bytes, pause when full screen

TOdisk -FCF file1 234 12 file2 345 13 789
Compare sector 234, offset 12 of file 1 and sector 345, offset 13 of file 2, total 789 bytes

****************************************
The following is to save and restore MBR, DBR, FAT, CMOS, etc.:

Save a single partition table
TOdisk -SPT C: PT

Save DBR
TODISK -SDBR 1:3 DBR

Save FAT
TOdisk -SFAT 2:1 FAT

Restore
(No need to input the partition number when restoring, just the file name)
TOdisk -R FILE

Compare:
TOdisk -C FILE
(No need to input the partition number when comparing, just the file name)


Save CMOS
TOdisk -SCMOS FILE

Restore CMOS
TOdisk -RCMOS FILE

Guess CMOS password
TOdisk -CMOSKEY


And the function breaks through the 64KB limit of DEBUG, including the file size limit and the byte limit of display, up to 4G

Welcome to play and test...
I have made basic tests and it passes, no problems currently...



[ Last edited by GOTOmsdos on 2007-4-17 at 07:08 AM ]
Floor 109 Posted 2007-03-28 18:43 ·  中国 广东 广州 番禺区 电信
初级用户
★★
Credits 107
Posts 52
Joined 2007-03-10 04:55
19-year member
UID 81272
Gender Male
Status Offline
Floor 110 Posted 2007-03-29 00:27 ·  中国 海南 儋州 电信
初级用户
★★
Credits 199
Posts 101
Joined 2007-03-13 01:44
19-year member
UID 81536
Status Offline
DEBUG is just a debugger, not related to sectors at all.
I really don't understand how you can compare two different things... So frustrating.
Floor 111 Posted 2007-03-29 05:52 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
Credits 5,154
Posts 1,827
Joined 2003-07-18 00:00
22-year member
UID 7105
Gender Male
Status Offline
Originally posted by download at 2007-3-29 12:27 AM:
DEBUG is just a debugger, not related to sectors at all.
I really don't understand how you compare two different things... It's frustrating.


DEBUG has nothing to do with sectors?
Hahaha! The first time I've heard that!

DEBUG is indeed a debugger, but it also has the function of reading and writing hard disk sectors. Haven't you used it?
My post is very clear, it's about "the sector function of DEBUG", not the debugging function of DEBUG.
Anyone who understands DEBUG knows that DEBUG has commands to read and write disk sectors (such as: -L to read in, -W to write to disk, -D to display.. -F to fill bytes, etc..)

I'm really a bit confused
Floor 112 Posted 2007-03-29 11:29 ·  中国 海南 儋州 电信
初级用户
★★
Credits 199
Posts 101
Joined 2007-03-13 01:44
19-year member
UID 81536
Status Offline
The DEBUG debugger itself can arbitrarily write assembly and machine code. Just use A or E. You can call whatever you like. There's no need for me to waste words about IO or INT13, right?
Floor 113 Posted 2007-03-29 12:44 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
Credits 5,154
Posts 1,827
Joined 2003-07-18 00:00
22-year member
UID 7105
Gender Male
Status Offline
It seems that the person upstairs has never really gotten to the theme of my post. I don't know what kind of thinking that is? The thinking of someone studying computer shouldn't be like this, right?

1
Different things, if they have common functions or characteristics in some aspects, then they are comparable in that aspect.
For example, men and women are of the same kind in terms of being human. They are comparable, for example, in terms of physical strength, intelligence, emotions and so on.
Then, does it mean that women can only be comparable with men and have no comparability with other things at all?
For example, in terms of childbearing, men can't bear children. How can women compare with men?
In this aspect, female animals all have common points with women, so there is naturally comparability. For example, compare the childbearing situations of women and female gorillas in various aspects..
Women cry easily, are afraid of small insects, and are easily emotionally fragile. In this aspect, they actually have more commonalities with children..

2
The original poster's quotation: Saying "DEBUG is just a debugging tool" "has nothing to do with sectors"

Let's see, is that the case?
The following are all the commands of DEBUG:

assemble A Assemble
compare C range address Compare memory bytes
dump D View memory bytes
enter E address
    Modify memory bytes
    fill F range list Fill memory bytes
    go G Execute assembly
    hex H value1 value2 Calculate values
    input I port Input port
    load L Load hard disk sectors into memory
    move M range address Move memory bytes
    name N Open file
    output O port byte Output port
    proceed P Continue assembly code (probably)
    quit Q Quit
    register R Set register values
    search S range list Search bytes
    trace T Trace assembly code
    unassemble U Disassemble
    write W Write to hard disk sectors

    Well, take a look. Which commands are used for debugging?
    Actually, only the five commands A G P T R (accounting for a small part of DEBUG) are really used for debugging programs. Half of the commands of DEBUG are tools for memory, hard disk sectors and files. That is to say, DEBUG can also be used by people who don't know assembly to read and write memory, hard disk sectors and files..

    Of course, using DEBUG is relatively cumbersome. It requires knowing the internal structure of the hard disk and the DEBUG syntax. The new functions added by my TODISK can replace and surpass the following 9 commands of DEBUG in terms of reading and writing hard disk sectors and files
    (Repeat: when reading and writing hard disk sectors and files, not including just viewing memory)

    DEBUG TODISK is (similar)
    C -DCD DCF FCF
    D -PDS -PDB -PFS -PFB
    E -CWD -FWD -DWD
    F -CFD
    L ... (the above covers)
    M ...(the above covers)
    N ...(the above covers)
    W ...(the above covers)

    Actually, the more comprehensive statement is:
    DEBUG is a debugger, disassembler, memory editor, hard disk sector reader/writer, file reader/writer, hardware port reader/writer and addition/subtraction calculator..

    [ Last edited by GOTOmsdos on 2008-5-5 at 01:46 PM ]
Floor 114 Posted 2007-03-29 22:17 ·  中国 海南 儋州 电信
初级用户
★★
Credits 199
Posts 101
Joined 2007-03-13 01:44
19-year member
UID 81536
Status Offline
Haha, what you said upstairs is interesting. I just made some casual posts, why do you need to be so serious... Just passing by...
Floor 115 Posted 2007-03-30 09:28 ·  中国 香港 Cyber_Express通信公司
银牌会员
★★★
阿林
Credits 1,410
Posts 497
Joined 2004-06-28 00:00
21-year member
UID 27551
Gender Male
From 九龍,香港
Status Offline
Originally posted by download at 2007-3-29 10:17 PM:
Haha, the person upstairs is interesting. I just posted water content, why are you so serious... Just passing by...



Not being serious won't result in good work, which means everything you do will be worse than others...

Is this really good?
我 的 網 站 - http://optimizr.dyndns.org
Floor 116 Posted 2007-03-30 12:37 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
Credits 5,154
Posts 1,827
Joined 2003-07-18 00:00
22-year member
UID 7105
Gender Male
Status Offline
Brother johnsonlam, hello..

I've had some free time these days and really want to solve the speed problem, but it might not be solved in a short while. So I added the functions of DOSBACK to back up and restore MBR, DBR, FAT, and CMOS that I wrote before, and also greatly strengthened some additional functions. This makes it more comprehensive, and it's convenient to use in one program; a small program can solve many problems..

1
The sector function of DEBUG originally had one remaining function (reading from the hard disk sector offset to a file), which is now added.
And it supports compression.
This completely replaces and surpasses the sector function of DEBUG..
The parameters are as follows:
TOdisk -DWF 1 1000 123 FILE 12345 -ZIP 9

2
Added the functions of backing up and restoring MBR, DBR, FAT, and CMOS of dosback, perfected to be able to handle MBR, DBR, and FAT of any hard disk and any partition, and also added the comparison function with the original partition,

The parameters are as follows:

Save:
TOdisk -SPT C: CPT
TODISK -SDBR 1:3 DBR
TOdisk -SFAT 2:1 DFAT

Restore
(No need to enter the partition number when restoring, just the file name)
TOdisk -R FILE

Compare:
TOdisk -C FILE
(No need to enter the partition number when comparing, just the file name)

CMOS

Backup:
TOdisk -SCMOS FILE

Restore
TOdisk -RCMOS FILE

Generate a valid CMOS password
TOdisk -CMOSKEY

Release:

[ Last edited by GOTOmsdos on 2007-4-17 at 07:09 AM ]
Floor 117 Posted 2007-03-31 09:01 ·  中国 江西 南昌 电信
中级用户
★★
Credits 486
Posts 171
Joined 2006-02-12 13:53
20-year member
UID 50233
Status Offline
It would be nice if it could fully support NTFS like the latest GHOST.
Those who do not study the past are condemned to repeat it
Floor 118 Posted 2007-03-31 23:44 ·  中国 香港 Cyber_Express通信公司
银牌会员
★★★
阿林
Credits 1,410
Posts 497
Joined 2004-06-28 00:00
21-year member
UID 27551
Gender Male
From 九龍,香港
Status Offline

Originally posted by GOTOmsdos at 2007-3-30 12:37 PM:
Hello, Brother johnsonlam..


Hello, Brother gotoMSDOS :

Sorry, Jack rarely uses C language, so he couldn't find a solution to your problem and couldn't help much.


These days I have some time and really want to solve the speed problem, but maybe I can't solve it at once. So I added the functions of DOSBACK to back up and restore MBR, DBR, FAT, CMOS to it, and greatly strengthened some additional functions. This makes it more comprehensive, and it's convenient to use in one program. A small program can solve many problems..


This makes TOdisk more functional and powerful. Congratulations!


1
The sector function of DEBUG. There was originally one remaining function (reading from the hard disk sector offset to a file), which is now added.
And it supports compression.
This completely replaces and surpasses the sector function of DEBUG..
The parameters are as follows:
TOdisk -DWF 1 1000 123 FILE 12345 -ZIP 9

2
Added the functions of backing up and restoring MBR, DBR, FAT, CMOS of dosback, perfected to handle MBR, DBR, FAT of any hard disk and any partition, and also added the comparison function with the original partition,

The parameters are as follows:

Save:
TOdisk -SPT C: CPT
TODISK -SDBR 1:3 DBR
TOdisk -SFAT 2:1 DFAT


These parameters are very easy to understand. Great!

PT=Partition Table
DBR=DOS Boot Record
FAT=File Allocation Table


Restore
(No need to enter the partition number when restoring, just the file name)
TOdisk -R FILE

Compare:
TOdisk -C FILE
(No need to enter the partition number when comparing, just the file name)


Are the data of the yes/no positions all written in the file?

Is the comparison with the hard disk?
For example: TOdisk -C DFAT
Is it comparing the file with the FAT of D:


CMOS

Backup:
TOdisk -SCMOS FILE

Restore
TOdisk -RCMOS FILE

Guess CMOS password
TOdisk -CMOSKEY


This is also very useful!

I was just trying to understand the TOdisk parameters. It's easier for me who doesn't program and beginners to understand. But recently the company has been very busy, so it's delayed until today and hasn't been completely sorted out... Finally, there's some clue already!

I don't know if the new version has been changed. The understanding of the old version is:

TOdisk {source} {destination}

{source} can be a simple drive letter, or a partition such as 1:1

{destination} is the compressed file name and its characteristics connected by the = symbol. For example, if the compressed file is stored in d:, the name is drv-c.toz, and the compression ratio is 9, the writing method is d:\drv-c.toz=c9, and adding parentheses means this is an integral command.... Adding parameters is just an extension of this format.


[ Last edited by johnsonlam on 2007-3-31 at 11:45 PM ]
我 的 網 站 - http://optimizr.dyndns.org
Floor 119 Posted 2007-04-01 01:47 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
Credits 5,154
Posts 1,827
Joined 2003-07-18 00:00
22-year member
UID 7105
Gender Male
Status Offline
Sorry, Jack rarely uses C language, so he couldn't find a solution to your problem and can't help much.

It's okay not to use C language. Actually, it's enough to just trouble him to talk about the idea. As for using which functions in C language to implement this idea, that's my own business..(Generally, different languages can basically achieve the same or similar functions, just with different writing methods...)

Are all the location data written in the file?

It's a comparison with the hard disk?
For example: TOdisk -C DFAT
Is it a comparison between the file and the FAT of D:


Yes.
Because all the location data is written in the file, so the principles of -R (restore a single partition table, single DBR or single FAT) and -RALL (restore the partition table chain and DBR of all hard disks in the machine or the entire hard disk) are the same.
That is to say, you don't need to remember which partition you saved at that time, whether it's the partition table, DBR, or FAT, etc.
As long as there is a file, it's recorded with 8 bytes.
(However, this can't be directly restored using other general tools because there are 8 more bytes. But if you must use it, you can remove the first 8 bytes;)
(Of course, in fact, the file name you saved should help you remember. In addition, it's recommended to use -SALL and -RALL to save and restore the partition table and DBR of all hard disks or a certain hard disk (without FAT), and everything doesn't need you to worry.)


TOdisk {source} {destination}

It should be: TOdisk {source} TO {destination}
The intention of adding TO is to clarify that the left is the source
(Because some programs place the target on the left.), and this is also the label and symbol of TOdisk.


{source} can be a simple drive letter, or a partition such as 1:1

{source} and {destination} can also be files, but they naturally can't be both files at the same time (this is not backup and restore, but in this case, it can be copying files, comparing files or compressing/decompressing files. TOdisk also has the functions of comparing files and compressing/decompressing files. For usage, refer to other instructions)


{destination} is the compressed file name connected with its characteristics by the = symbol. For example, if the compressed file is stored in d:, the name is drv-c.toz, and the compression ratio is 9, the writing method is d:\drv-c.toz=c9, and adding parentheses means this is an integral command.... Adding parameters is just an extension of this format.

Adding parentheses is mainly to distinguish it from hard disk parameters, partition parameters, and drive letter parameters.

[ Last edited by GOTOmsdos on 2007-4-1 at 03:19 AM ]
Floor 120 Posted 2007-04-01 03:50 ·  中国 广东 广州 教育网
铂金会员
★★★★
C++启程者
Credits 5,154
Posts 1,827
Joined 2003-07-18 00:00
22-year member
UID 7105
Gender Male
Status Offline
Originally posted by henrya2 at 2007-3-31 09:01 AM:
It would be great if it could fully support NTFS like the latest GHOST.


Supporting NTFS is not in the program's plan, and there's not enough time.
However, if there's only an NTFS partition storing backup files, you can try loading NTFSPRO first and then running this program to see if it works. This depends on whether NTFSPRO is stable.
‹ Prev 1 6 7 8 9 10 13 Next ›
Forum Jump: