| diff -rupN tint-0.03b/config.h tint/config.h |
| --- tint-0.03b/config.h 2001-12-08 00:03:24.000000000 +0100 |
| +++ tint/config.h 2016-05-27 14:47:15.797402090 +0200 |
| @@ -29,7 +29,16 @@ |
| * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| +#include <libpayload.h> |
| +#include <curses.h> |
| +#define random(x) rand(x) |
| +#define srandom(x) srand(x) |
| +#define curs_set(x) |
| + |
| + |
| /* Score file */ |
| +#if 0 |
| const char scorefile[] = SCOREFILE; |
| +#endif |
| |
| #endif /* #ifndef CONFIG_H */ |
| diff -rupN tint-0.03b/debian/changelog tint/debian/changelog |
| --- tint-0.03b/debian/changelog 2005-07-17 13:32:20.000000000 +0200 |
| +++ tint/debian/changelog 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1,53 +0,0 @@ |
| -tint (0.03b) unstable; urgency=low |
| - |
| - * Added breaks at end of switch statements to keep gcc 3+ happy |
| - (Closes: #316022) |
| - * Added missing includes to engine.c |
| - * Fixed spelling mistake in NOTES |
| - * Updated debian policy version |
| - |
| - -- Abraham van der Merwe <abz@debian.org> Sun, 17 Jul 2005 13:32:17 +0200 |
| - |
| -tint (0.03a) unstable; urgency=low |
| - |
| - * Applied patch with some minor tweaks from Marcello Mamino which |
| - adds a dotted background. |
| - * Applied patches from Robert Lemmen which add support for user logins as |
| - default name and an interactive mode for specifying the start level. |
| - * Show player statistics. |
| - |
| - -- Abraham van der Merwe <abz@debian.org> Mon, 16 Jun 2003 23:07:37 +0200 |
| - |
| -tint (0.02d) unstable; urgency=low |
| - |
| - * Install man page in correct directory (Closes: #128923) |
| - * Created a postinst program that checks for old score files |
| - before installing the default score file (Closes: #136466) |
| - * Added a menu control file (Closes: #128924) |
| - |
| - -- Abraham van der Merwe <abz@debian.org> Wed, 19 Dec 2001 18:03:34 +0200 |
| - |
| -tint (0.02c) unstable; urgency=low |
| - |
| - * Removed common-sense suggests from control file *g* (Closes: #123204) |
| - |
| - -- Abraham van der Merwe <abz@debian.org> Wed, 19 Dec 2001 18:03:34 +0200 |
| - |
| -tint (0.02b) unstable; urgency=low |
| - |
| - * Changed the name from tclassic to tint (as in TINT Is Not Tetris(tm)) |
| - * Added a build dependancy on libncurses5-dev (Closes: #124241) |
| - * Changed the location for the score file to /var/games (Closes: #124236) |
| - * Made score file sgid games (Closes: #123595) |
| - |
| - -- Abraham van der Merwe <abz@debian.org> Wed, 19 Dec 2001 18:03:34 +0200 |
| - |
| -tclassic (0.02a) unstable; urgency=low |
| - |
| - * Initial Release. (Closes: #122839) |
| - |
| - -- Abraham van der Merwe <abz@debian.org> Fri, 7 Dec 2001 17:59:25 +0200 |
| - |
| -Local variables: |
| -mode: debian-changelog |
| -End: |
| diff -rupN tint-0.03b/debian/control tint/debian/control |
| --- tint-0.03b/debian/control 2005-07-17 13:31:13.000000000 +0200 |
| +++ tint/debian/control 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1,19 +0,0 @@ |
| -Source: tint |
| -Section: games |
| -Priority: optional |
| -Maintainer: Abraham van der Merwe <abz@debian.org> |
| -Build-Depends: debhelper (>> 3.0.0), libncurses5-dev |
| -Standards-Version: 3.6.1 |
| - |
| -Package: tint |
| -Architecture: any |
| -Depends: ${shlibs:Depends} |
| -Replaces: tclassic |
| -Conflicts: tclassic |
| -Description: TINT Is Not Tetris(tm) ...at least the name isn't |
| - As the title suggests, this is a clone of the original tetris game |
| - written by Alexey Pajitnov, Dmitry Pavlovsky, and Vadim Gerasimov. |
| - . |
| - I've tried to keep the game as close to the original as possible, but |
| - there is a few differences. Nevertheless, it's probably the closest to |
| - the original that you'll ever find in the UNIX world... |
| diff -rupN tint-0.03b/debian/copyright tint/debian/copyright |
| --- tint-0.03b/debian/copyright 2001-12-19 17:08:42.000000000 +0100 |
| +++ tint/debian/copyright 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1,39 +0,0 @@ |
| -This is the Debian GNU/Linux prepackaged version of tint. These |
| -files were written and packaged by Abraham van der Merwe <abz@debian.org> |
| - |
| -The games is released under a derivative of the BSD license. For more |
| -information see http://www.opensource.org/licenses/bsd-license.html |
| - |
| -The original source can be found at: http://oasis.frogfoot.net |
| - |
| -Copyright: |
| - |
| - Copyright (c) Abraham vd Merwe <abz@blio.net> |
| - All rights reserved. |
| - |
| - Redistribution and use in source and binary forms, with or without |
| - modification, are permitted provided that the following conditions |
| - are met: |
| - |
| - 1. Redistributions of source code must retain the above copyright |
| - notice, this list of conditions and the following disclaimer. |
| - |
| - 2. Redistributions in binary form must reproduce the above copyright |
| - notice, this list of conditions and the following disclaimer in the |
| - documentation and/or other materials provided with the distribution. |
| - |
| - 3. Neither the name of the author nor the names of other contributors |
| - may be used to endorse or promote products derived from this software |
| - without specific prior written permission. |
| - |
| - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
| - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| - THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| - ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE |
| - FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| - DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
| - SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
| - CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
| - OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| - |
| diff -rupN tint-0.03b/debian/.depends tint/debian/.depends |
| --- tint-0.03b/debian/.depends 2002-03-16 17:26:42.000000000 +0100 |
| +++ tint/debian/.depends 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1 +0,0 @@ |
| -tint.postinst.o: tint.postinst.c |
| diff -rupN tint-0.03b/debian/dirs tint/debian/dirs |
| --- tint-0.03b/debian/dirs 2002-03-16 17:58:42.000000000 +0100 |
| +++ tint/debian/dirs 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1,2 +0,0 @@ |
| -usr/games |
| -usr/share/man/man6 |
| diff -rupN tint-0.03b/debian/docs tint/debian/docs |
| --- tint-0.03b/debian/docs 2001-12-07 17:25:17.000000000 +0100 |
| +++ tint/debian/docs 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1,2 +0,0 @@ |
| -NOTES |
| -CREDITS |
| diff -rupN tint-0.03b/debian/Makefile tint/debian/Makefile |
| --- tint-0.03b/debian/Makefile 2002-03-16 18:41:18.000000000 +0100 |
| +++ tint/debian/Makefile 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1,28 +0,0 @@ |
| - |
| -# -*- sh -*- |
| - |
| -# Written by Abraham van der Merwe <abz@blio.net> |
| -# Last updated: 2002-03-26 |
| - |
| -CC = gcc |
| -CFLAGS = -Wall -Os -pipe |
| -LDFLAGS = -s |
| - |
| -STRIP = strip |
| -STRIPFLAGS = --strip-all --remove-section=.note --remove-section=.comment |
| - |
| -OBJ = |
| -SRC = $(OBJ:%.o=%.c) |
| -PRG = |
| - |
| -all: #$(PRG) |
| - |
| -$(PRG): $(OBJ) |
| - $(CC) $(CPPFLAGS) $(CFLAGS) $^ -o $@ $(LDFLAGS) $(LDLIBS) |
| - |
| -clean: |
| - rm -rf tint |
| - rm -f *~ $(OBJ) $(PRG) *.substvars *.debhelper |
| - |
| -.PHONY: all clean |
| - |
| diff -rupN tint-0.03b/debian/menu tint/debian/menu |
| --- tint-0.03b/debian/menu 2002-03-16 18:31:13.000000000 +0100 |
| +++ tint/debian/menu 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1,4 +0,0 @@ |
| -?package(tint):needs="text" section="Games/Tetris-like" \ |
| - title="TINT Is Not Tetris(tm)" \ |
| - command="sh -c '/usr/games/tint -l 5;echo;echo PRESS ENTER;read line'" \ |
| - hints="Text" |
| diff -rupN tint-0.03b/debian/postinst tint/debian/postinst |
| --- tint-0.03b/debian/postinst 2002-03-16 18:44:34.000000000 +0100 |
| +++ tint/debian/postinst 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1,13 +0,0 @@ |
| -#!/bin/sh -e |
| - |
| -scorefile="/var/games/tint.scores" |
| - |
| -if [ ! -e $scorefile ] |
| -then |
| - touch $scorefile |
| - chmod 0664 $scorefile |
| - chown root:games $scorefile |
| -fi |
| - |
| -#DEBHELPER# |
| - |
| diff -rupN tint-0.03b/debian/postinst.c tint/debian/postinst.c |
| --- tint-0.03b/debian/postinst.c 2002-03-16 18:15:32.000000000 +0100 |
| +++ tint/debian/postinst.c 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1,143 +0,0 @@ |
| - |
| -/* |
| - * Hacked up postinst program to install the default score file. We have to do it this |
| - * way, since the old score file is overwritten if the score file already exists in the |
| - * package - abz |
| - */ |
| - |
| -#include <sys/types.h> |
| -#include <sys/stat.h> |
| -#include <unistd.h> |
| -#include <fcntl.h> |
| -#include <pwd.h> |
| -#include <grp.h> |
| -#include <inttypes.h> |
| -#include <stdlib.h> |
| -#include <stdio.h> |
| -#include <string.h> |
| - |
| -/* location of score file */ |
| -static const char filename[] = "/var/games/tint.scores"; |
| - |
| -/* user name of default score file */ |
| -static const char user[] = "root"; |
| - |
| -/* group name of default score file */ |
| -static const char group[] = "games"; |
| - |
| -/* contents of default score file */ |
| -static const uint8_t contents[] = |
| -{ |
| - 0x54, 0x69, 0x6e, 0x74, 0x20, 0x30, 0x2e, 0x30, |
| - 0x32, 0x62, 0x20, 0x28, 0x63, 0x29, 0x20, 0x41, |
| - 0x62, 0x72, 0x61, 0x68, 0x61, 0x6d, 0x20, 0x76, |
| - 0x64, 0x20, 0x4d, 0x65, 0x72, 0x77, 0x65, 0x20, |
| - 0x2d, 0x20, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, |
| - 0x52, 0x69, 0x61, 0x61, 0x6e, 0x20, 0x45, 0x6e, |
| - 0x67, 0x65, 0x6c, 0x62, 0x72, 0x65, 0x63, 0x68, |
| - 0x74, 0x00, 0x10, 0x5f, 0x00, 0x00, 0xb7, 0xc8, |
| - 0x20, 0x3c, 0x41, 0x62, 0x7a, 0x00, 0x80, 0x3a, |
| - 0x00, 0x00, 0x94, 0xc5, 0x20, 0x3c, 0x52, 0x69, |
| - 0x61, 0x61, 0x6e, 0x20, 0x45, 0x6e, 0x67, 0x65, |
| - 0x6c, 0x62, 0x72, 0x65, 0x63, 0x68, 0x74, 0x00, |
| - 0x66, 0x21, 0x00, 0x00, 0x31, 0xc9, 0x20, 0x3c, |
| - 0x52, 0x69, 0x61, 0x61, 0x6e, 0x20, 0x45, 0x6e, |
| - 0x67, 0x65, 0x6c, 0x62, 0x72, 0x65, 0x63, 0x68, |
| - 0x74, 0x00, 0xdc, 0x1a, 0x00, 0x00, 0x79, 0xc6, |
| - 0x20, 0x3c, 0x52, 0x69, 0x61, 0x61, 0x6e, 0x20, |
| - 0x45, 0x6e, 0x67, 0x65, 0x6c, 0x62, 0x72, 0x65, |
| - 0x63, 0x68, 0x74, 0x00, 0x2f, 0x16, 0x00, 0x00, |
| - 0xf9, 0xc5, 0x20, 0x3c, 0x52, 0x69, 0x61, 0x61, |
| - 0x6e, 0x20, 0x45, 0x6e, 0x67, 0x65, 0x6c, 0x62, |
| - 0x72, 0x65, 0x63, 0x68, 0x74, 0x00, 0x8b, 0x11, |
| - 0x00, 0x00, 0x82, 0xc7, 0x20, 0x3c, 0x41, 0x62, |
| - 0x7a, 0x00, 0x23, 0x10, 0x00, 0x00, 0xa9, 0xc9, |
| - 0x20, 0x3c, 0x44, 0x6f, 0x70, 0x70, 0x65, 0x6c, |
| - 0x67, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x00, 0x13, |
| - 0x0b, 0x00, 0x00, 0x21, 0xc7, 0x20, 0x3c, 0x4a, |
| - 0x6f, 0x68, 0x61, 0x6e, 0x6e, 0x20, 0x42, 0x6f, |
| - 0x74, 0x68, 0x61, 0x00, 0x5a, 0x09, 0x00, 0x00, |
| - 0xef, 0xc6, 0x20, 0x3c, 0x41, 0x62, 0x7a, 0x00, |
| - 0xd7, 0x07, 0x00, 0x00, 0xad, 0xc6, 0x20, 0x3c |
| -}; |
| - |
| -static void debhelper_stuff() |
| -{ |
| - /* dh_installdocs */ |
| - system ("if [ -d /usr/doc -a ! -e /usr/doc/tint -a -d /usr/share/doc/tint ]; then\n" |
| - " ln -sf ../share/doc/tint /usr/doc/tint\n" |
| - "fi\n"); |
| - |
| - /* dh_installmenu */ |
| - system ("if [ -x /usr/bin/update-menus ]; then update-menus ; fi"); |
| -} |
| - |
| -int main (int argc,char *argv[]) |
| -{ |
| - struct stat sb; |
| - |
| - /* we only do something if we're called as <program> configure ... */ |
| - if (argc < 2 || strcmp (argv[1],"configure")) exit (EXIT_SUCCESS); |
| - |
| - /* if the score file doesn't exist, create it */ |
| - if (stat (filename,&sb) < 0) |
| - { |
| - int fd,result; |
| - struct passwd *u; |
| - struct group *g; |
| - uid_t uid; |
| - gid_t gid; |
| - |
| - /* get uid */ |
| - if ((u = getpwnam (user)) == NULL) |
| - { |
| - fprintf (stderr,"Couldn't obtain uid for %s: %m\n",user); |
| - exit (EXIT_FAILURE); |
| - } |
| - uid = u->pw_uid; |
| - |
| - /* get gid */ |
| - if ((g = getgrnam (group)) == NULL) |
| - { |
| - fprintf (stderr,"Couldn't obtain gid for %s: %m\n",group); |
| - exit (EXIT_FAILURE); |
| - } |
| - gid = g->gr_gid; |
| - |
| - /* create default score file */ |
| - if ((fd = creat (filename,0664)) < 0) |
| - { |
| - fprintf (stderr,"Couldn't create score file %s: %m\n",filename); |
| - exit (EXIT_FAILURE); |
| - } |
| - result = write (fd,contents,sizeof (contents)); |
| - if (result < 0) |
| - { |
| - fprintf (stderr,"Unable to write to %s: %m\n",filename); |
| - close (fd); |
| - unlink (filename); |
| - exit (EXIT_FAILURE); |
| - } |
| - if (result < sizeof (contents)) |
| - { |
| - fprintf (stderr,"Short write count. %d/%d bytes written to %s\n",result,sizeof (contents),filename); |
| - close (fd); |
| - unlink (filename); |
| - exit (EXIT_FAILURE); |
| - } |
| - close (fd); |
| - |
| - /* change ownership of score file */ |
| - if (chown (filename,uid,gid) < 0) |
| - { |
| - fprintf (stderr,"Couldn't change ownership of %s to %s:%s: %m\n",filename,user,group); |
| - unlink (filename); |
| - exit (EXIT_FAILURE); |
| - } |
| - } |
| - |
| - debhelper_stuff (); |
| - |
| - exit (EXIT_SUCCESS); |
| -} |
| - |
| diff -rupN tint-0.03b/debian/rules tint/debian/rules |
| --- tint-0.03b/debian/rules 2002-03-16 18:00:11.000000000 +0100 |
| +++ tint/debian/rules 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1,82 +0,0 @@ |
| -#!/usr/bin/make -f |
| - |
| -# -*- sh -*- |
| - |
| -# Uncomment this to turn on verbose mode. |
| -export DH_VERBOSE=1 |
| - |
| -# This is the debhelper compatability version to use. |
| -export DH_COMPAT=3 |
| - |
| -configure: configure-stamp |
| -configure-stamp: |
| - dh_testdir |
| - # Add here commands to configure the package. |
| - |
| - |
| - touch configure-stamp |
| - |
| -build: configure-stamp build-stamp |
| -build-stamp: |
| - dh_testdir |
| - |
| - # Add here commands to compile the package. |
| - $(MAKE) |
| - |
| - touch build-stamp |
| - |
| -clean: |
| - dh_testdir |
| - dh_testroot |
| - rm -f build-stamp configure-stamp |
| - |
| - # Add here commands to clean up after the build process. |
| - -$(MAKE) clean |
| - |
| - dh_clean |
| - |
| -install: build |
| - dh_testdir |
| - dh_testroot |
| - dh_clean -k |
| - dh_installdirs |
| - |
| - # Add here commands to install the package into debian/tint. |
| - $(MAKE) install DESTDIR=$(CURDIR)/debian/tint |
| - |
| -# Build architecture-independent files here. |
| -binary-indep: build install |
| -# We have nothing to do by default. |
| - |
| -# Build architecture-dependent files here. |
| -binary-arch: build install |
| - dh_testdir |
| - dh_testroot |
| -# dh_installdebconf |
| - dh_installdocs |
| -# dh_installexamples |
| - dh_installmenu |
| -# dh_installlogrotate |
| -# dh_installemacsen |
| -# dh_installpam |
| -# dh_installmime |
| -# dh_installinit |
| -# dh_installcron |
| - dh_installman |
| -# dh_installinfo |
| -# dh_undocumented |
| - dh_installchangelogs |
| - dh_link |
| - dh_strip |
| - dh_compress |
| -# dh_fixperms --exclude /usr/games/tint |
| -# dh_makeshlibs |
| - dh_installdeb |
| -# dh_perl |
| - dh_shlibdeps |
| - dh_gencontrol |
| - dh_md5sums |
| - dh_builddeb |
| - |
| -binary: binary-indep binary-arch |
| -.PHONY: build clean binary-indep binary-arch binary install configure |
| diff -rupN tint-0.03b/engine.c tint/engine.c |
| --- tint-0.03b/engine.c 2005-07-17 13:26:22.000000000 +0200 |
| +++ tint/engine.c 2016-05-27 19:05:21.681035752 +0200 |
| @@ -27,10 +27,13 @@ |
| * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| +#include "config.h" |
| + |
| +#if 0 |
| #include <stdlib.h> |
| #include <string.h> |
| +#endif |
| |
| -#include "typedefs.h" |
| #include "utils.h" |
| #include "io.h" |
| #include "engine.h" |
| diff -rupN tint-0.03b/engine.h tint/engine.h |
| --- tint-0.03b/engine.h 2001-12-07 16:48:08.000000000 +0100 |
| +++ tint/engine.h 2016-05-27 19:04:32.456828081 +0200 |
| @@ -29,7 +29,7 @@ |
| * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| -#include "typedefs.h" /* bool */ |
| +#include "curses.h" /* bool */ |
| |
| /* |
| * Macros |
| diff -rupN tint-0.03b/io.c tint/io.c |
| --- tint-0.03b/io.c 2001-12-07 16:48:20.000000000 +0100 |
| +++ tint/io.c 2016-05-27 14:47:15.798402053 +0200 |
| @@ -27,9 +27,13 @@ |
| * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| +#include "config.h" |
| + |
| +#if 0 |
| #include <stdarg.h> /* va_list(), va_start(), va_end() */ |
| #include <sys/time.h> /* gettimeofday() */ |
| #include <unistd.h> /* gettimeofday() */ |
| +#endif |
| |
| #include <curses.h> |
| |
| @@ -70,7 +74,11 @@ static int in_timeleft; |
| /* Initialize screen */ |
| void io_init () |
| { |
| + curses_enable_serial(0); |
| + curses_enable_vga(1); |
| initscr (); |
| + halfdelay(1); |
| + timeout(1); |
| start_color (); |
| curs_set (CURSOR_INVISIBLE); |
| out_attr = A_NORMAL; |
| @@ -176,11 +184,17 @@ void out_beep () |
| /* Read a character. Please note that you MUST call in_timeout() before in_getch() */ |
| int in_getch () |
| { |
| +#if 0 |
| struct timeval starttv,endtv; |
| +#endif |
| int ch; |
| +#if 0 |
| timeout (in_timeleft / 1000); |
| gettimeofday (&starttv,NULL); |
| +#endif |
| ch = getch (); |
| + mdelay(150); |
| +#if 0 |
| gettimeofday (&endtv,NULL); |
| /* Timeout? */ |
| if (ch == ERR) |
| @@ -198,6 +212,7 @@ int in_getch () |
| in_timeleft -= endtv.tv_usec; |
| if (in_timeleft <= 0) in_timeleft = in_timetotal; |
| } |
| +#endif |
| return ch; |
| } |
| |
| diff -rupN tint-0.03b/Makefile tint/Makefile |
| --- tint-0.03b/Makefile 2005-07-17 13:30:54.000000000 +0200 |
| +++ tint/Makefile 2016-05-27 21:04:02.374391088 +0200 |
| @@ -28,85 +28,79 @@ |
| # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| |
| -#CROSS = arm-linux- |
| - |
| -bindir = $(DESTDIR)/usr/games |
| -mandir = $(DESTDIR)/usr/share/man |
| -localstatedir = $(DESTDIR)/var/games |
| - |
| -ifeq ($(CC),) |
| -CC = gcc |
| -else |
| -ifeq ($(CC),colorgcc) |
| - ifneq ($(CROSS),) |
| - CC = gcc |
| - endif |
| +# in addition to the dependency below, create the file if it doesn't exist |
| +# to silence warnings about a file that would be generated anyway. |
| +$(if $(wildcard .xcompile),,$(eval $(shell ../../../../util/xcompile/xcompile $(XGCCPATH) > .xcompile || rm -f .xcompile))) |
| +.xcompile: ../../../../util/xcompile/xcompile |
| + |
| +CONFIG_COMPILER_GCC := y |
| +ARCH-y := x86_32 |
| + |
| +include .xcompile |
| + |
| +src := $(CURDIR) |
| +srctree := $(src) |
| +tint_obj := $(src)/build |
| + |
| +LIBCONFIG_PATH := $(realpath ../../../libpayload) |
| +LIBPAYLOAD_DIR := $(tint_obj)/libpayload |
| +HAVE_LIBPAYLOAD := $(wildcard $(LIBPAYLOAD_DIR)/lib/libpayload.a) |
| +LIB_CONFIG ?= configs/defconfig-tinycurses |
| + |
| +# CFLAGS := -Wall -Werror -Os |
| +CFLAGS := -Wall -g -Os |
| +TARGET := tint |
| +OBJS := $(TARGET).o engine.o io.o utils.o |
| + |
| +ARCH-y := x86_32 |
| + |
| +CC := $(CC_$(ARCH-y)) |
| +AS := $(AS_$(ARCH-y)) |
| +OBJCOPY := $(OBJCOPY_$(ARCH-y)) |
| + |
| +LPCC := CC="$(CC)" $(LIBPAYLOAD_DIR)/bin/lpgcc |
| +LPAS := AS="$(AS)" $(LIBPAYLOAD_DIR)/bin/lpas |
| + |
| +# Make is silent per default, but 'make V=1' will show all compiler calls. |
| +ifneq ($(V),1) |
| +Q := @ |
| endif |
| -endif |
| - |
| -CFLAGS = -Wall -Os -pipe |
| -CPPFLAGS = -DSCOREFILE=\"$(localstatedir)/$(PRG).scores\" #-DUSE_RAND |
| -LDFLAGS = -s |
| -LDLIBS = -lncurses |
| - |
| -STRIP = strip |
| -STRIPFLAGS = --strip-all --remove-section=.note --remove-section=.comment |
| - |
| -INSTALL = install |
| - |
| -OBJ = engine.o utils.o io.o tint.o |
| -SRC = $(OBJ:%.o=%.c) |
| -PRG = tint |
| - |
| - ########### NOTHING TO EDIT BELOW THIS ########### |
| - |
| -.PHONY: all clean do-it-all depend with-depends without-depends debian postinst |
| - |
| -all: do-it-all postinst |
| |
| -ifeq (.depends,$(wildcard .depends)) |
| -include .depends |
| -do-it-all: with-depends |
| +all: $(TARGET).elf |
| +# printf" CC $(CC)\n" |
| + |
| +$(TARGET).elf: $(OBJS) libpayload |
| + $(Q)printf " LPCC $(subst $(shell pwd)/,,$(@))\n" |
| + $(Q)$(LPCC) -o $@ $(OBJS) |
| + $(Q)$(OBJCOPY) --only-keep-debug $@ tint.debug |
| + $(Q)$(OBJCOPY) --strip-debug $@ |
| + $(Q)$(OBJCOPY) --add-gnu-debuglink=tint.debug $@ |
| + |
| +%.o: %.c libpayload |
| + $(Q)printf " LPCC $(subst $(shell pwd)/,,$(@))\n" |
| + $(Q)$(LPCC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $< |
| + |
| +%.S.o: %.S libpayload |
| + $(Q)printf " LPAS $(subst $(shell pwd)/,,$(@))\n" |
| + $(Q)$(LPAS) $(ASFLAGS) --32 -o $@ $< |
| + |
| +ifneq ($(strip $(HAVE_LIBPAYLOAD)),) |
| +libpayload: |
| + $(Q)printf "Found Libpayload $(LIBPAYLOAD_DIR).\n" |
| else |
| -do-it-all: without-depends |
| -endif |
| - |
| -without-depends: depend with-depends |
| - |
| -depend: |
| - rm -f .depends |
| - set -e; for F in $(SRC); do $(CC) -MM $(CFLAGS) $(CPPFLAGS) $$F >> .depends; done |
| - |
| -with-depends: $(PRG) |
| - |
| -$(PRG): $(OBJ) |
| - $(CROSS)$(CC) $(LDFLAGS) $^ -o $@ $(LDLIBS) |
| - $(CROSS)$(STRIP) $(STRIPFLAGS) $@ |
| - |
| -ifneq ($(DESTDIR),) |
| -install: $(PRG) |
| - $(INSTALL) -d $(bindir) $(mandir) $(localstatedir) |
| - $(INSTALL) -s -g games -o root -m 2755 $(PRG) $(bindir) |
| - $(INSTALL) -g games -o root -m 0644 $(PRG).6 $(mandir)/man6 |
| -# cp tint.scores $(localstatedir)/$(PRG).scores |
| -# chown root.games $(localstatedir)/$(PRG).scores |
| -# chmod 0664 $(localstatedir)/$(PRG).scores |
| - |
| -uninstall: |
| - rm -f $(bindir)/$(PRG) $(mandir)/man6/$(PRG).6 $(localstatedir)/$(PRG).scores |
| +libpayload: |
| + $(Q)printf "Building libpayload @ $(LIBCONFIG_PATH).\n" |
| + $(Q)make -C $(LIBCONFIG_PATH) distclean |
| + $(Q)make -C $(LIBCONFIG_PATH) defconfig KBUILD_DEFCONFIG=$(LIB_CONFIG) |
| + $(Q)make -C $(LIBCONFIG_PATH) DESTDIR=$(tint_obj) install |
| endif |
| |
| -postinst: |
| - $(MAKE) -C debian |
| - |
| -debian: |
| - dpkg-buildpackage -rfakeroot -k2B555AEE |
| - |
| clean: |
| - rm -f .depends *~ $(OBJ) $(PRG) {configure,build}-stamp gmon.out a.out |
| - rm -rf debian/$(PRG) |
| - rm -f debian/*.{debhelper,substvars} debian/files debian/*~ |
| + $(Q)rm -f $(TARGET).elf $(TARGET).debug *.o |
| + $(Q)rm .xcompile |
| |
| distclean: clean |
| - $(MAKE) -C debian clean |
| + $(Q)rm -rf $(tint_obj) |
| |
| + |
| +.PHONY: all clean do-it-all depend with-depends without-depends debian postinst |
| Binary files tint-0.03b/.Makefile.swp and tint/.Makefile.swp differ |
| diff -rupN tint-0.03b/tint.c tint/tint.c |
| --- tint-0.03b/tint.c 2005-07-17 13:26:43.000000000 +0200 |
| +++ tint/tint.c 2016-05-27 18:59:53.838346317 +0200 |
| @@ -1,4 +1,3 @@ |
| - |
| /* |
| * Copyright (c) Abraham vd Merwe <abz@blio.net> |
| * All rights reserved. |
| @@ -27,6 +26,7 @@ |
| * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| +#if 0 |
| #include <stdlib.h> |
| #include <stdio.h> |
| #include <string.h> |
| @@ -34,8 +34,8 @@ |
| #include <pwd.h> |
| #include <sys/types.h> |
| #include <unistd.h> |
| +#endif |
| |
| -#include "typedefs.h" |
| #include "utils.h" |
| #include "io.h" |
| #include "config.h" |
| @@ -321,6 +321,7 @@ typedef struct |
| time_t timestamp; |
| } score_t; |
| |
| +#if 0 |
| static void getname (char *name) |
| { |
| struct passwd *pw = getpwuid (geteuid ()); |
| @@ -337,7 +338,9 @@ static void getname (char *name) |
| name[NAMELEN - 1] = '\0'; |
| } |
| } |
| +#endif |
| |
| +#if 0 |
| static void err1 () |
| { |
| fprintf (stderr,"Error creating %s\n",scorefile); |
| @@ -349,10 +352,11 @@ static void err2 () |
| fprintf (stderr,"Error writing to %s\n",scorefile); |
| exit (EXIT_FAILURE); |
| } |
| +#endif |
| |
| void showplayerstats (engine_t *engine) |
| { |
| - fprintf (stderr, |
| + printf ( |
| "\n\t PLAYER STATISTICS\n\n\t" |
| "Score %11d\n\t" |
| "Efficiency %11d\n\t" |
| @@ -360,6 +364,7 @@ void showplayerstats (engine_t *engine) |
| GETSCORE (engine->score),engine->status.efficiency,GETSCORE (engine->score) / getsum ()); |
| } |
| |
| +#if 0 |
| static void createscores (int score) |
| { |
| FILE *handle; |
| @@ -394,7 +399,9 @@ static void createscores (int score) |
| fprintf (stderr,"%s",scoretitle); |
| fprintf (stderr,"\t 1* %7d %s\n\n",score,scores[0].name); |
| } |
| +#endif |
| |
| +#if 0 |
| static int cmpscores (const void *a,const void *b) |
| { |
| int result; |
| @@ -412,7 +419,9 @@ static int cmpscores (const void *a,cons |
| /* timestamps is equal */ |
| return 0; |
| } |
| +#endif |
| |
| +#if 0 |
| static void savescores (int score) |
| { |
| FILE *handle; |
| @@ -490,11 +499,13 @@ static void savescores (int score) |
| } |
| fprintf (stderr,"\n"); |
| } |
| +#endif |
| |
| /***************************************************************************/ |
| /***************************************************************************/ |
| /***************************************************************************/ |
| |
| +#if 0 |
| static void showhelp () |
| { |
| fprintf (stderr,"USAGE: tint [-h] [-l level] [-n]\n"); |
| @@ -504,9 +515,11 @@ static void showhelp () |
| fprintf (stderr," -d Draw vertical dotted lines\n"); |
| exit (EXIT_FAILURE); |
| } |
| +#endif |
| |
| static void parse_options (int argc,char *argv[]) |
| { |
| +#if 0 |
| int i = 1; |
| while (i < argc) |
| { |
| @@ -536,10 +549,12 @@ static void parse_options (int argc,char |
| } |
| i++; |
| } |
| +#endif |
| } |
| |
| static void choose_level () |
| { |
| +#if 0 |
| char buf[NAMELEN]; |
| |
| do |
| @@ -549,6 +564,8 @@ static void choose_level () |
| buf[strlen (buf) - 1] = '\0'; |
| } |
| while (!str2int (&level,buf) || level < MINLEVEL || level > MAXLEVEL); |
| +#endif |
| + level = 1; |
| } |
| |
| /***************************************************************************/ |
| @@ -663,8 +680,15 @@ int main (int argc,char *argv[]) |
| if (ch != 'q') |
| { |
| showplayerstats (&engine); |
| +#if 0 |
| savescores (GETSCORE (engine.score)); |
| +#endif |
| } |
| + printf("Bye.\n"); |
| + refresh(); |
| + for(;;); //halt(); |
| +#if 0 |
| exit (EXIT_SUCCESS); |
| +#endif |
| } |
| |
| diff -rupN tint-0.03b/typedefs.h tint/typedefs.h |
| --- tint-0.03b/typedefs.h 2001-12-07 16:49:06.000000000 +0100 |
| +++ tint/typedefs.h 1970-01-01 01:00:00.000000000 +0100 |
| @@ -1,68 +0,0 @@ |
| -#ifndef TYPEDEFS_H |
| -#define TYPEDEFS_H |
| - |
| -/* |
| - * Copyright (c) Abraham vd Merwe <abz@blio.net> |
| - * All rights reserved. |
| - * |
| - * Redistribution and use in source and binary forms, with or without |
| - * modification, are permitted provided that the following conditions |
| - * are met: |
| - * 1. Redistributions of source code must retain the above copyright |
| - * notice, this list of conditions and the following disclaimer. |
| - * 2. Redistributions in binary form must reproduce the above copyright |
| - * notice, this list of conditions and the following disclaimer in the |
| - * documentation and/or other materials provided with the distribution. |
| - * 3. Neither the name of the author nor the names of other contributors |
| - * may be used to endorse or promote products derived from this software |
| - * without specific prior written permission. |
| - * |
| - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
| - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| - * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE |
| - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
| - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
| - * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
| - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| - */ |
| - |
| -/* |
| - * Boolean definitions |
| - */ |
| - |
| -#ifndef bool |
| -#define bool int |
| -#endif |
| - |
| -#if !defined(false) || (false != 0) |
| -#define false 0 |
| -#endif |
| - |
| -#if !defined(true) || (true != 0) |
| -#define true 1 |
| -#endif |
| - |
| -#if !defined(FALSE) || (FALSE != false) |
| -#define FALSE false |
| -#endif |
| - |
| -#if !defined(TRUE) || (TRUE != true) |
| -#define TRUE true |
| -#endif |
| - |
| -/* |
| - * Error flags |
| - */ |
| - |
| -#if !defined(ERR) || (ERR != -1) |
| -#define ERR -1 |
| -#endif |
| - |
| -#if !defined(OK) || (OK != 0) |
| -#define OK 0 |
| -#endif |
| - |
| -#endif /* #ifndef TYPEDEFS_H */ |
| diff -rupN tint-0.03b/utils.c tint/utils.c |
| --- tint-0.03b/utils.c 2001-12-07 16:49:19.000000000 +0100 |
| +++ tint/utils.c 2016-05-27 19:05:40.313351887 +0200 |
| @@ -27,11 +27,13 @@ |
| * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| +#include "config.h" |
| + |
| +#if 0 |
| #include <stdlib.h> |
| #include <time.h> |
| #include <limits.h> |
| - |
| -#include "typedefs.h" |
| +#endif |
| |
| /* |
| * Initialize random number generator |
| @@ -41,8 +43,11 @@ void rand_init () |
| #ifdef USE_RAND |
| srand (time (NULL)); |
| #else |
| +#if 0 |
| srandom (time (NULL)); |
| #endif |
| + srandom (123); |
| +#endif |
| } |
| |
| /* |
| @@ -61,6 +66,7 @@ int rand_value (int range) |
| * Convert an str to long. Returns TRUE if successful, |
| * FALSE otherwise. |
| */ |
| +#if 0 |
| bool str2int (int *i,const char *str) |
| { |
| char *endptr; |
| @@ -69,3 +75,4 @@ bool str2int (int *i,const char *str) |
| return TRUE; |
| } |
| |
| +#endif |
| diff -rupN tint-0.03b/utils.h tint/utils.h |
| --- tint-0.03b/utils.h 2001-12-07 16:49:35.000000000 +0100 |
| +++ tint/utils.h 2016-05-27 19:00:34.120754123 +0200 |
| @@ -29,7 +29,7 @@ |
| * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| -#include "typedefs.h" |
| +#include <curses.h> |
| |
| /* |
| * Initialize random number generator |