Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2
This commit is contained in:
@@ -50,5 +50,7 @@ Makefile.gcc-orig
|
|||||||
*.ilk
|
*.ilk
|
||||||
# VS2013 extension to auto-whine about questionable code generates these
|
# VS2013 extension to auto-whine about questionable code generates these
|
||||||
*.lastcodeanalysissucceeded
|
*.lastcodeanalysissucceeded
|
||||||
|
# VS 2017 caches data into the hidden directory .vs
|
||||||
|
.vs
|
||||||
# Win32-specific ignores end
|
# Win32-specific ignores end
|
||||||
|
|
||||||
|
|||||||
@@ -50,8 +50,9 @@ fixes30.pl08 fixes30.pl09 fixes30.pl10 fixes31.1 fixes31.2
|
|||||||
fixes31.3 fixes32.0 fixes32.1 fixes32.2 fixes32.3
|
fixes31.3 fixes32.0 fixes32.1 fixes32.2 fixes32.3
|
||||||
fixes33.0 fixes33.1 fixes34.0 fixes34.1 fixes34.2
|
fixes33.0 fixes33.1 fixes34.0 fixes34.1 fixes34.2
|
||||||
fixes34.3 fixes35.0 fixes36.0 fixes36.1 fixes36.2
|
fixes34.3 fixes35.0 fixes36.0 fixes36.1 fixes36.2
|
||||||
lev_comp.6 lev_comp.txt makedefs.6 makedefs.txt nethack.6
|
lev_comp.6 lev_comp.txt makedefs.6 makedefs.txt mn.7
|
||||||
nethack.txt recover.6 recover.txt tmac.n window.doc
|
mnh.7 nethack.6 nethack.txt recover.6 recover.txt
|
||||||
|
tmac.n tmac.nh window.doc
|
||||||
|
|
||||||
include:
|
include:
|
||||||
(files for GEM versions)
|
(files for GEM versions)
|
||||||
@@ -257,7 +258,7 @@ sys/winnt:
|
|||||||
Install.nt Makefile.gcc Makefile.msc console.rc defaults.nh
|
Install.nt Makefile.gcc Makefile.msc console.rc defaults.nh
|
||||||
nethack.def nh340key.c nhdefkey.c nhico.uu nhraykey.c
|
nethack.def nh340key.c nhdefkey.c nhico.uu nhraykey.c
|
||||||
nhsetup.bat ntsound.c nttty.c porthelp stubs.c
|
nhsetup.bat ntsound.c nttty.c porthelp stubs.c
|
||||||
sysconf win32api.h winnt.c
|
sysconf win10.c win10.h win32api.h winnt.c
|
||||||
|
|
||||||
util:
|
util:
|
||||||
(files for all versions)
|
(files for all versions)
|
||||||
@@ -359,27 +360,23 @@ uudecode.vcxproj
|
|||||||
|
|
||||||
win/win32/vs2017:
|
win/win32/vs2017:
|
||||||
(files for Visual Studio 2017 Community Edition builds)
|
(files for Visual Studio 2017 Community Edition builds)
|
||||||
NetHack.sln NetHack.vcxproj NetHackW.vcxproj
|
NetHack.sln NetHack.vcxproj NetHackW.exe.manifest
|
||||||
afterdgncomp.proj afterdlb.proj afterlevcomp.proj
|
NetHackW.vcxproj afterdgncomp.proj afterdlb.proj
|
||||||
aftermakedefs.proj afternethack.proj afterrecover.proj
|
afterlevcomp.proj aftermakedefs.proj afternethack.proj
|
||||||
aftertile2bmp.proj aftertilemap.proj afteruudecode.proj
|
afterrecover.proj aftertile2bmp.proj aftertilemap.proj
|
||||||
build.bat common.props config.props
|
afteruudecode.proj build.bat common.props
|
||||||
console.props default.props default_dll.props
|
config.props console.props default.props
|
||||||
dgncomp.vcxproj dirs.props dlb.vcxproj
|
default_dll.props dgncomp.vcxproj dirs.props
|
||||||
dll.props files.props levcomp.vcxproj
|
dlb.vcxproj dll.props files.props
|
||||||
makedefs.vcxproj nh340key.def nh340key.vcxproj
|
levcomp.vcxproj makedefs.vcxproj nh340key.def
|
||||||
nhdefkey.def nhdefkey.vcxproj nhraykey.def
|
nh340key.vcxproj nhdefkey.def nhdefkey.vcxproj
|
||||||
nhraykey.vcxproj recover.vcxproj tile2bmp.vcxproj
|
nhraykey.def nhraykey.vcxproj recover.vcxproj
|
||||||
tilemap.vcxproj tiles.vcxproj uudecode.vcxproj
|
tile2bmp.vcxproj tilemap.vcxproj tiles.vcxproj
|
||||||
|
uudecode.vcxproj
|
||||||
|
|
||||||
This is a list of files produced by auxiliary programs. They can all be
|
This is a list of files produced by auxiliary programs. They can all be
|
||||||
regenerated from the files in the distribution.
|
regenerated from the files in the distribution.
|
||||||
|
|
||||||
dat:
|
|
||||||
(file generated by dgn_comp at playground creation time)
|
|
||||||
dungeon
|
|
||||||
|
|
||||||
(files generated by lev_comp at playground creation time)
|
|
||||||
Arc-fila.lev Arc-filb.lev Arc-goal.lev Arc-loca.lev Arc-strt.lev
|
Arc-fila.lev Arc-filb.lev Arc-goal.lev Arc-loca.lev Arc-strt.lev
|
||||||
Bar-fila.lev Bar-filb.lev Bar-goal.lev Bar-loca.lev Bar-strt.lev
|
Bar-fila.lev Bar-filb.lev Bar-goal.lev Bar-loca.lev Bar-strt.lev
|
||||||
Cav-fila.lev Cav-filb.lev Cav-goal.lev Cav-loca.lev Cav-strt.lev
|
Cav-fila.lev Cav-filb.lev Cav-goal.lev Cav-loca.lev Cav-strt.lev
|
||||||
@@ -404,25 +401,12 @@ minetn-7.lev oracle.lev orcus.lev sanctum.lev soko1-1.lev
|
|||||||
soko1-2.lev soko2-1.lev soko2-2.lev soko3-1.lev soko3-2.lev
|
soko1-2.lev soko2-1.lev soko2-2.lev soko3-1.lev soko3-2.lev
|
||||||
soko4-1.lev soko4-2.lev tower1.lev tower2.lev tower3.lev
|
soko4-1.lev soko4-2.lev tower1.lev tower2.lev tower3.lev
|
||||||
valley.lev water.lev wizard1.lev wizard2.lev wizard3.lev
|
valley.lev water.lev wizard1.lev wizard2.lev wizard3.lev
|
||||||
|
|
||||||
(files generated by makedefs at playground creation time)
|
|
||||||
data dungeon.pdf options oracles quest.dat rumors
|
data dungeon.pdf options oracles quest.dat rumors
|
||||||
|
|
||||||
(files generated for Qt interface on Mac OS X)
|
|
||||||
Info.plist nethack.icns
|
Info.plist nethack.icns
|
||||||
|
|
||||||
(files generated for win32 at compile time)
|
|
||||||
dlb.lst porthelp
|
dlb.lst porthelp
|
||||||
|
|
||||||
(files generated for win32 gui at compile time)
|
|
||||||
guioptions
|
guioptions
|
||||||
|
|
||||||
(files generated for win32 tty at compile time)
|
|
||||||
ttyoptions
|
ttyoptions
|
||||||
|
|
||||||
(tile files optionally generated for X ports at playground creation time)
|
|
||||||
pet_mark.xbm rip.xpm x11tiles
|
pet_mark.xbm rip.xpm x11tiles
|
||||||
|
|
||||||
include:
|
include:
|
||||||
(file for tiles support copied from win/share at compile time)
|
(file for tiles support copied from win/share at compile time)
|
||||||
tile.h
|
tile.h
|
||||||
|
|||||||
@@ -192,6 +192,8 @@ attempting to #ride a long worm's tail could trigger impossible "worm_cross
|
|||||||
avoid "The " in "The <known-artifact-but-not-The-artifact> falls down stairs."
|
avoid "The " in "The <known-artifact-but-not-The-artifact> falls down stairs."
|
||||||
avoid potential buffer overflow if object with very long name knocks other
|
avoid potential buffer overflow if object with very long name knocks other
|
||||||
objects down stairs when dropped, thrown, or kicked there
|
objects down stairs when dropped, thrown, or kicked there
|
||||||
|
#wizintrinsic for 'flying' didn't update status line when flying ended
|
||||||
|
#wizintrinsic for 'warn_of_mon' didn't set any type of monster (now grid bugs)
|
||||||
|
|
||||||
|
|
||||||
Fixes to Post-3.6.1 Problems that Were Exposed Via git Repository
|
Fixes to Post-3.6.1 Problems that Were Exposed Via git Repository
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/* NetHack 3.6 cmd.c $NHDT-Date: 1541631031 2018/11/07 22:50:31 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.299 $ */
|
/* NetHack 3.6 cmd.c $NHDT-Date: 1541902950 2018/11/11 02:22:30 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.301 $ */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/*-Copyright (c) Robert Patrick Rankin, 2013. */
|
/*-Copyright (c) Robert Patrick Rankin, 2013. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
@@ -1423,7 +1423,19 @@ wiz_intrinsic(VOID_ARGS)
|
|||||||
make_vomiting(newtimeout, FALSE);
|
make_vomiting(newtimeout, FALSE);
|
||||||
pline1(buf);
|
pline1(buf);
|
||||||
break;
|
break;
|
||||||
|
case WARN_OF_MON:
|
||||||
|
if (!Warn_of_mon) {
|
||||||
|
context.warntype.speciesidx = PM_GRID_BUG;
|
||||||
|
context.warntype.species
|
||||||
|
= &mons[context.warntype.speciesidx];
|
||||||
|
}
|
||||||
|
goto def_feedback;
|
||||||
|
case LEVITATION:
|
||||||
|
case FLYING:
|
||||||
|
float_vs_flight();
|
||||||
|
/*FALLTHRU*/
|
||||||
default:
|
default:
|
||||||
|
def_feedback:
|
||||||
pline("Timeout for %s %s %d.", propertynames[i].prop_name,
|
pline("Timeout for %s %s %d.", propertynames[i].prop_name,
|
||||||
oldtimeout ? "increased by" : "set to", amt);
|
oldtimeout ? "increased by" : "set to", amt);
|
||||||
incr_itimeout(&u.uprops[p].intrinsic, amt);
|
incr_itimeout(&u.uprops[p].intrinsic, amt);
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/* NetHack 3.6 end.c $NHDT-Date: 1540767809 2018/10/28 23:03:29 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.148 $ */
|
/* NetHack 3.6 end.c $NHDT-Date: 1541902951 2018/11/11 02:22:31 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.150 $ */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/*-Copyright (c) Robert Patrick Rankin, 2012. */
|
/*-Copyright (c) Robert Patrick Rankin, 2012. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
@@ -2009,10 +2009,10 @@ const char *killername;
|
|||||||
{
|
{
|
||||||
struct kinfo *k = find_delayed_killer(id);
|
struct kinfo *k = find_delayed_killer(id);
|
||||||
|
|
||||||
if (k == (struct kinfo *) 0) {
|
if (!k) {
|
||||||
/* no match, add a new delayed killer to the list */
|
/* no match, add a new delayed killer to the list */
|
||||||
k = (struct kinfo *) alloc(sizeof(struct kinfo));
|
k = (struct kinfo *) alloc(sizeof (struct kinfo));
|
||||||
(void) memset((genericptr_t)k, 0, sizeof(struct kinfo));
|
(void) memset((genericptr_t) k, 0, sizeof (struct kinfo));
|
||||||
k->id = id;
|
k->id = id;
|
||||||
k->next = killer.next;
|
k->next = killer.next;
|
||||||
killer.next = k;
|
killer.next = k;
|
||||||
|
|||||||
+23
-2
@@ -1,4 +1,4 @@
|
|||||||
/* NetHack 3.6 timeout.c $NHDT-Date: 1505214876 2017/09/12 11:14:36 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.75 $ */
|
/* NetHack 3.6 timeout.c $NHDT-Date: 1541902953 2018/11/11 02:22:33 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.84 $ */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/*-Copyright (c) Robert Patrick Rankin, 2018. */
|
/*-Copyright (c) Robert Patrick Rankin, 2018. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
@@ -45,7 +45,7 @@ const struct propname {
|
|||||||
{ SEE_INVIS, "see invisible" },
|
{ SEE_INVIS, "see invisible" },
|
||||||
{ INVIS, "invisible" },
|
{ INVIS, "invisible" },
|
||||||
/* properties beyond here don't have timed values during normal play,
|
/* properties beyond here don't have timed values during normal play,
|
||||||
so there's no much point in trying to order them sensibly;
|
so there's not much point in trying to order them sensibly;
|
||||||
they're either on or off based on equipment, role, actions, &c */
|
they're either on or off based on equipment, role, actions, &c */
|
||||||
{ FIRE_RES, "fire resistance" },
|
{ FIRE_RES, "fire resistance" },
|
||||||
{ COLD_RES, "cold resistance" },
|
{ COLD_RES, "cold resistance" },
|
||||||
@@ -367,6 +367,7 @@ nh_timeout()
|
|||||||
{
|
{
|
||||||
register struct prop *upp;
|
register struct prop *upp;
|
||||||
struct kinfo *kptr;
|
struct kinfo *kptr;
|
||||||
|
boolean was_flying;
|
||||||
int sleeptime;
|
int sleeptime;
|
||||||
int m_idx;
|
int m_idx;
|
||||||
int baseluck = (flags.moonphase == FULL_MOON) ? 1 : 0;
|
int baseluck = (flags.moonphase == FULL_MOON) ? 1 : 0;
|
||||||
@@ -431,6 +432,7 @@ nh_timeout()
|
|||||||
pline("%s stops galloping.", Monnam(u.usteed));
|
pline("%s stops galloping.", Monnam(u.usteed));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
was_flying = Flying;
|
||||||
for (upp = u.uprops; upp < u.uprops + SIZE(u.uprops); upp++)
|
for (upp = u.uprops; upp < u.uprops + SIZE(u.uprops); upp++)
|
||||||
if ((upp->intrinsic & TIMEOUT) && !(--upp->intrinsic & TIMEOUT)) {
|
if ((upp->intrinsic & TIMEOUT) && !(--upp->intrinsic & TIMEOUT)) {
|
||||||
kptr = find_delayed_killer((int) (upp - u.uprops));
|
kptr = find_delayed_killer((int) (upp - u.uprops));
|
||||||
@@ -554,6 +556,25 @@ nh_timeout()
|
|||||||
case LEVITATION:
|
case LEVITATION:
|
||||||
(void) float_down(I_SPECIAL | TIMEOUT, 0L);
|
(void) float_down(I_SPECIAL | TIMEOUT, 0L);
|
||||||
break;
|
break;
|
||||||
|
case FLYING:
|
||||||
|
/* timed Flying is via #wizintrinsic only */
|
||||||
|
if (was_flying && !Flying) {
|
||||||
|
context.botl = 1;
|
||||||
|
You("land.");
|
||||||
|
spoteffects(TRUE);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case WARN_OF_MON:
|
||||||
|
/* timed Warn_of_mon is via #wizintrinsic only */
|
||||||
|
if (!Warn_of_mon) {
|
||||||
|
context.warntype.speciesidx = NON_PM;
|
||||||
|
if (context.warntype.species) {
|
||||||
|
You("are no longer warned about %s.",
|
||||||
|
makeplural(context.warntype.species->mname));
|
||||||
|
context.warntype.species = (struct permonst *) 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
case PASSES_WALLS:
|
case PASSES_WALLS:
|
||||||
if (!Passes_walls) {
|
if (!Passes_walls) {
|
||||||
if (stuck_in_wall())
|
if (stuck_in_wall())
|
||||||
|
|||||||
@@ -501,15 +501,6 @@ int code;
|
|||||||
exit(code);
|
exit(code);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WIN32
|
|
||||||
#ifndef TTY_GRAPHICS
|
|
||||||
void
|
|
||||||
synch_cursor()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Chdir back to original directory
|
/* Chdir back to original directory
|
||||||
*/
|
*/
|
||||||
#ifdef TOS
|
#ifdef TOS
|
||||||
|
|||||||
@@ -0,0 +1,42 @@
|
|||||||
|
/* NetHack 3.6 win10.c $NHDT-Date: 1432512810 2015/05/25 00:13:30 $ $NHDT-Branch: master $:$NHDT-Revision: 1.15 $ */
|
||||||
|
/* Copyright (C) 2018 by Bart House */
|
||||||
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
|
|
||||||
|
#include <process.h>
|
||||||
|
#include "winMS.h"
|
||||||
|
#include "hack.h"
|
||||||
|
#include "win10.h"
|
||||||
|
#include <VersionHelpers.h>
|
||||||
|
|
||||||
|
Win10 gWin10 = { 0 };
|
||||||
|
|
||||||
|
void win10_init()
|
||||||
|
{
|
||||||
|
if (IsWindows10OrGreater())
|
||||||
|
{
|
||||||
|
HINSTANCE hUser32 = LoadLibraryA("user32.dll");
|
||||||
|
|
||||||
|
if (hUser32 == NULL)
|
||||||
|
panic("Unable to load user32.dll");
|
||||||
|
|
||||||
|
gWin10.GetThreadDpiAwarenessContext = (GetThreadDpiAwarenessContextProc) GetProcAddress(hUser32, "GetThreadDpiAwarenessContext");
|
||||||
|
if (gWin10.GetThreadDpiAwarenessContext == NULL)
|
||||||
|
panic("Unable to get address of GetThreadDpiAwarenessContext()");
|
||||||
|
|
||||||
|
gWin10.AreDpiAwarenessContextsEqual = (AreDpiAwarenessContextsEqualProc) GetProcAddress(hUser32, "AreDpiAwarenessContextsEqual");
|
||||||
|
if (gWin10.AreDpiAwarenessContextsEqual == NULL)
|
||||||
|
panic("Unable to get address of AreDpiAwarenessContextsEqual");
|
||||||
|
|
||||||
|
FreeLibrary(hUser32);
|
||||||
|
|
||||||
|
gWin10.Valid = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (gWin10.Valid) {
|
||||||
|
if (!gWin10.AreDpiAwarenessContextsEqual(
|
||||||
|
gWin10.GetThreadDpiAwarenessContext(),
|
||||||
|
DPI_AWARENESS_CONTEXT_UNAWARE))
|
||||||
|
panic("Unexpected DpiAwareness state");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
/* NetHack 3.6 win10.h $NHDT-Date: 1432512810 2015/05/25 00:13:30 $ $NHDT-Branch: master $:$NHDT-Revision: 1.15 $ */
|
||||||
|
/* Copyright (C) 2018 by Bart House */
|
||||||
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
|
|
||||||
|
typedef DPI_AWARENESS_CONTEXT(WINAPI * GetThreadDpiAwarenessContextProc)(VOID);
|
||||||
|
typedef BOOL (WINAPI *AreDpiAwarenessContextsEqualProc)(DPI_AWARENESS_CONTEXT dpiContextA, DPI_AWARENESS_CONTEXT dpiContextB);
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
BOOL Valid;
|
||||||
|
GetThreadDpiAwarenessContextProc GetThreadDpiAwarenessContext;
|
||||||
|
AreDpiAwarenessContextsEqualProc AreDpiAwarenessContextsEqual;
|
||||||
|
} Win10;
|
||||||
|
|
||||||
|
extern Win10 gWin10;
|
||||||
|
|
||||||
|
void win10_init();
|
||||||
|
|
||||||
+6
-9
@@ -5,6 +5,8 @@
|
|||||||
/*
|
/*
|
||||||
* WIN32 system functions.
|
* WIN32 system functions.
|
||||||
*
|
*
|
||||||
|
* Included in both console and window based clients on the windows platform.
|
||||||
|
*
|
||||||
* Initial Creation: Michael Allison - January 31/93
|
* Initial Creation: Michael Allison - January 31/93
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@@ -229,15 +231,6 @@ Delay(int ms)
|
|||||||
(void) Sleep(ms);
|
(void) Sleep(ms);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef TTY_GRAPHICS
|
|
||||||
extern void NDECL(backsp);
|
|
||||||
#else
|
|
||||||
void
|
|
||||||
backsp()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void
|
void
|
||||||
win32_abort()
|
win32_abort()
|
||||||
{
|
{
|
||||||
@@ -250,9 +243,13 @@ win32_abort()
|
|||||||
msmsg("Execute debug breakpoint wizard?");
|
msmsg("Execute debug breakpoint wizard?");
|
||||||
while ((ci = nhgetch()) != '\n') {
|
while ((ci = nhgetch()) != '\n') {
|
||||||
if (ct > 0) {
|
if (ct > 0) {
|
||||||
|
#ifdef TTY_GRAPHICS
|
||||||
backsp(); /* \b is visible on NT */
|
backsp(); /* \b is visible on NT */
|
||||||
|
#endif
|
||||||
(void) putchar(' ');
|
(void) putchar(' ');
|
||||||
|
#ifdef TTY_GRAPHICS
|
||||||
backsp();
|
backsp();
|
||||||
|
#endif
|
||||||
ct = 0;
|
ct = 0;
|
||||||
c = 'n';
|
c = 'n';
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
|
||||||
|
<application xmlns="urn:schemas-microsoft-com:asm.v3">
|
||||||
|
<windowsSettings>
|
||||||
|
<dpiAwareness xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">unaware</dpiAwareness>
|
||||||
|
<!-- <dpiAwareness xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">PerMonitorV2</dpiAwareness> -->
|
||||||
|
<!-- <gdiScaling xmlns="http://schemas.microsoft.com/SMI/2017/WindowsSettings">true</gdiScaling> -->
|
||||||
|
</windowsSettings>
|
||||||
|
</application>
|
||||||
|
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
|
||||||
|
<application>
|
||||||
|
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/> <!-- Windows 7 -->
|
||||||
|
<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/> <!-- Windows 8 -->
|
||||||
|
<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/> <!-- Windows 8.1 -->
|
||||||
|
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/> <!-- Windows 10 -->
|
||||||
|
</application>
|
||||||
|
</compatibility>
|
||||||
|
</assembly>
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
<Optimization>Disabled</Optimization>
|
<Optimization>Disabled</Optimization>
|
||||||
<OmitFramePointers>true</OmitFramePointers>
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
<AdditionalIncludeDirectories>$(WinWin32Dir);$(IncDir);$(SysWinntDir);$(SysShareDir);$(WinShareDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>$(WinWin32Dir);$(IncDir);$(SysWinntDir);$(SysShareDir);$(WinShareDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions>TILES;_WINDOWS;DLB;MSWIN_GRAPHICS;WIN32CONNDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>TILES;_WINDOWS;DLB;MSWIN_GRAPHICS;NOTTYGRAPHICS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ResourceCompile>
|
<ResourceCompile>
|
||||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
@@ -30,6 +30,9 @@
|
|||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
<AdditionalDependencies>comctl32.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
<AdditionalDependencies>comctl32.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
</Link>
|
</Link>
|
||||||
|
<Manifest>
|
||||||
|
<AdditionalManifestFiles>NethackW.exe.manifest;%(AdditionalManifestFiles)</AdditionalManifestFiles>
|
||||||
|
</Manifest>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="$(SrcDir)allmain.c" />
|
<ClCompile Include="$(SrcDir)allmain.c" />
|
||||||
@@ -152,6 +155,7 @@
|
|||||||
<PreprocessorDefinitions>TTYSTUB;</PreprocessorDefinitions>
|
<PreprocessorDefinitions>TTYSTUB;</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="$(SysWinntDir)winnt.c" />
|
<ClCompile Include="$(SysWinntDir)winnt.c" />
|
||||||
|
<ClCompile Include="$(SysWinntDir)win10.c" />
|
||||||
<ClCompile Include="$(WinWin32Dir)mhaskyn.c" />
|
<ClCompile Include="$(WinWin32Dir)mhaskyn.c" />
|
||||||
<ClCompile Include="$(WinWin32Dir)mhdlg.c" />
|
<ClCompile Include="$(WinWin32Dir)mhdlg.c" />
|
||||||
<ClCompile Include="$(WinWin32Dir)mhfont.c" />
|
<ClCompile Include="$(WinWin32Dir)mhfont.c" />
|
||||||
|
|||||||
+12
-3
@@ -12,6 +12,7 @@
|
|||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
#include "mhmain.h"
|
#include "mhmain.h"
|
||||||
#include "mhmap.h"
|
#include "mhmap.h"
|
||||||
|
#include "win10.h"
|
||||||
|
|
||||||
/* Borland and MinGW redefine "boolean" in shlwapi.h,
|
/* Borland and MinGW redefine "boolean" in shlwapi.h,
|
||||||
so just use the little bit we need */
|
so just use the little bit we need */
|
||||||
@@ -88,11 +89,19 @@ WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine,
|
|||||||
UNREFERENCED_PARAMETER(lpCmdLine);
|
UNREFERENCED_PARAMETER(lpCmdLine);
|
||||||
UNREFERENCED_PARAMETER(nCmdShow);
|
UNREFERENCED_PARAMETER(nCmdShow);
|
||||||
|
|
||||||
sys_early_init();
|
/* We must initialize state sufficiently to support calls to panic */
|
||||||
|
// We need to support DPI awareness.
|
||||||
/* ensure that we don't access violate on a panic() */
|
//
|
||||||
|
// BOOL result = SetProcessDpiAwarenessContext(
|
||||||
|
// DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2);
|
||||||
|
//
|
||||||
windowprocs.win_raw_print = mswin_raw_print;
|
windowprocs.win_raw_print = mswin_raw_print;
|
||||||
windowprocs.win_raw_print_bold = mswin_raw_print_bold;
|
windowprocs.win_raw_print_bold = mswin_raw_print_bold;
|
||||||
|
windowprocs.win_wait_synch = mswin_wait_synch;
|
||||||
|
|
||||||
|
win10_init();
|
||||||
|
|
||||||
|
sys_early_init();
|
||||||
|
|
||||||
/* init applicatio structure */
|
/* init applicatio structure */
|
||||||
_nethack_app.hApp = hInstance;
|
_nethack_app.hApp = hInstance;
|
||||||
|
|||||||
Reference in New Issue
Block a user