* Copyright (c) 1987 Regents of the University of California.
* Redistribution and use in source and binary forms are permitted
* provided that the above copyright notice and this paragraph are
* duplicated in all such forms and that any documentation,
* advertising materials, and other materials related to such
* distribution and use acknowledge that the software was developed
* by the University of California, Berkeley. The name of the
* University may not be used to endorse or promote products derived
* from this software without specific prior written permission.
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
static char sccsid
[] = "@(#)addbytes.c 5.3 (Berkeley) %G%";
* This routine adds the character to the current position
waddbytes(win
, bytes
, count
)
#define SYNCH_OUT() {win->_cury = y; win->_curx = x;}
#define SYNCH_IN() {y = win->_cury; x = win->_curx;}
fprintf(outf
, "ADDBYTES('%c') at (%d, %d)\n", c
, y
, x
);
static char blanks
[] = " ";
if (waddbytes(win
, blanks
, 8-(x
%8)) == ERR
) {
fprintf(outf
, "ADDBYTES: 1: y = %d, x = %d, firstch = %d, lastch = %d\n", y
, x
, win
->_firstch
[y
], win
->_lastch
[y
]);
if (win
->_flags
& _STANDOUT
)
fprintf(outf
, "ADDBYTES(%0.2o, %d, %d)\n", win
, y
, x
);
if (win
->_y
[y
][x
] != c
) {
if (win
->_firstch
[y
] == _NOCHANGE
) {
} else if (newx
< win
->_firstch
[y
])
else if (newx
> win
->_lastch
[y
])
fprintf(outf
, "ADDBYTES: change gives f/l: %d/%d [%d/%d]\n",
win
->_firstch
[y
], win
->_lastch
[y
],
win
->_firstch
[y
] - win
->_ch_off
,
win
->_lastch
[y
] - win
->_ch_off
);
fprintf(outf
, "ADDBYTES: 2: y = %d, x = %d, firstch = %d, lastch = %d\n", y
, x
, win
->_firstch
[y
], win
->_lastch
[y
]);