Merge branch 'NetHack-3.6.0'

This commit is contained in:
nhmall
2018-04-23 21:41:06 -04:00
21 changed files with 5683 additions and 4350 deletions

View File

@@ -1,4 +1,4 @@
/* NetHack 3.6 pcmain.c $NHDT-Date: 1457207045 2016/03/05 19:44:05 $ $NHDT-Branch: chasonr $:$NHDT-Revision: 1.69 $ */
/* NetHack 3.6 pcmain.c $NHDT-Date: 1524413707 2018/04/22 16:15:07 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.74 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/* NetHack may be freely redistributed. See license for details. */
@@ -307,6 +307,7 @@ _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);*/
save_getreturn_status = getreturn_enabled;
raw_clear_screen();
getreturn_enabled = TRUE;
check_recordfile((char *) 0);
#endif
initoptions();

View File

@@ -22,11 +22,12 @@ preserving permissions to put the NetHack files in /usr/games/nethack and
home directory you might perform these steps.
% su
# cd /
# tar xpvzf ~yourlogin/nethack-360-linux-X11.tgz
# tar xpvzf ~yourlogin/nethack-361-linux-X11.tgz
If you have old record and logfile entries from a previous NetHack version,
you might want to save copies before they get overwritten by the new empty
files; old saved games and bones files from 3.4.x will not work with 3.6.0.
files; old saved games and bones files from 3.6.0 should work with 3.6.1
but even older saved games and bones files from 3.4.3 will not.
If you are installing from the RPM, there is no need to save the old record
and logfile; they are automatically preserved.

View File

@@ -1,4 +1,4 @@
Instructions for Building and Installing NetHack 3.6.0
Instructions for Building and Installing NetHack 3.6.1
on a VMS (aka OpenVMS) system
=========================================
@@ -137,7 +137,8 @@ Notes:
0. Version 3.5.x was never publicly released.
1. Save files and bones files from 3.4.x and earlier versions
will not work with 3.6.0. The scoreboard file (RECORD) from
will not work with 3.6.1, but save files and bones file from 3.6.0
should work. The scoreboard file (RECORD) from 3.6.0 or
3.4.x or 3.3.x will work.
2. To specify user-preference options in your environment, define the

View File

@@ -284,8 +284,8 @@ END
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,5,0,0
PRODUCTVERSION 3,5,0,0
FILEVERSION 3,6,1,0
PRODUCTVERSION 3,6,1,0
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x9L
@@ -300,17 +300,17 @@ BEGIN
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments", "NetHack 3.6.0 for Windows CE\0"
VALUE "Comments", "NetHack 3.6.1 for Windows CE\0"
VALUE "CompanyName", " \0"
VALUE "FileDescription", "nethackm\0"
VALUE "FileVersion", "3, 5, 0, 0\0"
VALUE "FileVersion", "3, 6, 1, 0\0"
VALUE "InternalName", "nethackm\0"
VALUE "LegalCopyright", "Copyright © 1985-2009\0"
VALUE "LegalCopyright", "Copyright © 1985-2018\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", "nethackm.exe\0"
VALUE "PrivateBuild", "090914\0"
VALUE "ProductName", "NetHack\0"
VALUE "ProductVersion", "3, 5, 0, 0\0"
VALUE "ProductVersion", "3, 6, 1, 0\0"
VALUE "SpecialBuild", "\0"
END
END

View File

@@ -260,8 +260,8 @@ END
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,5,0,0
PRODUCTVERSION 3,5,0,0
FILEVERSION 3,6,1,0
PRODUCTVERSION 3,6,1,0
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x9L
@@ -276,17 +276,17 @@ BEGIN
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments", "NetHack 3.6.0 for Smartphone 2002\0"
VALUE "Comments", "NetHack 3.6.1 for Smartphone 2002\0"
VALUE "CompanyName", " \0"
VALUE "FileDescription", "nethackm\0"
VALUE "FileVersion", "3, 5, 0, 0\0"
VALUE "FileVersion", "3, 6, 1, 0\0"
VALUE "InternalName", "nethackm\0"
VALUE "LegalCopyright", "Copyright © 1985-2010\0"
VALUE "LegalCopyright", "Copyright © 1985-2018\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", "nethackm.exe\0"
VALUE "PrivateBuild", "090914\0"
VALUE "ProductName", "NetHack For Smartphone\0"
VALUE "ProductVersion", "3, 5, 0, 0\0"
VALUE "ProductVersion", "3, 6, 1, 0\0"
VALUE "SpecialBuild", "\0"
END
END

View File

@@ -1,11 +1,11 @@
Copyright (c) NetHack Development Team 1990-2017
Copyright (c) NetHack Development Team 1990-2018
NetHack may be freely redistributed. See license for details.
==============================================================
Instructions for compiling and installing
NetHack 3.6 on a Windows system
(Windows 7/8.x/10 or later only. XP may work but is untested)
==============================================================
Last revision: $NHDT-Date: 1450306349 2015/12/16 22:52:29 $
Last revision: $NHDT-Date: 1524317622 2018/04/21 13:33:42 $
Credit for the porting of NetHack to the Win32 Console Subsystem goes to
the NT Porting Team started by Michael Allison.
@@ -56,9 +56,13 @@ The Visual Studio 2017 NetHack solution file can be found here:
So the steps are:
1. Launch the IDE.
2. Open the appropriate solution file.
3. Select the build configuration you wish to use.
4. From build menu, select build solution.
5. Type F5 to start debugging.
3. If you have a newer version of Visual Studio than what was used to build
the solution and project files distributed with the NetHack sources, you
can easily retarget the solution before the next step. Refer to the
"Note about the Windows SDK version" a couple of paragraphs below.
4. Select the build configuration you wish to use (Release, Debug, etc.).
5. From the build menu, select build solution.
6. Type F5 to start debugging.
You can also build all the projects for all platforms and configurations
using a "build.bat" batch file found in the same directory as the solution.
@@ -66,10 +70,13 @@ using a "build.bat" batch file found in the same directory as the solution.
Change to the appropriate directory (i.e. win\win32\vs2015 for VS2015 builds,
win\win32\vs2017 for VS2017 builds) and run "build.bat".
Note: The Visual Studio project files distributed for NetHack 3.6.1 are configured for the
Windows SDK version 10.0.15063.0. At the time of writing, the Windows SDK version that
is distributed with VS2017 Community Edition is a newer 10.0.16299.0. If you have a build
error MSB8036, you will simply need to change the expected SDK version as follows:
-----------------------------------
Note about the WINDOWS SDK Version:
-----------------------------------
The Visual Studio project files distributed for NetHack 3.6.1 are configured for the
Windows SDK version 10.0.15063.0. At the time of writing, the Windows SDK version that
is distributed with VS2017 Community Edition is a newer 10.0.16299.0. If you have a build
error MSB8036, you will simply need to change the expected SDK version as follows:
o Open the solution in the IDE and in the project property pages, right-click the
solution and select "Retarget solution".
@@ -203,9 +210,9 @@ Setting Up
| | |
share winnt win32
Check the file "Files" in your top level directory for an exact
listing of what file is in which directory. In order for the
Makefiles to work, all the source files must be in the proper
Check the file "Files" in your top level directory for a more
complete listing of what file is in which directory. In order for
the Makefiles to work, all the source files must be in the proper
locations.
If you downloaded or ftp'd the sources from a UNIX system, the lines

View File

@@ -1,4 +1,4 @@
/* NetHack 3.6 winnt.c $NHDT-Date: 1431737068 2015/05/16 00:44:28 $ $NHDT-Branch: master $:$NHDT-Revision: 1.26 $ */
/* NetHack 3.6 winnt.c $NHDT-Date: 1524321419 2018/04/21 14:36:59 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.30 $ */
/* Copyright (c) NetHack PC Development Team 1993, 1994 */
/* NetHack may be freely redistributed. See license for details. */
@@ -329,14 +329,13 @@ char *buf;
*/
char *tmp = buf;
HWND hwndConsole = GetConsoleHandle();
HGLOBAL hglbCopy;
WCHAR *w, w2[2];
int cc, rc, abytes;
LPWSTR lpwstrCopy;
HANDLE hresult;
if (!buf || (hwndConsole == NULL))
if (!buf)
return;
cc = strlen(buf);
@@ -353,7 +352,7 @@ char *buf;
free(w);
return;
}
if (!OpenClipboard(hwndConsole)) {
if (!OpenClipboard(NULL)) {
free(w);
return;
}