view xrogue/mach_dep.h @ 238:e1cd27c5464f

arogue7, xrogue: improve the handling of the arguments to fuses. fuse() now expects a pointer as the argument to a fuse function. If this is one of the functions that takes int, fuse() follows the pointer and stores that value in the f_list slot, in the integer field of the argument union. When the fuse goes off, do_fuses() recognizes the function and passes it the integer field instead of the pointer. This has the disadvantage of hard-coding the functions that require int in daemon.c, but since the int is copied into f_list, it no longer has to be in static or global memory, which simplifies several files.
author John "Elwin" Edwards
date Fri, 11 Mar 2016 17:40:00 -0500
parents 4b1999ac91cf
children
line wrap: on
line source

/*
    mach_dep.h  -  machine dependents

    XRogue: Expeditions into the Dungeons of Doom
    Copyright (C) 1991 Robert Pietkivitch
    All rights reserved.
    
    Based on "Advanced Rogue"
    Copyright (C) 1984, 1985 Michael Morgan, Ken Dalka and AT&T
    All rights reserved.

    Based on "Rogue: Exploring the Dungeons of Doom"
    Copyright (C) 1980, 1981 Michael Toy, Ken Arnold and Glenn Wichman
    All rights reserved.
    
    See the file LICENSE.TXT for full copyright and licensing information.
*/

/*
 * define/undefine that the wizard commands exist
 */
#ifndef HAVE_CONFIG_H
#undef WIZARD
#endif

#if defined(_WIN32)
#define fstat _fstat
#define stat _stat
#define open _open
#define popen _popen
#define pclose _pclose
#if !defined(__MINGW32__)
#define PATH_MAX _MAX_PATH
#endif
#endif

#define NOOP(x) (x += 0)

extern char *md_getusername();
extern char *md_gethomedir();
extern char *md_getroguedir();
extern void md_flushinp();
extern char *md_getshell();
extern char *md_gethostname();
extern void md_dobinaryio();
extern char *md_getpass();
extern void md_init();
extern char *xcrypt();

/*
 * define if you want to limit scores to one per class per userid
 */

#ifndef HAVE_CONFIG_H
/* #define LIMITSCORE 1*/
#undef LIMITSCORE
#endif

/* 
 * fudge factor allowed in time for saved game
 */

#define FUDGE_TIME      200

/* File locations.  Define here if necessary. */
#if 0
#define SCOREFILE "xrogue.scr"
#define LOGFILE "xrogue.log"
#endif