CVS freexp
CVS User mw
cvs-list at freexp.de
Son Mai 10 11:59:22 CEST 2009
Update of /server/cvs/freexp
In directory m6s15:/tmp/cvs-serv14246
Modified Files:
xp_ntvdm.pas file_id.diz clip.pas
Log Message:
MW: - Korrekturen im Bereich Timezone/Windows.
--- /server/cvs/freexp/xp_ntvdm.pas 2009/05/03 16:00:41 1.16
+++ /server/cvs/freexp/xp_ntvdm.pas 2009/05/10 09:59:22 1.17
@@ -7,7 +7,7 @@
{ Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der }
{ Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. }
{ --------------------------------------------------------------- }
-{ $Id: xp_ntvdm.pas,v 1.16 2009/05/03 16:00:41 mw Exp $ }
+{ $Id: xp_ntvdm.pas,v 1.17 2009/05/10 09:59:22 mw Exp $ }
{$R xp_ntvdm.rc}
@@ -34,7 +34,7 @@
{ procedure setCL(para:UCHAR); external 'ntvdm.exe'; } function getCL:UCHAR; external 'ntvdm.exe';
{ procedure setCH(para:UCHAR); external 'ntvdm.exe'; } function getCH:UCHAR; external 'ntvdm.exe';
- procedure setEDX(para:ULONG); external 'ntvdm.exe'; { function getEDX:ULONG; external 'ntvdm.exe'; }
+{ procedure setEDX(para:ULONG); external 'ntvdm.exe'; } { function getEDX:ULONG; external 'ntvdm.exe'; }
{ procedure setDX(para:USHORT); external 'ntvdm.exe'; } function getDX:USHORT; external 'ntvdm.exe';
{ procedure setDH(para:UCHAR); external 'ntvdm.exe'; } { function getDH:UCHAR; external 'ntvdm.exe'; }
{ procedure setDL(para:UCHAR); external 'ntvdm.exe'; } { function getDL:UCHAR; external 'ntvdm.exe'; }
@@ -316,34 +316,49 @@
{ --- GetTimeZone ---------------------------------------------- }
-procedure GetTimeZone;
+procedure GetTimeZone1;
var TZ : TTimeZoneInformation;
- minutes : integer;
mode: integer;
begin
mode:=0;
- minutes:=0;
case GetTimeZoneInformation(TZ) of
TIME_ZONE_ID_UNKNOWN :
begin
mode:=0;
- minutes:=TZ.Bias;
end;
TIME_ZONE_ID_STANDARD:
begin
mode:=0;
- minutes:=TZ.StandardBias;
end;
TIME_ZONE_ID_DAYLIGHT:
begin
mode:=1;
- minutes:=TZ.DaylightBias;
end;
end;
setEAX(mode);
- setEDX(minutes);
end;
+procedure GetTimeZone2;
+var TZ : TTimeZoneInformation;
+ minutes : integer;
+begin
+ minutes:=0;
+ case GetTimeZoneInformation(TZ) of
+ TIME_ZONE_ID_UNKNOWN :
+ begin
+ minutes:=TZ.Bias;
+ end;
+ TIME_ZONE_ID_STANDARD:
+ begin
+ minutes:=TZ.Bias + TZ.StandardBias;
+ end;
+ TIME_ZONE_ID_DAYLIGHT:
+ begin
+ minutes:=TZ.Bias + TZ.DaylightBias;
+ end;
+ end;
+ setEAX(minutes);
+end;
{ --- VDD calls ------------------------------------------------- }
@@ -353,7 +368,8 @@
{Versionsinfos}
$0000: get_windows_version; {Windows NT Version bestimmen}
$0001: XP_NTVDM_VER; {Revision der XP_NTVDM.DLL bestimmen}
- $0002: GetTimeZone; {Timezone aus Windows 2000/XP/Server 2003/7 (nur XPM) bestimmen}
+ $0002: GetTimeZone1; {Timezone aus Windows 2000/XP/Server 2003/7 (nur XPM) bestimmen}
+ $0003: GetTimeZone2; {Timezone aus Windows 2000/XP/Server 2003/7 (nur XPM) bestimmen}
{Clipboardfunktionen}
$0101: clip_to_string; {einen String aus der Zwischenablage lesen}
@@ -387,7 +403,10 @@
{
$Log: xp_ntvdm.pas,v $
- Revision 1.16 2009/05/03 16:00:41 mw
+ Revision 1.17 2009/05/10 09:59:22 mw
+ MW: - Korrekturen im Bereich Timezone/Windows.
+
+ Revision 1.16 2009-05-03 16:00:41 mw
MW: - FreeXP 3.41 Release
Revision 1.15 2008-12-26 18:37:18 mw
--- /server/cvs/freexp/file_id.diz 2005/12/04 09:08:51 1.10
+++ /server/cvs/freexp/file_id.diz 2009/05/10 09:59:22 1.11
@@ -1,32 +1,21 @@
ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
-º FreeXP v3.40 RC4 (Komplettpaket) º
+º FreeXP v3.41 (Komplettpaket) º
ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
-º Release-Candidate 4 vom 31.10.2005 º
+º Release vom 10.05.2009 º
ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
-º Die erste "echte" FreeXP-Release º
-º ist im kommen. Nach langem Warten º
-º ist es jetzt so weit: º
-º Der erste echte Release-Candidate º
-º zur Version 3.40 ist da. º
-º Nach dieser letzten Testversion º
-º erfolgt zeitnah die Release noch º
-º in diesem Jahr. º
+º Die zweite "echte" FreeXP-Release º
+º ist da. º
º ---------------------------------- º
-º (c) 2005 by FreeXP www.freexp.de º
+º (c) 2009 by FreeXP www.freexp.de º
ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
-º FreeXP v3.40 RC4 (Full package) º
+º FreeXP v3.41 (Full package) º
ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
-º Release Candidate 4 of 31.10.2005 º
+º Release of 10.05.2009 º
ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
-º The first "true" FreeXP release º
-º is on its way. After a long wait, º
-º this is how things stand: º
-º This is v3.40 Release Candidate 4 º
-º and after this latest test version,º
-º a release may well follow later º
-º this year. º
+º The second "true" FreeXP release º
+º is here. º
º ---------------------------------- º
-º (c) 2005 by FreeXP www.freexp.de º
+º (c) 2009 by FreeXP www.freexp.de º
ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
--- /server/cvs/freexp/clip.pas 2009/05/03 16:00:42 1.43
+++ /server/cvs/freexp/clip.pas 2009/05/10 09:59:22 1.44
@@ -8,7 +8,7 @@
{ Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der }
{ Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. }
{ --------------------------------------------------------------- }
-{ $Id: clip.pas,v 1.43 2009/05/03 16:00:42 mw Exp $ }
+{ $Id: clip.pas,v 1.44 2009/05/10 09:59:22 mw Exp $ }
{$I XPDEFINE.INC }
{$O+,F+}
@@ -200,15 +200,18 @@
var mode:smallint;
var minutes:smallint;
- procedure Loadtimezone;assembler;
+ function Loadtimezone1:longint;assembler;
asm
mov dx,$0002
mov ax,ntvdm_handle
db $c4,$c4,$58,2
- db $66 { 32 bit prefix }
- mov mode,ax
- db $66 { 32 bit prefix }
- mov minutes,dx
+ end;
+
+ function Loadtimezone2:longint;assembler;
+ asm
+ mov dx,$0003
+ mov ax,ntvdm_handle
+ db $c4,$c4,$58,2
end;
function makeTZ(sw:char;tzdiff:longint):string;
@@ -220,11 +223,13 @@
end;
begin
+ {Nur bei Windows NT 5.x moeglich}
if ((WinVersion=4) and (Lo(WinNTVersion)=5)) then
begin
- Loadtimezone; {NTVDM aufrufen}
- hour:=minutes div 60;
- hour:=hour mod 24;
+ mode:=Loadtimezone1; {NTVDM aufrufen}
+ minutes:=Loadtimezone2; {NTVDM aufrufen}
+ hour:=-(minutes div 60);
+ {hour:=hour mod 24;}
if (mode=0) then
tzone:=makeTZ('W',hour)
else
@@ -871,7 +876,10 @@
end.
{
$Log: clip.pas,v $
- Revision 1.43 2009/05/03 16:00:42 mw
+ Revision 1.44 2009/05/10 09:59:22 mw
+ MW: - Korrekturen im Bereich Timezone/Windows.
+
+ Revision 1.43 2009-05-03 16:00:42 mw
MW: - FreeXP 3.41 Release
Revision 1.42 2008-12-26 18:37:11 mw
Mehr Informationen über die CVS-List Mailingliste