Windows NT 4 Source Compiled! version 2

Discuss Windows 2000, NT, XP and Windows Server 2000, 2003, SBS 2003.
OltScript131
User avatar
FTP Access
Posts: 257
Joined: Sat Sep 10, 2011 9:46 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by OltScript131 »

I have an idea for the code name: Cyrus ;)

To MS-DOS in Windows NT 4.5, this will be a first as a DOS games do not work for Windows NT 4.0 ....
Exemple : RayMan,...

And perhaps more !!!

ScreenShots (JPG) :
Image
Image

BMP :
http://dl.free.fr/getfile.pl?file=/5aaO1VUd

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

Yes, NTVDM is quite incomplete and many of its features are hidden and not accessible to the end users (as compared to OS/2 MVDM). Improving the NTVDM support could definitely be added to the TODO list.

However, as of now, this will be the lowest priority unless someone specifically takes on this task. An issue tracker ID has been assigned: http://opennt.net/issues/16

If anyone is willing to work on this feature, please let me know.

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

Guide on how to test NT 4.5 binary release published:
http://opennt.net/projects/nt45/wiki/Ho ... ry_release

How To - Test NT 45 binary release
Installation Procedure

1. Download a known working copy of Windows NT 4.0. If you don't have one already, you can download one from the following address:
http://ftp.opennt.net/ftproot/Tools/Win ... tiarch.iso

2. Install two copies of Windows NT 4.0. One will be the testee, the other will be the test master. C: should contain the testee copy, D: should contain the test master copy. Two copies are required because you need to copy the system files into \WINNT and \WINNT\system32 directories and this cannot be done while the OS is running.

3. Boot into the test master copy from the boot menu

4. Download and extract the binary release file (NT45-bin-r(revnumber)-i386.7z). For example, the rev. 6 release can be found at:
http://ftp.opennt.net/ftproot/NT45/bin/ ... r6-i386.7z

5. Map the extracted binary directory as X: using subst command. If your binary directory is D:\Downloads\NT45-bin-r6-i386, you should execute the following:

Code: Select all

subst X: D:\Downloads\NT45-bin-r6-i386
6. Create CopyBoot.cmd under D:\ with the following content:

Code: Select all

@echo off

pushd .

C:
cd \

echo This operation will copy the NTLDR and NTDETECT.COM images from the repository.
echo If the repository contains buggy images, this machine will become unbootable.
echo Make a backup of the machine before performing this action!
pause

echo NTLDR

if exist NTLDR.bak del NTLDR.bak

attrib -r -s -a -h NTLDR
ren NTLDR NTLDR.bak
copy X:\NTLDR NTLDR
attrib +r +s +a +h NTLDR
echo.

echo NTDETECT.COM

if exist NTDETECT.bak del NTDETECT.bak

attrib -r -s -a -h NTDETECT.COM
ren NTDETECT.COM NTDETECT.bak
copy X:\NTDETECT.COM NTDETECT.COM
attrib +r +s +a +h NTDETECT.COM

pause

popd
7. Create CopySystem.cmd under D:\ with the following content:

Code: Select all

@echo off

pushd .
setlocal

set DOPAUSE=
set SRC=X:

C:

echo ======== WINNT ========
cd C:\WINNT
for %%f in (*.*) do (
	if exist %SRC%\%%f	(
		echo %%f
		copy %SRC%\%%f C:\WINNT\%%f
	)
)

if "%DOPAUSE%"=="1" pause

echo ======== WINNT\system32 ========
cd C:\WINNT\system32
for %%f in (*.*) do (
	if exist %SRC%\%%f	(
		echo %%f
		copy %SRC%\%%f C:\WINNT\system32\%%f
	)
)

if "%DOPAUSE%"=="1" pause

echo ======== WINNT\system32 OPT ========
echo NTKRNLMP.EXE -> NTOSKRNL.EXE
copy %SRC%\NTKRNLMP.EXE C:\WINNT\system32\NTOSKRNL.EXE

echo HALMPS.DLL -> HAL.DLL
copy %SRC%\HALMPS.DLL C:\WINNT\system32\HAL.DLL

if "%DOPAUSE%"=="1" pause

echo ======== WINNT\system32\drivers ========
cd C:\WINNT\system32\drivers
for %%f in (*.*) do (
	if exist %SRC%\%%f	(
		echo %%f
		copy %SRC%\%%f C:\WINNT\system32\drivers\%%f
	)
)

if "%DOPAUSE%"=="1" pause

echo END

endlocal
popd
8. Run CopyBoot.cmd and CopySystem.cmd

9. Reboot into the Testee copy

cantasan99
FTP Access
Posts: 901
Joined: Fri Feb 15, 2013 3:37 pm
Location: Istanbul, Turkey

Re: Windows NT 4 Source Compiled! version 2

Post by cantasan99 »

For NTVDM implementation, we could use ReactOS one.

Forgive me, but is it possible to implement Windows 2000/XP APIs, features? (for example, USB support and DirectX)
Image

Turkish translator of Wine/Known as ctasan in ReactOS Forum
ReactOS Community Changelogs - Don't miss improvements!

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

cantasan99 wrote:For NTVDM implementation, we could use ReactOS one.

Forgive me, but is it possible to implement Windows 2000/XP APIs, features? (for example, USB support and DirectX)
I'm not sure how complete ReactOS NTVDM implementation is, but I'd bet on that NT 4 version is much more complete (including WoW16, which directly depends on NTVDM). Moreover, NTVDM (with SoftPC) supports full 16-bit emulation without virtual 8086 mode, allowing NTVDM to run on non-x86 architectures (this will allow NTVDM to run on x86-64, if we ever port NT 4 to it .., MS simply decided to not do it) We will definitely need to perform a further study on this matter to determine which is more complete. https://www.reactos.org/node/794

The real problem with NT 4 (and all other Windows versions) NTVDM is that most of its features, in spite of being present, are hidden away from the users, and most compatibility issues are from a quite manageable set of missing/unimplemented APIs. Once again, we will need an in-depth analysis to conclude, but for now, I would say we'd have a better chance improving on the current NTVDM/WoW16, than to just port ReactOS/Wine NTVDM into NT 4.

And Windows 2000/XP API and USB support are definitely on the list. As for DirectX, we will develop the API compatibility to support newer versions of DirectX and simply install them on the system.

yourepicfailure
User avatar
Donator
Posts: 1256
Joined: Mon Jul 23, 2012 9:40 pm
Location: Flying high in a DC10

Re: Windows NT 4 Source Compiled! version 2

Post by yourepicfailure »

Stephanos, I found the root of inet and net not compiling.
We got a bad case of corrupt headers. Finding the corrupt headers is one thing, but finding which function goes to which header is another.
I'm hoping that it's possibly one or two headers each c file, but if it's more (say header calls 40 other headers, dividing the called functions unevenly between them), then sorting out which function goes to what is going to be fun. 8-) *sarcasm
But that's the whole point to this right? 8-)

Once I sort them out, I'll write filler functions and see if the modules compile. Then I'll work from there.
"C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"
Image
You will never tear me from the grasp of the Pentium M!

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

yourepicfailure wrote:Stephanos, I found the root of inet and net not compiling.
We got a bad case of corrupt headers. Finding the corrupt headers is one thing, but finding which function goes to which header is another.
I'm hoping that it's possibly one or two headers each c file, but if it's more (say header calls 40 other headers, dividing the called functions unevenly between them), then sorting out which function goes to what is going to be fun. 8-) *sarcasm
But that's the whole point to this right? 8-)

Once I sort them out, I'll write filler functions and see if the modules compile. Then I'll work from there.
Yea, it can be a very tedious process. If you aren't already, I recommend you to get Source Insight and set up a project for inet and net. They are extremely useful when it comes to analysing large code base.

Also please log in to the Redmine (http://opennt.net) with your Active Directory username/pwd (the one you used for SVN) so that I can assign you to the Developer group and you can post on the issue tracker. Your Redmine account will be automatically created when you sign in.

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

Oracle VirtualBox pre-installed OpenNT - NT 4.5 r6 VM is available for download:
http://betaftp.co.uk/open%20nt/Windows% ... 6-i386).7z

! Virtual machine Windows logon password is opennt

VM installation by Dans34.
Last edited by Stephanos on Thu Jan 29, 2015 7:55 pm, edited 1 time in total.

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

Consolidated Update 2015-01-29:
1. rpc16 (dos and win profiles) builds, http://opennt.net/issues/17
2. sadapi.lib found, http://opennt.net/issues/2
3. oleauto (rwin16 rwin32 rwin1632 dwin16 dwin32 dwin1632 profiles) builds, http://opennt.net/issues/15
4. ole32 builds, http://opennt.net/issues/7

Interm binary build available at http://opennt.net/projects/nt45/repository/bin r7.

Darkstar
User avatar
Donator
Posts: 939
Joined: Fri May 14, 2010 1:29 pm
Location: Southern Germany

Re: Windows NT 4 Source Compiled! version 2

Post by Darkstar »

I don't have an account on your Redmine(?) site so I can't comment there, but if you're looking for ESENT97 you should probably check out an early Exchange SDK (Exchange 97 probably?), because ESE is the Exchange database engine and that is indeed the same as JET (newer versions are evolved versions of Jet of course but it started out as simple clone)
I upload stuff to archive.org from time to time. See here for everything that doesn't fit BA

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

Darkstar wrote:I don't have an account on your Redmine(?) site so I can't comment there, but if you're looking for ESENT97 you should probably check out an early Exchange SDK (Exchange 97 probably?), because ESE is the Exchange database engine and that is indeed the same as JET (newer versions are evolved versions of Jet of course but it started out as simple clone)
Do you have a link to one by any chance? I have esent97.dll at the moment, but not esent97.lib (or jet500.lib). If not, I guess I will simply regenerate lib from it. The real question is, though, is esent97 really equivalent to the missing jet500?

The only difference between jet and jet500 (in the repository) seemed to be that the latter has _JetBackup@12, _JetTerm2@8, _JetRestore@8 functions. Since there is no JET 5.0 (at least officially), I assume the DB version itself is the same.

For Redmine, You can click 'Register' button on the top right corner to register.

ADD1: Also what's funny is that the NT 4 jet500.dll itself doesn't have _JetBackup@12 and other jet500.lib-specific functions exported. So I'm also considering the possibility that jet500.lib is simply a wrapper for jet.lib/dll, which translates the 3 parameter JetBackup format to the older 2 parameter JetBackup call (in net\jet implementation, JetBackup only takes up to two params).

Darkstar
User avatar
Donator
Posts: 939
Joined: Fri May 14, 2010 1:29 pm
Location: Southern Germany

Re: Windows NT 4 Source Compiled! version 2

Post by Darkstar »

I don't know if the early SDKs were even publically released. I think the earliest Exchange version is 5.0 (coincidence? I think not ;-) ). You might find that somewhere, but for the SDK, I don't really know, sorry.
I upload stuff to archive.org from time to time. See here for everything that doesn't fit BA

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

Darkstar wrote:I don't know if the early SDKs were even publically released. I think the earliest Exchange version is 5.0 (coincidence? I think not ;-) ). You might find that somewhere, but for the SDK, I don't really know, sorry.
It doesn't seem like I'm having all that much of luck with the Exchange SDK. At most, I could find Exchange 2000 SDK and that's about it (no, it didn't contain what I needed). I do have jet500.dll extracted from Q244599i patch and can confirm that the DLL doesn't contain the following functions in it:

Code: Select all

server\setup.obj() : error LNK2001: unresolved external symbol _JetBackup@12
server\database.obj() : error LNK2001: unresolved external symbol _JetTerm2@8
server\database.obj() : error LNK2001: unresolved external symbol _JetRestore@8
server\obj\i386\rplsvc.exe() : error LNK1120: 3 unresolved externals
* error msg from compiling with jet.lib instead of jet500.lib in LIBS. In other words, the list above shows the functions that are only included in jet500.lib.

For now, unless we can locate a better source/method, I will be creating an import lib from the esent97.dll I have and use it as jet500.dll/lib.

voidp
User avatar
FTP Access
Posts: 358
Joined: Fri Jul 01, 2011 3:04 am

Re: Windows NT 4 Source Compiled! version 2

Post by voidp »

The Microsoft Exchange Development Kit (EDK) was distributed with the BackOffice SDK and Platform SDK.  You can find both on the FTP.  See the MSDN subscription discs.  You may have to dig a bit.

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

I searched through BackOffice 4.0 and 4.5 distribution files (no SDK though, since I couldn't find one and I don't have access to BA FTP) and couldn't find any necessary libs. They did contain jet500.dll, which essentially exported the same set of symbols as the one I already had- no _JetBackup@12 and others.

At this time, I will have to conclude that jet500.lib is built by adding two inputs: one static and one import lib. The former containing _JetBackup@12, _JetTerm2@8, _JetRestore@8 implementation for translating call convention/parameters, the latter containing import functions for the jet500.dll (and its public symbols). Either way, we don't have the jet500 source code, so we can't do much about it.

Since esent97.dll is the only known source that exports those stdcall functions (_JetBackup@12, ...) , assuming they're functionally equivalent, I created esent97.lib based on the DLL exports and modified the sources file that link against jet500.lib to use esent97.lib instead (this implies esent97.dll will have to be in system32 dir of all NT 4.5 distributions).

http://opennt.net/issues/10#note-10
http://opennt.net/projects/nt45/reposit ... isions/226
http://opennt.net/projects/nt45/reposit ... isions/227

p.s. I didn't rename esent97.dll to jet500.dll because it would potentially create a confusion.

yksoft1
User avatar
FTP Access
Posts: 742
Joined: Thu Nov 26, 2009 7:14 am

Re: Windows NT 4 Source Compiled! version 2

Post by yksoft1 »

You should not run BUILD under a DBCS Windows environment, as there will be many ANSI-encoding related errors...

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

yksoft1 wrote:You should not run BUILD under a DBCS Windows environment, as there will be many ANSI-encoding related errors...
None of the errors in compilation is related to encoding. Build utility is not built for Unicode, but it should be able to handle all encoding in ACP (active code page). And no, no path names are encoded outside the g'old ASCII here. You probably don't know what you're talking about ...

p.s. If you'd like, take a look at it yourself:
http://opennt.net/projects/nt45/reposit ... ools/build
http://opennt.net/projects/nt45/reposit ... ld/build.c

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

Issues & Update / TODO 2015-01-30:

1. The source code of the following components under nt\private\net\sockets\tcpcmd is missing:
ping
tracert
ipconfig
netstat
route
rcmd
lprmon
These missing tcpcmd components are to be reimplemented (should be relatively easy to do).

2. uiadmin.lib (nt\private\net\ui\admin\common\src\adminapp) and its source code is missing. This library contains the administration UI classes, to be reimplemented.
http://opennt.net/issues/24#note-4

3. dnsapi.lib and its source code is missing. Further investigation required, to be reimplemented.

voidp
User avatar
FTP Access
Posts: 358
Joined: Fri Jul 01, 2011 3:04 am

Re: Windows NT 4 Source Compiled! version 2

Post by voidp »

Stephanos wrote:Do you have a link to one by any chance? I have esent97.dll at the moment, but not esent97.lib (or jet500.lib). If not, I guess I will simply regenerate lib from it. The real question is, though, is esent97 really equivalent to the missing jet500?

The only difference between jet and jet500 (in the repository) seemed to be that the latter has _JetBackup@12, _JetTerm2@8, _JetRestore@8 functions. Since there is no JET 5.0 (at least officially), I assume the DB version itself is the same.

For Redmine, You can click 'Register' button on the top right corner to register.

ADD1: Also what's funny is that the NT 4 jet500.dll itself doesn't have _JetBackup@12 and other jet500.lib-specific functions exported. So I'm also considering the possibility that jet500.lib is simply a wrapper for jet.lib/dll, which translates the 3 parameter JetBackup format to the older 2 parameter JetBackup call (in net\jet implementation, JetBackup only takes up to two params).
Here's an NT4 (post sp 6a?) hotfix that includes jet500.dll whose symbols (jet500.dbg) include _JetBackup@12, _JetTerm2@8, _JetRestore@8.

Perhaps similar versions of jet500.dll were distributed with earlier service packs and/or debug builds?

     https://support.microsoft.com/kb/243404/EN-US

     ftp://ftp.microsoft.com/bussys/winnt/wi ... 44599i.exe

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

voidp wrote:
Stephanos wrote:Do you have a link to one by any chance? I have esent97.dll at the moment, but not esent97.lib (or jet500.lib). If not, I guess I will simply regenerate lib from it. The real question is, though, is esent97 really equivalent to the missing jet500?

The only difference between jet and jet500 (in the repository) seemed to be that the latter has _JetBackup@12, _JetTerm2@8, _JetRestore@8 functions. Since there is no JET 5.0 (at least officially), I assume the DB version itself is the same.

For Redmine, You can click 'Register' button on the top right corner to register.

ADD1: Also what's funny is that the NT 4 jet500.dll itself doesn't have _JetBackup@12 and other jet500.lib-specific functions exported. So I'm also considering the possibility that jet500.lib is simply a wrapper for jet.lib/dll, which translates the 3 parameter JetBackup format to the older 2 parameter JetBackup call (in net\jet implementation, JetBackup only takes up to two params).
Here's an NT4 (post sp 6a?) hotfix that includes jet500.dll whose symbols (jet500.dbg) include _JetBackup@12, _JetTerm2@8, _JetRestore@8.

Perhaps similar versions of jet500.dll were distributed with earlier service packs and/or debug builds?

     https://support.microsoft.com/kb/243404/EN-US

     ftp://ftp.microsoft.com/bussys/winnt/wi ... 44599i.exe
Hmm, that's strange. I've already checked the jet500.dll from Q244599i. I dumpbin'ed it and didn't see _JetBackup@12, _JetTerm2@8, _JetRestore@8 in the export table. They do have JetBackup, but no _JetBackup@12 and so on (I assume they have both JetBackup- two param version- available in NT4 jet.dll, and JetBackup@12- three param version .. but I guess they could have simply made JetBackup function 3 param version by default and mapped _JetBackup@12 to JetBackup).

For further reference, this is the esent97.dll I used (refer to the Export Directory):
http://filelog.net/file/esent97.dll/3f5 ... e536536507


==== *Q244599i Export Table Dump* ====

Code: Select all

[KONTRA] 2015-01-30 20:40:39.23
C:\Users\Stephanos\Desktop\Q244599i

>dumpbin /exports jet500.dll
Microsoft (R) COFF/PE Dumper Version 11.00.61030.0
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file jet500.dll

File Type: DLL

  Section contains the following exports for JET500.dll

    00000000 characteristics
    3804DC84 time date stamp Wed Oct 13 15:24:52 1999
        0.00 version
           1 ordinal base
          85 number of functions
          85 number of names

    ordinal hint RVA      name

          1    0 00003297 JetAddColumn
          2    1 00003479 JetAttachDatabase
          3    2 0000352D JetBackup
          4    3 00003971 JetBeginExternalBackup
          5    4 00002E50 JetBeginSession
          6    5 000012FC JetBeginTransaction
          7    6 000030CF JetCloseDatabase
          8    7 00003AF1 JetCloseFile
          9    8 000014E5 JetCloseTable
         10    9 00001350 JetCommitTransaction
         11    A 00003DD2 JetCompact
         12    B 00003421 JetComputeStats
         13    C 00002FA6 JetCreateDatabase
         14    D 0000335C JetCreateIndex
         15    E 0000424E JetCreateLink
         16    F 00004256 JetCreateQuery
         17   10 0000312B JetCreateTable
         18   11 000031C6 JetCreateTableColumnIndex
         19   12 00003E38 JetDBUtilities
         20   13 00001960 JetDelete
         21   14 00003300 JetDeleteColumn
         22   15 000033C5 JetDeleteIndex
         23   16 0000323B JetDeleteTable
         24   17 000034D5 JetDetachDatabase
         25   18 00001485 JetDupCursor
         26   19 00002EC4 JetDupSession
         27   1A 00003BEF JetEndExternalBackup
         28   1B 00002F43 JetEndSession
         29   1C 0000427E JetExecuteSql
         30   1D 00003C3D JetExternalRestore
         31   1E 000039D5 JetGetAttachInfo
         32   1F 00001C9E JetGetBookmark
         33   20 00003927 JetGetChecksum
         34   21 000015EE JetGetColumnInfo
         35   22 00003D76 JetGetCounter
         36   23 00001A1B JetGetCurrentIndex
         37   24 000019B8 JetGetCursorInfo
         38   25 0000306C JetGetDatabaseInfo
         39   26 0000111C JetGetIndexInfo
         40   27 00003B45 JetGetLogInfo
         41   28 000011E3 JetGetObjectInfo
         42   29 000038C4 JetGetObjidFromName
         43   2A 0000425E JetGetQueryParameterInfo
         44   2B 00001D61 JetGetRecordPosition
         45   2C 00002D7E JetGetSystemParameter
         46   2D 0000153D JetGetTableColumnInfo
         47   2E 00001058 JetGetTableIndexInfo
         48   2F 00001299 JetGetTableInfo
         49   30 00001E83 JetGetVersion
         50   31 00001D01 JetGotoBookmark
         51   32 00001DC1 JetGotoPosition
         52   33 00001000 JetIdle
         53   34 00003864 JetIndexRecordCount
         54   35 00003FFD JetInit
         55   36 00001BDF JetMakeKey
         56   37 00001B7F JetMove
         57   38 00003009 JetOpenDatabase
         58   39 00003A31 JetOpenFile
         59   3A 0000426E JetOpenQueryDef
         60   3B 00001422 JetOpenTable
         62   3C 00003737 JetOpenTempTable
         61   3D 0000379F JetOpenTempTable2
         63   3E 000018A1 JetPrepareUpdate
         64   3F 00003A91 JetReadFile
         65   40 00003D1E JetResetCounter
         67   41 00003599 JetRestore
         66   42 00003666 JetRestore2
         68   43 000016A2 JetRetrieveColumn
         69   44 0000170E JetRetrieveColumns
         70   45 00001E1D JetRetrieveKey
         71   46 00004276 JetRetrieveQoSql
         72   47 000013B9 JetRollback
         73   48 00001C42 JetSeek
         74   49 00004246 JetSetAccess
         75   4A 000017A3 JetSetColumn
         76   4B 0000180C JetSetColumns
         78   4C 00001A7B JetSetCurrentIndex
         77   4D 00001AD7 JetSetCurrentIndex2
         79   4E 00003808 JetSetIndexRange
         80   4F 00004266 JetSetQoSql
         81   50 00003F2E JetSetSystemParameter
         83   51 00004103 JetTerm
         82   52 00004111 JetTerm2
         84   53 00003BA1 JetTruncateLog
         85   54 000018FD JetUpdate

  Summary

       72000 .data
        4000 .rdata
        6000 .reloc
        2000 .rsrc
       63000 .text

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

@voidp
I will disasm the Q244599i jet500.dll and see if its JetBackup function takes 2 or 3 params. If it is concluded that the JetBackup (without @12) takes 3 params instead of 2, then it may be that it is simply mapping JetParam@12 to JetParam (and retiring the two param version used in earlier version of jet). I will keep you updated.

ADD1: speaking of which, I somehow missed it earlier, but the esent97.dll itself also seems to have @12 as default. It exports two symbols (JetBackup and JetBackup@12), but they in fact resolve to the same address (same function). So 3 param version mapped default to @12 theory seems to be the case. Either way, I will disasm the jet500.dll and double check.

ADD2: Now I see why you said jet500.dll has _JetBackup@12 and others. I just loaded the debug symbol as well and realised that _JetBackup@12 library symbol resolves to JetBackup. I stand corrected on this one. I will rewrite the def file for it based on the dbg and update (and yes, I confirmed that the jet500.dll JetBackup takes 3 params from disasm)

Tootles
User avatar
Donator
Posts: 984
Joined: Mon Feb 12, 2007 12:50 pm

Re: Windows NT 4 Source Compiled! version 2

Post by Tootles »

As interesting as extended legacy support is, what I'd personally rather have is support for more modern hardware. Which to be fair I could probably get by just getting/porting drivers and trying to figure a way of supporting amd64 architectures.
Have a day.

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

marktuson wrote:As interesting as extended legacy support is, what I'd personally rather have is support for more modern hardware. Which to be fair I could probably get by just getting/porting drivers and trying to figure a way of supporting amd64 architectures.
AMD64 port is not on the list at this time, but ARM port is definitely on the list. Modern hardware/API compatibility is also on the list to support broader range of applications. http://opennt.net/projects/nt45/wiki/Project_Roadmap

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: Windows NT 4 Source Compiled! version 2

Post by Stephanos »

Update 2015-02-06:

SVN r271, Binary r8 ISO Setup available for download:
http://ftp.opennt.net/ftproot/NT45/iso/ ... 71-br8.iso
ftp://ftp.opennt.net/NT45/iso/NT45Wks_i ... 71-br8.iso

AyamiOoruri29
User avatar
FTP Access
Posts: 99
Joined: Mon Sep 29, 2014 9:18 am

Re: Windows NT 4 Source Compiled! version 2

Post by AyamiOoruri29 »

is there Service Pack for Windows NT 4.5?
Image
Image
Discord: @Cure Popuri#7783

Locked