%		ugaritic.mf
% This font was designed by Alan M Stanier      ( alan@essex.ac.uk ),
% at Essex University Computer Service, Colchester, Essex CO4 3EA. England.
%
% If you make significant additions or improvements to the font,
% please email me an updated version
%
% The ugaritic script is a cuneiform alphabet (as opposed to the
% syllabic cuneiform of Akkadian or Hittite), as found on tablets
% dated from the Late Bronze Age (c 1400 - 1200 BC) in Northern Syria
% and Palestine, notably in the archives at Ugarit.
%
% The alphabet contained 30 letters, plus a word-separating character
% (coded as -).

mg:=2.0;	% CHANGE THIS TO GET DIFFERENT SIZES OF FONT (font size = 10*mg pt)

mode_setup;
height#:=mg*10pt#;
width#:=mg*0.1pt#;
endword#:=mg*1pt#;
spacing#:=mg*5pt#;
define_pixels(height,width,spacing,endword);

def stroke = (-0.5*mg,0.5*mg) -- (-0.05*mg,0.05*mg) -- (0,-0.5mg)
		-- (0.05mg,0.05*mg) -- (0.5*mg,0.5*mg) -- (-0.5*mg,0.5*mg)
		.. cycle enddef;

def chevron = (-0.5*mg,0) -- (0.5*mg,-0.5*mg) -- (0,0) --
		(0.5*mg,0.5*mg) -- (-0.5*mg,0) .. cycle enddef;

def cun_stroke(expr x,y,xx,yy,theta) =
	fill ((stroke) xscaled x yscaled y rotated theta shifted(xx*mg,yy*mg));
enddef;

def cun_chevron(expr x,xx,yy) =
	fill ((chevron) scaled x shifted(xx*mg,yy*mg));
enddef;

beginchar("a",25width#+spacing#,height#,0);
 cun_stroke(10,20,10,20,90);
 cun_stroke(10,20,20,20,90);
endchar;
%
beginchar("i",24width#+spacing#,height#,0);
 cun_stroke(8,30,15,9,90);
 cun_stroke(8,30,15,17,90);
 cun_stroke(8,30,15,25,90);
 cun_stroke(5,14,15,2,0);
endchar;
%
beginchar("u",30width#+spacing#,height#,0);
 cun_stroke(7,20,10,15,0);
 cun_stroke(7,20,17,15,0);
 cun_stroke(7,20,24,15,0);
 cun_stroke(10,30,20,10,90);
endchar;
%
beginchar("b",30width#+spacing#,height#,0);
 cun_stroke(10,20,12.5,10,90);
 cun_stroke(10,20,22.5,10,90);
 cun_stroke(10,20,10,20,0);
 cun_stroke(10,20,20,20,0);
endchar;
%
beginchar("g",5width#+spacing#,height#,0);
 cun_stroke(10,30,9,10,0);
endchar;
%
beginchar("d",35width#+spacing#,height#,0);
 cun_stroke(10,20,7.5,10,90);
 cun_stroke(10,20,17.5,10,90);
 cun_stroke(10,20,27.5,10,90);
 cun_stroke(10,20,5,20,0);
 cun_stroke(10,20,15,20,0);
 cun_stroke(10,20,25,20,0);
endchar;
%
beginchar("D",35width#+spacing#,height#,0);
 cun_chevron(20,10,20);
 cun_stroke(10,20,25,17.5,330);
endchar;
%
beginchar("h",28width#+spacing#,height#,0);
 cun_stroke(9,30,15,9,90);
 cun_stroke(9,30,15,17,90);
 cun_stroke(9,30,15,25,90);
endchar;
%
beginchar("w",55width#+spacing#,height#,0);
 cun_stroke(10,20,10,10,90);
 cun_stroke(10,20,10,20,90);
 cun_stroke(10,20,25,15,90);
 cun_stroke(10,20,35,15,90);
endchar;
%
beginchar("z",5width#+spacing#,height#,0);
 cun_stroke(9,25,8,9,0);
 cun_stroke(9,25,8,18,0);
endchar;
%
beginchar("H",45width#+spacing#,height#,0);
 cun_stroke(10,30,15,18,90);
 cun_stroke(8,20,20,21,0);
 cun_stroke(8,20,20,15,180);
 cun_chevron(20,27.5,18);
endchar;
%
beginchar("0",5width#+spacing#,height#,0);
 cun_stroke(8,20,8,5,0);
 cun_stroke(8,20,8,15,0);
 cun_stroke(8,20,8,25,0);
endchar;
%
beginchar("T",45width#+spacing#,height#,0);
 cun_stroke(10,30,15,18,90);
 cun_stroke(10,30,17,16,0);
 cun_chevron(20,27.5,18);
endchar;
%
beginchar("1",40width#+spacing#,height#,0);
 cun_stroke(10,30,15,10,90);
 cun_stroke(10,30,15,20,90);
 cun_chevron(20,22.5,15);
endchar;
%
beginchar("y",20width#+spacing#,height#,0);
 cun_stroke(8,20,8,5,0);
 cun_stroke(8,20,8,15,0);
 cun_stroke(8,20,8,25,0);
 cun_stroke(8,20,18,5,0);
 cun_stroke(8,20,18,15,0);
 cun_stroke(8,20,18,25,0);
endchar;
%
beginchar("k",45width#+spacing#,height#,0);
 cun_stroke(10,20,10,10,90);
 cun_stroke(10,20,10,20,90);
 cun_stroke(10,20,25,15,90);
endchar;
%
beginchar("l",30width#+spacing#,height#,0);
 cun_stroke(10,30,5,15,0);
 cun_stroke(10,30,15,15,0);
 cun_stroke(10,30,25,15,0);
endchar;
%
beginchar("m",30width#+spacing#,height#,0);
 cun_stroke(10,30,18,18,90);
 cun_stroke(10,30,25,15,0);
endchar;
%
beginchar("n",30width#+spacing#,height#,0);
 cun_stroke(10,20,10,20,90);
 cun_stroke(10,20,20,20,90);
 cun_stroke(10,20,30,20,90);
endchar;
%
beginchar("s",12width#+spacing#,height#,0);
 cun_stroke(10,20,5,25,0);
 cun_stroke(10,20,10,15,0);
 cun_stroke(10,20,15,25,0);
endchar;
%
beginchar("S",30width#+spacing#,height#,0);
 cun_stroke(8,15,5,10,180);
 cun_stroke(8,15,5,20,180);
 cun_stroke(8,15,5,30,180);
 cun_stroke(8,15,25,10,180);
 cun_stroke(8,15,25,20,180);
 cun_stroke(8,15,25,30,180);
 cun_stroke(10,35,15,15,0);
endchar;
%
beginchar(39,17width#+spacing#,height#,0);
 cun_chevron(20,10,20);
endchar;
%
beginchar("G",30width#+spacing#,height#,0);
 cun_stroke(10,30,18,18,90);
 cun_stroke(10,30,18,18,135);
endchar;
%
beginchar("p",30width#+spacing#,height#,0);
 cun_stroke(10,30,18,10,90);
 cun_stroke(10,30,18,20,90);
endchar;
%
beginchar("3",12width#+spacing#,height#,0);
 cun_stroke(10,30,5,20,0);
 cun_stroke(10,30,15,20,0);
endchar;
%
beginchar("q",45width#+spacing#,height#,0);
 cun_stroke(10,30,15,18,90);
 cun_chevron(20,27.5,18);
endchar;
%
beginchar("r",55width#+spacing#,height#,0);
 cun_stroke(10,20,10,10,90);
 cun_stroke(10,20,10,20,90);
 cun_stroke(10,20,20,10,90);
 cun_stroke(10,20,20,20,90);
 cun_stroke(10,20,35,15,90);
endchar;
%
beginchar("4",40width#+spacing#,height#,0);
 cun_chevron(20,10,20);
 cun_stroke(10,20,25,17.5,0);
 cun_stroke(10,20,30,17.5,330);
endchar;
%
beginchar("t",30width#+spacing#,height#,0);
 cun_stroke(10,30,18,15,90);
endchar;
%
beginchar("2",17width#+spacing#,height#,0);
 cun_chevron(20,10,20);
 cun_stroke(10,30,10,20,0);
endchar;
%
beginchar("-",12width#,height#,0);
 pickup pencircle scaled endword#;
 draw (5,10) -- (5,50);
endchar;
%
end