annotate rogue3/machdep.h @ 81:0e212d46b68f

rogue4: don't put savefile metadata into the savefile. The save_file() function in save.c stored the savefile's device number, inode number, creation time, and modification time in the file. The restore() function read them back, and apparently used to compare them to protect against cheaters. Unfortunately, the types and sizes of these numbers differ from system to system, which ruins the Roguelike Restoration Project's fine portability work. So they have been removed from the savefile. This BREAKS SAVEFILE COMPATIBILITY, but old files can be converted by excising the chunk starting at offset 0x22 with length sizeof(ino_t) + sizeof(dev_t) + 2 * sizeof(time_t). That's 0x14 on i686 and 0x20 on x86_64, at least with current versions of Linux and glibc.
author John "Elwin" Edwards
date Mon, 05 Aug 2013 20:49:41 -0700
parents c6d58901ddc0
children 07c4d4883ef2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
1 /*
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
2 * machine dependicies
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
3 *
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
4 * %G% (Berkeley) %W%
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
5 *
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
6 * Rogue: Exploring the Dungeons of Doom
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
7 * Copyright (C) 1980, 1981 Michael Toy, Ken Arnold and Glenn Wichman
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
8 * All rights reserved.
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
9 *
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
10 * See the file LICENSE.TXT for full copyright and licensing information.
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
11 */
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
12
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
13 /*
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
14 * Variables for checking to make sure the system isn't too loaded
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
15 * for people to play
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
16 */
29
da77eb183951 rogue3: allow load and user count checks to be compiled out
edwarj4
parents: 20
diff changeset
17 /* Comment out MAXLOAD or MAXUSERS to disable a check */
0
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
18
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
19 #define AUTHORUID 0
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
20 #define MAXUSERS 25 /* max number of users for this game */
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
21 #define MAXLOAD 40 /* 10 * max 15 minute load average */
527e2150eaf0 Import Rogue 3.6 from the Roguelike Restoration Project (r1490)
edwarj4
parents:
diff changeset
22 #define CHECKTIME 15 /* number of minutes between load checks */
20
bbf072f8bafa rogue3: move file locations from Makefile to machdep.h
edwarj4
parents: 0
diff changeset
23
bbf072f8bafa rogue3: move file locations from Makefile to machdep.h
edwarj4
parents: 0
diff changeset
24 /* Locations of various files. Comment out to disable. */
bbf072f8bafa rogue3: move file locations from Makefile to machdep.h
edwarj4
parents: 0
diff changeset
25 /* The list of top ten scores. */
58
c6d58901ddc0 rogue3: move default locations to /var.
elwin
parents: 29
diff changeset
26 #define SCOREFILE "/var/local/games/roguelike/rogue3.scr"
20
bbf072f8bafa rogue3: move file locations from Makefile to machdep.h
edwarj4
parents: 0
diff changeset
27 /* A text file with a record of every game. */
58
c6d58901ddc0 rogue3: move default locations to /var.
elwin
parents: 29
diff changeset
28 #define LOGFILE "/var/local/games/roguelike/rogue3.log"
20
bbf072f8bafa rogue3: move file locations from Makefile to machdep.h
edwarj4
parents: 0
diff changeset
29 /* A standard location for saved games. */
58
c6d58901ddc0 rogue3: move default locations to /var.
elwin
parents: 29
diff changeset
30 #define SAVEDIR "/var/local/games/roguelike/rogue3save/"