Module Name: src
Committed By: christos
Date: Sat Oct 6 19:39:51 UTC 2012
Modified Files:
src/games/dab: dab.6 main.cc ttyscrn.cc ttyscrn.h
Log Message:
if 0 is used for the dimensions, compute the maximum size.
To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/games/dab/dab.6 src/games/dab/main.cc
cvs rdiff -u -r1.4 -r1.5 src/games/dab/ttyscrn.cc
cvs rdiff -u -r1.3 -r1.4 src/games/dab/ttyscrn.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/games/dab/dab.6
diff -u src/games/dab/dab.6:1.5 src/games/dab/dab.6:1.6
--- src/games/dab/dab.6:1.5 Fri Jan 15 14:39:10 2010
+++ src/games/dab/dab.6 Sat Oct 6 15:39:51 2012
@@ -1,4 +1,4 @@
-.\" $NetBSD: dab.6,v 1.5 2010/01/15 19:39:10 joerg Exp $
+.\" $NetBSD: dab.6,v 1.6 2012/10/06 19:39:51 christos Exp $
.\"
.\" Copyright (c) 2003 Thomas Klausner.
.\"
@@ -22,7 +22,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd December 24, 2003
+.Dd October 7, 2012
.Dt DAB 6
.Os
.Sh NAME
@@ -95,6 +95,10 @@ and
.Ar ydim
define the size of the board in the x and y
dimensions.
+If the dimensions specified are
+.Dv 0
+then the maximum dimensions for the size of the screen are
+used.
.Sh SEE ALSO
.Rs
.%A Elwyn R. Berlekamp
Index: src/games/dab/main.cc
diff -u src/games/dab/main.cc:1.5 src/games/dab/main.cc:1.6
--- src/games/dab/main.cc:1.5 Mon Apr 28 16:22:54 2008
+++ src/games/dab/main.cc Sat Oct 6 15:39:51 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: main.cc,v 1.5 2008/04/28 20:22:54 martin Exp $ */
+/* $NetBSD: main.cc,v 1.6 2012/10/06 19:39:51 christos Exp $ */
/*-
* Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -33,7 +33,7 @@
* main.C: Main dots program
*/
#include "defs.h"
-RCSID("$NetBSD: main.cc,v 1.5 2008/04/28 20:22:54 martin Exp $")
+RCSID("$NetBSD: main.cc,v 1.6 2012/10/06 19:39:51 christos Exp $")
#include <stdio.h>
#include <unistd.h>
@@ -168,7 +168,7 @@ int main(int argc, char** argv)
}
}
- sc = TTYSCRN::create(acs, ny, nx);
+ sc = TTYSCRN::create(acs, &ny, &nx);
if (sc == NULL)
::errx(1, "Dimensions too large for current screen.");
Index: src/games/dab/ttyscrn.cc
diff -u src/games/dab/ttyscrn.cc:1.4 src/games/dab/ttyscrn.cc:1.5
--- src/games/dab/ttyscrn.cc:1.4 Mon Apr 28 16:22:54 2008
+++ src/games/dab/ttyscrn.cc Sat Oct 6 15:39:51 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: ttyscrn.cc,v 1.4 2008/04/28 20:22:54 martin Exp $ */
+/* $NetBSD: ttyscrn.cc,v 1.5 2012/10/06 19:39:51 christos Exp $ */
/*-
* Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
*/
#include "defs.h"
-RCSID("$NetBSD: ttyscrn.cc,v 1.4 2008/04/28 20:22:54 martin Exp $")
+RCSID("$NetBSD: ttyscrn.cc,v 1.5 2012/10/06 19:39:51 christos Exp $")
#include <stdio.h>
#include <curses.h>
@@ -191,7 +191,7 @@ void TTYSCRN::ties(const PLAYER& p)
mvwprintw(stdscr, _sy + TTYSCRN::offsties, _sx, "G =:%5zd", p.getTies());
}
-TTYSCRN* TTYSCRN::create(int acs, size_t y, size_t x)
+TTYSCRN* TTYSCRN::create(int acs, size_t *y, size_t *x)
{
int tx, ty;
@@ -201,11 +201,15 @@ TTYSCRN* TTYSCRN::create(int acs, size_t
ty = getmaxy(stdscr);
if (tx == ERR || ty == ERR
- || static_cast<size_t>(tx) < x * 2 + TTYSCRN::offsx + 12
- || static_cast<size_t>(ty) < y * 2 + TTYSCRN::offsy) {
+ || static_cast<size_t>(tx) < *x * 2 + TTYSCRN::offsx + 14
+ || static_cast<size_t>(ty) < *y * 2 + TTYSCRN::offsy) {
endwin();
return NULL;
}
+ if (*x == 0)
+ *x = (tx - 14 - TTYSCRN::offsx) / 2;
+ if (*y == 0)
+ *y = (ty - TTYSCRN::offsy) / 2;
cbreak();
noecho();
Index: src/games/dab/ttyscrn.h
diff -u src/games/dab/ttyscrn.h:1.3 src/games/dab/ttyscrn.h:1.4
--- src/games/dab/ttyscrn.h:1.3 Mon Apr 28 16:22:54 2008
+++ src/games/dab/ttyscrn.h Sat Oct 6 15:39:51 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: ttyscrn.h,v 1.3 2008/04/28 20:22:54 martin Exp $ */
+/* $NetBSD: ttyscrn.h,v 1.4 2012/10/06 19:39:51 christos Exp $ */
/*-
* Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -41,7 +41,7 @@
class TTYSCRN : public GAMESCREEN {
public:
// Constructor that can fail
- static TTYSCRN* create(int acs, size_t y, size_t x);
+ static TTYSCRN* create(int acs, size_t *y, size_t *x);
~TTYSCRN();
// Screen virtuals