CVS freexp
CVS User mw
cvs-list at freexp.de
Son Mai 3 18:00:42 CEST 2009
Update of /server/cvs/freexp
In directory m6s15:/tmp/cvs-serv4932
Modified Files:
xp_ntvdm.pas xp_ntvdm.rc xpfm-d.rq xpfm-e.rq xpuu-d.rq
xpuu-e.rq xpdefine.inc xpglobal.pas xp2c.pas xp0.pas xp-d.rq
xp-e.rq xp1.pas xp2cfg.inc clip.pas
Log Message:
MW: - FreeXP 3.41 Release
--- /server/cvs/freexp/xp_ntvdm.pas 2008/12/26 18:37:18 1.15
+++ /server/cvs/freexp/xp_ntvdm.pas 2009/05/03 16:00:41 1.16
@@ -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.15 2008/12/26 18:37:18 mw Exp $ }
+{ $Id: xp_ntvdm.pas,v 1.16 2009/05/03 16:00:41 mw Exp $ }
{$R xp_ntvdm.rc}
@@ -15,7 +15,7 @@
uses windows,dos,strings;
-const xp_ntvdm_version=$3;
+const xp_ntvdm_version=$4;
{ --- Imports from ntvdm.exe ------------------------------------ }
@@ -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'; }
@@ -314,6 +314,37 @@
SetConsoleTitleW(sp);
end;
+{ --- GetTimeZone ---------------------------------------------- }
+
+procedure GetTimeZone;
+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;
+
+
{ --- VDD calls ------------------------------------------------- }
procedure FREEXP_CALL; stdcall; export;
@@ -322,6 +353,7 @@
{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}
{Clipboardfunktionen}
$0101: clip_to_string; {einen String aus der Zwischenablage lesen}
@@ -355,7 +387,10 @@
{
$Log: xp_ntvdm.pas,v $
- Revision 1.15 2008/12/26 18:37:18 mw
+ 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
- Aktualisierung auf Version 3.45
Revision 1.14 2008-01-01 20:59:29 mw
--- /server/cvs/freexp/xp_ntvdm.rc 2008/12/26 18:37:18 1.4
+++ /server/cvs/freexp/xp_ntvdm.rc 2009/05/03 16:00:41 1.5
@@ -1,6 +1,6 @@
1 VERSIONINFO
-FILEVERSION 3,45,3,0
-PRODUCTVERSION 3,45,3,0
+FILEVERSION 3,41,4,0
+PRODUCTVERSION 3,41,4,0
FILEFLAGSMASK 0
FILEOS 0x40000
FILETYPE 1
@@ -11,12 +11,12 @@
{
VALUE "CompanyName", "FreeXP"
VALUE "FileDescription", "FreeXP NTVDM-Extension"
- VALUE "FileVersion", "3.45.3"
+ VALUE "FileVersion", "3.41.4"
VALUE "InternalName", "XP_NTVDM"
VALUE "LegalCopyright", "® 2002-2009"
VALUE "OriginalFilename", "XP_NTVDM.DLL"
VALUE "ProductName", "FreeXP XP_NTVDM"
- VALUE "ProductVersion", "3.45.3"
+ VALUE "ProductVersion", "3.41.4"
}
}
}
--- /server/cvs/freexp/xpfm-d.rq 2008/12/26 18:37:19 1.12
+++ /server/cvs/freexp/xpfm-d.rq 2009/05/03 16:00:41 1.13
@@ -1,9 +1,9 @@
-K XP-FM v3.45 resource file
+K XP-FM v3.41 resource file
K Deutsch
K (c) 1993-1999 Peter Mandrella
K (c) 2000-2001 OpenXP-Team
K (c) 2002-2009 FreeXP, http://www.freexp.de
-# $Id: xpfm-d.rq,v 1.12 2008/12/26 18:37:19 mw Exp $
+# $Id: xpfm-d.rq,v 1.13 2009/05/03 16:00:41 mw Exp $
# ----- Fehler in FIDO.CFG
--- /server/cvs/freexp/xpfm-e.rq 2008/12/26 18:37:19 1.12
+++ /server/cvs/freexp/xpfm-e.rq 2009/05/03 16:00:41 1.13
@@ -1,9 +1,9 @@
-K XP-FM v3.45 resource file
+K XP-FM v3.41 resource file
K English
K (c) 1993-1999 Peter Mandrella
K (c) 2000-2001 OpenXP-Team
K (c) 2002-2009 FreeXP, http://www.freexp.de
-# $Id: xpfm-e.rq,v 1.12 2008/12/26 18:37:19 mw Exp $
+# $Id: xpfm-e.rq,v 1.13 2009/05/03 16:00:41 mw Exp $
# ----- Error in FIDO.CFG
--- /server/cvs/freexp/xpuu-d.rq 2008/12/26 18:37:19 1.10
+++ /server/cvs/freexp/xpuu-d.rq 2009/05/03 16:00:41 1.11
@@ -1,9 +1,9 @@
-K FreeXP UUCICO v3.45 resource file
+K FreeXP UUCICO v3.41 resource file
K Deutsch
K (c) 1993-1999 Peter Mandrella
K (c) 2000-2001 OpenXP-Team
K (c) 2002-2009 FreeXP, http://www.freexp.de
-# $Id: xpuu-d.rq,v 1.10 2008/12/26 18:37:19 mw Exp $
+# $Id: xpuu-d.rq,v 1.11 2009/05/03 16:00:41 mw Exp $
13 ~Bytes
--- /server/cvs/freexp/xpuu-e.rq 2008/12/26 18:37:20 1.10
+++ /server/cvs/freexp/xpuu-e.rq 2009/05/03 16:00:41 1.11
@@ -1,9 +1,9 @@
-K FreeXP UUCICO v3.45 resource file
+K FreeXP UUCICO v3.41 resource file
K English
K (c) 1993-1999 Peter Mandrella
K (c) 2000-2001 OpenXP-Team
K (c) 2002-2009 FreeXP, http://www.freexp.de
-# $Id: xpuu-e.rq,v 1.10 2008/12/26 18:37:20 mw Exp $
+# $Id: xpuu-e.rq,v 1.11 2009/05/03 16:00:41 mw Exp $
13 ~bytes
--- /server/cvs/freexp/xpdefine.inc 2008/12/26 18:37:18 1.50
+++ /server/cvs/freexp/xpdefine.inc 2009/05/03 16:00:41 1.51
@@ -9,7 +9,7 @@
{ }
{ Compilerdirektiven fr CrossPoint (FreeXP) }
{ --------------------------------------------------------------- }
-{ $Id: xpdefine.inc,v 1.50 2008/12/26 18:37:18 mw Exp $ }
+{ $Id: xpdefine.inc,v 1.51 2009/05/03 16:00:41 mw Exp $ }
{ Wenn gesetzt, werden erweiterte Checks in der EXE-Datei durchgefhrt
(Rangecheck) usw. }
@@ -34,10 +34,10 @@
{.$DEFINE NOASM }
{ Ist definiert, wenn Beta-Informationen anzeigt werden sollen }
-{$DEFINE Beta }
+{.$DEFINE Beta }
{ Ist in Snapshot-Versionen definiert }
-{$DEFINE Snapshot}
+{.$DEFINE Snapshot}
{ Ist definiert, wenn ein getrenntes Overlay erstellt werden soll }
{$DEFINE USEOVR}
@@ -79,7 +79,10 @@
{$ENDIF }
{
$Log: xpdefine.inc,v $
- Revision 1.50 2008/12/26 18:37:18 mw
+ Revision 1.51 2009/05/03 16:00:41 mw
+ MW: - FreeXP 3.41 Release
+
+ Revision 1.50 2008-12-26 18:37:18 mw
- Aktualisierung auf Version 3.45
Revision 1.49 2008-01-01 20:59:32 mw
--- /server/cvs/freexp/xpglobal.pas 2008/12/26 18:37:19 1.50
+++ /server/cvs/freexp/xpglobal.pas 2009/05/03 16:00:41 1.51
@@ -8,7 +8,7 @@
{ Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der }
{ Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. }
{ --------------------------------------------------------------- }
-{ $Id: xpglobal.pas,v 1.50 2008/12/26 18:37:19 mw Exp $ }
+{ $Id: xpglobal.pas,v 1.51 2009/05/03 16:00:41 mw Exp $ }
{ Globale Konstanten/Variablen (FreeXP) und Tools }
@@ -23,8 +23,8 @@
{ XP-Werbesignatur nur 78 Zeichen lang sein darf. XP6.PAS, XP6S.INC }
const
- verstr = 'v3.45'; { Versionsnr. - steht nur an dieser Stelle }
- betastr = ' alpha 1'; { '' bei Release-Versionen }
+ verstr = 'v3.41'; { Versionsnr. - steht nur an dieser Stelle }
+ betastr = ''; { '' bei Release-Versionen }
{ ' alpha x' w„hrend der Entwicklung }
{ ' beta x' in der Stabilisierungsphase }
{ oder ' RCn' w„hrend des Endtestes }
@@ -131,7 +131,10 @@
{
$Log: xpglobal.pas,v $
- Revision 1.50 2008/12/26 18:37:19 mw
+ Revision 1.51 2009/05/03 16:00:41 mw
+ MW: - FreeXP 3.41 Release
+
+ Revision 1.50 2008-12-26 18:37:19 mw
- Aktualisierung auf Version 3.45
Revision 1.49 2008-01-01 20:59:29 mw
--- /server/cvs/freexp/xp2c.pas 2008/12/26 18:37:16 1.56
+++ /server/cvs/freexp/xp2c.pas 2009/05/03 16:00:41 1.57
@@ -8,7 +8,7 @@
{ Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der }
{ Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. }
{ --------------------------------------------------------------- }
-{ $Id: xp2c.pas,v 1.56 2008/12/26 18:37:16 mw Exp $ }
+{ $Id: xp2c.pas,v 1.57 2009/05/03 16:00:41 mw Exp $ }
{ CrossPoint - Config bearbeiten }
@@ -370,7 +370,8 @@
atz:=autoTZ_string;
maddstring(34,8 + j,getres2(252,51),atz,8,8,''); { 'Umstellung' }
for i:=52 to 55 do
- mappsel(true,getres2(252,i)); { 'manuellùDatumùTZ-Var.ùTZ/Datum' }
+ mappsel(true,getres2(252,i)); { 'manuellùDatumùTZ-Var.ùTZ/DatumùWindows' }
+ mappsel(true,getres2(252,61)); { Windows ist an Position 61}
tzfeld1:=fieldpos;
if replaceetime then mdisable;
xid:=xids[iif(XP_ID_PMs,1,0)+iif(XP_ID_AMs,2,0)];
@@ -398,6 +399,7 @@
if ustr(atz)=ustr(getres2(252,52)) then AutoTimeZone:=52 { 'manuell' }
else if ustr(atz)=ustr(getres2(252,54)) then AutoTimeZone:=54 { 'TZ-Var.' }
else if ustr(atz)=ustr(getres2(252,55)) then AutoTimeZone:=55 { 'TZ/Datum' }
+ else if ustr(atz)=ustr(getres2(252,61)) then AutoTimeZone:=61 { 'Windows' }
else AutoTimeZone:=53; { 'Datum' }
CheckTimeZone(false);
if RFC_ZConnectUsed then setRTAMode;
@@ -1534,7 +1536,10 @@
{
$Log: xp2c.pas,v $
- Revision 1.56 2008/12/26 18:37:16 mw
+ Revision 1.57 2009/05/03 16:00:41 mw
+ MW: - FreeXP 3.41 Release
+
+ Revision 1.56 2008-12-26 18:37:16 mw
- Aktualisierung auf Version 3.45
Revision 1.55 2008-01-01 20:59:26 mw
--- /server/cvs/freexp/xp0.pas 2008/12/26 18:37:15 1.86
+++ /server/cvs/freexp/xp0.pas 2009/05/03 16:00:41 1.87
@@ -8,7 +8,7 @@
{ Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der }
{ Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. }
{ --------------------------------------------------------------- }
-{ $Id: xp0.pas,v 1.86 2008/12/26 18:37:15 mw Exp $ }
+{ $Id: xp0.pas,v 1.87 2009/05/03 16:00:41 mw Exp $ }
{ CrossPoint - Deklarationen }
@@ -26,8 +26,8 @@
IsDPMI = false;
{$ENDIF}
- LangVersion = '14'; { Version des Sprachmoduls }
- DLLVersion = 3; { Revision der XP_NTVDM.DLL }
+ LangVersion = '15'; { Version des Sprachmoduls }
+ DLLVersion = 4; { Revision der XP_NTVDM.DLL }
{ 1 = Urversion }
{ 2 = mit Diskfree/Disksize }
{ 3 = ConsoleTitle }
@@ -1041,7 +1041,7 @@
ISDN_EAZ : char; { eigene EAZ, Default='0' }
ISDN_Controller:byte; { Nummer des Controllers, Default=0 }
ISDN_incoming, isdn_outgoing: string[30];
- AutoTimeZone : byte; { 52=manuell, 53=Datum, 54=TZ, 55=TZ/Datum }
+ AutoTimeZone : byte; { 52=manuell, 53=Datum, 54=TZ, 55=TZ/Datum, 61=Windows }
SaveType : byte; { 0=Sofort, 1=Alt-S, 2=Rckfrage }
XSA_NetAlle : boolean; { Netcall/Alle-Schalter bei /Netcall/L }
maxcrosspost : byte; { Filter fr Massen-Crosspostings }
@@ -1268,7 +1268,10 @@
{
$Log: xp0.pas,v $
- Revision 1.86 2008/12/26 18:37:15 mw
+ Revision 1.87 2009/05/03 16:00:41 mw
+ MW: - FreeXP 3.41 Release
+
+ Revision 1.86 2008-12-26 18:37:15 mw
- Aktualisierung auf Version 3.45
Revision 1.85 2008-01-01 20:59:25 mw
--- /server/cvs/freexp/xp-d.rq 2008/12/26 18:37:14 1.74
+++ /server/cvs/freexp/xp-d.rq 2009/05/03 16:00:41 1.75
@@ -1,9 +1,9 @@
-K CrossPoint [FreeXP] v3.45 resource file
+K CrossPoint [FreeXP] v3.41 resource file
K Deutsch
K (c) 1993-1999 Peter Mandrella
K (c) 2000-2001 OpenXP-Team
K (c) 2002-2009 FreeXP, http://www.freexp.de
-# $Id: xp-d.rq,v 1.74 2008/12/26 18:37:14 mw Exp $
+# $Id: xp-d.rq,v 1.75 2009/05/03 16:00:41 mw Exp $
# Online-Hilfe, Tastenmakros
1 XP.HLP
@@ -11,7 +11,7 @@
5 Lade Sprachmodul...
# Dateiversion
-6 14
+6 15
# --- Mens -----------------------------------------------------------
@@ -594,6 +594,7 @@
58 berprfen und ggf. korrigieren bzw. „ndern.
59 Die Zeitzone wurde auf "%s" ge„ndert
60 Umgebungsvariable "TZ" (Zeitzone) ist ungltig!
+61 Windows
#
100 68
101 Adreáeinstellungen (ZConnect / RFC)
--- /server/cvs/freexp/xp-e.rq 2008/12/26 18:37:15 1.113
+++ /server/cvs/freexp/xp-e.rq 2009/05/03 16:00:41 1.114
@@ -1,9 +1,9 @@
-K CrossPoint [FreeXP] v3.45 resource file
+K CrossPoint [FreeXP] v3.41 resource file
K English
K (c) 1993-1999 Peter Mandrella
K (c) 2000-2001 OpenXP-Team
K (c) 2002-2009 FreeXP, http://www.freexp.de
-# $Id: xp-e.rq,v 1.113 2008/12/26 18:37:15 mw Exp $
+# $Id: xp-e.rq,v 1.114 2009/05/03 16:00:41 mw Exp $
# Online Help File, Key Macros
1 XP-E.HLP
@@ -11,7 +11,7 @@
5 Changing language ...
# file version
-6 14
+6 15
# --- Menus -----------------------------------------------------------
@@ -583,6 +583,7 @@
58 and change or correct if necessary.
59 Time zone has been changed to "%s"
60 Environment variable "TZ" is invalid!
+61 Windows
#
100 68
101 Address options
--- /server/cvs/freexp/xp1.pas 2008/12/26 18:37:15 1.66
+++ /server/cvs/freexp/xp1.pas 2009/05/03 16:00:41 1.67
@@ -8,7 +8,7 @@
{ Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der }
{ Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. }
{ --------------------------------------------------------------- }
-{ $Id: xp1.pas,v 1.66 2008/12/26 18:37:15 mw Exp $ }
+{ $Id: xp1.pas,v 1.67 2009/05/03 16:00:41 mw Exp $ }
{ CrossPoint - allg. Routinen }
@@ -2037,7 +2037,7 @@
function autoTZ_string:string;
begin
- autoTZ_string:=getres2(252,minmax(AutoTimeZone,52,55));
+ autoTZ_string:=getres2(252,minmax(AutoTimeZone,52,61));
end;
@@ -2471,7 +2471,10 @@
end.
{
$Log: xp1.pas,v $
- Revision 1.66 2008/12/26 18:37:15 mw
+ Revision 1.67 2009/05/03 16:00:41 mw
+ MW: - FreeXP 3.41 Release
+
+ Revision 1.66 2008-12-26 18:37:15 mw
- Aktualisierung auf Version 3.45
Revision 1.65 2008-01-01 20:59:26 mw
--- /server/cvs/freexp/xp2cfg.inc 2008/12/26 18:37:16 1.83
+++ /server/cvs/freexp/xp2cfg.inc 2009/05/03 16:00:42 1.84
@@ -8,7 +8,7 @@
{ Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der }
{ Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. }
{ --------------------------------------------------------------- }
-{ $Id: xp2cfg.inc,v 1.83 2008/12/26 18:37:16 mw Exp $ }
+{ $Id: xp2cfg.inc,v 1.84 2009/05/03 16:00:42 mw Exp $ }
const cfs : array[0..4] of string[5] = ('Z','Shift','Ctrl','Alt','#Z');
saveCFG : boolean = false;
@@ -325,6 +325,7 @@
procedure checkTimeZone(const XPStart:boolean);
var tz_old,tzone : string[7];
date_chg : boolean; { Žnderung aufgrund Datum oder TZ? }
+ date_win : boolean; { Žnderung aufgrund Windows? }
procedure check_sommer;
begin
@@ -344,10 +345,16 @@
if (AutoTimeZone=52) or (ReplaceEtime) then exit;
tz_old:=timezone; { alten Wert fr Vergleich sichern }
tzone:=timezone; { tzone = Rckgabewert von getTZ }
- if AutoTimeZone in [54,55] then
- if not getTZ(tzone) then
+ date_win:=false;
+ if AutoTimeZone in [54,55,61] then
+ if ((AutoTimeZone=61) and clip.GetTimezone(tzone)) then
begin
- if (AutoTimeZone=54) and
+ timezone:=tzone;
+ date_chg:=false;
+ date_win:=true;
+ end else if not getTZ(tzone) then
+ begin
+ if ((AutoTimeZone=54) or (AutoTimeZone=61)) and
(((parTiming=0) and (not XPFirstStart)) or
((parTiming<>0) and (not XPStart))) then
fehler(getres2(252,60)) { 'Umgebungsvariable "TZ" (Zeitzone) ist ungltig!' }
@@ -364,7 +371,7 @@
if ((parTiming=0) and (not XPFirstStart)) or
((parTiming<>0) and (not XPStart)) then
hinweis(getreps2(252,59,timezone) { 'Die Zeitzone wurde auf "%s" ge„ndert (Datum/TZ).' }
- +' ('+iifs(date_chg,getres2(252,53),'TZ')+').');
+ +' ('+iifs(date_chg,getres2(252,53),iifs(date_win,'Windows','TZ'))+').');
end;
end;
@@ -824,6 +831,7 @@
52 : AutoTimeZone_string:='manuell';
54 : AutoTimeZone_string:='TZ-Var.';
55 : AutoTimeZone_string:='TZ/Datum';
+ 61 : AutoTimeZone_string:='Windows';
else AutoTimeZone_string:='Datum';
end;
end;
@@ -1815,6 +1823,7 @@
if ustr(autoTZ)='MANUELL' then AutoTimeZone:=52
else if ustr(autoTZ)='TZ-VAR.' then AutoTimeZone:=54
else if ustr(autoTZ)='TZ/DATUM' then AutoTimeZone:=55
+ else if ustr(autoTZ)='WINDOWS' then AutoTimeZone:=61
else AutoTimeZone:=53;
scsavetime:=scrsaver; { Screen-Saver }
close(lst); { Drucker-Schnitte }
@@ -1926,7 +1935,10 @@
{
$Log: xp2cfg.inc,v $
- Revision 1.83 2008/12/26 18:37:16 mw
+ Revision 1.84 2009/05/03 16:00:42 mw
+ MW: - FreeXP 3.41 Release
+
+ Revision 1.83 2008-12-26 18:37:16 mw
- Aktualisierung auf Version 3.45
Revision 1.82 2008-01-01 20:59:30 mw
--- /server/cvs/freexp/clip.pas 2008/12/26 18:37:11 1.42
+++ /server/cvs/freexp/clip.pas 2009/05/03 16:00:42 1.43
@@ -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.42 2008/12/26 18:37:11 mw Exp $ }
+{ $Id: clip.pas,v 1.43 2009/05/03 16:00:42 mw Exp $ }
{$I XPDEFINE.INC }
{$O+,F+}
@@ -40,6 +40,8 @@
function xp_ntvdm_ver:byte;
function xp_ntvdm_ok:boolean;
+function GetTimezone(var tzone:string):boolean;
+
procedure GetConsoleTitle(maxlen:byte;var contitle:String);
procedure SetConsoleTitle(contitle:string);
@@ -49,6 +51,8 @@
procedure SmartResetCache;
procedure SmartFlushCache;
+var mode,minutes: longint;
+
const
ClipFileName = 'CLIP.TXT';
@@ -191,6 +195,46 @@
DOSBOX:=(Test8086>1) and not (MEM[$F000 : $FFFE] = $FC);
end;
+function GetTimezone(var tzone:string):boolean;
+var hour:longint;
+var mode:smallint;
+var minutes:smallint;
+
+ procedure Loadtimezone;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 makeTZ(sw:char;tzdiff:longint):string;
+ var s:string;
+ begin
+ s:=strs(tzdiff);
+ if s[1]<>'-' then s:=sw+'+'+s else s:=sw+s;
+ makeTZ:=s;
+ end;
+
+begin
+ if ((WinVersion=4) and (Lo(WinNTVersion)=5)) then
+ begin
+ Loadtimezone; {NTVDM aufrufen}
+ hour:=minutes div 60;
+ hour:=hour mod 24;
+ if (mode=0) then
+ tzone:=makeTZ('W',hour)
+ else
+ tzone:=makeTZ('S',hour);
+ GetTimezone:=true;
+ end
+ else
+ GetTimezone:=false;
+end;
+
{ -------------------------------------------------------- }
{ Hinweis zu diskfree/disksize und Windows NT/2000/XP: }
{ -------------------------------------------------------- }
@@ -827,7 +871,10 @@
end.
{
$Log: clip.pas,v $
- Revision 1.42 2008/12/26 18:37:11 mw
+ 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
- Aktualisierung auf Version 3.45
Revision 1.41 2008-01-01 20:59:23 mw
Mehr Informationen über die CVS-List Mailingliste