Amiga: auto-assign NetHack: to the program directory
This commit is contained in:
@@ -30,6 +30,23 @@
|
||||
int getpid(void) { return (int)FindTask(NULL); }
|
||||
#endif
|
||||
|
||||
/* Point NetHack: at the directory we were launched from. Works for both
|
||||
CLI ("nethack") and Workbench (icon double-click) launches, since
|
||||
GetProgramDir() (V37+) resolves both. Any existing assign is replaced;
|
||||
it would just be stale state from a previous install or session. */
|
||||
void
|
||||
amiga_self_assign(void)
|
||||
{
|
||||
BPTR dup;
|
||||
|
||||
if (GetProgramDir() == 0)
|
||||
return;
|
||||
if ((dup = DupLock(GetProgramDir())) == 0)
|
||||
return;
|
||||
if (!AssignLock("NetHack", dup))
|
||||
UnLock(dup);
|
||||
}
|
||||
|
||||
#ifdef AZTEC_50
|
||||
#include <functions.h>
|
||||
#undef strcmpi
|
||||
|
||||
@@ -18,6 +18,7 @@ int abs(int );
|
||||
#endif
|
||||
int tgetch (void);
|
||||
int dosh (void);
|
||||
void amiga_self_assign (void);
|
||||
long freediskspace(char *);
|
||||
long filesize(char *);
|
||||
void eraseall(const char * , const char *);
|
||||
|
||||
@@ -255,6 +255,8 @@ _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);*/
|
||||
#endif
|
||||
}
|
||||
#ifdef AMIGA
|
||||
/* Point NetHack: at our program directory; covers CLI and WB launch. */
|
||||
amiga_self_assign();
|
||||
#ifdef CHDIR
|
||||
/*
|
||||
* If we're dealing with workbench, change the directory. Otherwise
|
||||
|
||||
@@ -42,6 +42,7 @@ ifdef CROSS_TO_AMIGA
|
||||
CROSS=1
|
||||
BUILD_TARGET_LUA=1
|
||||
CROSS_SHARED=1
|
||||
HACKDIR=NetHack:
|
||||
override TARGET = amiga
|
||||
override TARGETDIR=../targets/$(TARGET)
|
||||
override TARGETPFX = $(TARGETDIR)/
|
||||
|
||||
Reference in New Issue
Block a user