summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-roguelike/omega/files/0.80.2-gentoo-omega.patch')
-rw-r--r--games-roguelike/omega/files/0.80.2-gentoo-omega.patch439
1 files changed, 0 insertions, 439 deletions
diff --git a/games-roguelike/omega/files/0.80.2-gentoo-omega.patch b/games-roguelike/omega/files/0.80.2-gentoo-omega.patch
deleted file mode 100644
index 9be1f6f..0000000
--- a/games-roguelike/omega/files/0.80.2-gentoo-omega.patch
+++ /dev/null
@@ -1,439 +0,0 @@
-diff -Npur omega.orig/char.c omega/char.c
---- omega.orig/char.c 1997-02-15 07:17:53.000000000 +0100
-+++ omega/char.c 2011-09-04 15:24:40.882766949 +0200
-@@ -101,7 +101,7 @@ FILE *omegarc_check()
- if ((fd = fopen("omega.rc","rb")) != NULL) {
- print2("Use omega.rc in current directory? [yn] ");
- #else
-- sprintf(Str1, "%s/.omegarc", getenv("HOME"));
-+ snprintf(Str1, sizeof(Str1)-1, "%s/.omegarc", getenv("HOME"));
- if ((fd = fopen(Str1,"r")) != NULL) {
- print2("Use .omegarc in home directory? [yn] ");
- #endif
-@@ -142,7 +142,7 @@ void save_omegarc()
- #if defined(MSDOS) || defined(AMIGA)
- fd = fopen("omega.rc","wb");
- #else
-- sprintf(Str1, "%s/.omegarc", getenv("HOME"));
-+ snprintf(Str1, sizeof(Str1)-1, "%s/.omegarc", getenv("HOME"));
- fd = fopen(Str1,"w");
- #endif
- if (fd == NULL)
-diff -Npur omega.orig/command3.c omega/command3.c
---- omega.orig/command3.c 1997-02-15 07:17:55.000000000 +0100
-+++ omega/command3.c 2011-09-04 15:24:40.883766949 +0200
-@@ -204,7 +204,7 @@ void version()
- print3(VERSIONSTRING);
- nprint3(":");
- nprint3(" Last Edited: ");
-- nprint3(LAST_OMEGA_EDIT_DATE);
-+ nprint3(__DATE__" "__TIME__);
- }
-
- void fire()
-diff -Npur omega.orig/defs.h omega/defs.h
---- omega.orig/defs.h 1997-02-15 07:17:55.000000000 +0100
-+++ omega/defs.h 2011-09-04 15:24:40.883766949 +0200
-@@ -45,7 +45,8 @@ on save and restore. */
- This might usually be "/usr/games/lib/omegalib/", for unix,
- or something like "c:\\games\\omega\\omegalib\\" for msdos */
-
--#define OMEGALIB "./omegalib/"
-+#define OMEGALIB "/usr/share/games/omega/"
-+#define OMEGAVAR "/var/games/omega/"
-
- /* Comment the following line out if you want users to be able to override */
- /* the OMEGALIB define, above, by setting the environment variable OMEGALIB */
-@@ -59,7 +60,7 @@ on save and restore. */
-
- /* set WIZARD to maintainers's username */
-
--#define WIZARD "max"
-+#define WIZARD "root"
-
- /* If CATCH_SIGNALS is set to 1, will not dump core, nicer for players. */
- /* dbx still intercepts the signals first, so it's ok for debugging */
-diff -Npur omega.orig/effect1.c omega/effect1.c
---- omega.orig/effect1.c 1997-02-15 07:17:56.000000000 +0100
-+++ omega/effect1.c 2011-09-04 15:24:40.884766949 +0200
-@@ -81,11 +81,11 @@ int delta;
- }
- }
- else {
-- if (Player.possessions[i]->plus > random_range(20)+1) {
-+ if (abs(Player.possessions[i]->plus) > random_range(20)+1) {
- print1("Uh-oh, the force of the enchantment was too much!");
- print2("There is a loud explosion!");
- morewait();
-- manastorm(Player.x,Player.y,Player.possessions[i]->plus*5);
-+ manastorm(Player.x,Player.y,abs(Player.possessions[i]->plus)*5);
- dispose_lost_objects(1,Player.possessions[i]);
- }
- else {
-@@ -375,7 +375,10 @@ int fx,fy,tx,ty,dmg,dtype;
- for(i=0;i<9;i++) {
- ex = xx + Dirs[0][i];
- ey = yy + Dirs[1][i];
--
-+
-+ if(offscreen(ey))
-+ continue;
-+
- if ((ex == Player.x) && (ey == Player.y)) {
- switch(dtype) {
- case FLAME:mprint("You were blasted by a fireball!");
-diff -Npur omega.orig/file.c omega/file.c
---- omega.orig/file.c 1997-02-15 07:17:57.000000000 +0100
-+++ omega/file.c 2011-09-04 15:24:40.884766949 +0200
-@@ -12,6 +12,7 @@
- # include <curses.h>
- # endif
- # include <sys/types.h>
-+# include <sys/stat.h>
- # include <unistd.h>
- # include <sys/file.h>
- # include <fcntl.h>
-@@ -155,11 +156,11 @@ void lock_score_file()
- int lock, attempts, thispid, lastpid = 0;
- FILE *lockfile;
-
-- strcpy(Str1,Omegalib);
-+ strcpy(Str1,Omegavar);
- strcat(Str1,"omega.hi.lock");
- do
- {
-- lock = open(Str1, O_CREAT|O_EXCL, 0600); /* create lock file */
-+ lock = open(Str1, O_WRONLY|O_CREAT|O_EXCL, 0600); /* create lock file */
- if (lock < 0 && errno == EEXIST)
- {
- lockfile = fopen(Str1, "rb");
-@@ -189,7 +190,7 @@ void lock_score_file()
- void unlock_score_file()
- {
- #ifndef MSDOS
-- strcpy(Str1,Omegalib);
-+ strcpy(Str1,Omegavar);
- strcat(Str1,"omega.hi.lock");
- unlink(Str1);
- #endif
-@@ -201,7 +202,7 @@ void showscores()
- int i;
-
- lock_score_file();
-- strcpy(Str1,Omegalib);
-+ strcpy(Str1,Omegavar);
- strcat(Str1,"omega.hi");
- fd = checkfopen(Str1,"rb");
- filescanstring(fd,Hiscorer);
-@@ -281,10 +282,10 @@ int npc;
- if (gamestatusp(CHEATED))
- return;
- lock_score_file();
-- strcpy(Str1,Omegalib);
-+ strcpy(Str1,Omegavar);
- strcat(Str1,"omega.hi");
- infile = checkfopen(Str1,"rb");
-- strcpy(Str2,Omegalib);
-+ strcpy(Str2,Omegavar);
- #ifdef MSDOS
- strcat(Str2,"omegahi.new"); /* stupid 8.3 msdos filename limit */
- #else
-@@ -352,6 +353,7 @@ int npc;
- }
- fclose(infile);
- fclose(outfile);
-+ chmod(Str2, 0644);
- unlink(Str1);
- #if defined(MSDOS) || defined(AMIGA)
- rename(Str2, Str1);
-@@ -413,7 +415,7 @@ int lifestatus;
- change_to_game_perms();
- npcbehavior=fixnpc(lifestatus);
- checkhigh(descrip,npcbehavior);
-- strcpy(Str1,Omegalib);
-+ strcpy(Str1,Omegavar);
- strcat(Str1,"omega.log");
- fd = checkfopen(Str1,"a");
- fprintf(fd, " %d %d %d %s\n", lifestatus, Player.level, npcbehavior,
-@@ -487,10 +489,15 @@ char *required_file_list[] =
- "speak.dat", "temple.dat", "abyss.dat", "village1.dat", "village2.dat",
- "village3.dat", "village4.dat", "village5.dat", "village6.dat",
- "home1.dat", "home2.dat", "home3.dat", "arena.dat", "maze1.dat",
-- "maze2.dat", "maze3.dat", "maze4.dat", "omega.hi", "omega.log", "motd.txt",
-+ "maze2.dat", "maze3.dat", "maze4.dat", "motd.txt",
- "license.txt", "circle.dat", NULL
- };
-
-+char *required_writeable[] =
-+{
-+ "omega.hi", "omega.log", NULL
-+};
-+
- char *optional_file_list[] =
- {
- "help1.txt", "help2.txt", "help3.txt", "help4.txt", "help5.txt",
-@@ -507,24 +514,30 @@ int filecheck()
- int endpos;
- int file;
-
-- strcpy(Str1, Omegalib);
-+ strcpy(Str1, Omegavar);
- endpos = strlen(Str1);
-- for (file = 0; required_file_list[file]; file++)
-+ for (file = 0; required_writeable[file]; file++)
- {
-- strcpy(&(Str1[endpos]), required_file_list[file]);
-- if ((strcmp(required_file_list[file], "omega.hi") == 0 ||
-- strcmp(required_file_list[file], "omega.log") == 0) &&
-- test_file_access(Str1, 'w') == 0)
-+ strcpy(&(Str1[endpos]), required_writeable[file]);
-+ if (test_file_access(Str1, 'w') == 0)
- {
- impossible = TRUE;
- printf("\nError! File not appendable or accessible: %s", Str1);
- }
-- else if (test_file_access(Str1, 'r') == 0)
-+ }
-+
-+ strcpy(Str1, Omegalib);
-+ endpos = strlen(Str1);
-+ for (file = 0; required_file_list[file]; file++)
-+ {
-+ strcpy(&(Str1[endpos]), required_file_list[file]);
-+ if (test_file_access(Str1, 'r') == 0)
- {
- impossible = TRUE;
- printf("\nError! File not accessible: %s", Str1);
- }
- }
-+
- for (file = 0; optional_file_list[file]; file++)
- {
- strcpy(&(Str1[endpos]), optional_file_list[file]);
-@@ -536,13 +549,13 @@ int filecheck()
- }
- if (impossible) {
- printf("\nFurther execution is impossible. Sorry.");
-- if (strcmp(Omegalib, OMEGALIB))
-+ if (strcmp(Omegavar, OMEGALIB))
- printf("\nEnvironment variable OMEGALIB badly set\n");
- else {
- printf("\nOMEGALIB may be badly #defined in odefs.h\n");
- #ifndef FIXED_OMEGALIB
- printf("\nYou can set the environment variable OMEGALIB to\n");
-- printf("the location of the omegalib directory.\n");
-+ printf("the location of the omegavar directory.\n");
- #endif
- }
- return(0);
-diff -Npur omega.orig/gen2.c omega/gen2.c
---- omega.orig/gen2.c 1997-02-15 07:17:57.000000000 +0100
-+++ omega/gen2.c 2011-09-04 15:30:43.808766947 +0200
-@@ -372,7 +372,7 @@ void maze_level()
- {
- int i,j,tx,ty,mid;
- char rsi;
-- if (Current_Environment == E_ASTRAL)
-+ if (Current_Environment == E_ASTRAL) {
- switch(Level->depth){
- case 1: rsi = RS_EARTHPLANE; break;
- case 2: rsi = RS_AIRPLANE; break;
-@@ -380,18 +380,21 @@ void maze_level()
- case 4: rsi = RS_FIREPLANE; break;
- case 5: rsi = RS_HIGHASTRAL; break;
- }
-+ }
- else rsi = RS_VOLCANO;
- maze_corridor(random_range(WIDTH-1)+1,
- random_range(LENGTH-1)+1,
- random_range(WIDTH-1)+1,
- random_range(LENGTH-1)+1,
- rsi,0);
-- if (Current_Dungeon == E_ASTRAL) {
-- for(i=0;i<WIDTH;i++)
-- for(j=0;j<LENGTH;j++)
-- if (Level->site[i][j].locchar == WALL)
-+ if (Current_Environment == E_ASTRAL) {
-+ for(i=0;i<WIDTH;i++) {
-+ for(j=0;j<LENGTH;j++) {
-+ if (Level->site[i][j].locchar == WALL) {
- switch(Level->depth){
-- case 1: Level->site[i][j].aux = 500; break;
-+ case 1:
-+ Level->site[i][j].aux = 500;
-+ break;
- case 2:
- Level->site[i][j].locchar = WHIRLWIND;
- Level->site[i][j].p_locf = L_WHIRLWIND;
-@@ -409,6 +412,9 @@ void maze_level()
- Level->site[i][j].p_locf = L_ABYSS;
- break;
- }
-+ }
-+ }
-+ }
- switch(Level->depth) {
- case 1: mid = ML10+5; break; /* Elemental Lord of Earth */
- case 2: mid = ML10+6; break; /* Elemental Lord of Air */
-diff -Npur omega.orig/glob.h omega/glob.h
---- omega.orig/glob.h 1997-02-15 07:17:57.000000000 +0100
-+++ omega/glob.h 2011-09-04 15:24:40.885766949 +0200
-@@ -12,7 +12,10 @@
- #include "extern.h"
-
- /* This string holds the path to the library files */
--char *Omegalib;
-+extern char *Omegalib;
-+
-+/* This string holds the path to the highscore and log files */
-+extern char *Omegavar;
-
- /* one of each monster */
- extern struct monster Monsters[NUMMONSTERS];
-diff -Npur omega.orig/inv.c omega/inv.c
---- omega.orig/inv.c 1997-02-15 07:17:59.000000000 +0100
-+++ omega/inv.c 2011-09-04 15:24:40.885766949 +0200
-@@ -72,7 +72,7 @@ void pickup_at(x,y)
- int x,y;
- {
- int quit = FALSE;
-- char response;
-+ char response = 0;
- pol ol = Level->site[x][y].things;
- pol temp;
-
-diff -Npur omega.orig/Makefile omega/Makefile
---- omega.orig/Makefile 1997-02-15 07:18:00.000000000 +0100
-+++ omega/Makefile 2011-09-04 16:06:22.371766954 +0200
-@@ -1,7 +1,8 @@
- # These two definitions are used if you 'make install'
- # the value of LIBDIR should be the same as OMEGALIB in defs.h
--BINDIR = /usr/games
--LIBDIR = /usr/games/lib/omegalib
-+BINDIR = $(DESTDIR)/usr/games/bin
-+LIBDIR = $(DESTDIR)/usr/share/games/omega
-+STATEDIR = $(DESTDIR)/var/games/omega
-
- # One of these should be uncommented, as appropriate, unless your compiler
- # does it for you. You can test this by simply trying to 'make' omega -
-@@ -23,8 +24,9 @@ CC = gcc -I/usr/include/ncurses
-
- # comment out one of the following two, after establishing whether your
- # machine uses termcap (most BSD machines) or terminfo (System-V)
--LIBS = -lncurses -ltermcap
-+#LIBS = -lncurses -ltermcap
- #LIBS = -lcurses -ltermlib
-+LIBS = -lncurses
-
- #################### that's it for changing the Makefile ####################
-
-@@ -41,22 +43,25 @@ OBJ = omega.o abyss.o aux1.o aux2.o aux3
- omega: $(OBJ)
- $(CC) $(LDFLAGS) $(OBJ) $(LIBS) -o omega
-
--install: omega $(BINDIR) $(LIBDIR)
-+install: omega
- cp omega $(BINDIR)
- chmod 4711 $(BINDIR)/omega
-- - cp ../omegalib/* $(LIBDIR)
-+ - cp ./omegalib/* $(LIBDIR)
-+ - rm $(LIBDIR)/{omega.hi,omega.log}
-+ - cp ./omegalib/{omega.hi,omega.log} $(STATEDIR)
- chmod 0644 $(LIBDIR)/help*.txt $(LIBDIR)/license.txt $(LIBDIR)/motd.txt $(LIBDIR)/thanks.txt $(LIBDIR)/update.txt
- chmod 0600 $(LIBDIR)/abyss.txt $(LIBDIR)/scroll[1234].txt $(LIBDIR)/*.dat
-- chmod 0600 $(LIBDIR)/omega.hi $(LIBDIR)/omega.log $(LIBDIR)/omegahi.bak
-+ chmod 0600 $(STATEDIR)/omega.hi $(STATEDIR)/omega.log
-
--install_not_suid: omega $(BINDIR) $(LIBDIR)
-+install_not_suid: omega
- cp omega $(BINDIR)
- chmod 0711 $(BINDIR)/omega
-- - cp ../omegalib/* $(LIBDIR)
-+ - cp ./omegalib/* $(LIBDIR)
-+ - rm $(LIBDIR)/{omega.hi,omega.log}
-+ - cp ./omegalib/{omega.hi,omega.log} $(STATEDIR)
- chmod 0644 $(LIBDIR)/help*.txt $(LIBDIR)/license.txt $(LIBDIR)/motd.txt $(LIBDIR)/thanks.txt $(LIBDIR)/update.txt
- chmod 0644 $(LIBDIR)/abyss.txt $(LIBDIR)/scroll[1234].txt $(LIBDIR)/*.dat
-- chmod 0666 $(LIBDIR)/omega.hi $(LIBDIR)/omega.log
-- chmod 0600 $(LIBDIR)/omegahi.bak
-+ chmod 0666 $(STATEDIR)/omega.hi $(STATEDIR)/omega.log
-
- clean:
- rm -f $(OBJ)
-diff -Npur omega.orig/mon.c omega/mon.c
---- omega.orig/mon.c 1997-02-15 07:18:01.000000000 +0100
-+++ omega/mon.c 2011-09-04 15:24:40.886766949 +0200
-@@ -698,7 +698,7 @@ struct monster *npc;
- status = 2;
- strcpy(Str2,"Malaprop the Misnamed");
-
-- strcpy(Str1,Omegalib);
-+ strcpy(Str1,Omegavar);
- strcat(Str1,"omega.log");
- fd = checkfopen(Str1,"r");
- n = 1;
-diff -Npur omega.orig/omega.c omega/omega.c
---- omega.orig/omega.c 1997-02-15 07:18:03.000000000 +0100
-+++ omega/omega.c 2011-09-04 15:24:40.886766949 +0200
-@@ -18,6 +18,7 @@
- /* most globals originate in omega.c */
-
- char *Omegalib; /* contains the path to the library files */
-+char *Omegavar; /* contains the path to the highscore and log files */
-
- /* Objects and Monsters are allocated and initialized in init.c */
-
-@@ -198,7 +199,7 @@ char *argv[];
- char savestr[80];
- int ok;
- if (argc==2) {
-- strcpy(savestr,argv[1]);
-+ strncpy(savestr,argv[1],sizeof(savestr)-1);
- ok = restore_game(savestr);
- if (! ok) {
- endgraf();
-@@ -261,6 +262,11 @@ char *argv[];
- #endif
- Omegalib = OMEGALIB;
-
-+#ifndef FIXED_OMEGALIB
-+ if (!(Omegavar = getenv("OMEGAVAR")))
-+#endif
-+ Omegavar = OMEGAVAR;
-+
- /* if filecheck is 0, some necessary data files are missing */
- if (filecheck() == 0) exit(0);
-
-diff -Npur omega.orig/omegalib/motd.txt omega/omegalib/motd.txt
---- omega.orig/omegalib/motd.txt 1999-02-14 02:18:37.000000000 +0100
-+++ omega/omegalib/motd.txt 2011-09-04 15:24:40.887766949 +0200
-@@ -9,7 +9,7 @@
- * ** ** *
- ***** *****
-
-- omega version 0.80 is copyright (C) 1987,1988,1989 by:
-+ omega version 0.80.2 is copyright (C) 1987,1988,1989 by:
- Laurence R. Brothers
- Maintained by: Erik Max Francis (omega@alcyone.darkside.com)
-
-diff -Npur omega.orig/save.c omega/save.c
---- omega.orig/save.c 1997-02-15 07:18:03.000000000 +0100
-+++ omega/save.c 2011-09-04 15:24:40.887766949 +0200
-@@ -299,7 +299,7 @@ plv level;
- }
- mask >>= 1;
- if (level->site[i][j].lstatus&SEEN)
-- mask |= (1<<(sizeof(long int)*8 - 1));
-+ mask |= (1UL<<(sizeof(long int)*8 - 1));
- run--;
- }
- if (run < 8*sizeof(long int))
-@@ -434,7 +434,7 @@ FILE *fd;
- }
- mask >>= 1;
- if (c_statusp(i, j, SEEN))
-- mask |= (1<<(sizeof(long int)*8 - 1));
-+ mask |= (1UL<<(sizeof(long int)*8 - 1));
- run--;
- }
- if (run < 8*sizeof(long int))