[comp.unix.programmer] CURSES: magic cookie glitch characters

felps@convex.com (Robert Felps) (11/14/90)

Can anyone shed some light on 'magic cookie glitch characters'?

It is "mentioned" in the Xenix Programmer's Guide in the Curses section.

I know that the termcap/terminfo mentions magic cookies for certain
terminals. I just need an explanation of both.


Thanks,
Robert Felps                                felps@convex.com
Convex Computer Corp                        OS System Specialist
3000 Waterview Parkway                      Tech. Assistant Ctr
Richardson, Tx.  75083                      1(800) 952-0379

jetfuel@csusac.csus.edu (Dave Jenks) (11/15/90)

In article <felps.658590420@convex.convex.com> felps@convex.com (Robert Felps) writes:
>Can anyone shed some light on 'magic cookie glitch characters'?

A "magic cookie" is a byte location on a terminal screen which alters
the "current attribute[s]".

For example, to change from normal to reverse video, there would be a
byte on the screen which changes all subsequent bytes to be reverse.
To write something in that location on the screen would cancel the
reversal of the following characters.

The obvious bummer is that the entire screen cannot be used - screen/
display attributes take up space.  The *absolute worst* part is that
some terminals do it, and some don't, making tty-independent software
that much more of a pain.
-- 
=======================================================================
	    "Pro is to con, as progress is to Congress..."
>>-@@-> Dave Jenks              {uunet | ucbvax!ucdavis}!csusac!jetfuel
=======================================================================

kpv@ulysses.att.com (Phong Vo[drew]) (11/16/90)

In article <1990Nov15.061216.7165@csusac.csus.edu>, jetfuel@csusac.csus.edu (Dave Jenks) writes:
> In article <felps.658590420@convex.convex.com> felps@convex.com (Robert Felps) writes:
> >Can anyone shed some light on 'magic cookie glitch characters'?
> 
> A "magic cookie" is a byte location on a terminal screen which alters
> the "current attribute[s]".
> 
Actually, the right characterization is that a magic cookie is a mark on
the screen which alters the current attributes. There are two major families
of terminals, HP26xx and Televideo, that have this (mis)feature.
For the HPs, the marks have zero width (i.e., it does not take up one space on
the screen) while for the TVIs, the mark is 1-char width. These cookie critters
make life interesting for software like curses. The curses that I wrote, SysVr3.1 or
later, handles the HPs correctly and does the best it can for the TVIs.

	Phong Vo, att!ulysses!kpv

decot@hpisod2.cup.hp.com (Dave Decot) (11/16/90)

> Can anyone shed some light on 'magic cookie glitch characters'?
> 
> It is "mentioned" in the Xenix Programmer's Guide in the Curses section.
> 
> I know that the termcap/terminfo mentions magic cookies for certain
> terminals. I just need an explanation of both.

When some terminals enter or exit standout mode, they generate a number of
blank characters.  "magic_cookie_glitch" is the number of blank characters
left by the terminal.

Dave