+ calculate a CRC value for enums

This commit is contained in:
pierre 2000-05-15 13:14:48 +00:00
parent c57f884789
commit 1b45cfb51b

View File

@ -15,7 +15,9 @@
**********************************************************************} **********************************************************************}
program msg2inc; program msg2inc;
uses strings; uses
crc,
strings;
const const
version='0.99.14'; version='0.99.14';
@ -203,23 +205,39 @@ end;
procedure WriteEnumFile(const fn,typename:string); procedure WriteEnumFile(const fn,typename:string);
var var
t : text; t : text;
i : longint; {$ifdef DEBUGCRC}
t2 : text;
{$endif DEBUGCRC}
i,crcvalue : longint;
p : pchar; p : pchar;
s : string;
start : boolean; start : boolean;
begin begin
crcvalue:=longint($ffffffff);
writeln('Writing enumfile '+fn); writeln('Writing enumfile '+fn);
{Open textfile} {Open textfile}
assign(t,fn); assign(t,fn);
rewrite(t); rewrite(t);
{$ifdef DEBUGCRC}
assign(t2,'crc.tst');
rewrite(t2);
Writeln(t2,crcvalue);
{$endif DEBUGCRC}
writeln(t,'type t',typename,'=('); writeln(t,'type t',typename,'=(');
{Parse buffer in msgbuf and create indexs} {Parse buffer in msgbuf and create indexs}
p:=enumtxt; p:=enumtxt;
start:=true; start:=true;
for i:=1to enumsize do for i:=1 to enumsize do
begin begin
if start then if start then
begin begin
write(t,' '); write(t,' ');
s:=UpCase(strpas(p));
crcvalue:=UpdateCRC32(crcvalue,@s[1],length(s));
{$ifdef DEBUGCRC}
Writeln(t2,s);
Writeln(t2,crcvalue);
{$endif DEBUGCRC}
start:=false; start:=false;
end; end;
if p^=#0 then if p^=#0 then
@ -228,12 +246,19 @@ begin
start:=true; start:=true;
end end
else else
write(t,p^); begin
write(t,p^);
end;
inc(p); inc(p);
end; end;
writeln(t,'end',typename); writeln(t,'end',typename);
writeln(t,');'); writeln(t,');');
writeln(t,'const');
writeln(t,' MsgCRCValue : longint = ',crcvalue,';');
close(t); close(t);
{$ifdef DEBUGCRC}
close(t2);
{$endif DEBUGCRC}
end; end;
@ -752,7 +777,10 @@ begin
end. end.
{ {
$Log$ $Log$
Revision 1.5 2000-02-09 13:23:11 peter Revision 1.6 2000-05-15 13:14:48 pierre
+ calculate a CRC value for enums
Revision 1.5 2000/02/09 13:23:11 peter
* log truncated * log truncated
Revision 1.4 2000/01/27 11:29:15 peter Revision 1.4 2000/01/27 11:29:15 peter
@ -761,4 +789,4 @@ end.
Revision 1.3 2000/01/07 01:15:00 peter Revision 1.3 2000/01/07 01:15:00 peter
* updated copyright to 2000 * updated copyright to 2000
} }