code duplication
[netris.git] / util.c
diff --git a/util.c b/util.c
index 94a87f36305367dcb3f2727ba30aec51c7d7fbfd..92a890859a7bb5f701afa30a3614c04f2f0a9bed 100644 (file)
--- a/util.c
+++ b/util.c
@@ -15,8 +15,6 @@
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- * $Id: util.c,v 1.29 1999/05/16 06:56:33 mhw Exp $
  */
 
 #include "netris.h"
@@ -33,8 +31,9 @@
 #include "util.h"
 
 static MyEventType AlarmGenFunc(EventGenRec *gen, MyEvent *event);
-static EventGenRec alarmGen =
-       { &alarmGen, 0, FT_read, -1, AlarmGenFunc, EM_alarm };
+static EventGenRec alarmGen = {
+       &alarmGen, 0, FT_read, -1, AlarmGenFunc, EM_alarm
+};
 static EventGenRec *nextGen = &alarmGen;
 
 static int myRandSeed = 1;
@@ -58,35 +57,8 @@ void Header(void)
        fprintf(stderr,
                "NETRIS %s\t(c) 1994-1996,1999 Mark H. Weaver <mhw@netris.org>\n"
                "          \t(c) 2002 Shiar <shiar@shiar.org>\n\n",
-               version_string);
-}
-
-void Usage(void)
-{
-       Header();
-       fprintf(stderr,
-               "Usage: netris <options>\n"
-               "\n"
-               "  -h, --help\t\tPrint this usage information\n"
-               "  -H, --info\t\tShow distribution and warranty information\n"
-               "  -R, --rules\t\tShow game rules\n"
-               "\n"
-               "  -S, --slowterm\tDisable inverse/bold/color for slow terminals\n"
-               "  -a, --ascii\t\tUse ascii characters\n"
-               "  -C, --color=0\t\tDisable color\n"
-               "\n"
-               "  -c, --connect <host>\tInitiate connection\n"
-               "  -p, --port <port>\tSet port number (default is %d)\n"
-               "\n"
-               "  -t, --team <team>\tJoin a team (don't receive lines from your teammates)\n"
-               "  -l, --level <lvl>\tBegin at a higher level (can be used as handicap)\n"
-               "  -k, --keys <keys>\tRemap keys (default is \"%s\" for cursors)\n"
-               "  -d, --dropmode\tDrops go into drop mode\n"
-               "  -D, --instadrop\tInstant drop\n"
-               "\n"
-               "  -r, --robot <cmd>\tExecute program to control the game instead of keyboard\n"
-               "  -F, --fair-robot\tUse fair robot interface\n"
-               "\n", DEFAULT_PORT, DEFAULT_KEYS);
+               version_string
+       );
 }
 
 void DistInfo(void)
@@ -105,31 +77,8 @@ void DistInfo(void)
                "You should have received a copy of the GNU General Public License\n"
                "along with this program; if not, write to the Free Software\n"
                "Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.\n"
-               "\n");
-}
-
-void Rules(void)
-{
-       Header();
-       fprintf(stderr,
-               "One player mode\n"
-               "---------------\n"
-               "Good old Tetris. Scoring is like on the GameBoy version (so try to\n"
-               "remove as many lines at once as you can). After removing ten lines\n"
-               "you go to the next level, which will be faster thus making the game\n"
-               "harder to play.\n"
-               "\n"
-               "Two player mode\n"
-               "---------------\n"
-               "It's just like normal T*tris except that when you clear more than\n"
-               "one row with a single piece, the other player receives penalty lines\n"
-               "For clearing 2, 3 or 4 rows, respectively 1, 2 or 4 junk rows will\n"
-               "be added to the bottom of your opponent's board respectively.\n"
-               "The junk rows have exactly one empty column, which will line up for\n"
-               "multiple rows.\n"
                "\n"
-               "The longest surviving player wins the game.\n"
-               "\n");
+       );
 }
 
 ///////////// RANDOM /////////////
@@ -186,6 +135,24 @@ int MyWrite(int fd, void *data, int len)
        return len;
 }
 
+///////////// CONFIG /////////////
+
+void WriteConf(void)
+{
+       FILE *file_out;
+
+       file_out = fopen(CONFIG_FILE, "w");
+       if (file_out == NULL) {
+               perror("Error writing config file");
+               exit(1);
+       }
+
+       fprintf(file_out, "### NETRIS %s Config file ###\n\n", version_string);
+
+       fclose(file_out);
+       fprintf(stderr, "Wrote new game configuration to %s\n", CONFIG_FILE);
+}
+
 ///////////// TIME /////////////
 
 void NormalizeTime(struct timeval *tv)
@@ -245,10 +212,7 @@ void ResumeTime(void)
 
 long CurTimeval(void)
 {
-       struct timeval tv;
-
-       gettimeofday(&tv, NULL);
-       return GetTimeval(&tv) - baseTimeval;
+       return AbsTimeval() - baseTimeval;
 }
 
 static long SetITimer1(long interval, long value)
@@ -400,7 +364,3 @@ MyEventType WaitMyEvent(MyEvent *event, int mask)
        }
 }
 
-/*
- * vi: ts=4 ai
- * vim: noai si
- */