#include "cm.h"
#include "termhooks.h"
-#ifdef HAVE_TERMCAP_H
+/* For now, don't try to include termcap.h. On some systems,
+ configure finds a non-standard termcap.h that the main build
+ won't find. */
+
+#if defined HAVE_TERMCAP_H && 0
#include <termcap.h>
#else
extern void tputs P_ ((const char *, int, int (*)(int)));
static int
calccost (srcy, srcx, dsty, dstx, doit)
+ int srcy, srcx, dsty, dstx, doit;
{
register int deltay,
deltax,
if (doit)
while (--deltay >= 0)
tputs (p, 1, cmputc);
-x:
+x:
if ((deltax = dstx - srcx) == 0)
goto done;
if (deltax < 0) {
if (Wcm.cc_tab >= BIG || !Wcm.cm_usetabs)
goto olddelta; /* forget it! */
- /*
+ /*
* ntabs is # tabs towards but not past dstx; n2tabs is one more
* (ie past dstx), but this is only valid if that is not past the
* right edge of the screen. We can check that at the same time
if (tab2x >= Wcm.cm_cols) /* too far (past edge) */
n2tabs = 0;
- /*
+ /*
* Now set tabcost to the cost for using ntabs, and c to the cost
* for using n2tabs, then pick the minimum.
*/
if (tabcost >= BIG) /* caint use tabs */
goto newdelta;
- /*
+ /*
* See if tabcost is less than just moving right
*/
srcx = tabx;
}
- /*
+ /*
* Now might as well just recompute the delta.
*/
-newdelta:
+newdelta:
if ((deltax = dstx - srcx) == 0)
goto done;
-olddelta:
+olddelta:
if (deltax > 0)
p = Wcm.cm_right, c = Wcm.cc_right;
else
p = Wcm.cm_left, c = Wcm.cc_left, deltax = -deltax;
-dodelta:
+dodelta:
if (c == BIG) { /* caint get thar from here */
fail:
if (doit)
if (doit)
while (--deltax >= 0)
tputs (p, 1, cmputc);
-done:
+done:
return totalcost;
}
void
cmgoto (row, col)
+ int row, col;
{
int homecost,
crcost,
dcm = Wcm.cm_abs;
}
- /*
+ /*
* In the following comparison, the = in <= is because when the costs
* are the same, it looks nicer (I think) to move directly there.
*/
switch (use)
{
- case USEHOME:
+ case USEHOME:
tputs (Wcm.cm_home, 1, cmputc);
curY = 0, curX = 0;
break;
- case USELL:
+ case USELL:
tputs (Wcm.cm_ll, 1, cmputc);
curY = Wcm.cm_rows - 1, curX = 0;
break;
- case USECR:
+ case USECR:
tputs (Wcm.cm_cr, 1, cmputc);
if (Wcm.cm_autolf)
curY++;
return - 2;
return 0;
}
+
+/* arch-tag: bcf64c02-00f6-44ef-94b6-c56eab5b3dc4
+ (do not change this comment) */