% First, the markers (cross and circle) are defined for usage
% in the normal text.
beginchar("x", d#, .8d#, .2d#);
"x: Cross marker";
pickup pencircle scaled thick;
define_whole_pixels(d);
% lower left point
z1=(.2d,0);
% upper left point
z2=(.2d,.6d);
% lower right point
z3=(.8d,0);
% upper right point
z4=(.8d,.6d);
draw z1..z4;
draw z2..z3;
endchar;
beginchar("y", d#, .8d#, .2d#);
"y: Circle marker";
pickup pencircle scaled thick;
define_whole_pixels(d);
draw fullcircle scaled .6d shifted (.5d,.3d);
endchar;
% Additionally, a "plus" and "minus" sign and the
% ``capture'' symbol are provided
beginchar("+", .7d#, d#, 0);
"+: Plus";
pickup pencircle scaled middle;
define_whole_pixels(d);
% Plus sign
z1=(.1d,.25d);
z2=(.6d,.25d);
z3=(.35d,.5d);
z4=(.35d,0);
draw z1--z2;
draw z3--z4;
endchar;
beginchar("-", .4d#, d#, 0);
"-: Minus";
pickup pencircle scaled middle;
define_whole_pixels(d);
% Minus sign
z1=(.1d,.3d);
z2=(.3d,.3d);
draw z1--z2;
endchar;
beginchar("X", .6d#, d#, 0);
"X: Capture symbol";
pickup pencircle scaled middle;
define_whole_pixels(d);
% lower left point
z1=(.1d,.5middle);
% upper left point
z2=(.1d,.4d+.5middle);
% lower right point
z3=(.5d,.5middle);
% upper right point
z4=(.5d,.4d+.5middle);
draw z1..z4;
draw z2..z3;
endchar;
% Here, the definitions of the informator symbols start
beginchar("a", d#, d#, 0);
"a: Informator symbol ``pair of bishops''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Points for lower square
z1=(.1d,.5d);
z2=(.1d,0);
z3=(.6d,.5d);
z4=(.6d,0);
% Points for upper square
z5=(.4d,.8d);
z6=(.4d,.3d);
z7=(.9d,.8d);
z8=(.9d,.3d);
draw z1--z2--z4--z3--z1;
draw z5--z6--z8--z7--z5;
endchar;
beginchar("b", 1.2d#, d#, 0);
"b: Informator symbol ``better is''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Points for vertical line
z1=(.1d,0);
z2=(1.1d,0);
draw z1..z2;
draw halfcircle scaled d shifted (.6d,0);
endchar;
beginchar("c", .7d#, d#, 0);
"c: Informator symbol ``white has the upper hand''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Minus sign
z1=(.1d,.2d);
z2=(.6d,.2d);
% Plus sign
z3=(.1d,.55d);
z4=(.6d,.55d);
z5=(.35d,.8d);
z6=(.35d,.3d);
draw z1--z2;
draw z3--z4;
draw z5--z6;
endchar;
beginchar("d", .9d#, d#, 0);
"d: Informator symbol ``double pawns''";
pickup pencircle scaled thin;
define_whole_pixels(d);
draw fullcircle scaled .35d shifted (.45d,.125d);
draw fullcircle scaled .35d shifted (.45d,.625d);
endchar;
beginchar("e", .7d#, d#, 0);
"e: Informator symbol ``black has the upper hand''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Minus sign
z1=(.1d,.6d);
z2=(.6d,.6d);
% Plus sign
z3=(.1d,.25d);
z4=(.6d,.25d);
z5=(.35d,.5d);
z6=(.35d,0);
draw z1--z2;
draw z3--z4;
draw z5--z6;
endchar;
beginchar("f", .7d#, d#, 0);
"f: Informator symbol ``white stands slightly better''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Equal sign
z1=(.1d,.2d);
z2=(.6d,.2d);
z3=(.1d,.1d);
z4=(.6d,.1d);
% Plus sign
z5=(.1d,.55d);
z6=(.6d,.55d);
z7=(.35d,.8d);
z8=(.35d,.3d);
draw z1--z2;
draw z3--z4;
draw z5--z6;
draw z7--z8;
endchar;
beginchar("g", .7d#, d#, 0);
"g: Informator symbol ``black stands slightly better''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Equal sign
z1=(.1d,.6d);
z2=(.6d,.6d);
z3=(.1d,.7d);
z4=(.6d,.7d);
% Plus sign
z5=(.1d,.25d);
z6=(.6d,.25d);
z7=(.35d,.5d);
z8=(.35d,0);
draw z1--z2;
draw z3--z4;
draw z5--z6;
draw z7--z8;
endchar;
beginchar("h", 1.3d#, d#, 0);
"h: Informator symbol ``white has a decisive advantage''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Plus sign
z1=(.1d,.25d);
z2=(.6d,.25d);
z3=(.35d,.5d);
z4=(.35d,0);
% Minus sign
z5=(.7d,.25d);
z6=(1.2d,.25d);
draw z1--z2;
draw z3--z4;
draw z5--z6;
endchar;
beginchar("i", 1.3d#, d#, 0);
"i: Informator symbol ``black has a decisive advantage''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Minus sign
z1=(.1d,.25d);
z2=(.6d,.25d);
% Plus sign
z3=(.7d,.25d);
z4=(1.2d,.25d);
z5=(.95d,.5d);
z6=(.95d,0);
draw z1--z2;
draw z3--z4;
draw z5--z6;
endchar;
beginchar("j", .7d#, d#, 0);
"j: Informator symbol ``even''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,.4d);
z2=(.6d,.4d);
z3=(.1d,.3d);
z4=(.6d,.3d);
draw z1--z2;
draw z3--z4;
endchar;
beginchar("k", .7d#, d#, 0);
"k: Informator symbol ``unclear''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,.35d);
z2=(.2d,.475d);
z3=(.35d,.35d);
z4=(.5d,.225d);
z5=(.6d,.35d);
z6=(.5d,.475d);
z7=(.2d,.225d);
draw z1..z2..z3..z4..z5..z6..z3..z7..cycle;
endchar;
beginchar("l", d#, d#, 0);
"l: Informator symbol ``see''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,.35d);
z2=(.9d,.35d);
draw z1--z2;
endchar;
beginchar("m", .9d#, d#, 0);
"m: Informator symbol ``mate''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Points for vertical lines
z1=(.1d,.5d);
z2=(.1d,.2d);
z3=(.8d,.5d);
z4=(.8d,.2d);
% Points for horizontal lines
z5=(.3d,.7d);
z6=(.6d,.7d);
z7=(.3d,0);
z8=(.6d,0);
draw z1..z3;
draw z2..z4;
draw z5..z7;
draw z6..z8;
endchar;
beginchar("n", .7d#, d#, 0);
"n: Informator symbol ``with compensation for the material''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Infinity symbol
z1=(.1d,.25d);
z2=(.2d,.375d);
z3=(.35d,.25d);
z4=(.5d,.125d);
z5=(.6d,.25d);
z6=(.5d,.375d);
z7=(.2d,.125d);
% Equal sign
z8=(.1d,.575d);
z9=(.6d,.575d);
z10=(.1d,.475d);
z11=(.6d,.475d);
draw z1..z2..z3..z4..z5..z6..z3..z7..cycle;
draw z8--z9;
draw z10--z11;
endchar;
beginchar("o", d#, d#, 0);
"o: Informator symbol ``bishops of opposite color''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Points for lower square
z1=(.1d,.5d);
z2=(.1d,0);
z3=(.6d,.5d);
z4=(.6d,0);
% Points for upper square
z5=(.4d,.8d);
z6=(.4d,.3d);
z7=(.9d,.8d);
z8=(.9d,.3d);
draw z1--z2--z4--z3--z1;
fill z5--z6--z8--z7--cycle;
endchar;
beginchar("q", 1.25d#, d#, 0);
"q: Informator symbol ``separated pawns''";
pickup pencircle scaled thin;
define_whole_pixels(d);
draw fullcircle scaled .35d shifted (.275d,.4d);
fill fullcircle scaled .1d shifted (.55d,.4d);
fill fullcircle scaled .1d shifted (.7d,.4d);
draw fullcircle scaled .35d shifted (.975d,.4d);
endchar;
beginchar("r", d#, d#, 0);
"r: Informator symbol ``passed pawn''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.5d,.7d);
z2=(.5d,.4d);
draw fullcircle scaled .4d shifted (.5d,.2d);
draw z1--z2;
draw quartercircle rotated 270 scaled .2d shifted (.4d,.7d);
draw quartercircle rotated 180 scaled .2d shifted (.6d,.7d);
endchar;
beginchar("s", d#, d#, 0);
"s: Informator symbol ``bishops of the same color''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Points for lower square
z1=(.1d,.5d);
z2=(.1d,0);
z3=(.6d,.5d);
z4=(.6d,0);
% Points for upper square
z5=(.4d,.8d);
z6=(.4d,.3d);
z7=(.9d,.8d);
z8=(.9d,.3d);
fill z1--z2--z4--z3--cycle;
fill z5--z6--z8--z7--cycle;
endchar;
beginchar("t", d#, d#, 0);
"t: Informator symbol ``development advantage''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Arcus
z1=(.8d,.65d);
z2=(.5d,.8d);
z3=(.1d,.4d);
z4=(.5d,0);
z5=(.9d,.4d);
z6=(.85d,.55d);
% Arrow
z7=(.65d,.65d);
z8=(.8d,.8d);
draw z1..z2..z3..z4..z5..z6;
draw z7--z1;
draw z8--z1;
endchar;
beginchar("u", d#, d#, 0);
"u: Informator symbol ``united pawns''";
pickup pencircle scaled thin;
define_whole_pixels(d);
draw fullcircle scaled .35d shifted (.275d,.4d);
draw fullcircle scaled .35d shifted (.725d,.4d);
endchar;
beginchar("v", d#, d#, 0);
"v: Informator symbol ``without''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,.8d);
z2=(.1d,0);
z3=(.9d,0);
draw z1--z2--z3;
endchar;
beginchar("w", d#, d#, 0);
"w: Informator symbol ``with''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,0);
z2=(.9d,0);
z3=(.9d,.8d);
draw z1--z2--z3;
endchar;
beginchar("A", .9d#, d#, 0);
"A: Informator symbol ``with attack''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,.4d);
z2=(.7d,.4d);
draw z1--z2;
draw quartercircle rotated 180 scaled .2d shifted (.7d,.5d);
draw quartercircle rotated 90 scaled .2d shifted (.7d,.3d);
endchar;
beginchar("C", .6d#, d#, 0);
"C: Informator symbol ``with initiative''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.3d,.7d);
z2=(.3d,.1d);
draw z1--z2;
draw quartercircle rotated 270 scaled .2d shifted (.2d,.7d);
draw quartercircle rotated 180 scaled .2d shifted (.4d,.7d);
endchar;
beginchar("D", d#, d#, 0);
"D: Informator symbol ``zugzwang''";
pickup pencircle scaled thin;
define_whole_pixels(d);
draw fullcircle scaled .8d shifted (.5d,.4d);
fill fullcircle scaled .15d shifted (.5d,.4d);
endchar;
beginchar("E", d#, d#, 0);
"E: Informator symbol ``with the idea''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,0);
z2=(.9d,0);
z3=(.5d,.8d);
draw z1--z2--z3--z1;
endchar;
beginchar("F", d#, d#, 0);
"F: Informator symbol ``only move''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,0);
z2=(.9d,0);
z3=(.9d,.8d);
z4=(.1d,.8d);
draw z1--z2--z3--z4--z1;
endchar;
beginchar("G", d#, d#, 0);
"G: Informator symbol ``diagonal''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,.15d);
z2=(.75d,.8d);
z3=(.25d,0);
z4=(.9d,.65d);
z5=(.55d,.8d);
z6=(.9d,.45d);
z7=(.9d,.8d);
draw z1--z2;
draw z3--z4;
draw z5--z7--z6;
endchar;
beginchar("H", d#, d#, 0);
"H: Informator symbol ``file''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.2d,.5d);
z2=(.8d,.5d);
z3=(.2d,.3d);
z4=(.8d,.3d);
z5=(.3d,.6d);
z6=(.1d,.4d);
z7=(.3d,.2d);
z8=(.7d,.6d);
z9=(.9d,.4d);
z10=(.7d,.2d);
draw z1--z2;
draw z3--z4;
draw z5--z6--z7;
draw z8--z9--z10;
endchar;
beginchar("I", d#, d#, 0);
"I: Informator symbol ``centre''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Outer square
z1=(.1d,0);
z2=(.9d,0);
z3=(.9d,.8d);
z4=(.1d,.8d);
% Cross
z5=(.2d,.4d);
z6=(.8d,.4d);
z7=(.5d,.7d);
z8=(.5d,.1d);
draw z1--z2--z3--z4--z1;
draw z5--z6;
draw z7--z8;
endchar;
beginchar("J", d#, d#, 0);
"J: Informator symbol ``weak point''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,0);
z2=(.9d,0);
z3=(.9d,.8d);
z4=(.1d,.8d);
draw z1--z3;
draw z2--z4;
endchar;
beginchar("L", d#, d#, 0);
"L: Informator symbol ``ending''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,0);
z2=(.9d,0);
z3=(.5d,0);
z4=(.5d,.8d);
draw z1--z2;
draw z3--z4;
endchar;
beginchar("M", .8d#, d#, 0);
"M: Informator symbol ``queen's side''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.4d,.7d);
z2=(.1d,.4d);
z3=(.4d,.1d);
z4=(.6d,.7d);
z5=(.3d,.4d);
z6=(.6d,.1d);
draw z1--z2--z3;
draw z4--z5--z6;
endchar;
beginchar("O", .8d#, d#, 0);
"O: Informator symbol ``king's side''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.4d,.7d);
z2=(.7d,.4d);
z3=(.4d,.1d);
z4=(.2d,.7d);
z5=(.5d,.4d);
z6=(.2d,.1d);
draw z1--z2--z3;
draw z4--z5--z6;
endchar;
beginchar("P", .4d#, d#, 0);
"P: Informator symbol ``etc''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,.8d);
z2=(.1d,0);
z3=(.3d,.8d);
z4=(.3d,0);
draw z1--z2;
draw z3--z4;
endchar;
beginchar("S", .8d#, d#, 0);
"S: Informator symbol ``advantage in number of pawns''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,.8d);
z2=(.7d,.4d);
z3=(.1d,0);
draw z1--z2--z3;
endchar;
beginchar("T", d#, d#, 0);
"T: Informator symbol ``time''";
pickup pencircle scaled thin;
define_whole_pixels(d);
% Cross
z1=(.2d,.4d);
z2=(.8d,.4d);
z3=(.5d,.7d);
z4=(.5d,.1d);
draw z1--z2;
draw z3--z4;
draw fullcircle scaled .8d shifted (.5d,.4d);
endchar;
beginchar("U", d#, d#, 0);
"U: Informator symbol ``greater board room''";
pickup pencircle scaled thin;
define_whole_pixels(d);
draw fullcircle scaled .8d shifted (.5d,.4d);
endchar;
beginchar("V", .8d#, d#, 0);
"V: Informator symbol ``with counter-play''";
pickup pencircle scaled thin;
define_whole_pixels(d);
z1=(.1d,.5d);
z2=(.7d,.5d);
z3=(.1d,.3d);
z4=(.7d,.3d);
draw z1--z2;
draw z3--z4;
draw quartercircle rotated 270 scaled .2d shifted (.1d,.6d);
draw quartercircle scaled .2d shifted (.1d,.4d);
draw quartercircle rotated 180 scaled .2d shifted (.7d,.4d);
draw quartercircle rotated 90 scaled .2d shifted (.7d,.2d);
endchar;