source upload

This commit is contained in:
Razor12911
2022-01-17 22:16:47 +02:00
parent 12936d065b
commit 098e8c48de
1778 changed files with 1206749 additions and 0 deletions

View File

@@ -0,0 +1,124 @@
NAME
bdiff - difference of binary files
SYNOPSIS
bdiff [options] old-file new-file [>patch-file]
DESCRIPTION
bdiff computes differences between two binary files. Output can be either a
somewhat human-readable protocol, or a binary file readable by bpatch. Output is
sent to standard output unless the --output option is used to specify an output
file.
bdiff handles insertion and deletion of data as well as changed bytes.
OPTIONS
-q - Use QUOTED format (default);
-f - Use FILTERED format;
-b - Use BINARY format;
--format=FMT - Select format by name: (binary, filtered, quoted)
-m N, - Two chunks of data are recognized as being identical if
--min-equal=N they are at least N bytes long, the default is 24.
-o FILENAME, - Write diff to specified file instead of standard output.
--output=FILENAME Specifying --output=- does nothing. Use as an alternative
to shell redirection.
-V, - Print status messages while processing input;
--verbose
-h, - Show help screen and exit;
--help
-v, - Show version number and exit.
--version
ALGORITHM
bdiff tries to locate maximum-length substrings of the new file in the old data.
Substrings shorter than N (argument to the -m option) are not considered
acceptable matches. Everything covered by such a substring is transmitted as a
position, length pair, everything else as literal data.
bdiff uses the block-sort technique to allow O(lgN) searches in the file, giving
an estimated O(NlgN) algorithm on average.
The program requires about five times as much memory as the old file, plus
storage for the new file. This should be real memory, bdiff accesses all of it
very often.
OUTPUT FORMATS
The quoted format (default) is similar to diff output in unified format: '+'
means added data, and a space means data kept from the old file. Lines prefixed
with '@' inform you about the position of the next 'space' line in the source
file (byte offset).
Unlike in diff, there's no implicit line feed after each line of output.
Non-printable characters (see isprint(3)[1]) and the backslash character are
represented by a \ followed by the octal three-digit character code.
The filtered format is like the quoted format, but non-printable characters are
replaced by dots (.).
The binary format is machine-readable, and omits details for common blocks. All
words are in little-endian format (low byte first). The format is:
8 bytes - Signature "bdiff02\x1A", where 02 is kind-of a version number. An
earlier version (with an O(n^3) algorithm) used the number 01. \x1A
is ASCII 26 (Control-Z, an MS-DOS end-of-file marker).
4 bytes - Length of old file in bytes.
4 bytes - Length of new file in bytes.
n bytes - The patch itself, a sequence of the following records:
literally added data:
1 byte - ASCII 43 ('+');
4 bytes - number of bytes;
n bytes - data.
common block:
1 byte - ASCII 64 ('@');
4 bytes - file position in old file;
4 bytes - number of bytes;
4 bytes - checksum.
The checksum is computed using the following algorithm:
long checksum(char* data, size_t len)
{
long l = 0;
while(len--) {
l = ((l >> 30) & 3) | (l << 2);
l ^= *data++;
}
return l;
}
(rotate current checksum left by two and xor in the current byte)
ADMINISTRATIVIA
This manual page is for version 0.2.6 or later of bdiff.
See the file LICENSE.md for details of licensing and copyright.
THIS SOFTWARE IS PROVIDED "AS-IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTY. IN
NO EVENT WILL THE AUTHORS BE HELD LIABLE FOR ANY DAMAGES ARISING FROM THE USE OF
THIS SOFTWARE.
FOOTNOTES
[1] http://www.openbsd.org/cgi-bin/man.cgi?query=isprint&sektion=3

View File

@@ -0,0 +1,49 @@
NAME
bpatch - apply binary batch
SYNOPSIS
bpatch [options] old-file [ new-file ] [<patch-file]
DESCRIPTION
bpatch applies a binary patch generated by bdiff. Patches are read from standard
input unless the --input option is used to specify an input file.
old-file is the same file as used as the first argument to bdiff. bpatch will
create a copy of the file given as second argument to bdiff in new-file by using
the information from old-file and patch-file.
If new-file is omitted, the old file is replaced with the new file.
bpatch will detect if the patch does not match old-file, or if the patch has
been garbled. Remember to transmit binary patches as binary files!
In case of an error, new-file will not be touched.
OPTIONS
-i PATCH-FILE, - Read patch from specified file instead of standard input.
--input=PATCH-FILE Specifying --input=- does nothing. Use as an alternative
to shell redirection.
-h, - Show help screen.
--help
-v, - Show version number.
--version
ADMINISTRATIVIA
This manual page is for version 0.2.6 or later of bpatch.
See the file LICENSE.md for details of licensing and copyright.
THIS SOFTWARE IS PROVIDED "AS-IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTY. IN
NO EVENT WILL THE AUTHORS BE HELD LIABLE FOR ANY DAMAGES ARISING FROM THE USE OF
THIS SOFTWARE.

View File

@@ -0,0 +1,94 @@
--------------------------------------------------------------------------------
This file contains copies of emails exchanged between Peter Johnson and Stefan
Reuther that relate to licensing of Peter's Pascal translation of Stefan's
original source code.
**NOTE:** Email addresses have been partially obscured.
--------------------------------------------------------------------------------
From: xxxxx@delphidabbler.com
To: Streu@xxxxx.de
Date: 04/12/2003 01:59
Hi Stefan
I found v0.2 of your BDiff/BPatch files on the net and the programs meet my
needs quite well. However I would like to modify the code to strip out the
core functions and place that in a DLL to be accessed by one of my Windows
programs. Since I program in mainly in Object Pascal, I've created a literal
translation of your code in Pascal (to run on Windows platforms) as a first
step.
I've published the Pascal version on my website (see
http://www.delphidabbler.com/software.php?id=bdiff) and have tried to comply
with the terms published with v0.2 of your code. The new version is made
available under the same terms as your original code and the C code is
included in the download. You've been given full credit for the additional
code and your copyright is acknowledged.
I hope you are happy for your code to be used in this way and for me to
develop it to meet my needs and to publish the result. Please let me know if
you have any problems with this.
Thanks for making your code available. Please do get in touch if you have
any comments.
Regards
Peter Johnson
xxxxx@openlink.org
http://www.delphidabbler.com/
--------------------------------------------------------------------------------
From: Streu@xxxxx.de
To: xxxxx@delphidabbler.com
Date: 04/12/2003 12:06
Hello,
On Thu, Dec 04, 2003 at 01:59:05AM -0000, Peter David Johnson wrote:
> > I found v0.2 of your BDiff/BPatch files on the net and the programs meet my
> > needs quite well. However I would like to modify the code to strip out the
> > core functions and place that in a DLL to be accessed by one of my Windows
> > programs.
Go ahead and do what you want with it.
> > I've published the Pascal version on my website (see
> > http://www.delphidabbler.com/software.php?id=bdiff) and have tried to comply
> > with the terms published with v0.2 of your code. The new version is made
> > available under the same terms as your original code and the C code is
> > included in the download. You've been given full credit for the additional
> > code and your copyright is acknowledged.
Nice. (Don't worry about those "copyright terms" too much.
Everything's fine with me unless you claim 'I invented it and
now I patent it').
I mainly wrote that program to give out binary patches of my
other programs; I also have a nice Turbo Pascal version of a
'patch' utility; if you want it, no problem, but I doubt it
helps you too much under Windows. For fairness I should say the
'bdiff' is not the best binary-diff program there is (at least I
already had one which found smaller diffs, but I can't find it
right now), but it is simple and easy to handle.
> > I hope you are happy for your code to be used in this way and for me to
> > develop it to meet my needs and to publish the result. Please let me know if
> > you have any problems with this.
To be honest, I had almost forgotten that that file was on my
web site :)
Oh well, this reminds me that the version on the website has a
bug. And since I forgot that it's there, I forgot to update it.
I attach the fixed version of 'blksort.c'. The bug causes it to
crash on certain data. The problem is in 'find_string'.
Stefan
--------------------------------------------------------------------------------

View File

@@ -0,0 +1,49 @@
================================================================================
License for original BDiff / BPatch releases 0.1 and 0.2 (C source code)
================================================================================
(c) copyright 1999 by Stefan Reuther <Streu@gmx.de>. Copying this program is
allowed, as long as you include source code and document changes you made in a
user-visible way so people know they're using your version, not mine.
This program is distributed in the hope that it will be useful, but without
warranties of any kind, be they explicit or implicit.
================================================================================
License used for BDiff / BPatch v0.2.1 and v0.2.2
================================================================================
The copyright statement and terms of use and distribution granted by the
original author are:
<20> copyright 1999 by Stefan Reuther*. Copying this program is allowed, as long
as you include source code and document changes you made in a user-visible way
so people know they're using your version, not mine.
This program is distributed in the hope that it will be useful, but without
warranties of any kind, be they explicit or implicit.
Additional copyright and terms of using the Pascal translation are as follows:
The Pascal translation is <20> copyright 2003 by Peter Johnson. Copying the
Pascal translation and any modifications of the original code is allowed
providing changes are made clear.
No warranties of any kind are provided.
Many thanks to Stefan for creating this software.
* Stefan's email address is included in the original document but has not been
included here for obvious reasons - please see the file bdiff.1 that is included
in the download for details.
================================================================================
License used for current version BDiff / BPatch
================================================================================
The current version of the license can be found in LICENSE.md in the root of the
Git repository.
================================================================================

View File

@@ -0,0 +1,54 @@
================================================================================
NOTES ON THE PASCAL TRANSLATION OF BDIFF / BPATCH
================================================================================
Release 0.2.1 (pas)
-------------------
This version is a fairly literal, line by line, translation of Stefan Reuther's
BDiff v0.2 and BPatch v0.2. The differences are:
+ The Pascal translation is only suitable for use on Windows targets - it
compiles to a Win32 console application and uses the Windows API.
+ The C version encounters problems reading and writing binary difference files
via shell redirection: MS-DOS / Windows could garble input or output because
of end-of-line character translations. Therefore Stefan provided the --output
(or -o) and --input (or -i) switches to overcome this problem. These switches
are used instead of shell redirection on MS-DOS / Windows.
The Pascal translation does not have this problem and shell redirection can be
used safely on Windows systems. Therefore the --input and --output switches
are not required, but have been retained.
+ The numeric parameter to BDiff's -m or --min-equal switches can be specified
in decimal, octal or hexadecimal notation on the C version. The Pascal
translation supports only decimal notation.
+ The Pascal versions of BDiff and BPatch contain embedded Windows version
information.
+ Both the C and Pascal versions share a BPatch bug: the program crashes if only
one file is supplied on the command line.
Release 0.2.2 (pas)
------------------
This version is again a fairly literal translation. The only change (except for
updated version information) is that BDiff contains a Pascal translation of a
bug fix in the block sort code for which Stefan provided updated C source code.
Release 0.2.3 and later
-----------------------
From this release BDiff and BPatch broke the link with the original C source and
began to develop separately, so further translation notes are not provided.
Note though that all 0.2.x releases remained functionally equivalent other than
for bug fixes.
--------------------------------------------------------------------------------

View File

@@ -0,0 +1,644 @@
================================================================================
BDIFF / BPATCH: Historical update information from v0.2.1 to v0.2.5
================================================================================
This file records known changes to files and releases of the BDiff / BPatch
utilities from the first Pascal release (v0.2.1) until release 0.2.5 when the
project was placed under version control with Subversion. Later the code was
ported from Subversion to Git.
There are three sections:
+ Files: Lists all source code and development tools and provides details of
changes to these files that preceded version control.
+ Releases: Lists all the releases of BDiff / BPatch and notes which file
revisions were included in each release.
+ Compilers: Lists the compilers required to build each release.
================================================================================
FILES
================================================================================
This section lists all files for which update history is known between the first
released version of the utilities and release 0.2.5.
--------------------------------------------------------------------------------
DevTools\BuildAll.bat
--------------------------------------------------------------------------------
v1.0 of 16 Sep 2007 - Original version
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
DevTools\BuildPascal.bat
--------------------------------------------------------------------------------
v1.0 of 16 Sep 2007 - First version.
v1.1 of 07 Apr 2008 - Modified to work with BPtch renamed from BPatch.
v1.2 of 14 Aug 2008 - Changed back to work "unrenamed" BPatch.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
DevTools\BuildResources.bat
--------------------------------------------------------------------------------
v1.0 of 16 Sep 2007 - First version.
v1.1 of 07 Apr 2008 - Modified to work with BPtch renamed from BPatch.
v1.2 of 14 Aug 2008 - Changed back to work "unrenamed" BPatch.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
DevTools\Release.bat
--------------------------------------------------------------------------------
v1.0 of 18 Sep 2007 - First version.
v1.1 of 07 Apr 2008 - Updated to work with renamed BPtch (from BPatch).
- Now copy .res files from Bin directories.
v1.2 of 14 Aug 2008 - Changed back to work "unrenamed" BPatch.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
DevTools\Tidy.bat
--------------------------------------------------------------------------------
v1.0 of 16 Sep 2007 - Original version.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Docs\BDiff.phf
--------------------------------------------------------------------------------
18 Sep 2007 - New project update file for BDiff.
07 Apr 2008 - Added details of BDiff v0.2.3 build 4.
14 Aug 2008 - Added details of BDiff v0.2.5 build 5.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Docs\BDiff.txt
--------------------------------------------------------------------------------
27 Nov 2003 - Original version - based on OrigC\bdiff.1.
07 Apr 2008 - Revised to refer to BDiff 0.2.4 instead of 0.2.
- Removed crosss references to other "man pages"
14 Aug 2008 - Reformatted document.
- Revised, clarified and corrected text.
- Provided new disclaimer paragraph.
- Provided new copyright paragraph.
- Revised to refer to BDiff 0.2.4 instead of 0.2.4.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Docs\BPatch.phf
--------------------------------------------------------------------------------
18 Sep 2007 - New project update file for BPatch.
07 Apr 2008 - Added details of BPtch v0.2.4.
- Noted BPatch renamed as BPtch.
- Renamed as BPtch.phf from BPatch.phf.
14 Aug 2008 - Added details of BPatch v0.2.5.
- Noted BPatch renamed back to original name.
- Renamed from BPtch.phf back to BPatch.phf.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Docs\BPatch.txt
--------------------------------------------------------------------------------
27 Nov 2003 - Original version - based on OrigC\bpatch.1.
07 Apr 2008 - Revised to refer to BPtch 0.2.4 instead of BPatch 0.2.
- Removed crosss references to other "man pages"
- Renamed as BPtch.txt from BPatch.txt
14 Aug 2008 - Reformatted document.
- Revised, clarified and corrected text.
- Provided new disclaimer paragraph.
- Provided new copyright paragraph.
- Revised to refer to BDiff 0.2.4 instead of 0.2.4.
- Renamed back to BPatch.txt from BPtch.txt
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Docs\ChangeLog.txt
--------------------------------------------------------------------------------
29 Nov 2003 - First version of project's changelog for release 0.2.1.
21 Dec 2003 - Added info about release 0.2.2.
18 Sep 2007 - Added info about release 0.2.3.
- Removed info about C versions.
07 Apr 2008 - Added info about release 0.2.4.
14 Aug 2008 - Added info about release 0.2.5.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Docs\EmailsReLicense.txt
--------------------------------------------------------------------------------
17 Sep 2007 - Record of emails between Peter Johnson and Stefan Reuther
re licensing terms.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Docs\LICENSE
--------------------------------------------------------------------------------
18 Sep 2007 - License file containing new license for project.
08 Apr 2008 - Revised re change of name of BPatch to BPtch.
14 Aug 2008 - Revised re change of name of BPtch back to BPacth.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Docs\OldLicenses.txt
--------------------------------------------------------------------------------
18 Sep 2007 - Record of old licenses for C code and Pascal
translations.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Docs\PasTrans.txt
--------------------------------------------------------------------------------
29 Nov 2003 - First version of Pascal Translation notes.
21 Dec 2003 - Modified re changes in release 0.2.2
18 Sep 2007 - Modified re changes in release 0.2.3 and later
08 Apr 2008 - Noted change of name of BPatch to BPtch.
- Added section for release 0.2.4 and later.
14 Aug 2008 - Noted change of name of BPtch back to BPatch.
- Added section for release 0.2.5 and later.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Docs\README
--------------------------------------------------------------------------------
29 Nov 2003 - First version of read me file covering program outline,
installation, source code and copyright.
- Original name was ReadMe.txt
18 Sep 2007 - Renamed from ReadMe.txt to README.
- Completely rewritten.
07 Apr 2008 - Noted change of name of BPatch to BPtch.
- Added note re provided binary files in source code
section.
14 Aug 2008 - Noted change of name of BPtch back to BPatch.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
OrigC\bdiff.1
--------------------------------------------------------------------------------
20 Jul 1999 - Original version supplied by Stefan Reuther
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
OrigC\bdiff.c
--------------------------------------------------------------------------------
20 Jul 1999 - Original version supplied by Stefan Reuther
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
OrigC\blksort.c
--------------------------------------------------------------------------------
20 Jul 1999 - Original version supplied by Stefan Reuther
16 Dec 2003 - Bug fix supplied by Stefan Reuther
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
OrigC\bpatch.1
--------------------------------------------------------------------------------
20 Jul 1999 - Original version supplied by Stefan Reuther
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
OrigC\bpatch.c
--------------------------------------------------------------------------------
20 Jul 1999 - Original version supplied by Stefan Reuther
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
OrigC\makefile
--------------------------------------------------------------------------------
20 Jul 1999 - Original version supplied by Stefan Reuther
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
OrigC\README
--------------------------------------------------------------------------------
20 Jul 1999 - Original version supplied by Stefan Reuther
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BDiff.bpg
--------------------------------------------------------------------------------
28 Nov 2003 - Original project group file containing BDiff and BPatch.
07 Apr 2008 - Revised re renaming of BPatch to BPtch.
14 Aug 2008 - Revised re renaming of BPtch back to BPatch.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BDiff\BDiff.cfg
--------------------------------------------------------------------------------
28 Nov 2003 - Original Delphi project config file.
21 Dec 2003 - Changed some absolute file paths.
18 Sep 2007 - Revised for Delphi 7.
- Made path to exe files relative.
07 Apr 2008 - Changed some absolute library file paths.
14 Aug 2008 - No changes: touched file.
--------------------------------------------------------------------------------
Src\BDiff\BDiff.dpr
--------------------------------------------------------------------------------
v1.0 of 28 Nov 2003 - Original version.
v1.1 of 18 Sep 2007 - Changed copyright and license notice.
v1.2 of 14 Aug 2008 - Included BDiff resource that contains a manifest that
tells Vista to run program as invoked.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BDiff\BDiff.manifest
--------------------------------------------------------------------------------
v1.0 of 14 Aug 2008 - Original version that permits application to run without
elevation on Vista.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BDiff\BDiff.rc
--------------------------------------------------------------------------------
v1.0 of 14 Aug 2008 - Original version
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BDiff\Build.bat
--------------------------------------------------------------------------------
v1.0 of 16 Sep 2007 - First version.
v1.1 of 14 Aug 2008 - Added code to compile .rc file.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BDiff\UBDiff.pas
--------------------------------------------------------------------------------
v1.0 of 28 Nov 2003 - Original Pascal translation of bdiff.c
v1.1 of 18 Sep 2007 - Fixed memory leaks by freeing various memory buffers.
- Removed "side-by-side" C code.
- Updated help screen copyright statement and added
information about -o / --output switch and various
format options.
- Changed date format displayed by --version switch.
- Fixed small bug in -h and -v options.
- Fixed a buffer size in print_binary_add routine.
- Updated version constant to 0.2.3.
- Changed copyright and license notice.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BDiff\UBDiffTypes.pas
--------------------------------------------------------------------------------
v1.0 of 28 Nov 2003 - Original version.
v1.1 of 18 Sep 2007 - Changed copyright and license notice.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BDiff\UBDiffUtils.pas
--------------------------------------------------------------------------------
v1.0 of 28 Nov 2003 - Original version.
v1.1 of 18 Sep 2007 - Added new RedirectStdOut() routine.
- Removed redundant malloc() routine.
- Explicitly cast handles of stdout and stderr to
correct types
- Changed copyright and license notice.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BDiff\UBlkSort.pas
--------------------------------------------------------------------------------
v1.0 of 28 Nov 2003 - Original Pascal translation of blksort.c
v1.1 of 21 Dec 2003 - Bug fix based on updated blksort.c provided by Stefan
Reuther.
v1.2 of 18 Sep 2007 - Replaced call to C-style malloc() function with call to
GetMem. Made a few minor related modifications.
- Changed copyright and license notice.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BDiff\VBDiff.vi
--------------------------------------------------------------------------------
28 Nov 2003 - First version: file version is 0.2.1 build 1 and product
version is 0.2.1.
21 Dec 2003 - Updated file version to 0.2.2 build 2 and product version
to 0.2.2.
18 Sep 2007 - Added header comments and license.
- Removed RC comments and output dir path.
- Modified LegalCopyright string table entry.
- Updated file version to 0.2.3 build 3 and product version
to 0.2.3.
- Updated file description.
- Changed comments to give overview of distribution and
refer to License.txt.
- Deleted identifier string to let default value be used.
- Removed SpecialBuild string item and macro references.
- Added build number to file version string.
07 Apr 2008 - Updated file version to 0.2.3 build 4 and product version
to 0.2.4.
14 Aug 2008 - Updated file version to 0.2.5 build 5 and product version
to 0.2.5.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BPatch\BPatch.cfg
--------------------------------------------------------------------------------
28 Nov 2003 - Original Delphi project config file.
21 Dec 2003 - Changed some absolute file paths.
18 Sep 2007 - Revised for Delphi 7.
- Made path to exe files relative.
07 Apr 2008 - Changed some absolute library file paths.
- Change relative paths re renamed BPtch directory.
- Renamed file from BPatch.cfg to BPtch.cfg.
14 Aug 2008 - Change relative paths re renamed BPatch directory.
- Renamed file from BPtch.cfg back to BPatch.cfg.
--------------------------------------------------------------------------------
Src\BPatch\BPatch.dpr
--------------------------------------------------------------------------------
v1.0 of 28 Nov 2003 - Original version.
v1.1 of 18 Sep 2007 - Changed copyright and license notice.
v1.2 of 07 Apr 2008 - Renamed from BPatch.dpr to BPtch.dpr. "BPatch" caused
Windows Vista to flag the program for elevation!
v1.3 of 14 Aug 2008 - Renamed back to BPatch.dpr from BPtch.dpr.
- Included BPatch.res containing manifest that causes
program to be run as invoked, overriding Vista's desire
to elevate the program because "patch" is included in
name.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BPatch\BPatch.manifest
--------------------------------------------------------------------------------
v1.0 of 14 Aug 2008 - Original version that permits application to run without
elevation on Vista (Vista would elevate without this
because "Patch" is in file name).
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BPatch\BPatch.rc
--------------------------------------------------------------------------------
v1.0 of 14 Aug 2008 - Original version.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BPatch\Build.bat
--------------------------------------------------------------------------------
v1.0 of 16 Sep 2007 - First version.
v1.1 of 07 Apr 2008 - Altered to work with BPtch renamed from BPatch.
v1.2 of 14 Aug 2008 - Altered back work with "unrenamed" BPatch.
- Added code to compile .rc file.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BPatch\UBPatch.pas
--------------------------------------------------------------------------------
v1.0 of 28 Nov 2003 - Original Pascal translation of bpatch.c
v1.1 of 18 Sep 2007 - Fixed bug preventing overwriting of existing output
files.
- Removed "side-by-side" C code.
- Removed conditional Windows / DOS conditional code.
- Updated help screen copyright statement.
- Changed date format displayed by --version switch.
- Fixed small bug in -h and -v options.
- Moved code that redirects stdin to UBDiffUtils unit.
- Updated version constant to 0.2.3 (skipping 0.2.2).
- Changed copyright and license notice.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BPatch\UBPatchTypes.pas
--------------------------------------------------------------------------------
v1.0 of 28 Nov 2003 - Original version.
v1.1 of 18 Sep 2007 - Changed copyright and license notice.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BPatch\UBPatchUtils.pas
--------------------------------------------------------------------------------
v1.0 of 28 Nov 2003 - Original version.
v1.1 of 18 Sep 2007 - Added RedirectStdIn() routine.
- Explicitly cast handles of stdin, stdout and stderr to
correct types.
- Changed copyright and license notice.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Src\BPatch\VBPatch.vi
--------------------------------------------------------------------------------
28 Nov 2003 - First version: file version is 0.2.1 build 1 and product
version is 0.2.1.
21 Dec 2003 - Updated file version to 0.2.1 build 2 and product number
to 0.2.2
18 Sep 2007 - Added header comments license.
- Removed RC comments and output dir path.
- Modified LegalCopyright string table entry.
- Updated file version to 0.2.3 build 3 and product version
to 0.2.3.
- Updated file description.
- Changed comments to give overview of distribution and
refer to License.txt.
- Deleted identifier string to let default value be used.
- Removed SpecialBuild string item and macro references.
- Added build number to file version string.
07 Apr 2008 - Updated file version to 0.2.4 build 4 and product version
to 0.2.4.
- Rephrased text to avoid the use of the word "patch" due
to problems with Windows Vista.
- Changed OriginalFileName to BPtch.exe
14 Aug 2008 - Updated file version to 0.2.5 build 5 and product version
to 0.2.5.
- Changed OriginalFileName back to BPatch.exe.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Test\Test.bat
--------------------------------------------------------------------------------
v1.0 of 18 Sep 2007 - First version.
v1.0 of 07 Apr 2008 - Revised to work with BPtch renamed from BPatch.
v1.2 of 14 Aug 2008 - Revised to work with "unrenamed" BPatch.
- Forced to work with exe files from Exe folder, preventing
calling of any other versions on path.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Test\Test1
--------------------------------------------------------------------------------
21 Dec 2003 - Copy of UBlkSort.pas used as 1st generation document used
in test comparisons.
31 Jul 2009 - MOVED TO SUBVERSION
--------------------------------------------------------------------------------
Test\Test2
--------------------------------------------------------------------------------
15 Sep 2007 - Modified copy of UBlkSort.pas used as 2nd generation
document for use in test comparisons for checking against
Test1.
31 Jul 2009 - MOVED TO SUBVERSION
================================================================================
RELEASES
================================================================================
This section lists all releases of the utilities from the first Pascal version
to release 0.2.5. For each release the following is noted:
+ Version and build number of BDiff and BPatch.
+ Brief notes of changes to each utility.
+ List of new and added source files.
The Development tools, .bpg and .cfg files, test files and documentation are not
included in this information.
--------------------------------------------------------------------------------
v0.2.1 of 29 Nov 2003
--------------------------------------------------------------------------------
BDiff.exe v0.2.1 build 1
Notes:
+ First Pascal translation of BDiff v0.2 by Stefan Reuther.
File changes:
+ New: BDiff.dpr 1.0
+ New: UBDiff.pas 1.0
+ New: UBDiffTypes.pas 1.0
+ New: UBDiffUtils.pas 1.0
+ New: UBlkSort.pas 1.0
+ New: VBDiff.vi 28 Nov 2003
BPatch.exe v0.2.1 build 1
Notes:
+ First Pascal translation of BPatch v0.2 by Stefan Reuther.
File changes:
+ New: BPatch.dpr 1.0
+ New: UBPatch.pas 1.0
+ New: UBPatchTypes.pas 1.0
+ New: UBPatchUtils.pas 1.0
+ New: VBPatch.vi 28 Nov 2003
--------------------------------------------------------------------------------
v0.2.2 of 21 Dec 2003
--------------------------------------------------------------------------------
BDiff.exe v0.2.2 build 2
Notes:
+ Fixed bug in block sort, per fix in C program provided by Stefan Reuther.
File changes:
+ Updated: UBlkSort.pas 1.1
+ Updated: VBDiff.vi 21 Dec 2003
BPatch.exe v0.2.1 build 2
Notes:
+ Unchanged other than to update product abd build number in version
information.
File changes:
+ Updated: VBPatch.vi 21 Dec 2003
--------------------------------------------------------------------------------
v0.2.3 of 18 Sep 2007
--------------------------------------------------------------------------------
BDiff.exe v0.2.3 build 3
Notes:
+ Fixed some memory leaks.
+ Fixed small bug in -h and -v switches.
+ Updated copyright statements on help screen and description of missing
options.
+ Updated version to v0.2.3.
+ Added batch file that can build the project.
+ Some minor refactoring.
+ Switched off various warnings in .cfg file.
+ Changed to new binary and source license.
File changes:
+ Updated: BDiff.dpr 1.1
+ Updated: UBDiff.pas 1.1
+ Updated: UBDiffTypes.pas 1.1
+ Updated: UBDiffUtils.pas 1.1
+ Updated: UBlkSort.pas 1.2
+ Updated: VBDiff.vi 18 Sep 2007
+ New: Build.bat 1.0
BPatch.exe v0.2.3 build 3 (v0.2.2 skipped)
Notes:
+ Fixed bug where the program could not overwrite existing files.
+ Fixed small bug in -h and -v switches.
+ Removed conditional compilation for unsupported target OSs.
+ Updated copyright statements on help screen.
+ Updated version to v0.2.3, skipping v0.2.2 to synchronise with BDiff.
+ Added batch file that can build the project.
+ Some minor refactoring.
+ Switched off various warnings in .cfg file.
+ Changed to new binary and source license.
File changes:
+ Updated: BPatch.dpr 1.1
+ Updated: UBPatch.pas 1.1
+ Updated: UBPatchTypes.pas 1.1
+ Updated: UBPatchUtils.pas 1.1
+ Updated: VBPatch.vi 18 Sep 2007
+ New: Build.bat 1.0
--------------------------------------------------------------------------------
v0.2.4 of 07 Apr 2008
--------------------------------------------------------------------------------
BDiff.exe v0.2.3 build 4
Notes:
+ Unchanged except that build number incremented to 4.
File changes:
+ VBDiff.vi 07 Apr 2008
BPatch.exe v0.2.4 build 4
Notes:
+ Renamed program from BPatch to BPtch and removed the word "patch" from
version information. This was to prevent Windows Vista from requiring the
program to be run in elevated state.
File changes:
+ Updated: BPtch.dpr 1.2 (renamed from BPatch.dpr)
+ Updated: VBPatch.vi 07 Apr 2008
+ Updated: Build.bat 1.1
--------------------------------------------------------------------------------
v0.2.5 of 14 Aug 2008
--------------------------------------------------------------------------------
BDiff.exe v0.2.5 build 5 (v0.2.4 skipped)
Notes:
+ Added manifest to resources that tells Windows Vista to run program as
invoked.
+ Skipped a version number to v0.2.5 to keep in sync with BPatch.
File changes:
+ Updated: BDiff.dpr 1.2
+ New: BDiff.manifest 1.0
+ New: BDiff.rc 1.0
+ Updated: Build.bat 1.1
+ Updated: VBDiff.vi 14 Aug 2008
BPatch.exe v0.2.5 build 5
Notes:
+ Renamed program back to BPatch from BPtch.
+ Added a manifest to resources that informs Vista to run the program as
invoked. This overrides Vista's desire to run elevated because "patch" is
in file name.
File changes:
+ Updated: BPatch.dpr 1.3 (renamed from BPtch.dpr)
+ New: BPatch.manifest 1.0
+ New: BPatch.rc 1.0
+ Updated: Build.bat 1.2
+ Updated: VBPatch.vi 14 Aug 2008
================================================================================
COMPILERS
================================================================================
This section notes the various compilers and build tools used to create each
release of the utilities from the first Pascal version to v0.2.5.
--------------------------------------------------------------------------------
v0.2.1 of 29 Nov 2003
--------------------------------------------------------------------------------
+ Delphi 4
+ DelphiDabbler Version Information Editor v2.10
+ Borland BRCC32
--------------------------------------------------------------------------------
v0.2.2 of 21 Dec 2003
--------------------------------------------------------------------------------
+ Delphi 4
+ DelphiDabbler Version Information Editor v2.10.1
+ Borland BRCC32
--------------------------------------------------------------------------------
v0.2.3 of 18 Sep 2007
--------------------------------------------------------------------------------
+ Delphi 7
+ DelphiDabbler Version Information Editor v2.11
+ Borland BRCC32 v5.4
--------------------------------------------------------------------------------
v0.2.4 of 07 Apr 2008
--------------------------------------------------------------------------------
+ Delphi 7
+ DelphiDabbler Version Information Editor v2.11
+ Borland BRCC32 v5.4
--------------------------------------------------------------------------------
v0.2.5 of 14 Aug 2008
--------------------------------------------------------------------------------
+ Delphi 7
+ DelphiDabbler Version Information Editor v2.11.2
+ Borland BRCC32 v5.4