summaryrefslogtreecommitdiff
path: root/fonts/thai/rmit
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /fonts/thai/rmit
Initial commit
Diffstat (limited to 'fonts/thai/rmit')
-rw-r--r--fonts/thai/rmit/00readme.txt43
-rw-r--r--fonts/thai/rmit/all.mf76
-rw-r--r--fonts/thai/rmit/bx.mf25
-rw-r--r--fonts/thai/rmit/by.mf25
-rw-r--r--fonts/thai/rmit/bz.mf25
-rw-r--r--fonts/thai/rmit/char87.mf31
-rw-r--r--fonts/thai/rmit/char88.mf12
-rw-r--r--fonts/thai/rmit/char89.mf24
-rw-r--r--fonts/thai/rmit/char8a.mf43
-rw-r--r--fonts/thai/rmit/char8b.mf17
-rw-r--r--fonts/thai/rmit/chara0.mf2
-rw-r--r--fonts/thai/rmit/chara1.mf14
-rw-r--r--fonts/thai/rmit/chara2.mf15
-rw-r--r--fonts/thai/rmit/chara3.mf15
-rw-r--r--fonts/thai/rmit/chara4.mf33
-rw-r--r--fonts/thai/rmit/chara5.mf40
-rw-r--r--fonts/thai/rmit/chara6.mf17
-rw-r--r--fonts/thai/rmit/chara7.mf17
-rw-r--r--fonts/thai/rmit/chara8.mf17
-rw-r--r--fonts/thai/rmit/chara9.mf24
-rw-r--r--fonts/thai/rmit/charaa.mf26
-rw-r--r--fonts/thai/rmit/charab.mf27
-rw-r--r--fonts/thai/rmit/charac.mf21
-rw-r--r--fonts/thai/rmit/charad.mf41
-rw-r--r--fonts/thai/rmit/charae.mf30
-rw-r--r--fonts/thai/rmit/charaf.mf33
-rw-r--r--fonts/thai/rmit/charb0.mf40
-rw-r--r--fonts/thai/rmit/charb1.mf22
-rw-r--r--fonts/thai/rmit/charb2.mf52
-rw-r--r--fonts/thai/rmit/charb3.mf26
-rw-r--r--fonts/thai/rmit/charb4.mf37
-rw-r--r--fonts/thai/rmit/charb5.mf42
-rw-r--r--fonts/thai/rmit/charb6.mf15
-rw-r--r--fonts/thai/rmit/charb7.mf22
-rw-r--r--fonts/thai/rmit/charb8.mf17
-rw-r--r--fonts/thai/rmit/charb9.mf23
-rw-r--r--fonts/thai/rmit/charba.mf17
-rw-r--r--fonts/thai/rmit/charbb.mf17
-rw-r--r--fonts/thai/rmit/charbc.mf27
-rw-r--r--fonts/thai/rmit/charbd.mf27
-rw-r--r--fonts/thai/rmit/charbe.mf26
-rw-r--r--fonts/thai/rmit/charbf.mf27
-rw-r--r--fonts/thai/rmit/charc0.mf16
-rw-r--r--fonts/thai/rmit/charc1.mf19
-rw-r--r--fonts/thai/rmit/charc2.mf24
-rw-r--r--fonts/thai/rmit/charc3.mf14
-rw-r--r--fonts/thai/rmit/charc4.mf15
-rw-r--r--fonts/thai/rmit/charc5.mf26
-rw-r--r--fonts/thai/rmit/charc6.mf16
-rw-r--r--fonts/thai/rmit/charc7.mf13
-rw-r--r--fonts/thai/rmit/charc8.mf39
-rw-r--r--fonts/thai/rmit/charc9.mf34
-rw-r--r--fonts/thai/rmit/charca.mf34
-rw-r--r--fonts/thai/rmit/charcb.mf24
-rw-r--r--fonts/thai/rmit/charcc.mf33
-rw-r--r--fonts/thai/rmit/charcd.mf15
-rw-r--r--fonts/thai/rmit/charce.mf25
-rw-r--r--fonts/thai/rmit/charcf.mf24
-rw-r--r--fonts/thai/rmit/chard0.mf40
-rw-r--r--fonts/thai/rmit/chard1.mf22
-rw-r--r--fonts/thai/rmit/chard2.mf13
-rw-r--r--fonts/thai/rmit/chard3.mf25
-rw-r--r--fonts/thai/rmit/chard4.mf22
-rw-r--r--fonts/thai/rmit/chard5.mf26
-rw-r--r--fonts/thai/rmit/chard6.mf34
-rw-r--r--fonts/thai/rmit/chard7.mf32
-rw-r--r--fonts/thai/rmit/chard8.mf11
-rw-r--r--fonts/thai/rmit/chard9.mf20
-rw-r--r--fonts/thai/rmit/charda.mf7
-rw-r--r--fonts/thai/rmit/chare0.mf11
-rw-r--r--fonts/thai/rmit/chare1.mf17
-rw-r--r--fonts/thai/rmit/chare2.mf14
-rw-r--r--fonts/thai/rmit/chare3.mf30
-rw-r--r--fonts/thai/rmit/chare4.mf25
-rw-r--r--fonts/thai/rmit/chare5.mf13
-rw-r--r--fonts/thai/rmit/chare6.mf34
-rw-r--r--fonts/thai/rmit/chare7.mf31
-rw-r--r--fonts/thai/rmit/chare8.mf12
-rw-r--r--fonts/thai/rmit/chare9.mf24
-rw-r--r--fonts/thai/rmit/charea.mf43
-rw-r--r--fonts/thai/rmit/chareb.mf17
-rw-r--r--fonts/thai/rmit/i.mf25
-rw-r--r--fonts/thai/rmit/lig.mf189
-rw-r--r--fonts/thai/rmit/r.mf25
-rw-r--r--fonts/thai/rmit/rz.mf25
-rw-r--r--fonts/thai/rmit/thai-sample.tex131
-rw-r--r--fonts/thai/rmit/thai-tab.tex558
-rw-r--r--fonts/thai/rmit/thai-test.mf47
-rw-r--r--fonts/thai/rmit/thai-test.tex120
-rw-r--r--fonts/thai/rmit/thaibase.mf519
-rw-r--r--fonts/thai/rmit/thaibx10.mf9
-rw-r--r--fonts/thai/rmit/thaiby10.mf9
-rw-r--r--fonts/thai/rmit/thaibz10.mf9
-rw-r--r--fonts/thai/rmit/thaii10.mf9
-rw-r--r--fonts/thai/rmit/thair10.mf9
-rw-r--r--fonts/thai/rmit/thairz10.mf9
96 files changed, 3717 insertions, 0 deletions
diff --git a/fonts/thai/rmit/00readme.txt b/fonts/thai/rmit/00readme.txt
new file mode 100644
index 0000000000..af66d10160
--- /dev/null
+++ b/fonts/thai/rmit/00readme.txt
@@ -0,0 +1,43 @@
+Path: jarthur!usc!ucsd!swrinde!zaphod.mps.ohio-state.edu!samsung!munnari.oz.au!goanna!wren!ajk
+From: ajk@wren.cs.rmit.OZ.AU (Alan Kent)
+Newsgroups: comp.text.tex
+Subject: Re: Wanted: rmit-std.sty file for Thai font
+Keywords: LaTeX, TeX, Thai, Metafont
+Message-ID: <3958@goanna.cs.rmit.oz.au>
+Date: 12 Oct 90 00:54:53 GMT
+References: <42847@bsu-ucs.uucp> <1990Oct11.105115.12482@ioe.lon.ac.uk>
+Sender: news@goanna.cs.rmit.oz.au
+Lines: 32
+
+teexdwu@ioe.lon.ac.uk (DOMINIK WUJASTYK) writes:
+
+>... I find that the style file
+>"rmit-std.sty" that the documentation files call for is
+>missing.
+
+Just remove it. It simply sets up some margins for the correct paper
+size here at RMIT.
+
+>Also, the "thai.rmit" directory gives no name of who made these fonts,
+
+Hi! I wrote them (see signature below). I have not touched them for
+ages. I wanted to learn about TeX, MetaFont, etc. etc. so I had a go
+at something that no-one else seemed to have done. In otherwords, it
+is a metafont program by a beginner, not by an expert. I also was only
+starting to learn Thai, so I dont know how good they are. I since gave
+up on Thai and frankly cannot remember much of it any more. I was also
+having fun at the time trying to get my Amiga to speak Thai. It was good
+for a chuckle.
+
+Anyway, if you have any questions, sure, drop a line. I dont know how much
+I will be able to help (as from the date you can see the last time I used
+any of it). Hope they are useful to someone.
+
+-------------------------------------------------------------------------------
+Dr. Alan Kent, ACSNET: ajk@goanna.cs.rmit.OZ
+Key Center for Knowl. Based Sys., INTERNET: ajk@goanna.cs.rmit.OZ.AU
+Victoria University of Technology, JANET: ajk%au.oz.goanna@uk.ac.ukc
+RMIT Campus, BITNET: ajk%goanna.cs.rmit.OZ.AU@relay.cs.net
+Dept. of Comp. Sci., UUCP: ..!uunet!goanna.cs.rmit.OZ.AU!ajk
+GPO BOX 2476 V, Phone: +61 3 660 2992
+Melbourne, 3001, AUSTRALIA Fax: +61 3 662 1617
diff --git a/fonts/thai/rmit/all.mf b/fonts/thai/rmit/all.mf
new file mode 100644
index 0000000000..189143e013
--- /dev/null
+++ b/fonts/thai/rmit/all.mf
@@ -0,0 +1,76 @@
+input char87.mf
+input char88.mf
+input char89.mf
+input char8a.mf
+input char8b.mf
+input chara0.mf
+input chara1.mf
+input chara2.mf
+input chara3.mf
+input chara4.mf
+input chara5.mf
+input chara6.mf
+input chara7.mf
+input chara8.mf
+input chara9.mf
+input charaa.mf
+input charab.mf
+input charac.mf
+input charad.mf
+input charae.mf
+input charaf.mf
+input charb0.mf
+input charb1.mf
+input charb2.mf
+input charb3.mf
+input charb4.mf
+input charb5.mf
+input charb6.mf
+input charb7.mf
+input charb8.mf
+input charb9.mf
+input charba.mf
+input charbb.mf
+input charbc.mf
+input charbd.mf
+input charbe.mf
+input charbf.mf
+input charc0.mf
+input charc1.mf
+input charc2.mf
+input charc3.mf
+input charc4.mf
+input charc5.mf
+input charc6.mf
+input charc7.mf
+input charc8.mf
+input charc9.mf
+input charca.mf
+input charcb.mf
+input charcc.mf
+input charcd.mf
+input charce.mf
+input charcf.mf
+input chard0.mf
+input chard1.mf
+input chard2.mf
+input chard3.mf
+input chard4.mf
+input chard5.mf
+input chard6.mf
+input chard7.mf
+input chard8.mf
+input chard9.mf
+input charda.mf
+input chare0.mf
+input chare1.mf
+input chare2.mf
+input chare3.mf
+input chare4.mf
+input chare5.mf
+input chare6.mf
+input chare7.mf
+input chare8.mf
+input chare9.mf
+input charea.mf
+input chareb.mf
diff --git a/fonts/thai/rmit/bx.mf b/fonts/thai/rmit/bx.mf
new file mode 100644
index 0000000000..e291daa57a
--- /dev/null
+++ b/fonts/thai/rmit/bx.mf
@@ -0,0 +1,25 @@
+slant := 0;
+px# := 1/5vpt#;
+py# := 1/5vpt#;
+normht# := 4vpt#;
+normwd# := 2vpt#;
+skinnywd# := .6normwd#;
+dotsize# := skinnywd# / 4;
+dia# := .9vpt#;
+thick# := .65vpt#;
+thin# := .3vpt#;
+overshoot# := 1/3thin#;
+jutout# := 1/6vpt#;
+curveht# := 1/5normht#;
+cupht# := curveht#;
+hatht# := curveht#;
+leftgap# := 1/2vpt#;
+rightgap# := 1/2vpt#;
+lvgap# := dia#;
+lvht# := 3dia#;
+uvgap# := 2dia#;
+uvht# := 3dia#;
+tonegap# := dia#;
+toneht# := 2dia#;
+gorstyle := 2;
+curlystyle := 1;
diff --git a/fonts/thai/rmit/by.mf b/fonts/thai/rmit/by.mf
new file mode 100644
index 0000000000..0fefde7f2d
--- /dev/null
+++ b/fonts/thai/rmit/by.mf
@@ -0,0 +1,25 @@
+slant := 0;
+px# := 1/5vpt#;
+py# := 1/5vpt#;
+normht# := 4vpt#;
+normwd# := 2vpt#;
+skinnywd# := .6normwd#;
+dotsize# := skinnywd# / 4;
+dia# := 2/3vpt#;
+thick# := 2/3vpt#;
+thin# := .2vpt#;
+overshoot# := 1/3thin#;
+jutout# := 1/6vpt#;
+curveht# := 1/5normht#;
+cupht# := curveht#;
+hatht# := curveht#;
+leftgap# := 1/2vpt#;
+rightgap# := 1/2vpt#;
+lvgap# := dia#;
+lvht# := 3dia#;
+uvgap# := 2dia#;
+uvht# := 3dia#;
+tonegap# := dia#;
+toneht# := 2dia#;
+gorstyle := 1;
+curlystyle := 2;
diff --git a/fonts/thai/rmit/bz.mf b/fonts/thai/rmit/bz.mf
new file mode 100644
index 0000000000..32445bf82c
--- /dev/null
+++ b/fonts/thai/rmit/bz.mf
@@ -0,0 +1,25 @@
+slant := 0;
+px# := 1/5vpt#;
+py# := 1/5vpt#;
+normht# := 4vpt#;
+normwd# := 2vpt#;
+skinnywd# := .6normwd#;
+dotsize# := skinnywd# / 4;
+dia# := 2/3vpt#;
+thick# := 2/3vpt#;
+thin# := .3vpt#;
+overshoot# := 1/3thin#;
+jutout# := 1/6vpt#;
+curveht# := 1/5normht#;
+cupht# := curveht#;
+hatht# := curveht#;
+leftgap# := 1/2vpt#;
+rightgap# := 1/2vpt#;
+lvgap# := dia#;
+lvht# := 3dia#;
+uvgap# := 2dia#;
+uvht# := 3dia#;
+tonegap# := dia#;
+toneht# := 2dia#;
+gorstyle := 3;
+curlystyle := 1;
diff --git a/fonts/thai/rmit/char87.mf b/fonts/thai/rmit/char87.mf
new file mode 100644
index 0000000000..5b9e8da4ad
--- /dev/null
+++ b/fonts/thai/rmit/char87.mf
@@ -0,0 +1,31 @@
+beginthaichar("small MY DTY KOO", "87", "smk", 0, normht# + uvgap# + uvht# + tonegap# + toneht#, 0);
+ penpos1(thin, 90);
+ penpos2(thin, 0);
+ penpos3(thin, 270);
+ penpos4(thin, 180);
+ penpos5(thin, 90);
+ penpos6(2thin, 45);
+ penpos7(thin, 270);
+ penpos8(thin, 315);
+
+ x1 = x3 = 1/2[x2, x4];
+ x2r + 1/4toneht = x4r;
+ x5 = 1/2[x6, x2];
+ x7 = 2/3[x6, x8];
+ x8r = x4l;
+ y1r + 1/4toneht = y3r;
+ y2 = y4 = 1/2[y1, y3];
+ y5l = y1r;
+ y6l = y1l;
+ y7 = 2/3[y6, y8];
+ % these define the size
+ x4l = - rightgap; % right edge
+ x6 = x4l - toneht - thin; % left edge
+ y8l = normht + uvgap + uvht + toneht + tonegap;
+ y1l = normht + uvgap + uvht + tonegap;
+
+ penstroke z1e{left} .. z2e{up} .. z3e{right} .. z4e{down} .. z1e{left}
+ .. z5e{left} .. z6e & z6e{up} .. z7e{right} .. {dir 45}z8e;
+
+ penlabels(1,2,3,4,5,6,7,8);
+endthaichar;
diff --git a/fonts/thai/rmit/char88.mf b/fonts/thai/rmit/char88.mf
new file mode 100644
index 0000000000..ef376565c4
--- /dev/null
+++ b/fonts/thai/rmit/char88.mf
@@ -0,0 +1,12 @@
+beginthaichar("small MY TOH", "88", "smt", 0, normht# + uvgap# + uvht# + tonegap# + toneht#, 0);
+ penpos1(thick, 0);
+ penpos2(thin, 0);
+
+ x1r = -rightgap;
+ x1 = x2;
+ y1 = normht + uvgap + uvht + tonegap + toneht;
+ y2 = normht + uvgap + uvht + tonegap;
+
+ filldraw z1l -- z2l -- z2r -- z1r -- cycle;
+ penlabels(1,2);
+endthaichar;
diff --git a/fonts/thai/rmit/char89.mf b/fonts/thai/rmit/char89.mf
new file mode 100644
index 0000000000..92b588ed91
--- /dev/null
+++ b/fonts/thai/rmit/char89.mf
@@ -0,0 +1,24 @@
+beginthaichar("small MY EHK", "89", "sme", 0, normht# + uvgap# + uvht# + tonegap# + toneht#, 0);
+ penpos1(thin, 180);
+ penpos2(thin, 90);
+ penpos3(thin, 0);
+ penpos4(thin, 270);
+ penpos5(thin, 90);
+ penpos6(thin, 0);
+
+ x6r = -rightgap;
+ x1l = x6l - 1/4toneht;
+ x1r - 1/4toneht = x3r;
+ x3l = x5;
+ x2 = x4 = 1/2[x1, x3];
+ y4l = y6 = normht + uvgap + uvht + tonegap + toneht;
+ y2r + 1/4toneht = y4r;
+ y1 = y3 = 1/2[y2, y4];
+ y5l = normht + uvgap + uvht + tonegap;
+
+ filldraw z1l{down} .. z2l{left} .. z3l{up} .. z4l{right} .. z1l{down}
+ .. {left}z5l -- z5r{right} .. z1r{up} .. z4r{left}
+ .. z3r{down} .. z2r{right} .. z1r{up} -- cycle;
+ filldraw z5r{right} .. {up}z6l -- z6r{down} .. z5l{left} -- cycle;
+ penlabels(1,2,3,4,5,6);
+endthaichar;
diff --git a/fonts/thai/rmit/char8a.mf b/fonts/thai/rmit/char8a.mf
new file mode 100644
index 0000000000..8208c45d99
--- /dev/null
+++ b/fonts/thai/rmit/char8a.mf
@@ -0,0 +1,43 @@
+beginthaichar("small MY DTREE", "8A", "smd", 0, normht# + uvgap# + uvht# + tonegap# + toneht#, 0);
+ penpos1(thin, 90);
+ penpos2(thin, 0);
+ penpos3(thin, 270);
+ penpos4(thin, 180);
+ penpos5(thin, 0);
+ penpos6(thin, 270);
+ penpos7(thin, 180);
+ penpos20(thin, 0);
+ penpos8(thin, 270);
+ penpos9(thin, 180);
+ penpos10(thin, 160);
+ penpos11(thin, 180);
+ penpos12(thin, 200);
+
+ z20 = z7;
+ x1 = x3 = 1/2[x2, x4];
+ x2r + thin = x4r;
+ x5r = x2l;
+ x6 = 1/2[x5, x7];
+ x7 = 1/2[x5, x9];
+ x8 = 1/2[x7, x9];
+ x9 = x11 - 2thin;
+ x10 = x12 = x9 - thin;
+ y2 = y4 = 1/2[y1, y3];
+ y3r = y1r + thin;
+ y5 = y9 = 1/2[y1, y6];
+ y6 = y8 = 2/3[y1, y12];
+ y7 = y3r;
+ y10 = y1;
+ y11 = 1/2[y10, y12];
+ % these parameters define size of object
+ x5l = x11 - 12thin; % leftmost
+ x11r = -rightgap; % rightmost
+ y1l = normht + uvgap + uvht + tonegap; % bottom
+ y12 = normht + uvgap + uvht + tonegap + toneht; % top
+
+ penstroke z1e{left} .. z2e{up} .. z3e{right} .. z4e{down} .. z1e{left}
+ .. z5e{up} .. z6e{right} .. {down}z7e;
+ penstroke z20e{up} .. z8e{right} .. z9e{down} .. z10e;
+ penstroke z12e .. z11e{down} .. z10e;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12);
+endthaichar;
diff --git a/fonts/thai/rmit/char8b.mf b/fonts/thai/rmit/char8b.mf
new file mode 100644
index 0000000000..d3175d3efc
--- /dev/null
+++ b/fonts/thai/rmit/char8b.mf
@@ -0,0 +1,17 @@
+beginthaichar("small MY JUTAWAH", "8B", "smj", 0, normht# + uvgap# + uvht# + tonegap# + toneht#, 0);
+ penpos1(thin, 0);
+ penpos2(thin, 0);
+ penpos3(thin, 270);
+ penpos4(thin, 270);
+
+ x1 = x2 = 1/2[x3, x4];
+ x4 = -rightgap;
+ x3 = x4 - toneht;
+ y1 = normht + uvgap + uvht + tonegap + toneht;
+ y2 = normht + uvgap + uvht + tonegap;
+ y3 = y4 = 1/2[y1, y2];
+
+ filldraw z1l -- z2l -- z2r -- z1r -- cycle;
+ filldraw z3l -- z4l -- z4r -- z3r -- cycle;
+ penlabels(1,2,3,4);
+endthaichar;
diff --git a/fonts/thai/rmit/chara0.mf b/fonts/thai/rmit/chara0.mf
new file mode 100644
index 0000000000..9c8df0d7f1
--- /dev/null
+++ b/fonts/thai/rmit/chara0.mf
@@ -0,0 +1,2 @@
+beginthaichar("blank", "A0", "bl/sp", normwd#, normht#, 0);
+endthaichar;
diff --git a/fonts/thai/rmit/chara1.mf b/fonts/thai/rmit/chara1.mf
new file mode 100644
index 0000000000..8f3ac1e3a3
--- /dev/null
+++ b/fonts/thai/rmit/chara1.mf
@@ -0,0 +1,14 @@
+beginthaichar("GAW GAI", "A1", "gg/gy", 2thick# + normwd# + jutout#, normht#, 0);
+ penpos1(thick, 0);
+ gor_def(2);
+ botcap_def(3);
+
+ y1 = 0;
+ x1l = x2lft = leftmost + jutout;
+ rt x3rt = rt x2rt = rightmost;
+ y3bot = 0;
+
+ filldraw gor_path_o(2) -- z3r -- z3l -- reverse gor_path_i(2)
+ -- z1r -- z1l -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/chara2.mf b/fonts/thai/rmit/chara2.mf
new file mode 100644
index 0000000000..0eb94f1016
--- /dev/null
+++ b/fonts/thai/rmit/chara2.mf
@@ -0,0 +1,15 @@
+beginthaichar("KAW KAI", "A2", "ky", 3/2thick# + curlywd# + skinnywd#, normht#, 0);
+ curly_def(1);
+ cup_def(2);
+ topcap_def(3);
+
+ lft x1lft = leftmost;
+ x1l = x2lft;
+ x3r = x2rt;
+ rt x3r = rightmost;
+ top y3top = normht;
+
+ filldraw curly_path(1) -- cup_path_i(2) -- z3l -- z3r
+ -- reverse cup_path_o(2) -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/chara3.mf b/fonts/thai/rmit/chara3.mf
new file mode 100644
index 0000000000..6e5d4eaf90
--- /dev/null
+++ b/fonts/thai/rmit/chara3.mf
@@ -0,0 +1,15 @@
+beginthaichar("KAW KUAT", "A3", "ku", 3/2thick# + kinkedcurlywd# + skinnywd#, normht#, 0);
+ kinkedcurly_def(1);
+ cup_def(2);
+ topcap_def(3);
+
+ lft x1lft = leftmost;
+ x1l = x2lft;
+ x3r = x2rt;
+ rt x3r = rightmost;
+ top y3top = normht;
+
+ filldraw kinkedcurly_path(1) -- cup_path_i(2) -- z3l -- z3r
+ -- reverse cup_path_o(2) -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/chara4.mf b/fonts/thai/rmit/chara4.mf
new file mode 100644
index 0000000000..1d57eb7c13
--- /dev/null
+++ b/fonts/thai/rmit/chara4.mf
@@ -0,0 +1,33 @@
+beginthaichar("KAW KWAI", "A4", "kw", 2thick# + jutout# + normwd#, normht#, 0 );
+ penpos1(thick, 0);
+ penpos2(thick, 0);
+ penpos3(thin, 270);
+ penpos4(thin, 180);
+ penpos5(thin, 90);
+ penpos6(thin, 0);
+ penpos7(thin, 270);
+ penpos8(thick, 180);
+ penpos9(thick, 180);
+
+ lft x6l = leftmost;
+ x6l = x1l - jutout;
+ x1 = x2;
+ x4r = x2r + dia;
+ x3 = x5 = (x2r + x4l) / 2;
+ x8 = x9;
+ rt x8l = rightmost;
+ x7 = (x6 + x8) / 2;
+ y1 = y9 = 0;
+ top y7 = normht;
+ y6 = y8 = y7 - 1.2curveht;
+ y5 = y6 - 3/2curveht;
+ y2 = y5 - 1/3dia;
+ y3r = y5r + dia;
+ y4 = (y3 + y5) / 2;
+
+ filldraw z1l{up} -- z2l{up} .. z3l{right} .. z4l{down} .. z5l{left}
+ .. z6l{up} .. z7l{right} .. {down}z8l -- z9l -- z9r
+ -- z8r{up} .. {left}z7r .. z6r{down} .. z5r{right}
+ .. z4r{up} .. z3r{left} .. z2r{down} -- z1r{down} -- cycle;
+ penlabels(range 1 thru 9);
+endthaichar;
diff --git a/fonts/thai/rmit/chara5.mf b/fonts/thai/rmit/chara5.mf
new file mode 100644
index 0000000000..ac387b095f
--- /dev/null
+++ b/fonts/thai/rmit/chara5.mf
@@ -0,0 +1,40 @@
+beginthaichar("KAW KOH!N", "A5", "ko", 2thick# + jutout# + normwd#, normht#, 0);
+ penpos1(thick, 0);
+ penpos2(thick, 0);
+ penpos3(thin, 270);
+ penpos4(thin, 180);
+ penpos5(thin, 90);
+ penpos6(thin, 0);
+ penpos7(thin, 270);
+ penpos8(thin, 270);
+ penpos9(thin, 270);
+ penpos10(thick, 180);
+ penpos11(thick, 180);
+
+ lft x6l = leftmost;
+ x6l = x1l - jutout;
+ x1 = x2;
+ x4r = x2r + dia;
+ x3 = x5 = (x2r + x4l) / 2;
+ x10 = x11;
+ rt x10l = rightmost;
+ x8 = 1/2[x6, x10];
+ x7 = 1/2[x6, x8];
+ x9 = 1/2[x8, x10];
+ y1 = y11 = 0;
+ top y7 = top y9 = normht;
+ y8 = y7 - 0.5curveht;
+ y6 = y10 = y7 - 1.2curveht;
+ y5 = y6 - 3/2curveht;
+ y2 = y5 - 1/3dia;
+ y3r = y5r + dia;
+ y4 = (y3 + y5) / 2;
+
+ filldraw z1l{up} -- z2l{up} .. z3l{right} .. z4l{down} .. z5l{left}
+ .. z6l{up} .. z7l{right} .. z8l{right} .. z9l{right}
+ .. {down}z10l -- z11l -- z11r
+ -- z10r{up} .. {left}z9r .. {left}z8r .. {left}z7r
+ .. z6r{down} .. z5r{right}
+ .. z4r{up} .. z3r{left} .. z2r{down} -- z1r{down} -- cycle;
+ penlabels(range 1 thru 11);
+endthaichar;
diff --git a/fonts/thai/rmit/chara6.mf b/fonts/thai/rmit/chara6.mf
new file mode 100644
index 0000000000..d791f5a21f
--- /dev/null
+++ b/fonts/thai/rmit/chara6.mf
@@ -0,0 +1,17 @@
+beginthaichar("KAW RAH!-KAH!NG", "A6", "kr", 2thick# + kinkedcurlywd# + normwd#, normht#, 0);
+ kinkedcurly_def(1);
+ dd_def(2);
+ penpos3(thick, 0);
+ topcap_def(4);
+
+ lft x1lft = leftmost;
+ x1 = x2;
+ rt x4rt = rt x3r = rightmost;
+ bot y3 = 0;
+ top y4top = normht;
+
+ filldraw kinkedcurly_path(1) -- dd_path_o(2) .. z3r -- z3l
+ .. reverse dd_path_i(2) -- cycle;
+ filldraw z3l -- z3r -- z4r -- z4l -- cycle;
+ penlabels(1,2,3,4);
+endthaichar;
diff --git a/fonts/thai/rmit/chara7.mf b/fonts/thai/rmit/chara7.mf
new file mode 100644
index 0000000000..ea6a595ba4
--- /dev/null
+++ b/fonts/thai/rmit/chara7.mf
@@ -0,0 +1,17 @@
+beginthaichar("NGAW NGOO", "A7", "ng", thick# + dia# + dia#, normht#, 0);
+ q_def(1, thick, 0);
+ penpos2(thick, 0);
+ penpos3(0, 0);
+
+ rt x1rt = rt x2r = rightmost;
+ lft x3 = leftmost;
+ top y1top = normht;
+ bot y2 = 0;
+ % 3/2(x2 - x3) = y3 - y2;
+ y3 = 1/2normht;
+ top x1top = normht;
+
+ filldraw q_path(1) -- z2r -- z2l -- cycle;
+ filldraw z2l -- z3 -- z2r -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/chara8.mf b/fonts/thai/rmit/chara8.mf
new file mode 100644
index 0000000000..25070abeb0
--- /dev/null
+++ b/fonts/thai/rmit/chara8.mf
@@ -0,0 +1,17 @@
+beginthaichar("JAW JAHN", "A8", "jj", jutout# + 2thick# + dia# + skinnywd#, normht#, 0);
+ q_def(1, thick, 0);
+ cup_def(2);
+ hat_def(3, thick);
+
+ lft x1lft = leftmost + jutout;
+ lft x3lft = leftmost;
+ x1l = x2lft;
+ x2rt = x3rt;
+ rt x2rt = rightmost;
+ top y1top + jutout = y3bot;
+ top y3top = normht + overshoot;
+
+ filldraw q_path(1) .. cup_path_i(2) .. hat_path(3)
+ .. reverse cup_path_o(2) .. cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/chara9.mf b/fonts/thai/rmit/chara9.mf
new file mode 100644
index 0000000000..82b2f9a5ca
--- /dev/null
+++ b/fonts/thai/rmit/chara9.mf
@@ -0,0 +1,24 @@
+beginthaichar("CHAW CHING", "A9", "ci/chi", jutout# + 2thick# + 2dia# + normwd#, normht#, 0);
+ q_def(1, thick, 0);
+ penpos2(thick, 0);
+ penpos4(thin, 270);
+ b_def(5, thick, thick - thin);
+ hat_def(6, thick);
+
+ lft x1lft = leftmost + jutout;
+ x1 = x2;
+ rt x5rt = rightmost;
+ x5 = x6;
+ x4 = x5lft;
+ lft x6lft = leftmost;
+ top y1top + jutout = bot y6bot;
+ top y6top = normht + overshoot;
+ bot y2 = 0;
+ bot y5bot = 0;
+ y4l = y5top;
+
+ filldraw q_path(1) -- z2r -- z2l -- cycle;
+ filldraw b_path(5) -- reverse hat_path(6) -- cycle;
+ filldraw z2l .. {right}z4l -- z4r{left} .. z2r -- cycle;
+ penlabels(1,2,4,5,6);
+endthaichar;
diff --git a/fonts/thai/rmit/charaa.mf b/fonts/thai/rmit/charaa.mf
new file mode 100644
index 0000000000..39f57062db
--- /dev/null
+++ b/fonts/thai/rmit/charaa.mf
@@ -0,0 +1,26 @@
+beginthaichar("CHAW CHAHNG", "AA", "ca/cha", curlywd# + 2thick# + skinnywd#, normht#, 0);
+ curly_def(1);
+ base_def(2);
+ penpos3(thick, 0);
+ penpos4(thick, 0);
+ penpos5(thick, 0);
+ penpos6(thick, 0);
+
+ lft x1lft = leftmost;
+ x1l = x2lft;
+ x2rt = x3r;
+ lft x4l = rt x1rt + thin;
+ x3 = 1/2[x4, x5];
+ rt x5r = rightmost;
+ top y5 = normht + jutout;
+ y5 - y4 = x5 - x4;
+ y4 - y3 = x3 - x4;
+ y2bot = 0;
+ z6 = z5 + (0, dia);
+
+ filldraw curly_path(1) -- base_path_i(2) .. {up}z3l .. {left}z4l{right}
+ .. {up}z5l -- z6l -- z6r -- z5r{down}
+ .. {left}z4r{right} .. {down}z3r
+ -- reverse base_path_o(2) -- cycle;
+ penlabels(1,2,3,4,5);
+endthaichar;
diff --git a/fonts/thai/rmit/charab.mf b/fonts/thai/rmit/charab.mf
new file mode 100644
index 0000000000..90d899f111
--- /dev/null
+++ b/fonts/thai/rmit/charab.mf
@@ -0,0 +1,27 @@
+beginthaichar("SAW SOO/SAW CHAW", "AB", "sc", kinkedcurlywd# + 2thick# + skinnywd#, normht#, 0);
+ kinkedcurly_def(1);
+ base_def(2);
+ penpos3(thick, 0);
+ penpos4(thick, 0);
+ penpos5(thick, 0);
+ penpos6(thick, 0);
+
+ lft x1lft = leftmost;
+ x1l = x2lft;
+ x2rt = x3r;
+ lft x4l = rt x1rt + thin;
+ rt x5r = rightmost;
+ x3 = 1/2[x4, x5];
+ top y5 = normht + jutout;
+ y5 - y4 = x5 - x4;
+ y4 - y3 = x3 - x4;
+ y2bot = 0;
+ z6 = z5 + (0, dia);
+
+ filldraw kinkedcurly_path(1) -- base_path_i(2) .. {up}z3l
+ .. {left}z4l{right}
+ .. {up}z5l -- z6l -- z6r -- z5r{down}
+ .. {left}z4r{right} .. {down}z3r
+ -- reverse base_path_o(2) -- cycle;
+ penlabels(1,2,3,4,5);
+endthaichar;
diff --git a/fonts/thai/rmit/charac.mf b/fonts/thai/rmit/charac.mf
new file mode 100644
index 0000000000..8c2be661a1
--- /dev/null
+++ b/fonts/thai/rmit/charac.mf
@@ -0,0 +1,21 @@
+beginthaichar("CHAW CHUH", "AC", "cu/chu", jutout# + 3thick# + 2normwd#, normht#, 0);
+ b_def(1, thick, thick - thin);
+ gor_def(2);
+ dd_def(3);
+ penpos4(thick, 0);
+ topcap_def(5);
+
+ lft x1lft = lft x2lft = leftmost + jutout;
+ rt x5r = rightmost;
+ x4 = x5;
+ x2rt = x3r;
+ x3l = 1/2[x1,x5];
+ bot y1bot = 0;
+ bot y4 = 0;
+ top y5top = normht;
+
+ filldraw b_path(1) -- gor_path_i(2) -- dd_path_i(3) .. z4l -- z4r
+ .. reverse dd_path_o(3) -- reverse gor_path_o(2) -- cycle;
+ filldraw z4r -- z4l -- z5l -- z5r -- cycle;
+ penlabels(1,2,3,4,5);
+endthaichar;
diff --git a/fonts/thai/rmit/charad.mf b/fonts/thai/rmit/charad.mf
new file mode 100644
index 0000000000..d66dcbece4
--- /dev/null
+++ b/fonts/thai/rmit/charad.mf
@@ -0,0 +1,41 @@
+beginthaichar("YAW YING", "AD", "yi", jutout# + 3thick# + skinnywd# + normwd#, normht#, lvgap# + lvht#);
+ b_def(1, thick, thick - thin);
+ gor_def(2);
+ cup_def(3);
+ topcap_def(4);
+
+ lft x1lft = lft x2lft = leftmost + jutout;
+ rt x4r = rightmost;
+ x4r = x3rt;
+ x2rt = x3lft + thick;
+ x3lft + thick + thick + skinnywd = x3rt;
+ bot y1bot = 0;
+ top y4top = normht;
+
+ filldraw b_path(1) -- gor_path_i(2) -- cup_path_o(3) -- z4r -- z4l
+ -- reverse cup_path_i(3) -- reverse gor_path_o(2) -- cycle;
+
+ % little curl under the character
+
+ penpos10(thin, 180);
+ penpos11(thin, 270);
+ penpos12(thick, 0);
+
+ if dia > thick: dotdia := dia;
+ else: dotdia := thick; fi;
+ if dotdia > lvht: dotdia := lvht; fi;
+ x10r = x3lft;
+ x12r = x3rt;
+ x11 = 1/2[x10r, x12r];
+ y10 = - lvgap - dotdia/2;
+ bot y11 = -lvgap - lvht;
+ top y12 = -lvgap;
+
+ filldraw z10l{down} .. {right}z11l .. {up}z12l -- z12r{down}
+ .. z11r{left} .. z10r{up} -- cycle;
+ filldraw z10r{up} .. (z10r + (dotdia/2, dotdia/2)){right}
+ .. (z10r + (dotdia, 0)){down}
+ .. (z10r + (dotdia/2, -dotdia/2)){left} .. cycle;
+
+ penlabels(1,2,3,4,10,11,12);
+endthaichar;
diff --git a/fonts/thai/rmit/charae.mf b/fonts/thai/rmit/charae.mf
new file mode 100644
index 0000000000..68093d6203
--- /dev/null
+++ b/fonts/thai/rmit/charae.mf
@@ -0,0 +1,30 @@
+beginthaichar("DAW CHAH!-DAH", "AE", "dc", 2thick# + normwd# + dia#, normht#, lvgap# + lvht#);
+ d_def(1, thick, 1/2thick);
+ gor_def(2);
+ penpos5(thick, 0);
+ penpos8(thin, 90);
+ penpos9(thin, 180);
+ penpos10(thin, 270);
+ penpos11(thin, 300);
+
+ x1lft = leftmost;
+ x1l = x2lft;
+ x2rt = x5r = rightmost;
+ y1bot = 0;
+ x11 = 0.8[x9, x5l];
+ x8 = x10 = 1/3[x9l, x5l];
+ x9r = leftmost + dia;
+ y5 = y10r = - lvgap - lvht;
+ y11r = y8r = -lvgap - 1/2lvht;
+ y9 = 1/2[y8, y10];
+
+ filldraw d_path(1) -- gor_path_i(2) -- z5l -- z5r
+ -- reverse gor_path_o(2) -- cycle;
+ filldraw z5l{dir 135}
+ .. z8l{left} .. z9l{down}
+ .. z10l{right} .. {dir 45}z11l -- z11r{dir 225}
+ .. z10r{left} .. z9r{up}
+ .. z8r{right}
+ .. z5r -- cycle;
+ penlabels(range 1 thru 11);
+endthaichar;
diff --git a/fonts/thai/rmit/charaf.mf b/fonts/thai/rmit/charaf.mf
new file mode 100644
index 0000000000..b5f459c81d
--- /dev/null
+++ b/fonts/thai/rmit/charaf.mf
@@ -0,0 +1,33 @@
+beginthaichar("DTAW BPAH!-DTAH!K", "AF", "db", 2thick# + normwd# + dia#, normht#, lvgap# + lvht#);
+ d_def(1, thick, 1/2thick);
+ gor_def(2);
+ penpos5(thick, 0);
+ penpos6(thin, 90);
+ penpos7(thin, 90);
+ penpos8(thin, 90);
+ penpos9(thin, 180);
+ penpos10(thin, 270);
+ penpos11(thin, 300);
+
+ x1lft = leftmost;
+ x1l = x2lft;
+ x2rt = x5r = rightmost;
+ y1bot = 0;
+ x6 = 1/2[x7, x5l];
+ x7 = x11 = 0.6[x9, x5l];
+ x8 = x10 = 1/3[x9l, x7];
+ x9r = leftmost;
+ y5 = y7l = y10r = - lvgap - lvht;
+ y6r + 1/2thin = y11r = y8r = -lvgap - 1/2lvht;
+ y9 = 1/2[y8, y10];
+
+ filldraw d_path(1) -- gor_path_i(2) -- z5l -- z5r
+ -- reverse gor_path_o(2) -- cycle;
+ filldraw z5l{dir 135} .. z6l{left} .. {dir225}z7l{dir135}
+ .. z8l{left} .. z9l{down}
+ .. z10l{right} .. {dir 45}z11l -- z11r{dir 225}
+ .. z10r{left} .. z9r{up}
+ .. z8r{right} .. {dir -45}z7r{dir 45}
+ .. z6r{right} .. z5r -- cycle;
+ penlabels(range 1 thru 11);
+endthaichar;
diff --git a/fonts/thai/rmit/charb0.mf b/fonts/thai/rmit/charb0.mf
new file mode 100644
index 0000000000..5d9b04d185
--- /dev/null
+++ b/fonts/thai/rmit/charb0.mf
@@ -0,0 +1,40 @@
+beginthaichar("TAW TAHN", "B0", "ta", 2thick# + skinnywd# + thin#, normht#, lvgap# + lvht#);
+ q_def(1, thick, 0);
+ cup_def(2);
+ rhat_def(3);
+ q_def(4, thick, thick);
+ penpos5(thick, 0);
+ penpos6(thin, 90);
+ penpos7(thin, 90);
+ penpos8(thin, 90);
+ penpos9(thin, 180);
+ penpos10(thin, 270);
+ penpos11(thin, 300);
+
+ x1lft = x3lft = leftmost;
+ x1l = x2lft;
+ x2rt = x3r = x3rt = rightmost;
+ y3top = normht;
+ y1top = y3taw - 2thin;
+
+ x4r = x5r = rightmost;
+ x6 = 1/2[x7, x5l];
+ x7 = x11 = 0.6[x9, x5l];
+ x8 = x10 = 1/3[x9l, x7];
+ x9r = leftmost;
+ y4top = -lvgap;
+ y5 = y7l = y10r = - lvgap - lvht;
+ y6r + 1/2thin = y11r = y8r = y10l + 2/3dia;
+ y9 = 1/2[y8, y10];
+
+ filldraw q_path(1) -- cup_path_i(2) -- rhat_path(3)
+ -- reverse cup_path_o(2) -- cycle;
+ filldraw q_path(4) -- z5r -- z5l -- cycle;
+ filldraw z5l{dir 135} .. z6l{left} .. {dir225}z7l{dir135}
+ .. z8l{left} .. z9l{down}
+ .. z10l{right} .. {dir 45}z11l -- z11r{dir 225}
+ .. z10r{left} .. z9r{up}
+ .. z8r{right} .. {dir -45}z7r{dir 45}
+ .. z6r{right} .. z5r -- cycle;
+ penlabels(range 1 thru 11);
+endthaichar;
diff --git a/fonts/thai/rmit/charb1.mf b/fonts/thai/rmit/charb1.mf
new file mode 100644
index 0000000000..ab47d63397
--- /dev/null
+++ b/fonts/thai/rmit/charb1.mf
@@ -0,0 +1,22 @@
+beginthaichar("TAW MOH!N-TOH", "B1", "tm", 2thick# + kinkedcurlywd# + normwd#, normht#, 0);
+ kinkedcurly_def(1);
+ penpos2(thick, 0);
+ penpos3(thin, 0);
+ penpos4(thin, 270);
+ penpos5(thick, 180);
+ penpos6(thick, 180);
+
+ lft x1lft = leftmost;
+ x1l = x2l;
+ x3r = x2r;
+ rt x5l = rt x6l = rightmost;
+ x4 = 2/3[x3r, x5r];
+ bot y2 = bot y3 = bot y6 = 0;
+ top y4l = normht + overshoot;
+ y5 = y4r - curveht;
+
+ filldraw kinkedcurly_path(1) -- z2r -- z2l -- cycle;
+ filldraw z3l{dir 85} ... {right}z4l ... {down}z5l -- z6l -- z6r
+ -- z5r{up} ... {left}z4r ... {dir (85+180)}z3r -- cycle;
+ penlabels(1,2,3,4,5,6);
+endthaichar;
diff --git a/fonts/thai/rmit/charb2.mf b/fonts/thai/rmit/charb2.mf
new file mode 100644
index 0000000000..c483d4fd81
--- /dev/null
+++ b/fonts/thai/rmit/charb2.mf
@@ -0,0 +1,52 @@
+beginthaichar("TAW POO-TAO!", "B2", "tp", 3thick# + jutout# + 2normwd#, normht#, 0 );
+ penpos1(thin, 180);
+ penpos2(thin, 90);
+ penpos3(thin, 0);
+ penpos4(thin, 270);
+ penpos5(thin, 135);
+ penpos6(thick, 0);
+ penpos7(thick, 0);
+ penpos8(thin, 0);
+ penpos9(thin, 270);
+ penpos10(thin, 270);
+ penpos11(1/2[thin, thick], 270);
+ penpos12(thick, 180);
+ dd_def(14);
+ penpos15(thick, 0);
+ topcap_def(16);
+
+ x1r = x3r + dia;
+ x2 = x4 = 1/2[x1, x3];
+ x2 = 1/2[x6r, x12r];
+ x6l = x7l = x8l + 1/2(thick - thin);
+ lft x8l = leftmost;
+ x10 = 1/2[x8, x12];
+ x9 = 1/2[x8, x10];
+ x11 = 1/2[x10, x12];
+ x12l = x14r;
+ y1 = y3 = 1/2[y2, y4];
+ y4r = y2r + dia;
+ y3l = 2/3[0, y10r];
+ bot y6 = bot y13 = 0;
+ y7 = y2 - thick;
+ y8 = y12 = y9 - curveht;
+ top y9l = top y11l = normht + overshoot;
+ y10 = y9 - 0.5curveht;
+ z5r = 1/2[z1, z3] + dia/2 * dir 315;
+ lft x1lft = leftmost;
+ x14 = 1/2[leftmost, rightmost] + thick;
+ rt x16rt = rt x15r = rightmost;
+ bot y15 = 0;
+ top y16top = normht;
+
+ filldraw z1r{down} .. z2r{left} .. z3r{up} .. z4r{right} .. z1r{down}
+ .. {dir 215}z5r --- z6l -- z6r --- z5l{dir 45} .. z1l{up}
+ .. z4l{left} .. z3l{down} .. z2l{right} .. z1l{up} -- cycle;
+ filldraw z6l{up} --- z7l .. z8l{up} .. z9l{right} .. z10l{right}
+ .. z11l{right} .. {down}z12l
+ -- dd_path_o(14) .. z15r -- z15l
+ .. reverse dd_path_i(14)
+ -- z12r{up} .. z11r{left} .. z10r{left} .. z9r{left}
+ .. z8r{down} .. z7r --- {down}z6r -- cycle;
+ filldraw z15l -- z15r -- z16r -- z16l -- cycle;
+endthaichar;
diff --git a/fonts/thai/rmit/charb3.mf b/fonts/thai/rmit/charb3.mf
new file mode 100644
index 0000000000..f5a2d1ac6f
--- /dev/null
+++ b/fonts/thai/rmit/charb3.mf
@@ -0,0 +1,26 @@
+beginthaichar("NAW NEHN", "B3", "ne", jutout# + 3thick# + 2normwd#, normht#, 0);
+ b_def(1, thick, thick - thin);
+ gor_def(2);
+ penpos3(thick, 0);
+ penpos4(thin, 270);
+ b_def(5, thick, thick - thin);
+ topcap_def(6);
+
+ lft x1lft = lft x2lft = leftmost + jutout;
+ x2rt = x3r;
+ rt x5rt = rightmost;
+ x4 = x5l;
+ x6 = x5;
+ x3l = 1/2[x1,x6];
+ bot y1bot = 0;
+ bot y3 = 0;
+ bot y5bot = 0;
+ top y6top = normht;
+ y4l = y5top;
+
+ filldraw b_path(1) -- gor_path_i(2) -- z3l -- z3r
+ -- reverse gor_path_o(2) -- cycle;
+ filldraw z3l .. {right}z4l -- z4r{left} .. z3r -- cycle;
+ filldraw b_path(5) -- z6r -- z6l -- cycle;
+ penlabels(1,2,3,4,5,6);
+endthaichar;
diff --git a/fonts/thai/rmit/charb4.mf b/fonts/thai/rmit/charb4.mf
new file mode 100644
index 0000000000..076371ce0e
--- /dev/null
+++ b/fonts/thai/rmit/charb4.mf
@@ -0,0 +1,37 @@
+beginthaichar("DAW DEH!K", "B4", "dk/de/dd", 2thick# + jutout# + normwd#, normht#, 0 );
+ penpos1(thin, 180);
+ penpos2(thin, 90);
+ penpos3(thin, 0);
+ penpos4(thin, 270);
+ penpos5(thin, 135);
+ penpos6(thick, 0);
+ penpos7(thick, 0);
+ penpos8(thin, 0);
+ penpos9(thin, 270);
+ penpos10(thick, 180);
+ penpos11(thick, 180);
+
+ x1r = x3r + dia;
+ x2 = x4 = 1/2[x1, x3];
+ x2 = 1/2[leftmost, rightmost];
+ x6l = x7l = x8l + 1/2(thick - thin);
+ lft x8l = leftmost;
+ x9 = 1/2[x8, x10];
+ x10l = x11l = rightmost;
+ y1 = y3 = 1/2[y2, y4];
+ y4r = y2r + dia;
+ y3l = 2/3[0, y9r];
+ bot y6 = bot y11 = 0;
+ y7 = y2 - thick;
+ y8 = y10 = y9r - curveht;
+ top y9l = normht + overshoot;
+ z5r = 1/2[z1, z3] + dia/2 * dir 315;
+
+ filldraw z1r{down} .. z2r{left} .. z3r{up} .. z4r{right} .. z1r{down}
+ .. {dir 215}z5r --- z6l --
+ z6r --- z5l{dir 45} .. z1l{up} .. z4l{left} .. z3l{down} .. z2l{right}
+ .. z1l{up} -- cycle;
+ filldraw z6l{up} --- z7l .. z8l{up} .. z9l{right} .. z10l --- z11l
+ -- z11r --- z10r .. z9r{left} .. z8r{down} .. z7r --- {down}z6r
+ -- cycle;
+endthaichar;
diff --git a/fonts/thai/rmit/charb5.mf b/fonts/thai/rmit/charb5.mf
new file mode 100644
index 0000000000..36f4a03736
--- /dev/null
+++ b/fonts/thai/rmit/charb5.mf
@@ -0,0 +1,42 @@
+beginthaichar("DTAW DTAO!", "B5", "dt", 2thick# + jutout# + normwd#, normht#, 0 );
+ penpos1(thin, 180);
+ penpos2(thin, 90);
+ penpos3(thin, 0);
+ penpos4(thin, 270);
+ penpos5(thin, 135);
+ penpos6(thick, 0);
+ penpos7(thick, 0);
+ penpos8(thin, 0);
+ penpos9(thin, 270);
+ penpos10(thin, 270);
+ penpos11(thin, 270);
+ penpos12(thick, 180);
+ penpos13(thick, 180);
+
+ x1r = x3r + dia;
+ x2 = x4 = 1/2[x1, x3];
+ x2 = 1/2[leftmost, rightmost];
+ x6l = x7l = x8l + 1/2(thick - thin);
+ lft x8l = leftmost;
+ x10 = 1/2[x8, x12];
+ x9 = 1/2[x8, x10];
+ x11 = 1/2[x10, x12];
+ x12l = x13l = rightmost;
+ y1 = y3 = 1/2[y2, y4];
+ y4r = y2r + dia;
+ y3l = 2/3[0, y10r];
+ bot y6 = bot y13 = 0;
+ y7 = y2 - thick;
+ y8 = y12 = y9 - curveht;
+ top y9l = top y11l = normht + overshoot;
+ y10 = y9 - 0.5curveht;
+ z5r = 1/2[z1, z3] + dia/2 * dir 315;
+
+ filldraw z1r{down} .. z2r{left} .. z3r{up} .. z4r{right} .. z1r{down}
+ .. {dir 215}z5r --- z6l -- z6r --- z5l{dir 45} .. z1l{up}
+ .. z4l{left} .. z3l{down} .. z2l{right} .. z1l{up} -- cycle;
+ filldraw z6l{up} --- z7l .. z8l{up} .. z9l{right} .. z10l{right}
+ .. z11l{right} .. z12l --- z13l
+ -- z13r --- z12r .. z11r{left} .. z10r{left} .. z9r{left}
+ .. z8r{down} .. z7r --- {down}z6r -- cycle;
+endthaichar;
diff --git a/fonts/thai/rmit/charb6.mf b/fonts/thai/rmit/charb6.mf
new file mode 100644
index 0000000000..a1e74ec806
--- /dev/null
+++ b/fonts/thai/rmit/charb6.mf
@@ -0,0 +1,15 @@
+beginthaichar("TAW TOO!NG", "B6", "tu", jutout# + 2thick# + normwd#, normht#, 0);
+ b_def(1, thick, thick/2);
+ gor_def(2);
+ botcap_def(3);
+
+ lft x1lft = lft x2lft = leftmost + jutout;
+ x2rt = x3r;
+ rt x3r = rightmost;
+ bot y1bot = 0;
+ bot y3bot = 0;
+
+ filldraw b_path(1) -- gor_path_i(2) -- z3l -- z3r
+ -- reverse gor_path_o(2) -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/charb7.mf b/fonts/thai/rmit/charb7.mf
new file mode 100644
index 0000000000..abcdf725b4
--- /dev/null
+++ b/fonts/thai/rmit/charb7.mf
@@ -0,0 +1,22 @@
+beginthaichar("TAW TAH!-HAHN", "B7", "th", 2thick# + curlywd# + normwd#, normht#, 0);
+ curly_def(1);
+ penpos2(thick, 0);
+ penpos3(thin, 0);
+ penpos4(thin, 270);
+ penpos5(thick, 180);
+ penpos6(thick, 180);
+
+ lft x1lft = leftmost;
+ x1l = x2l;
+ x3r = x2r;
+ rt x5l = rt x6l = rightmost;
+ x4 = 2/3[x3r, x5r];
+ bot y2 = bot y3 = bot y6 = 0;
+ top y4l = normht + overshoot;
+ y5 = y4r - curveht;
+
+ filldraw curly_path(1) -- z2r -- z2l -- cycle;
+ filldraw z3l{dir 85} ... {right}z4l ... {down}z5l -- z6l -- z6r
+ -- z5r{up} ... {left}z4r ... {dir (85+180)}z3r -- cycle;
+ penlabels(1,2,3,4,5,6);
+endthaichar;
diff --git a/fonts/thai/rmit/charb8.mf b/fonts/thai/rmit/charb8.mf
new file mode 100644
index 0000000000..6b5614c484
--- /dev/null
+++ b/fonts/thai/rmit/charb8.mf
@@ -0,0 +1,17 @@
+beginthaichar("TAW TOH!NG", "B8", "to", jutout# + 2thick# + normwd#, normht#, 0);
+ penpos1(thick, 0);
+ cup_def(2);
+ rhat_def(3);
+
+ z1l = z3taw;
+ z2lft = z1l;
+ z2rt = z3r;
+ y3top = normht;
+ x3lft = leftmost;
+ x3rt = rightmost;
+ x3r = rightmost;
+
+ filldraw z1l -- cup_path_o(2) -- reverse rhat_path(3)
+ -- reverse cup_path_i(2) -- z1r -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/charb9.mf b/fonts/thai/rmit/charb9.mf
new file mode 100644
index 0000000000..ddc323b13e
--- /dev/null
+++ b/fonts/thai/rmit/charb9.mf
@@ -0,0 +1,23 @@
+beginthaichar("NAW NOO", "B9", "no", 2dia# + 2thick# + normwd#, normht#, 0);
+ q_def(1, thick, 0);
+ penpos3(thick, 0);
+ penpos4(thin, 270);
+ b_def(5, thick, thick - thin);
+ topcap_def(6);
+
+ lft x1lft = leftmost;
+ x1rt = x3r;
+ rt x5rt = rightmost;
+ x4 = x5l;
+ x6 = x5;
+ top y1top = normht;
+ bot y3 = 0;
+ bot y5bot = 0;
+ top y6top = normht;
+ y4l = y5top;
+
+ filldraw q_path(1) -- z3r -- z3l -- cycle;
+ filldraw z3l .. {right}z4l -- z4r{left} .. z3r -- cycle;
+ filldraw b_path(5) -- z6r -- z6l -- cycle;
+ penlabels(1,2,3,4,5,6);
+endthaichar;
diff --git a/fonts/thai/rmit/charba.mf b/fonts/thai/rmit/charba.mf
new file mode 100644
index 0000000000..3b20c32a9a
--- /dev/null
+++ b/fonts/thai/rmit/charba.mf
@@ -0,0 +1,17 @@
+beginthaichar("BAW BAI MAI", "BA", "bb", dia# + 2thick# + normwd#, normht#, 0);
+ q_def(1, thick, 0);
+ base_def(2);
+ penpos3(thick, 0);
+
+ lft x1lft = leftmost;
+ x1l = x2lft;
+ x2rt = x3r;
+ rt x3r = rightmost;
+ top y1top = normht;
+ top y3 = normht;
+ y2bot = 0;
+
+ filldraw q_path(1) -- base_path_i(2) -- z3l -- z3r
+ -- reverse base_path_o(2) -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/charbb.mf b/fonts/thai/rmit/charbb.mf
new file mode 100644
index 0000000000..aef2dcfa89
--- /dev/null
+++ b/fonts/thai/rmit/charbb.mf
@@ -0,0 +1,17 @@
+beginthaichar("BPAW BPLAH", "BB", "bp/pb", dia# + 2thick# + normwd#, normht# + uvgap#, 0);
+ q_def(1, thick, 0);
+ base_def(2);
+ topcap_def(3);
+
+ lft x1lft = leftmost;
+ x1l = x2lft;
+ x2rt = x3r;
+ rt x3r = rightmost;
+ top y1top = normht;
+ top y3 = normht + uvgap;
+ y2bot = 0;
+
+ filldraw q_path(1) -- base_path_i(2) -- z3l -- z3r
+ -- reverse base_path_o(2) -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/charbc.mf b/fonts/thai/rmit/charbc.mf
new file mode 100644
index 0000000000..81166a4a9e
--- /dev/null
+++ b/fonts/thai/rmit/charbc.mf
@@ -0,0 +1,27 @@
+beginthaichar("PAW PEUNG", "BC", "pe", 2thick# + normwd#, normht#, 0);
+ p_def(1, thick, thick/2);
+ penpos2(thick, 0);
+ penpos3(thin ++ thin, 270);
+ penpos4(thin ++ thin, 270);
+ penpos5(thin ++ thin, 270);
+ penpos6(thick, 0);
+ penpos7(thick, 0);
+ numeric theta, linewd;
+
+ lft x1lft = leftmost;
+ x1 = x2;
+ x6 = x7;
+ x3 = x2r;
+ x5 = x6l;
+ x4 = 1/2[x3,x5];
+ rt x7r = rightmost;
+ top y1top = normht;
+ top y7 = normht;
+ bot y2 = bot y6 = 0;
+ y3r = y5r = y6;
+ y4r + 3dia = normht;
+
+ filldraw p_path(1) -- z3l -- z4l -- z5l -- z7l -- z7r -- z6r
+ -- z6l -- z4r -- z2r -- z2l -- cycle;
+ penlabels(1,2,3,4,5,6,7);
+endthaichar;
diff --git a/fonts/thai/rmit/charbd.mf b/fonts/thai/rmit/charbd.mf
new file mode 100644
index 0000000000..7a9041637d
--- /dev/null
+++ b/fonts/thai/rmit/charbd.mf
@@ -0,0 +1,27 @@
+beginthaichar("FAW FAH!N", "BD", "fn", 2thick# + normwd#, normht# + uvgap#, 0);
+ p_def(1, thick, thick/2);
+ penpos2(thick, 0);
+ penpos3(thin ++ thin, 270);
+ penpos4(thin ++ thin, 270);
+ penpos5(thin ++ thin, 270);
+ penpos6(thick, 0);
+ topcap_def(7);
+
+ lft x1lft = leftmost;
+ x1 = x2;
+ x6 = x7;
+ x3 = x2r;
+ x5 = x6l;
+ x4 = 1/2[x3,x5];
+ rt x7r = rightmost;
+ top y1top = normht;
+ top y7top = normht + uvgap;
+ bot y2 = bot y6 = 0;
+ y3r = y2;
+ y5r = y6;
+ y4r + 3dia = normht;
+
+ filldraw p_path(1) -- z3l -- z4l -- z5l -- z7l -- z7r -- z6r
+ -- z6l -- z4r -- z2r -- z2l -- cycle;
+ penlabels(1,2,3,4,5,6,7);
+endthaichar;
diff --git a/fonts/thai/rmit/charbe.mf b/fonts/thai/rmit/charbe.mf
new file mode 100644
index 0000000000..87393ab190
--- /dev/null
+++ b/fonts/thai/rmit/charbe.mf
@@ -0,0 +1,26 @@
+beginthaichar("PAW PAH!N", "BE", "pa", dia# + 2thick# + normwd#, normht#, 0);
+ q_def(1, thick, 1/4thick);
+ penpos2(thick, 0);
+ penpos3(thin ++ thin, 270);
+ penpos4(thin ++ thin, 270);
+ penpos5(thin ++ thin, 270);
+ penpos6(thick, 0);
+ penpos7(thick, 0);
+
+ lft x1lft = leftmost;
+ x1 = x2;
+ x6 = x7;
+ x3 = x2r;
+ x5 = x6l;
+ x4 = 1/2[x3,x5];
+ rt x7r = rightmost;
+ top y1top = top y7 = normht;
+ bot y2 = bot y6 = 0;
+ y3r = y2;
+ y5r = y6;
+ y4r + 2dia = y7;
+
+ filldraw q_path(1) -- z3l -- z4l -- z5l -- z7l -- z7r -- z6r
+ -- z6l -- z4r -- z2r -- z2l -- cycle;
+ penlabels(1,2,3,4,5,6,7);
+endthaichar;
diff --git a/fonts/thai/rmit/charbf.mf b/fonts/thai/rmit/charbf.mf
new file mode 100644
index 0000000000..9ca2499d81
--- /dev/null
+++ b/fonts/thai/rmit/charbf.mf
@@ -0,0 +1,27 @@
+beginthaichar("FAW FAH!", "BF", "fa", dia# + 2thick# + normwd#, normht# + uvgap#, 0);
+ q_def(1, thick, 1/4thick);
+ penpos2(thick, 0);
+ penpos3(thin ++ thin, 270);
+ penpos4(thin ++ thin, 270);
+ penpos5(thin ++ thin, 270);
+ penpos6(thick, 0);
+ topcap_def(7);
+
+ lft x1lft = leftmost;
+ x1 = x2;
+ x6 = x7;
+ x3 = x2r;
+ x5 = x6l;
+ x4 = 1/2[x3,x5];
+ rt x7r = rightmost;
+ top y1top = normht;
+ top y7top = normht + uvgap;
+ bot y2 = bot y6 = 0;
+ y3r = y2;
+ y5r = y6;
+ y4r + 2dia = normht;
+
+ filldraw q_path(1) -- z3l -- z4l -- z5l -- z7l -- z7r -- z6r
+ -- z6l -- z4r -- z2r -- z2l -- cycle;
+ penlabels(1,2,3,4,5,6,7);
+endthaichar;
diff --git a/fonts/thai/rmit/charc0.mf b/fonts/thai/rmit/charc0.mf
new file mode 100644
index 0000000000..cd5570b984
--- /dev/null
+++ b/fonts/thai/rmit/charc0.mf
@@ -0,0 +1,16 @@
+beginthaichar("PAW SAH!M-PAO!", "C0", "ps", dia# + thin# + thick# + normwd#, normht#, 0);
+ d_def(1, thick, thick/2);
+ gor_def(2);
+ botcap_def(3);
+
+ lft x1lft = leftmost;
+ bot y1bot = 0;
+ x1l = x2lft;
+ x2rt = x3r;
+ rt x3r = rightmost;
+ bot y3bot = 0;
+
+ filldraw d_path(1) -- gor_path_i(2) -- z3l
+ -- z3r -- reverse gor_path_o(2) -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/charc1.mf b/fonts/thai/rmit/charc1.mf
new file mode 100644
index 0000000000..9e5738a1ef
--- /dev/null
+++ b/fonts/thai/rmit/charc1.mf
@@ -0,0 +1,19 @@
+beginthaichar("MAW MAH", "C1", "mm", dia# + 2thick# + normwd#, normht#, 0);
+ q_def(1, thick, 0);
+ dd_def(2);
+ penpos3(thick, 0);
+ penpos4(thick, 0);
+
+ lft x1lft = leftmost;
+ x1rt = x2rt;
+ rt x3r = rightmost;
+ x4 = x3;
+ top y1top = normht;
+ bot y3 = 0;
+ top y4 = normht;
+
+ filldraw q_path(1) -- dd_path_o(2) .. z3r
+ -- z3l .. reverse dd_path_i(2) -- cycle;
+ filldraw z3l -- z3r -- z4r -- z4l -- cycle;
+ penlabels(1,2,3,4);
+endthaichar;
diff --git a/fonts/thai/rmit/charc2.mf b/fonts/thai/rmit/charc2.mf
new file mode 100644
index 0000000000..c7f57e3af2
--- /dev/null
+++ b/fonts/thai/rmit/charc2.mf
@@ -0,0 +1,24 @@
+beginthaichar("YAW YAH!K", "C2", "ya", 2thick# + normwd#, normht#, 0);
+ p_def(1, thick, 0);
+ penpos2(thin, 270);
+ penpos3(thick, 0);
+ cup_def(4);
+ penpos5(thick, 0);
+
+ lft x1lft = lft x4lft = leftmost;
+ rt x4rt = rt x5r = rightmost;
+ x2 = x1rt;
+ x3l = x4lft;
+ top y1top = normht;
+ %y2l = y1bot - dia - thin;
+ %y3 = y2r - dia - thin;
+ y2 = 1/2normht;
+ y3 = y4top;
+ top y5 = normht;
+
+ filldraw p_path(1){down} .. {right}z2l -- z2r{left} .. {up}cycle;
+ filldraw z2r{left} .. {down}z3r -- cup_path_i(4)
+ -- z5l -- z5r -- (reverse cup_path_o(4)) -- z3l{up}
+ .. {right}z2l -- cycle;
+ penlabels(1,2,3,4,5);
+endthaichar;
diff --git a/fonts/thai/rmit/charc3.mf b/fonts/thai/rmit/charc3.mf
new file mode 100644
index 0000000000..a321984271
--- /dev/null
+++ b/fonts/thai/rmit/charc3.mf
@@ -0,0 +1,14 @@
+beginthaichar("RAW REUA", "C3", "rr", thick# + normwd#, normht#, 0);
+ d_def(1, thick, 0);
+ rhat_def(2);
+
+ y2top = normht;
+ y1bot = 0;
+ x2lft = leftmost;
+ x2rt = rightmost;
+ x2r = rightmost - thick;
+ x1 = x2;
+
+ filldraw rhat_path(2) -- reverse d_path(1) -- cycle;
+ penlabels(1,2);
+endthaichar;
diff --git a/fonts/thai/rmit/charc4.mf b/fonts/thai/rmit/charc4.mf
new file mode 100644
index 0000000000..f773aa438d
--- /dev/null
+++ b/fonts/thai/rmit/charc4.mf
@@ -0,0 +1,15 @@
+beginthaichar("LEU!/REU!", "C4", "re", jutout# + 2thick# + normwd#, normht#, lvgap# + lvht#);
+ b_def(1, thick, thick/2);
+ gor_def(2);
+ botcap_def(3);
+
+ lft x1lft = lft x2lft = leftmost + jutout;
+ x2rt = x3r;
+ rt x3r = rightmost;
+ bot y1bot = 0;
+ bot y3bot = -lvgap - lvht;
+
+ filldraw b_path(1) -- gor_path_i(2) -- z3l -- z3r
+ -- reverse gor_path_o(2) -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/charc5.mf b/fonts/thai/rmit/charc5.mf
new file mode 100644
index 0000000000..5752bc5689
--- /dev/null
+++ b/fonts/thai/rmit/charc5.mf
@@ -0,0 +1,26 @@
+beginthaichar("LAW LEE!NG", "C5", "li", jutout# + 2thick# + normwd#, normht#, 0);
+ b_def(1, thick, 1/2thick);
+ penpos6(thick, 0);
+ penpos2(thin, 270);
+ penpos3(thin, 0);
+ penpos4(thick, 0);
+ hat_def(5, thick);
+
+ lft x1lft = leftmost + jutout;
+ x6l = x1lft;
+ x2 = 1/2[x1r, x3r];
+ x3l = x4l;
+ rt x4r = rightmost;
+ x5rt = x4r;
+ x5lft = leftmost;
+ bot y1bot = 0;
+ top y2 + thin = bot y5bot;
+ y6 = y2r - curveht;
+ bot y3 = bot y4 = 0;
+ top y5top = normht + overshoot;
+
+ filldraw b_path(1) -- z6r{up} .. {right}z2r .. {down}z3l -- z3r{up}
+ .. {left}z2l .. {down}z6l -- cycle;
+ filldraw z4l -- hat_path(5) -- z4r -- cycle;
+ penlabels(1,2,3,4,5);
+endthaichar;
diff --git a/fonts/thai/rmit/charc6.mf b/fonts/thai/rmit/charc6.mf
new file mode 100644
index 0000000000..4bc5fe6aab
--- /dev/null
+++ b/fonts/thai/rmit/charc6.mf
@@ -0,0 +1,16 @@
+beginthaichar("LEU", "C6", "le", dia# + thin# + thick# + normwd#, normht#, lvgap# + lvht#);
+ d_def(1, thick, thick/2);
+ gor_def(2);
+ botcap_def(3);
+
+ lft x1lft = leftmost;
+ bot y1bot = 0;
+ x1l = x2lft;
+ x2rt = x3r;
+ rt x3r = rightmost;
+ bot y3bot = -lvht - lvgap;
+
+ filldraw d_path(1) -- gor_path_i(2) -- z3l
+ -- z3r -- reverse gor_path_o(2) -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/charc7.mf b/fonts/thai/rmit/charc7.mf
new file mode 100644
index 0000000000..68eda7f8f5
--- /dev/null
+++ b/fonts/thai/rmit/charc7.mf
@@ -0,0 +1,13 @@
+beginthaichar("WAW WAAN", "C7", "ww", thick# + normwd#, normht#, 0);
+ d_def(1, thick, 0);
+ hat_def(2, thick);
+
+ y2top = normht + overshoot;
+ y1bot = 0;
+ x2lft = leftmost;
+ x2rt = rightmost;
+ x1 = x2;
+
+ filldraw hat_path(2) --- reverse d_path(1) --- cycle;
+ penlabels(1,2);
+endthaichar;
diff --git a/fonts/thai/rmit/charc8.mf b/fonts/thai/rmit/charc8.mf
new file mode 100644
index 0000000000..cd094551b0
--- /dev/null
+++ b/fonts/thai/rmit/charc8.mf
@@ -0,0 +1,39 @@
+beginthaichar("SAW SAH-LAH/SAW KAW", "C8", "sk", 2thick# + jutout# + normwd#, normht#, 0 );
+ penpos1(thick, 0);
+ penpos2(thick, 0);
+ penpos3(thin, 270);
+ penpos4(thin, 180);
+ penpos5(thin, 90);
+ penpos6(thin, 0);
+ penpos7(thin, 270);
+ penpos8(thick, 180);
+ penpos9(thick, 180);
+ penpos10(thin, -45);
+ penpos11(thin, -45);
+
+ lft x6l = leftmost;
+ x6l = x1l - jutout;
+ x1 = x2;
+ x4r = x2r + dia;
+ x3 = x5 = (x2r + x4l) / 2;
+ x8 = x9;
+ rt x8l = rightmost;
+ x7 = (x6 + x8) / 2;
+ y1 = y9 = 0;
+ top y7 = normht;
+ y6 = y8 = y7 - 1.2curveht;
+ y5 = y6 - 3/2curveht;
+ y2 = y5 - 1/3dia;
+ y3r = y5r + dia;
+ y4 = (y3 + y5) / 2;
+ z10 = (z7{right} .. {down}z8) intersectionpoint ((x7, y8) .. (x8, y7));
+ x11 = rightmost;
+ y11 = normht + dia;
+
+ filldraw z1l{up} -- z2l{up} .. z3l{right} .. z4l{down} .. z5l{left}
+ .. z6l{up} .. z7l{right} .. {down}z8l -- z9l -- z9r
+ -- z8r{up} .. {left}z7r .. z6r{down} .. z5r{right}
+ .. z4r{up} .. z3r{left} .. z2r{down} -- z1r{down} -- cycle;
+ filldraw z10l -- z10r -- z11r -- z11l -- cycle;
+ penlabels(range 1 thru 9);
+endthaichar;
diff --git a/fonts/thai/rmit/charc9.mf b/fonts/thai/rmit/charc9.mf
new file mode 100644
index 0000000000..8ea5dd776b
--- /dev/null
+++ b/fonts/thai/rmit/charc9.mf
@@ -0,0 +1,34 @@
+beginthaichar("SAW REU SEE", "C9", "sr", dia# + 2thick# + normwd# + 1/2normwd#, normht#, 0);
+ q_def(1, thick, 0);
+ base_def(2);
+ penpos3(thick, 0);
+ penpos11(thin, 180);
+ penpos12(thin, 270);
+ penpos13(thin, 0);
+ penpos14(thin, 90);
+ penpos15(thin, 270);
+ penpos16(thick, 0);
+
+ lft x1lft = leftmost;
+ x1l = x2lft;
+ x2rt = x3r;
+ rt x3r = rightmost - 1/2normwd;
+ top y1top = normht;
+ top y3 = normht;
+ y2bot = 0;
+ x12 = x14 = 1/2[x11, x13] = 1/2[x2lft, x2rt];
+ x13l = x11r + dia;
+ x15 = 1/2[x11, x16];
+ x16r = rightmost;
+ y11 = y13 = 1/2[y14, y12];
+ y12l = y14l - dia;
+ y14r = y16 = 0.75normht;
+ y15r = y14 - 2dia;
+
+ filldraw q_path(1) -- base_path_i(2) -- z3l -- z3r
+ -- reverse base_path_o(2) -- cycle;
+
+ penstroke z11e{down} .. z12e{right} .. z13e{up} .. z14e{left}
+ .. z11e{down} .. z15e{right} .. {up}z16e;
+ penlabels(1,2,3,11,12,13,14,15,16);
+endthaichar;
diff --git a/fonts/thai/rmit/charca.mf b/fonts/thai/rmit/charca.mf
new file mode 100644
index 0000000000..f1692fdf6b
--- /dev/null
+++ b/fonts/thai/rmit/charca.mf
@@ -0,0 +1,34 @@
+beginthaichar("SAW SEUA/SAW LAW", "CA", "sl", jutout# + 2thick# + normwd#, normht# + uvgap#, 0);
+ b_def(1, thick, 1/2thick);
+ penpos6(thick, 0);
+ penpos2(thin, 270);
+ penpos3(thin, 0);
+ penpos4(thick, 0);
+ hat_def(5, thick);
+ penpos7(0, 0);
+ penpos8(1/2[thin, thick], 360-45);
+
+ lft x1lft = leftmost + jutout;
+ x6l = x1lft;
+ x2 = 1/2[x1r, x3r];
+ x3l = x4l;
+ rt x4r = rightmost;
+ x5rt = x4r;
+ x5lft = leftmost;
+ bot y1bot = 0;
+ top y2 + thin = bot y5bot;
+ y6 = y2r - curveht;
+ bot y3 = bot y4 = 0;
+ top y5top = normht + overshoot;
+
+ x7 = 1/2[leftmost, rightmost];
+ y7 = y2l;
+ rt x8r = rightmost;
+ top y8l = normht + uvgap;
+
+ filldraw b_path(1) -- z6r{up} .. {right}z2r .. {down}z3l -- z3r{up}
+ .. {left}z2l .. {down}z6l -- cycle;
+ filldraw z4l -- hat_path(5) -- z4r -- cycle;
+ filldraw z7l -- z8l -- z8r -- cycle;
+ penlabels(1,2,3,4,5);
+endthaichar;
diff --git a/fonts/thai/rmit/charcb.mf b/fonts/thai/rmit/charcb.mf
new file mode 100644
index 0000000000..296fb81bbd
--- /dev/null
+++ b/fonts/thai/rmit/charcb.mf
@@ -0,0 +1,24 @@
+beginthaichar("HAW HEEP", "CB", "he", 2dia# + 2thick# + normwd#, normht#, 0);
+ q_def(1, thick, 0);
+ penpos2(thick, 0);
+ penpos3(thin, 0);
+ penpos4(thin, 0);
+ p_def(5, thick, thick - thin);
+ penpos6(thick, 0);
+
+ lft x1lft = leftmost;
+ x1l = x2l;
+ x3r = x2r;
+ x4l = x5lft;
+ rt x5rt = rightmost;
+ x6l = x5lft;
+ top y1top = top y5top = normht;
+ bot y2 = bot y3 = bot y6 = 0;
+ y4r = y5bot;
+
+ filldraw q_path(1) -- z2r -- z2l -- cycle;
+ filldraw z3l -- z4l -- z4r -- z3r -- cycle;
+ filldraw p_path(5) -- z6r -- z6l -- cycle;
+
+ penlabels(1,2,3,4,5,6);
+endthaichar;
diff --git a/fonts/thai/rmit/charcc.mf b/fonts/thai/rmit/charcc.mf
new file mode 100644
index 0000000000..81fc656614
--- /dev/null
+++ b/fonts/thai/rmit/charcc.mf
@@ -0,0 +1,33 @@
+beginthaichar("LAW JOO!-LAH", "CC", "lj", 2dia# + 2thick# + normwd#, normht# + dia#, 0);
+ q_def(1, thick, 1/4thick);
+ penpos2(thick, 0);
+ penpos3(thin ++ thin, 270);
+ penpos4(thin ++ thin, 270);
+ penpos5(thin ++ thin, 270);
+ penpos6(thick, 0);
+ q_def(7, thick, 1/4thick);
+ penpos8(thin, 270);
+ penpos9(1/2[thin, thick], 360-45);
+
+ lft x1lft = leftmost;
+ x1 = x2;
+ x6 = x7;
+ x3 = x2r;
+ x5 = x6l;
+ x4 = 1/2[x3,x5];
+ rt x7r = x8;
+ rt x9r = rightmost;
+ x8 + dia = x9;
+ top y1top = top y7top = normht;
+ bot y2 = bot y6 = 0;
+ y3r = y2;
+ y5r = y6;
+ y4r + 3dia = y7top;
+ y8r = y7bot + thin;
+ top y9l = normht + dia;
+
+ filldraw q_path(1) -- z3l -- z4l -- z5l -- q_path(7) -- z6r
+ -- z6l -- z4r -- z2r -- z2l -- cycle;
+ filldraw z8l. .. z9l -- z9r .. z8r -- cycle;
+ penlabels(1,2,3,4,5,6,7);
+endthaichar;
diff --git a/fonts/thai/rmit/charcd.mf b/fonts/thai/rmit/charcd.mf
new file mode 100644
index 0000000000..844d450c87
--- /dev/null
+++ b/fonts/thai/rmit/charcd.mf
@@ -0,0 +1,15 @@
+beginthaichar("AW AHNG", "CD", "aw", 2thick# + normwd#, normht#, 0);
+ p_def(1, thick, 1/3thick);
+ cup_def(2);
+ hat_def(3, thick);
+
+ x1lft = x2lft = x3lft + jutout;
+ x3lft = leftmost;
+ x2rt = x3rt = rightmost;
+ y1top + jutout = y3bot;
+ top y3top = normht + overshoot;
+
+ filldraw p_path(1) --- cup_path_i(2) --- hat_path(3) ---
+ reverse cup_path_o(2) --- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/charce.mf b/fonts/thai/rmit/charce.mf
new file mode 100644
index 0000000000..07066390e0
--- /dev/null
+++ b/fonts/thai/rmit/charce.mf
@@ -0,0 +1,25 @@
+beginthaichar("HAW NOK HOOK", "CE", "hn", 2thick# + normwd#, normht#, 0);
+ p_def(1, thick, 1/3thick);
+ cup_def(2);
+ penpos3(thick, 0);
+ penpos4(thin, 90);
+ penpos5(thin, 180);
+ penpos6(thin, 270);
+ penpos7(thin, 315);
+
+ x1lft = x2lft = x5r = leftmost;
+ x2rt = x3r = x7r = rightmost;
+ x4 = x6 = 1/2[x3, x5];
+ y1top + jutout = y6r;
+ y3 = y4l - curveht;
+ y4r = normht;
+ y5 = 1/2[y4l, y6l];
+ y6l = y4l - curveht;
+ y7r = normht;
+
+ filldraw p_path(1) --- cup_path_i(2) --- z3l{up} .. z4l{left}
+ .. z5l{down} .. z6l{right} .. {dir 45}z7l -- z7r{dir 225}
+ .. z6r{left} .. z5r{up} .. z4r{right} .. z3r{down}
+ --- reverse cup_path_o(2) --- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/charcf.mf b/fonts/thai/rmit/charcf.mf
new file mode 100644
index 0000000000..13bba3bb7b
--- /dev/null
+++ b/fonts/thai/rmit/charcf.mf
@@ -0,0 +1,24 @@
+beginthaichar("PERY YAHN NOY", "CF", "py", thick# + 2thin# + 2dia#, normht#, 0);
+ penpos1(thick, 0);
+ penpos2(thick, 0);
+ penpos3(thin, 270);
+ penpos4(thin, 0);
+ penpos5(thin, 90);
+ penpos6(thin, 180);
+
+ x1r = x2r = rightmost;
+ x3 = x5 = 1/2[x6, x4];
+ x4l = x6l + dia;
+ x6r = leftmost;
+ y1 = 0;
+ y2 = normht;
+ y3l + dia = y5l;
+ y4 = y6 = 1/2[y3, y5];
+ y5r = normht - dia;
+
+ filldraw z1l -- z2l -- z2r -- z1r -- cycle;
+ filldraw z3l{right} .. z4l{up} ..z5l{left} .. z6l{down} .. z3l{right}
+ .. z2l{up} -- z2r{down} .. z3r{left} .. z6r{up}
+ .. z5r{right} .. z4r{down} .. {left}z3r -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/chard0.mf b/fonts/thai/rmit/chard0.mf
new file mode 100644
index 0000000000..26e7e25c25
--- /dev/null
+++ b/fonts/thai/rmit/chard0.mf
@@ -0,0 +1,40 @@
+beginthaichar("SARA AH!", "D0", "uh", normwd# + thick#, normht#, 0);
+ penpos1(thin, 180);
+ penpos2(thin, 270);
+ penpos3(thin, 0);
+ penpos4(thin, 90);
+ penpos5(thin, 270);
+ penpos6(thick, 0);
+ penpos11(thin, 180);
+ penpos12(thin, 270);
+ penpos13(thin, 0);
+ penpos14(thin, 90);
+ penpos15(thin, 270);
+ penpos16(thick, 0);
+
+ x1r = leftmost;
+ x2 = x4 = 1/2[x1, x3];
+ x3l = x1r + dia;
+ x5 = 1/2[x1, x6];
+ x6r = rightmost;
+ y1 = y3 = 1/2[y4, y2];
+ y2l = y4l - dia;
+ y4r = y6 = normht;
+ y5r = 6/10normht;
+
+ x11r = leftmost;
+ x12 = x14 = 1/2[x11, x13];
+ x13l = x11r + dia;
+ x15 = 1/2[x11, x16];
+ x16r = rightmost;
+ y11 = y13 = 1/2[y14, y12];
+ y12l = y14l - dia;
+ bot y15r = 0;
+ y14r = y16 = 4/10normht;
+
+ penstroke z1e{down} .. z2e{right} .. z3e{up} .. z4e{left} .. z1e{down}
+ .. z5e{right} .. {up}z6e;
+ penstroke z11e{down} .. z12e{right} .. z13e{up} .. z14e{left}
+ .. z11e{down} .. z15e{right} .. {up}z16e;
+ penlabels(1,2,3,4,5,6,11,12,13,14,15,16);
+endthaichar;
diff --git a/fonts/thai/rmit/chard1.mf b/fonts/thai/rmit/chard1.mf
new file mode 100644
index 0000000000..773bddc038
--- /dev/null
+++ b/fonts/thai/rmit/chard1.mf
@@ -0,0 +1,22 @@
+beginthaichar("MY HUNAGAHT", "D1", "ma", 0, uvht#, 0);
+ penpos1(thin, 180);
+ penpos2(thin, 270);
+ penpos3(thin, 0);
+ penpos4(thin, 90);
+ penpos5(thin, 270);
+ penpos6(thick, 0);
+
+ x1r = -1/2normwd;
+ x2 = x4 = 1/2[x1, x3];
+ x3l = x1r + dia;
+ x5 = 1/2[x1, x6l];
+ x6l = 1/2normwd;
+ y1 = y3 = 1/2[y4, y2];
+ y2l = y4l - dia;
+ y4r = y6 = normht + uvgap + uvht;
+ y5r = normht + uvgap;
+
+ penstroke z1e{down} .. z2e{right} .. z3e{up} .. z4e{left} .. z1e{down}
+ .. z5e{right} .. {up}z6e;
+ penlabels(1,2,3,4,5,6);
+endthaichar;
diff --git a/fonts/thai/rmit/chard2.mf b/fonts/thai/rmit/chard2.mf
new file mode 100644
index 0000000000..c275cc05ee
--- /dev/null
+++ b/fonts/thai/rmit/chard2.mf
@@ -0,0 +1,13 @@
+beginthaichar("SARA AH", "D2", "ah", thick# + normwd#, normht#, 0);
+ penpos1(thick, 0);
+ hat_def(2, thick);
+
+ lft x2lft = leftmost;
+ x1r = x2rt;
+ rt x2rt = rightmost;
+ bot y1 = 0;
+ top y2top = normht + overshoot;
+
+ filldraw hat_path(2) -- z1r -- z1l -- cycle;
+ penlabels(1,2);
+endthaichar;
diff --git a/fonts/thai/rmit/chard3.mf b/fonts/thai/rmit/chard3.mf
new file mode 100644
index 0000000000..e6670e8a53
--- /dev/null
+++ b/fonts/thai/rmit/chard3.mf
@@ -0,0 +1,25 @@
+beginthaichar("AH!M", "D3", "um", thick# + normwd#, normht# + uvgap# + uvht#, 0);
+ penpos1(thick, 0);
+ hat_def(2, thick);
+ penpos3(thin, 180);
+ penpos4(thin, 270);
+ penpos5(thin, 0);
+ penpos6(thin, 90);
+
+ lft x2lft = leftmost;
+ x1r = x2rt;
+ rt x2rt = rightmost;
+ bot y1 = 0;
+ top y2top = normht + overshoot;
+ x5r = - rightgap;
+ x3l + dia = x5l;
+ x4 = x6 = 1/2[x3, x5];
+ y4r = normht + uvgap;
+ y6l = y4l + dia;
+ y3 = y5 = 1/2[y4, y6];
+
+ filldraw hat_path(2) -- z1r -- z1l -- cycle;
+ filldraw z3r{down} .. z4r{right} .. z5r{up} .. z6r{left} .. cycle;
+ unfill z3l{down} .. z4l{right} .. z5l{up} .. z6l{left} .. cycle;
+ penlabels(1,2,3,4,5,6);
+endthaichar;
diff --git a/fonts/thai/rmit/chard4.mf b/fonts/thai/rmit/chard4.mf
new file mode 100644
index 0000000000..f56ba22da8
--- /dev/null
+++ b/fonts/thai/rmit/chard4.mf
@@ -0,0 +1,22 @@
+beginthaichar("EE!", "D4", "ih/see/shee", 0, normht# + uvgap# + uvht#, 0);
+ med := 1/2[thin, thick];
+ x1l + med = x1r;
+ y1l - thin = y1r;
+ z1 = 1/2[z1l, z1r];
+ x2t = x2b = 1/2[x1, x3];
+ y2t = y2b + med;
+ z2 = 1/2[z2t, z2b];
+ x3l + med = x3r;
+ y3l + thin = y3r;
+ z3 = 1/2[z3l, z3r];
+
+ x1r = - rightgap;
+ x3r = x1l - normwd;
+ y1r = normht + uvgap;
+ y2t = y1r + uvht - dia/2;
+ y3l = y1r + thin;
+
+ filldraw z1r -- z3l{up} .. z2t .. {down}cycle;
+ unfill z1l -- z3r{up} .. z2b .. {down}cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/chard5.mf b/fonts/thai/rmit/chard5.mf
new file mode 100644
index 0000000000..b6f943ef46
--- /dev/null
+++ b/fonts/thai/rmit/chard5.mf
@@ -0,0 +1,26 @@
+beginthaichar("EE", "D5", "ee", 0, normht# + uvgap# + uvht#, 0);
+ med := 1/2[thin, thick];
+ x1l + med = x1r;
+ y1l - thin = y1r;
+ z1 = 1/2[z1l, z1r];
+ x2t = x2b = 1/2[x1, x3];
+ y2t = y2b + med;
+ z2 = 1/2[z2t, z2b];
+ x3l + med = x3r;
+ y3l + thin = y3r;
+ z3 = 1/2[z3l, z3r];
+ penpos4(med, 0);
+
+ x1r = - rightgap;
+ x3r = x1l - normwd;
+ y1r = normht + uvgap;
+ y2t = y1r + uvht - dia/2;
+ y3l = y1r + thin;
+ x4r = x1r;
+ y4r = normht + uvgap + uvht;
+
+ filldraw z1r -- z3l{up} .. z2t .. {down}cycle;
+ unfill z1l -- z3r{up} .. z2b .. {down}cycle;
+ filldraw z1r -- z4r -- z4l -- z1l -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/chard6.mf b/fonts/thai/rmit/chard6.mf
new file mode 100644
index 0000000000..cf4ca72959
--- /dev/null
+++ b/fonts/thai/rmit/chard6.mf
@@ -0,0 +1,34 @@
+beginthaichar("EU!", "D6", "seu/sheu", 0, normht# + uvgap# + uvht#, 0);
+ med := 1/2[thin, thick];
+ x1l + med = x1r;
+ y1l - thin = y1r;
+ z1 = 1/2[z1l, z1r];
+ x2t = x2b = 1/2[x1, x3];
+ y2t = y2b + med;
+ z2 = 1/2[z2t, z2b];
+ x3l + med = x3r;
+ y3l + thin = y3r;
+ z3 = 1/2[z3l, z3r];
+ penpos4(thin, 0);
+ penpos5(thin, 270);
+ penpos6(thin, 180);
+ penpos7(thin, 90);
+
+ x6r = - rightgap;
+ x3r = x1l - normwd;
+ y1r = normht + uvgap;
+ y2t = y1r + uvht - dia/2;
+ y3l = y1r + thin;
+ z6 = z4 + (dia, 0);
+ z5 = z7 + (0, dia);
+ x5 = 1/2[x4, x6];
+ y6 = 1/2[y5, y7];
+ bot y7l = y1r;
+ x4r = x1r;
+
+ filldraw z1r -- z3l{up} .. z2t .. {down}cycle;
+ unfill z1l -- z3r{up} .. z2b .. {down}cycle;
+ filldraw z4l{up} .. z5l{right} .. z6l{down} .. z7l{left} .. cycle;
+ unfill z4r{up} .. z5r{right} .. z6r{down} .. z7r{left} .. cycle;
+ penlabels(1,2,3,4,5,6,7);
+endthaichar;
diff --git a/fonts/thai/rmit/chard7.mf b/fonts/thai/rmit/chard7.mf
new file mode 100644
index 0000000000..fa8ae9f95d
--- /dev/null
+++ b/fonts/thai/rmit/chard7.mf
@@ -0,0 +1,32 @@
+beginthaichar("EU", "D7", "eu", 0, normht# + uvgap# + uvht#, 0);
+ med := 1/2[thin, thick];
+ if 3med > 1/2normwd: med := 1/6normwd; fi;
+ x1l + med = x1r;
+ y1l - thin = y1r;
+ z1 = 1/2[z1l, z1r];
+ x2t = x2b = 1/2[x1, x3];
+ y2t = y2b + med;
+ z2 = 1/2[z2t, z2b];
+ x3l + med = x3r;
+ y3l + thin = y3r;
+ z3 = 1/2[z3l, z3r];
+ penpos4(med, 0);
+ penpos5(med, 0);
+
+ x1r = - rightgap;
+ x3r = x1l - normwd;
+ y1r = normht + uvgap;
+ y2t = y1r + uvht - 3/4dia;
+ y3l = y1r + thin;
+ x4r = x1r;
+ y4r = normht + uvgap + uvht;
+ z5 = z4 - (2med, 0);
+ z6l = (z1{up} .. {left}z2t) intersectionpoint ((x5l, 0) .. (x5l, y4r));
+ z6r = (z1{up} .. {left}z2t) intersectionpoint ((x5r, 0) .. (x5r, y4r));
+
+ filldraw z1r -- z3l{up} .. z2t .. {down}cycle;
+ unfill z1l -- z3r{up} .. z2b .. {down}cycle;
+ filldraw z1r -- z4r -- z4l -- z1l -- cycle;
+ filldraw z6r -- z5r -- z5l -- z6l -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/chard8.mf b/fonts/thai/rmit/chard8.mf
new file mode 100644
index 0000000000..c4c16a7fc9
--- /dev/null
+++ b/fonts/thai/rmit/chard8.mf
@@ -0,0 +1,11 @@
+beginthaichar("OO!", "D8", "shoo/soo", 0, 0, lvgap# + lvht#);
+ q_def(1, thick, thick);
+ penpos2(thick, 0);
+
+ x2r = x1rt = -rightgap;
+ y1top = -lvgap;
+ y2 = - lvgap - lvht;
+
+ filldraw q_path(1) -- z2r -- z2l -- cycle;
+ penlabels(1,2);
+endthaichar;
diff --git a/fonts/thai/rmit/chard9.mf b/fonts/thai/rmit/chard9.mf
new file mode 100644
index 0000000000..67152122f3
--- /dev/null
+++ b/fonts/thai/rmit/chard9.mf
@@ -0,0 +1,20 @@
+beginthaichar("OO", "D9", "oo", 0, 0, lvgap# + lvht#);
+ q_def(1, thick, thick);
+ base_def(2);
+ penpos3(thick, 0);
+
+ % without this adjustment, sometimes the base def is too close
+ % to the q_def
+ oo_adj := lvht - (cupht + 3thin + dia);
+ oo_adj := lvht - (3thin + dia);
+ % message decimal oo_adj;
+ if oo_adj > 0: oo_adj := 0 fi;
+ x2lft = x1l = x2rt - dia - 2thick;
+ x2rt = x3r = -rightgap;
+ y1top + oo_adj = y3 = -lvgap;
+ y2bot = - lvgap - lvht;
+
+ filldraw q_path(1) -- base_path_i(2) -- z3l -- z3r
+ -- reverse base_path_o(2) -- cycle;
+ penlabels(1,2,3);
+endthaichar;
diff --git a/fonts/thai/rmit/charda.mf b/fonts/thai/rmit/charda.mf
new file mode 100644
index 0000000000..5ea13d1ab1
--- /dev/null
+++ b/fonts/thai/rmit/charda.mf
@@ -0,0 +1,7 @@
+beginthaichar("full stop", "DA", "..", dia#, dia#, 0);
+ filldraw (leftmost, 1/2dia){up}
+ .. (1/2[leftmost, rightmost], dia){right}
+ .. (rightmost, 1/2dia){down}
+ .. (1/2[leftmost, rightmost], 0){left}
+ .. cycle;
+endthaichar;
diff --git a/fonts/thai/rmit/chare0.mf b/fonts/thai/rmit/chare0.mf
new file mode 100644
index 0000000000..99b3869914
--- /dev/null
+++ b/fonts/thai/rmit/chare0.mf
@@ -0,0 +1,11 @@
+beginthaichar("EH", "E0", "ay/eh", thick# + dia# + thin#, normht#, 0);
+ b_def(1, thick, 0);
+ penpos2(thick, 0);
+
+ x1lft = x2l = leftmost;
+ y1bot = 0;
+ y2 = normht;
+
+ filldraw b_path(1) -- z2r -- z2l -- cycle;
+ penlabels(1,2);
+endthaichar;
diff --git a/fonts/thai/rmit/chare1.mf b/fonts/thai/rmit/chare1.mf
new file mode 100644
index 0000000000..3919642656
--- /dev/null
+++ b/fonts/thai/rmit/chare1.mf
@@ -0,0 +1,17 @@
+beginthaichar("AA", "E1", "aa", 2thick# + 2dia# + 3thin#, normht#, 0);
+ b_def(1, thick, 0);
+ penpos2(thick, 0);
+ b_def(3, thick, 0);
+ penpos4(thick, 0);
+
+ x1lft = x2l = leftmost;
+ y1bot = 0;
+ y2 = normht;
+ x3lft = x4l = x1rt + thin;
+ y3bot = 0;
+ y4 = normht;
+
+ filldraw b_path(1) -- z2r -- z2l -- cycle;
+ filldraw b_path(3) -- z4r -- z4l -- cycle;
+ penlabels(1,2);
+endthaichar;
diff --git a/fonts/thai/rmit/chare2.mf b/fonts/thai/rmit/chare2.mf
new file mode 100644
index 0000000000..308177b4ea
--- /dev/null
+++ b/fonts/thai/rmit/chare2.mf
@@ -0,0 +1,14 @@
+beginthaichar("OH", "E2", "oh", 2thick# + normwd#, normht# + uvgap# + uvht#, 0);
+ b_def(1, thick, 0);
+ rhat_def(2);
+
+ y2top = normht + uvgap + uvht;
+ y1bot = 0;
+ x2lft = leftmost;
+ x2rt = rightmost;
+ x1rt = rightmost;
+ x1 = x2;
+
+ filldraw rhat_path(2) -- reverse b_path(1) -- cycle;
+ penlabels(1,2);
+endthaichar;
diff --git a/fonts/thai/rmit/chare3.mf b/fonts/thai/rmit/chare3.mf
new file mode 100644
index 0000000000..b5d9d1e9e0
--- /dev/null
+++ b/fonts/thai/rmit/chare3.mf
@@ -0,0 +1,30 @@
+beginthaichar("AI", "E3", "aj", 3thin# + dia# + 2thin# + thick# + dia# + thin#, normht# + uvgap# + uvht#, 0);
+ b_def(1, thick, 0);
+ penpos2(thick, 0);
+ penpos3(thin, 90);
+ penpos4(thin, 180);
+ penpos5(thin, 270);
+ penpos6(thin, 0);
+ penpos7(thin, 90);
+ penpos8(thin, 180);
+
+ x1rt = rightmost;
+ x2l = x1lft;
+ x3 = 1/2[x4l, x2l];
+ x4r = leftmost;
+ x5 = x7 = 1/2[x4l, x2l];
+ x6l = x8l + dia;
+ x5 = 1/2[x6, x8];
+ y1bot = 0;
+ y3r = normht + uvgap + uvht;
+ y2 = y4 = y3l - curveht;
+ y5r = y4 - curveht;
+ y5l + dia = y7l;
+ y8 = y6 = 1/2[y5, y7];
+
+ filldraw b_path(1) -- z2r{up} .. z3r{left} .. z4r{down} .. z5r{right}
+ .. z6r{up} .. z7r{left} .. z8r{down} .. z5r{right}
+ -- z5l{left} .. z8l{up} .. z7l{right} .. z6l{down}
+ .. z5l{left} .. z4l{up} .. z3l{right} .. z2l{down} -- cycle;
+ penlabels(1,2);
+endthaichar;
diff --git a/fonts/thai/rmit/chare4.mf b/fonts/thai/rmit/chare4.mf
new file mode 100644
index 0000000000..a25a33ed81
--- /dev/null
+++ b/fonts/thai/rmit/chare4.mf
@@ -0,0 +1,25 @@
+beginthaichar("AI", "E4", "ai", 4thick# + 2dia# + thin#, normht# + uvgap# + uvht#, 0);
+ b_def(1, thick, 0);
+ penpos2(thick, 0);
+ penpos3(thin, 90);
+ penpos4(thin, 90);
+ penpos5(thick, 0);
+ penpos6(thin, 180);
+
+ x1rt = rightmost;
+ x1lft = x2l;
+ x5l = leftmost;
+ x3 = 3/4[x5r, x2l];
+ x6 = 2/4[x5r, x2l];
+ x4 = 1/4[x5r, x2l];
+ y1bot = 0;
+ y6 = y2 = 1/2[y3r, y4l];
+ y5 = y3r = normht + uvgap + uvht;
+ y4l = normht + uvgap;
+
+ filldraw b_path(1) -- z2r{up} .. z3r{left} ... {down}z6r{down}
+ ... {left}z4r{left}
+ ... {up}z5r -- z5l{down} ... {right}z4l{right} ... {up}z6l{up}
+ ... {right}z3l .. z2l{down} -- cycle;
+ penlabels(1,2,3,4);
+endthaichar;
diff --git a/fonts/thai/rmit/chare5.mf b/fonts/thai/rmit/chare5.mf
new file mode 100644
index 0000000000..e717e255f9
--- /dev/null
+++ b/fonts/thai/rmit/chare5.mf
@@ -0,0 +1,13 @@
+beginthaichar("Tall AH", "E5", "ae", thick# + normwd#, normht#, lvgap# + lvht#);
+ penpos1(thick, 0);
+ hat_def(2, thick);
+
+ lft x2lft = leftmost;
+ x1r = x2rt;
+ rt x2rt = rightmost;
+ bot y1 = -lvgap - lvht;
+ top y2top = normht + overshoot;
+
+ filldraw hat_path(2) -- z1r -- z1l -- cycle;
+ penlabels(1,2);
+endthaichar;
diff --git a/fonts/thai/rmit/chare6.mf b/fonts/thai/rmit/chare6.mf
new file mode 100644
index 0000000000..f26cdfc8cc
--- /dev/null
+++ b/fonts/thai/rmit/chare6.mf
@@ -0,0 +1,34 @@
+beginthaichar("YAMOK", "E6", "ym", thin# + normwd# + thick#, normht#, lvgap# + lvht#);
+ penpos1(thin, 0);
+ penpos2(thin, 270);
+ penpos3(thin, 180);
+ penpos4(thin, 90);
+ penpos5(thin, 270);
+ penpos6(thin, 270);
+ penpos7(thin, 270);
+ penpos8(thick, 0);
+ penpos9(thick, 0);
+
+ x1l = leftmost;
+ x2 = x4 = 1/2[x1r, x3r];
+ x3r = x1r + dia;
+ x5 = 1/2[x1r, x6];
+ x6 = 1/2[x1r, x8l];
+ x7 = 1/2[x6, x8l];
+ x8r = x9r = rightmost;
+ y1 = y3 = 1/2[y2, y4];
+ y2r = y4r+dia;
+ y2r = y6r - thin;
+ y5l = y7l = normht;
+ y6l = y5r - thin;
+ y8 = y7r - curveht;
+ y9 = -lvgap - lvht;
+
+ filldraw z1l{up} .. z2l{right} .. z3l{down} .. z4l{left}
+ .. z1l{up} .. z5l{right} .. {dir -45}z6l{dir 45}
+ .. z7l{right} .. z8r{down} -- z9r -- z9l -- z8l{up}
+ .. z7r{left} .. {dir 225}z6r{dir 135} .. z5r{left}
+ .. z1r{down} .. z4r{right} .. z3r{up} .. z2r{left}
+ .. {down}z1r -- cycle;
+ penlabels(1,2,3,4,5,6,7,8,9);
+endthaichar;
diff --git a/fonts/thai/rmit/chare7.mf b/fonts/thai/rmit/chare7.mf
new file mode 100644
index 0000000000..10326737d2
--- /dev/null
+++ b/fonts/thai/rmit/chare7.mf
@@ -0,0 +1,31 @@
+beginthaichar("MY DTY KOO", "E7", "mk", 0, normht# + uvgap# + uvht#, 0);
+ penpos1(thin, 90);
+ penpos2(thin, 0);
+ penpos3(thin, 270);
+ penpos4(thin, 180);
+ penpos5(thin, 90);
+ penpos6(2thin, 45);
+ penpos7(thin, 270);
+ penpos8(thin, 315);
+
+ x1 = x3 = 1/2[x2, x4];
+ x2r + dia = x4r;
+ x5 = 1/2[x6, x2];
+ x7 = 2/3[x6, x8];
+ x8r = x4l;
+ y1r + dia = y3r;
+ y2 = y4 = 1/2[y1, y3];
+ y5l = y1r;
+ y6l = y1l;
+ y7 = 2/3[y6, y8];
+ % these define the size
+ x4l = - rightgap; % right edge
+ x6 = x4l - 3dia - 2thin; % left edge
+ y8l = normht + uvgap + uvht;
+ y1l = normht + uvgap;
+
+ penstroke z1e{left} .. z2e{up} .. z3e{right} .. z4e{down} .. z1e{left}
+ .. z5e{left} .. z6e & z6e{up} .. z7e{right} .. {dir 45}z8e;
+
+ penlabels(1,2,3,4,5,6,7,8);
+endthaichar;
diff --git a/fonts/thai/rmit/chare8.mf b/fonts/thai/rmit/chare8.mf
new file mode 100644
index 0000000000..0e205b683e
--- /dev/null
+++ b/fonts/thai/rmit/chare8.mf
@@ -0,0 +1,12 @@
+beginthaichar("MY TOH", "E8", "mt", 0, normht# + uvgap# + uvht#, 0);
+ penpos1(thick, 0);
+ penpos2(thin, 0);
+
+ x1r = -rightgap;
+ x1 = x2;
+ y1 = normht + uvgap + uvht;
+ y2 = normht + uvgap;
+
+ filldraw z1l -- z2l -- z2r -- z1r -- cycle;
+ penlabels(1,2);
+endthaichar;
diff --git a/fonts/thai/rmit/chare9.mf b/fonts/thai/rmit/chare9.mf
new file mode 100644
index 0000000000..7a567268ba
--- /dev/null
+++ b/fonts/thai/rmit/chare9.mf
@@ -0,0 +1,24 @@
+beginthaichar("MY EHK", "E9", "me", 0, normht# + uvgap# + uvht#, 0);
+ penpos1(thin, 180);
+ penpos2(thin, 90);
+ penpos3(thin, 0);
+ penpos4(thin, 270);
+ penpos5(thin, 90);
+ penpos6(thin, 0);
+
+ x6r = -rightgap;
+ x1l = x6l - dia;
+ x1r - dia = x3r;
+ x3l = x5;
+ x2 = x4 = 1/2[x1, x3];
+ y4l = y6 = normht + uvgap + uvht;
+ y2r + dia = y4r;
+ y1 = y3 = 1/2[y2, y4];
+ y5l = normht + uvgap;
+
+ filldraw z1l{down} .. z2l{left} .. z3l{up} .. z4l{right} .. z1l{down}
+ .. {left}z5l -- z5r{right} .. z1r{up} .. z4r{left}
+ .. z3r{down} .. z2r{right} .. z1r{up} -- cycle;
+ filldraw z5r{right} .. {up}z6l -- z6r{down} .. z5l{left} -- cycle;
+ penlabels(1,2,3,4,5,6);
+endthaichar;
diff --git a/fonts/thai/rmit/charea.mf b/fonts/thai/rmit/charea.mf
new file mode 100644
index 0000000000..289e06ef24
--- /dev/null
+++ b/fonts/thai/rmit/charea.mf
@@ -0,0 +1,43 @@
+beginthaichar("MY DTREE", "EA", "md", 0, normht# + uvgap# + uvht#, 0);
+ penpos1(thin, 90);
+ penpos2(thin, 0);
+ penpos3(thin, 270);
+ penpos4(thin, 180);
+ penpos5(thin, 0);
+ penpos6(thin, 270);
+ penpos7(thin, 180);
+ penpos20(thin, 0);
+ penpos8(thin, 270);
+ penpos9(thin, 180);
+ penpos10(thin, 180);
+ penpos11(thin, 180);
+ penpos12(thin, 180);
+
+ z20 = z7;
+ x1 = x3 = 1/2[x2, x4];
+ x2r + thin = x4r;
+ x5r = x2l;
+ x6 = 1/2[x5, x7];
+ x7 = 1/2[x5, x9];
+ x8 = 1/2[x7, x9];
+ x9 = x11 - 2thin;
+ x10 = x12 = x9 - thin;
+ y2 = y4 = 1/2[y1, y3];
+ y3r = y1r + thin;
+ y5 = y9 = 1/2[y1, y6];
+ y6 = y8 = 2/3[y1, y12];
+ y7 = y3r;
+ y10 = y1;
+ y11 = 1/2[y10, y12];
+ % these parameters define size of object
+ x5l = x11 - 12thin; % leftmost
+ x11r = -rightgap; % rightmost
+ y1l = normht + uvgap; % bottom
+ y12 = normht + uvgap + uvht; % top
+
+ penstroke z1e{left} .. z2e{up} .. z3e{right} .. z4e{down} .. z1e{left}
+ .. z5e{up} .. z6e{right} .. {down}z7e;
+ penstroke z20e{up} .. z8e{right} .. z9e{down} .. z10e;
+ penstroke z12e .. z11e{down} .. z10e;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12);
+endthaichar;
diff --git a/fonts/thai/rmit/chareb.mf b/fonts/thai/rmit/chareb.mf
new file mode 100644
index 0000000000..74a9a50130
--- /dev/null
+++ b/fonts/thai/rmit/chareb.mf
@@ -0,0 +1,17 @@
+beginthaichar("MY JUTAWAH", "EB", "mj", 0, normht# + uvgap# + uvht#, 0);
+ penpos1(thin, 0);
+ penpos2(thin, 0);
+ penpos3(thin, 270);
+ penpos4(thin, 270);
+
+ x1 = x2 = 1/2[x3, x4];
+ x4 = -rightgap;
+ x3 = x4 - uvht;
+ y1 = normht + uvgap + uvht;
+ y2 = normht + uvgap;
+ y3 = y4 = 1/2[y1, y2];
+
+ filldraw z1l -- z2l -- z2r -- z1r -- cycle;
+ filldraw z3l -- z4l -- z4r -- z3r -- cycle;
+ penlabels(1,2,3,4);
+endthaichar;
diff --git a/fonts/thai/rmit/i.mf b/fonts/thai/rmit/i.mf
new file mode 100644
index 0000000000..7ebcc8b686
--- /dev/null
+++ b/fonts/thai/rmit/i.mf
@@ -0,0 +1,25 @@
+slant := 0.4;
+px# := 1/5vpt#;
+py# := 1/5vpt#;
+normht# := 4vpt#;
+normwd# := 2vpt#;
+skinnywd# := .6normwd#;
+dotsize# := skinnywd# / 4;
+dia# := 1/2vpt#;
+thick# := 1/6vpt#;
+thin# := 1/6vpt#;
+overshoot# := 1/3thin#;
+jutout# := 1/6vpt#;
+curveht# := 1/6normht#;
+cupht# := curveht#;
+hatht# := curveht#;
+leftgap# := 1/2vpt#;
+rightgap# := 1/2vpt#;
+lvgap# := dia#;
+lvht# := 3dia#;
+uvgap# := 2dia#;
+uvht# := 3dia#;
+tonegap# := dia#;
+toneht# := 2dia#;
+gorstyle := 2;
+curlystyle := 1;
diff --git a/fonts/thai/rmit/lig.mf b/fonts/thai/rmit/lig.mf
new file mode 100644
index 0000000000..d96a74d973
--- /dev/null
+++ b/fonts/thai/rmit/lig.mf
@@ -0,0 +1,189 @@
+font_normal_space 1;
+font_quad normwd#;
+font_normal_stretch thick#;
+font_normal_shrink 0;
+
+%
+% define dummy chars - needed for ligtable to work
+%
+% CHANGE -dah 24/aug/90 added extra string as third argument of each
+% beginthaichar.
+beginthaichar("$00", "00", " ", 0, 0, 0); endthaichar;
+beginthaichar("$01", "01", " ", 0, 0, 0); endthaichar;
+beginthaichar("$02", "02", " ", 0, 0, 0); endthaichar;
+beginthaichar("$03", "03", " ", 0, 0, 0); endthaichar;
+beginthaichar("$04", "04", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII .", "2E", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII 0", "30", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII 1", "31", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII 2", "32", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII 3", "33", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII 4", "34", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII 5", "35", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII 6", "36", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII 7", "37", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII 8", "38", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII 9", "39", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII a", "61", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII b", "62", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII c", "63", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII d", "64", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII e", "65", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII f", "66", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII g", "67", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII h", "68", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII i", "69", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII j", "6A", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII k", "6B", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII l", "6C", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII m", "6D", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII n", "6E", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII o", "6F", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII p", "70", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII q", "71", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII r", "72", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII s", "73", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII t", "74", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII u", "75", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII v", "76", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII w", "77", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII x", "78", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII y", "79", " ", 0, 0, 0); endthaichar;
+beginthaichar("ASCII z", "7A", " ", 0, 0, 0); endthaichar;
+
+ligtable "a" : "a" =: hex"E1", % sara aa
+ "i" =: hex"E4", % sara ai (common)
+ "j" =: hex"E3", % sara ai (20 words)
+ "y" =: hex"E0", % sara eh/ay
+ "h" =: hex"D2", % sara ah
+ "w" =: hex"CD", % or ahng
+ "e" =: hex"E5"; % tall ah (used with leu/reu)
+
+ligtable "b" : "b" =: hex"BA", % bor
+ "p" =: hex"BB", % bpor
+ "l" =: hex"A0"; % blank
+
+ligtable "c" : "h" =: hex"00", % ch is 00
+ "i" =: hex"A9", % chor ching
+ "a" =: hex"AA", % chor chahng
+ "u" =: hex"AC"; % chor chuh
+
+ligtable hex"00" : % ch
+ "i" =: hex"A9", % chor ching
+ "a" =: hex"AA", % chor chahng
+ "u" =: hex"AC"; % chor chuh
+
+ligtable "d" : "c" =: hex"AE", % dor chah-dah
+ "k" =: hex"B4", % dor dek
+ "e" =: hex"B4", % dor dek
+ "d" =: hex"B4", % dor dek
+ "b" =: hex"AF", % dtor bpah! dtah!k
+ "w" =: hex"B5", % dtor dtao (dtow)
+ "t" =: hex"B5"; % dtor dtao (dtow)
+
+ligtable "e" : "e" =: hex"D5", % sara ee
+ "u" =: hex"D7", % sara eu
+ "h" =: hex"E0"; % sara eh/ay
+
+ligtable "f" : "a" =: hex"BF", % for fah ?
+ "n" =: hex"BD"; % for fahn ?
+
+ligtable "g" : "g" =: hex"A1", % gor gy
+ "y" =: hex"A1"; % gor gy
+
+ligtable "h" : "e" =: hex"CB", % hor heep
+ "n" =: hex"CE"; % hor nok hook
+
+ligtable "i" : "h" =: hex"D4"; % sara ih
+
+ligtable "j" : "j" =: hex"A8"; % jor jahn
+
+ligtable "k" : "y" =: hex"A2", % kor ky
+ "u" =: hex"A3", % kor kuat
+ "w" =: hex"A4", % kor kwai
+ "o" =: hex"A5", % kor kon
+ "r" =: hex"A6"; % kor rakahng
+
+ligtable "l" : "i" =: hex"C5", % lor ling
+ "j" =: hex"CC", % lor joo-lah
+ "e" =: hex"C6"; % leu
+
+ligtable "m" : "m" =: hex"C1", % mor mah
+ "k" =: hex"E7", % my koo
+ "t" =: hex"E8", % my toh
+ "e" =: hex"E9", % my ehk
+ "d" =: hex"EA", % my dtree
+ "j" =: hex"EB", % my jutawah
+ "a" =: hex"D1"; % my hunagaht
+
+ligtable "n" : "e" =: hex"B3", % nor nehn
+ "o" =: hex"B9", % nor noo
+ "g" =: hex"A7"; % ngor ngoo
+
+ligtable "o" : "o" =: hex"D9", % sara oo (long)
+ "h" =: hex"E2"; % sara oh
+
+ligtable "p" : "e" =: hex"BC", % por peung
+ "a" =: hex"BE", % por pahn
+ "s" =: hex"C0", % por sampow
+ "b" =: hex"BB", % bpor
+ "y" =: hex"CF"; % pery yahn noy (?)
+
+ligtable "r" : "r" =: hex"C3", % ror reua
+ "e" =: hex"C4"; % reu (funny symbol)
+
+ligtable "s" : "c" =: hex"AB", % sor chor (sor soo)
+ "k" =: hex"C8", % sor kor
+ "r" =: hex"C9", % sor reu see
+ "l" =: hex"CA", % sor lor
+ "m" =: hex"01", % sm maps to 01
+ "o" =: hex"02", % so maps to 02
+ "e" =: hex"03", % se maps to 03
+ "h" =: hex"04", % sh maps to 04
+ "p" =: hex"A0"; % space/blank
+
+ligtable hex"04" : % sh
+ "e" =: hex"03", % she... (shee, sheu) short vowels
+ "o" =: hex"02"; % sho... (shoo) short vowel
+
+ligtable hex"02" : % so
+ "o" =: hex"D8"; % (soo) sara oo (short)
+
+ligtable hex"03" : % se
+ "e" =: hex"D4", % (see) sara ee (short)
+ "u" =: hex"D6"; % (seu) sara eu (short)
+
+ligtable hex"01" : % sm
+ "k" =: hex"87", % (smk) small my koo
+ "t" =: hex"88", % (smt) small my toh
+ "e" =: hex"89", % (sme) small my ehk
+ "d" =: hex"8A", % (smd) small my dtree
+ "j" =: hex"8B"; % (smj) small my jutawah
+
+ligtable "t" : "a" =: hex"B0", % tor tahn
+ "m" =: hex"B1", % tor monto
+ "p" =: hex"B2", % tor pootow
+ "u" =: hex"B6", % tor too!ng (tung?)
+ "h" =: hex"B7", % tor tahahn
+ "o" =: hex"B8"; % tor tohng
+
+ligtable "u" : "m" =: hex"D3", % sara um
+ "h" =: hex"D0"; % sara ah (short)
+
+ligtable "w" : "w" =: hex"C7"; % wor
+
+ligtable "y" : "i" =: hex"AD", % yor ying
+ "a" =: hex"C2", % yor yahk
+ "m" =: hex"E6"; % yamok
+
+ligtable "." : "." =: hex"DA"; % full stop
+ %"0" =: hex"F0", % number 0
+ %"1" =: hex"F1", % number 1
+ %"2" =: hex"F2", % number 2
+ %"3" =: hex"F3", % number 3
+ %"4" =: hex"F4", % number 4
+ %"5" =: hex"F5", % number 5
+ %"6" =: hex"F6", % number 6
+ %"7" =: hex"F7", % number 7
+ %"8" =: hex"F8", % number 8
+ %"9" =: hex"F9"; % number 9
diff --git a/fonts/thai/rmit/r.mf b/fonts/thai/rmit/r.mf
new file mode 100644
index 0000000000..d403872cd2
--- /dev/null
+++ b/fonts/thai/rmit/r.mf
@@ -0,0 +1,25 @@
+slant := 0;
+px# := 1/5vpt#;
+py# := 1/5vpt#;
+normht# := 4vpt#;
+normwd# := 2vpt#;
+skinnywd# := .6normwd#;
+dotsize# := skinnywd# / 4;
+dia# := 1/2vpt#;
+thick# := 1/6vpt#;
+thin# := 1/6vpt#;
+overshoot# := 1/3thin#;
+jutout# := 1/6vpt#;
+curveht# := 1/6normht#;
+cupht# := curveht#;
+hatht# := curveht#;
+leftgap# := 1/2vpt#;
+rightgap# := 1/2vpt#;
+lvgap# := dia#;
+lvht# := 3dia#;
+uvgap# := 2dia#;
+uvht# := 3dia#;
+tonegap# := dia#;
+toneht# := 2dia#;
+gorstyle := 2;
+curlystyle := 1;
diff --git a/fonts/thai/rmit/rz.mf b/fonts/thai/rmit/rz.mf
new file mode 100644
index 0000000000..a946ad1b46
--- /dev/null
+++ b/fonts/thai/rmit/rz.mf
@@ -0,0 +1,25 @@
+slant := 0;
+px# := 1/5vpt#;
+py# := 1/5vpt#;
+normht# := 4vpt#;
+normwd# := 2vpt#;
+skinnywd# := .6normwd#;
+dotsize# := skinnywd# / 4;
+dia# := 1/2vpt#;
+thick# := 1/6vpt#;
+thin# := 1/6vpt#;
+overshoot# := 1/3thin#;
+jutout# := 1/6vpt#;
+curveht# := 1/6normht#;
+cupht# := curveht#;
+hatht# := curveht#;
+leftgap# := 1/2vpt#;
+rightgap# := 1/2vpt#;
+lvgap# := dia#;
+lvht# := 3dia#;
+uvgap# := 2dia#;
+uvht# := 3dia#;
+tonegap# := dia#;
+toneht# := 2dia#;
+gorstyle := 1;
+curlystyle := 1;
diff --git a/fonts/thai/rmit/thai-sample.tex b/fonts/thai/rmit/thai-sample.tex
new file mode 100644
index 0000000000..70dc426106
--- /dev/null
+++ b/fonts/thai/rmit/thai-sample.tex
@@ -0,0 +1,131 @@
+\documentstyle[rmit-std]{article}
+
+\newfont{\thair}{thair10 scaled \magstep5}
+\hyphenchar\thair=-1
+\newfont{\thairz}{thairz10 scaled \magstep5}
+\hyphenchar\thairz=-1
+\newfont{\thaii}{thaii10 scaled \magstep5}
+\hyphenchar\thaii=-1
+\newfont{\thaibx}{thaibx10 scaled \magstep5}
+\hyphenchar\thaibx=-1
+\newfont{\thaiby}{thaiby10 scaled \magstep5}
+\hyphenchar\thaiby=-1
+\newfont{\thaibz}{thaibz10 scaled \magstep5}
+\hyphenchar\thaibz=-1
+\newfont{\thaisbz}{thaibz10 scaled \magstep2}
+\hyphenchar\thaisbz=-1
+
+\begin{document}
+\begin{center}
+\Large
+Some Sample of Thai in {\TeX}
+\end{center}
+
+\sloppy
+
+\thair
+noahya chaahyi thum noah bl % 2 p37
+noahng noih psah mmee ngah ngahmm bl % 3 p37
+parruh thah yaah bl % 4 p37
+noahya chaahyi noum noahng noihpsah mmah bl % 5 p37
+pasheung mmee dkum noum bl % 6 p37
+chaahng liahww liah noahya wwihchaah bl % 7 p37
+mmee kwno kwno chaah noahno bl % 8 p37
+noahya noum ngah mmah kweuno bl % 9 p37
+% p42
+thnoahya kwwwahmm mmee thshoono bl
+ajno lium paoono mmee chaahww noah bl
+noahya chaahyi kwwwrr thum ngahno aathno noahya wwih chaah bl
+mmah thmano ayww liah nouh
+
+\thairz
+noahya chaahyi thum noah.. bl % 2 p37
+noahng noih psah mmee ngah ngahmm.. bl % 3 p37
+parruh thah yaah.. bl % 4 p37
+noahya chaahyi noum noahng noihpsah mmah.. bl % 5 p37
+pasheung mmee dkum noum.. bl % 6 p37
+chaahng liahww liah noahya wwihchaah.. bl % 7 p37
+mmee kwno kwno chaah noahno.. bl % 8 p37
+noahya noum ngah mmah kweuno.. bl % 9 p37
+% p42
+thnoahya kwwwahmm mmee thshoono.. bl
+ajno lium paoono mmee chaahww noah.. bl
+noahya chaahyi kwwwrr thum ngahno aathno noahya wwih chaah.. bl
+mmah thmano ayww liah nouh..
+
+\thaii
+noahya chaahyi thum noah bl % 2 p37
+noahng noih psah mmee ngah ngahmm bl % 3 p37
+parruh thah yaah bl % 4 p37
+noahya chaahyi noum noahng noihpsah mmah bl % 5 p37
+pasheung mmee dkum noum bl % 6 p37
+chaahng liahww liah noahya wwihchaah bl % 7 p37
+mmee kwno kwno chaah noahno bl % 8 p37
+noahya noum ngah mmah kweuno bl % 9 p37
+% p42
+thnoahya kwwwahmm mmee thshoono bl
+ajno lium paoono mmee chaahww noah bl
+noahya chaahyi kwwwrr thum ngahno aathno noahya wwih chaah bl
+mmah thmano ayww liah nouh
+
+\thaibx
+noahya chaahyi thum noah bl % 2 p37
+noahng noih psah mmee ngah ngahmm bl % 3 p37
+parruh thah yaah bl % 4 p37
+noahya chaahyi noum noahng noihpsah mmah bl % 5 p37
+pasheung mmee dkum noum bl % 6 p37
+chaahng liahww liah noahya wwihchaah bl % 7 p37
+mmee kwno kwno chaah noahno bl % 8 p37
+noahya noum ngah mmah kweuno bl % 9 p37
+% p42
+thnoahya kwwwahmm mmee thshoono bl
+ajno lium paoono mmee chaahww noah bl
+noahya chaahyi kwwwrr thum ngahno aathno noahya wwih chaah bl
+mmah thmano ayww liah nouh
+
+\thaiby
+noahya chaahyi thum noah bl % 2 p37
+noahng noih psah mmee ngah ngahmm bl % 3 p37
+parruh thah yaah bl % 4 p37
+noahya chaahyi noum noahng noihpsah mmah bl % 5 p37
+pasheung mmee dkum noum bl % 6 p37
+chaahng liahww liah noahya wwihchaah bl % 7 p37
+mmee kwno kwno chaah noahno bl % 8 p37
+noahya noum ngah mmah kweuno bl % 9 p37
+% p42
+thnoahya kwwwahmm mmee thshoono bl
+ajno lium paoono mmee chaahww noah bl
+noahya chaahyi kwwwrr thum ngahno aathno noahya wwih chaah bl
+mmah thmano ayww liah nouh
+
+\thaibz
+noahya chaahyi thum noah bl % 2 p37
+noahng noih psah mmee ngah ngahmm bl % 3 p37
+parruh thah yaah bl % 4 p37
+noahya chaahyi noum noahng noihpsah mmah bl % 5 p37
+pasheung mmee dkum noum bl % 6 p37
+chaahng liahww liah noahya wwihchaah bl % 7 p37
+mmee kwno kwno chaah noahno bl % 8 p37
+noahya noum ngah mmah kweuno bl % 9 p37
+% p42
+thnoahya kwwwahmm mmee thshoono bl
+ajno lium paoono mmee chaahww noah bl
+noahya chaahyi kwwwrr thum ngahno aathno noahya wwih chaah bl
+mmah thmano ayww liah nouh
+
+\thaisbz
+noahya chaahyi thum noah bl % 2 p37
+noahng noih psah mmee ngah ngahmm bl % 3 p37
+parruh thah yaah bl % 4 p37
+noahya chaahyi noum noahng noihpsah mmah bl % 5 p37
+pasheung mmee dkum noum bl % 6 p37
+chaahng liahww liah noahya wwihchaah bl % 7 p37
+mmee kwno kwno chaah noahno bl % 8 p37
+noahya noum ngah mmah kweuno bl % 9 p37
+% p42
+thnoahya kwwwahmm mmee thshoono bl
+ajno lium paoono mmee chaahww noah bl
+noahya chaahyi kwwwrr thum ngahno aathno noahya wwih chaah bl
+mmah thmano ayww liah nouh
+
+\end{document}
diff --git a/fonts/thai/rmit/thai-tab.tex b/fonts/thai/rmit/thai-tab.tex
new file mode 100644
index 0000000000..906d6a505a
--- /dev/null
+++ b/fonts/thai/rmit/thai-tab.tex
@@ -0,0 +1,558 @@
+\documentstyle[rmit-std]{article}
+
+\newfont{\thair}{thair10 scaled \magstep5}
+\newfont{\thairz}{thairz10 scaled \magstep5}
+\newfont{\thaii}{thaii10 scaled \magstep5}
+\newfont{\thaibx}{thaibx10 scaled \magstep5}
+\newfont{\thaiby}{thaiby10 scaled \magstep5}
+\newfont{\thaibz}{thaibz10 scaled \magstep5}
+
+\begin{document}
+Fri Dec 2 18:57:56 EST 1988
+
+\sloppy
+\begin{tabbing}
+AAA \= CHARACTER NAME PLUS \= so/shoo/uh/xx
+\= \quad\quad\quad
+\= \quad\quad\quad
+\= \quad\quad\quad
+\= \quad\quad\quad
+\= \quad\quad\quad
+\= \quad\quad\quad
+\= \quad\quad\quad
+\= \quad\quad\quad
+\= \quad\quad\quad \kill
+87\>small MY DTY KOO\>{\tt smk}
+\>{\thair\symbol{"CD}\symbol{"D7}\symbol{"87}}
+\>{\thairz\symbol{"CD}\symbol{"D7}\symbol{"87}}
+\>{\thaii\symbol{"CD}\symbol{"D7}\symbol{"87}}
+\>{\thaibx\symbol{"CD}\symbol{"D7}\symbol{"87}}
+\>{\thaiby\symbol{"CD}\symbol{"D7}\symbol{"87}}
+\>{\thaibz\symbol{"CD}\symbol{"D7}\symbol{"87}}\\
+88\>small MY TOH\>{\tt smt}
+\>{\thair\symbol{"CD}\symbol{"D7}\symbol{"88}}
+\>{\thairz\symbol{"CD}\symbol{"D7}\symbol{"88}}
+\>{\thaii\symbol{"CD}\symbol{"D7}\symbol{"88}}
+\>{\thaibx\symbol{"CD}\symbol{"D7}\symbol{"88}}
+\>{\thaiby\symbol{"CD}\symbol{"D7}\symbol{"88}}
+\>{\thaibz\symbol{"CD}\symbol{"D7}\symbol{"88}}\\
+89\>small MY EHK\>{\tt sme}
+\>{\thair\symbol{"CD}\symbol{"D7}\symbol{"89}}
+\>{\thairz\symbol{"CD}\symbol{"D7}\symbol{"89}}
+\>{\thaii\symbol{"CD}\symbol{"D7}\symbol{"89}}
+\>{\thaibx\symbol{"CD}\symbol{"D7}\symbol{"89}}
+\>{\thaiby\symbol{"CD}\symbol{"D7}\symbol{"89}}
+\>{\thaibz\symbol{"CD}\symbol{"D7}\symbol{"89}}\\
+8A\>small MY DTREE\>{\tt smd}
+\>{\thair\symbol{"CD}\symbol{"D7}\symbol{"8A}}
+\>{\thairz\symbol{"CD}\symbol{"D7}\symbol{"8A}}
+\>{\thaii\symbol{"CD}\symbol{"D7}\symbol{"8A}}
+\>{\thaibx\symbol{"CD}\symbol{"D7}\symbol{"8A}}
+\>{\thaiby\symbol{"CD}\symbol{"D7}\symbol{"8A}}
+\>{\thaibz\symbol{"CD}\symbol{"D7}\symbol{"8A}}\\
+8B\>small MY JUTAWAH\>{\tt smj}
+\>{\thair\symbol{"CD}\symbol{"D7}\symbol{"8B}}
+\>{\thairz\symbol{"CD}\symbol{"D7}\symbol{"8B}}
+\>{\thaii\symbol{"CD}\symbol{"D7}\symbol{"8B}}
+\>{\thaibx\symbol{"CD}\symbol{"D7}\symbol{"8B}}
+\>{\thaiby\symbol{"CD}\symbol{"D7}\symbol{"8B}}
+\>{\thaibz\symbol{"CD}\symbol{"D7}\symbol{"8B}}\\
+A0\>blank\>{\tt bl/sp}
+\>{\thair\symbol{"A0}}
+\>{\thairz\symbol{"A0}}
+\>{\thaii\symbol{"A0}}
+\>{\thaibx\symbol{"A0}}
+\>{\thaiby\symbol{"A0}}
+\>{\thaibz\symbol{"A0}}\\
+A1\>GAW GAI\>{\tt gg/gy}
+\>{\thair\symbol{"A1}}
+\>{\thairz\symbol{"A1}}
+\>{\thaii\symbol{"A1}}
+\>{\thaibx\symbol{"A1}}
+\>{\thaiby\symbol{"A1}}
+\>{\thaibz\symbol{"A1}}\\
+A2\>KAW KAI\>{\tt ky}
+\>{\thair\symbol{"A2}}
+\>{\thairz\symbol{"A2}}
+\>{\thaii\symbol{"A2}}
+\>{\thaibx\symbol{"A2}}
+\>{\thaiby\symbol{"A2}}
+\>{\thaibz\symbol{"A2}}\\
+A3\>KAW KUAT\>{\tt ku}
+\>{\thair\symbol{"A3}}
+\>{\thairz\symbol{"A3}}
+\>{\thaii\symbol{"A3}}
+\>{\thaibx\symbol{"A3}}
+\>{\thaiby\symbol{"A3}}
+\>{\thaibz\symbol{"A3}}\\
+A4\>KAW KWAI\>{\tt kw}
+\>{\thair\symbol{"A4}}
+\>{\thairz\symbol{"A4}}
+\>{\thaii\symbol{"A4}}
+\>{\thaibx\symbol{"A4}}
+\>{\thaiby\symbol{"A4}}
+\>{\thaibz\symbol{"A4}}\\
+A5\>KAW KOH!N\>{\tt ko}
+\>{\thair\symbol{"A5}}
+\>{\thairz\symbol{"A5}}
+\>{\thaii\symbol{"A5}}
+\>{\thaibx\symbol{"A5}}
+\>{\thaiby\symbol{"A5}}
+\>{\thaibz\symbol{"A5}}\\
+A6\>KAW RAH!-KAH!NG\>{\tt kr}
+\>{\thair\symbol{"A6}}
+\>{\thairz\symbol{"A6}}
+\>{\thaii\symbol{"A6}}
+\>{\thaibx\symbol{"A6}}
+\>{\thaiby\symbol{"A6}}
+\>{\thaibz\symbol{"A6}}\\
+A7\>NGAW NGOO\>{\tt ng}
+\>{\thair\symbol{"A7}}
+\>{\thairz\symbol{"A7}}
+\>{\thaii\symbol{"A7}}
+\>{\thaibx\symbol{"A7}}
+\>{\thaiby\symbol{"A7}}
+\>{\thaibz\symbol{"A7}}\\
+A8\>JAW JAHN\>{\tt jj}
+\>{\thair\symbol{"A8}}
+\>{\thairz\symbol{"A8}}
+\>{\thaii\symbol{"A8}}
+\>{\thaibx\symbol{"A8}}
+\>{\thaiby\symbol{"A8}}
+\>{\thaibz\symbol{"A8}}\\
+A9\>CHAW CHING\>{\tt ci/chi}
+\>{\thair\symbol{"A9}}
+\>{\thairz\symbol{"A9}}
+\>{\thaii\symbol{"A9}}
+\>{\thaibx\symbol{"A9}}
+\>{\thaiby\symbol{"A9}}
+\>{\thaibz\symbol{"A9}}\\
+AA\>CHAW CHAHNG\>{\tt ca/cha}
+\>{\thair\symbol{"AA}}
+\>{\thairz\symbol{"AA}}
+\>{\thaii\symbol{"AA}}
+\>{\thaibx\symbol{"AA}}
+\>{\thaiby\symbol{"AA}}
+\>{\thaibz\symbol{"AA}}\\
+AB\>SAW SOO/SAW CHAW\>{\tt sc}
+\>{\thair\symbol{"AB}}
+\>{\thairz\symbol{"AB}}
+\>{\thaii\symbol{"AB}}
+\>{\thaibx\symbol{"AB}}
+\>{\thaiby\symbol{"AB}}
+\>{\thaibz\symbol{"AB}}\\
+AC\>CHAW CHUH\>{\tt cu/chu}
+\>{\thair\symbol{"AC}}
+\>{\thairz\symbol{"AC}}
+\>{\thaii\symbol{"AC}}
+\>{\thaibx\symbol{"AC}}
+\>{\thaiby\symbol{"AC}}
+\>{\thaibz\symbol{"AC}}\\
+AD\>YAW YING\>{\tt yi}
+\>{\thair\symbol{"AD}}
+\>{\thairz\symbol{"AD}}
+\>{\thaii\symbol{"AD}}
+\>{\thaibx\symbol{"AD}}
+\>{\thaiby\symbol{"AD}}
+\>{\thaibz\symbol{"AD}}\\
+AE\>DAW CHAH!-DAH\>{\tt dc}
+\>{\thair\symbol{"AE}}
+\>{\thairz\symbol{"AE}}
+\>{\thaii\symbol{"AE}}
+\>{\thaibx\symbol{"AE}}
+\>{\thaiby\symbol{"AE}}
+\>{\thaibz\symbol{"AE}}\\
+AF\>DTAW BPAH!-DTAH!K\>{\tt db}
+\>{\thair\symbol{"AF}}
+\>{\thairz\symbol{"AF}}
+\>{\thaii\symbol{"AF}}
+\>{\thaibx\symbol{"AF}}
+\>{\thaiby\symbol{"AF}}
+\>{\thaibz\symbol{"AF}}\\
+B0\>TAW TAHN\>{\tt ta}
+\>{\thair\symbol{"B0}}
+\>{\thairz\symbol{"B0}}
+\>{\thaii\symbol{"B0}}
+\>{\thaibx\symbol{"B0}}
+\>{\thaiby\symbol{"B0}}
+\>{\thaibz\symbol{"B0}}\\
+B1\>TAW MOH!N-TOH\>{\tt tm}
+\>{\thair\symbol{"B1}}
+\>{\thairz\symbol{"B1}}
+\>{\thaii\symbol{"B1}}
+\>{\thaibx\symbol{"B1}}
+\>{\thaiby\symbol{"B1}}
+\>{\thaibz\symbol{"B1}}\\
+B2\>TAW POO-TAO!\>{\tt tp}
+\>{\thair\symbol{"B2}}
+\>{\thairz\symbol{"B2}}
+\>{\thaii\symbol{"B2}}
+\>{\thaibx\symbol{"B2}}
+\>{\thaiby\symbol{"B2}}
+\>{\thaibz\symbol{"B2}}\\
+B3\>NAW NEHN\>{\tt ne}
+\>{\thair\symbol{"B3}}
+\>{\thairz\symbol{"B3}}
+\>{\thaii\symbol{"B3}}
+\>{\thaibx\symbol{"B3}}
+\>{\thaiby\symbol{"B3}}
+\>{\thaibz\symbol{"B3}}\\
+B4\>DAW DEH!K\>{\tt dk/de/dd}
+\>{\thair\symbol{"B4}}
+\>{\thairz\symbol{"B4}}
+\>{\thaii\symbol{"B4}}
+\>{\thaibx\symbol{"B4}}
+\>{\thaiby\symbol{"B4}}
+\>{\thaibz\symbol{"B4}}\\
+B5\>DTAW DTAO!\>{\tt dt}
+\>{\thair\symbol{"B5}}
+\>{\thairz\symbol{"B5}}
+\>{\thaii\symbol{"B5}}
+\>{\thaibx\symbol{"B5}}
+\>{\thaiby\symbol{"B5}}
+\>{\thaibz\symbol{"B5}}\\
+B6\>TAW TOO!NG\>{\tt tu}
+\>{\thair\symbol{"B6}}
+\>{\thairz\symbol{"B6}}
+\>{\thaii\symbol{"B6}}
+\>{\thaibx\symbol{"B6}}
+\>{\thaiby\symbol{"B6}}
+\>{\thaibz\symbol{"B6}}\\
+B7\>TAW TAH!-HAHN\>{\tt th}
+\>{\thair\symbol{"B7}}
+\>{\thairz\symbol{"B7}}
+\>{\thaii\symbol{"B7}}
+\>{\thaibx\symbol{"B7}}
+\>{\thaiby\symbol{"B7}}
+\>{\thaibz\symbol{"B7}}\\
+B8\>TAW TOH!NG\>{\tt to}
+\>{\thair\symbol{"B8}}
+\>{\thairz\symbol{"B8}}
+\>{\thaii\symbol{"B8}}
+\>{\thaibx\symbol{"B8}}
+\>{\thaiby\symbol{"B8}}
+\>{\thaibz\symbol{"B8}}\\
+B9\>NAW NOO\>{\tt no}
+\>{\thair\symbol{"B9}}
+\>{\thairz\symbol{"B9}}
+\>{\thaii\symbol{"B9}}
+\>{\thaibx\symbol{"B9}}
+\>{\thaiby\symbol{"B9}}
+\>{\thaibz\symbol{"B9}}\\
+BA\>BAW BAI MAI\>{\tt bb}
+\>{\thair\symbol{"BA}}
+\>{\thairz\symbol{"BA}}
+\>{\thaii\symbol{"BA}}
+\>{\thaibx\symbol{"BA}}
+\>{\thaiby\symbol{"BA}}
+\>{\thaibz\symbol{"BA}}\\
+BB\>BPAW BPLAH\>{\tt bp/pb}
+\>{\thair\symbol{"BB}}
+\>{\thairz\symbol{"BB}}
+\>{\thaii\symbol{"BB}}
+\>{\thaibx\symbol{"BB}}
+\>{\thaiby\symbol{"BB}}
+\>{\thaibz\symbol{"BB}}\\
+BC\>PAW PEUNG\>{\tt pe}
+\>{\thair\symbol{"BC}}
+\>{\thairz\symbol{"BC}}
+\>{\thaii\symbol{"BC}}
+\>{\thaibx\symbol{"BC}}
+\>{\thaiby\symbol{"BC}}
+\>{\thaibz\symbol{"BC}}\\
+BD\>FAW FAH!N\>{\tt fn}
+\>{\thair\symbol{"BD}}
+\>{\thairz\symbol{"BD}}
+\>{\thaii\symbol{"BD}}
+\>{\thaibx\symbol{"BD}}
+\>{\thaiby\symbol{"BD}}
+\>{\thaibz\symbol{"BD}}\\
+BE\>PAW PAH!N\>{\tt pa}
+\>{\thair\symbol{"BE}}
+\>{\thairz\symbol{"BE}}
+\>{\thaii\symbol{"BE}}
+\>{\thaibx\symbol{"BE}}
+\>{\thaiby\symbol{"BE}}
+\>{\thaibz\symbol{"BE}}\\
+BF\>FAW FAH!\>{\tt fa}
+\>{\thair\symbol{"BF}}
+\>{\thairz\symbol{"BF}}
+\>{\thaii\symbol{"BF}}
+\>{\thaibx\symbol{"BF}}
+\>{\thaiby\symbol{"BF}}
+\>{\thaibz\symbol{"BF}}\\
+C0\>PAW SAH!M-PAO!\>{\tt ps}
+\>{\thair\symbol{"C0}}
+\>{\thairz\symbol{"C0}}
+\>{\thaii\symbol{"C0}}
+\>{\thaibx\symbol{"C0}}
+\>{\thaiby\symbol{"C0}}
+\>{\thaibz\symbol{"C0}}\\
+C1\>MAW MAH\>{\tt mm}
+\>{\thair\symbol{"C1}}
+\>{\thairz\symbol{"C1}}
+\>{\thaii\symbol{"C1}}
+\>{\thaibx\symbol{"C1}}
+\>{\thaiby\symbol{"C1}}
+\>{\thaibz\symbol{"C1}}\\
+C2\>YAW YAH!K\>{\tt ya}
+\>{\thair\symbol{"C2}}
+\>{\thairz\symbol{"C2}}
+\>{\thaii\symbol{"C2}}
+\>{\thaibx\symbol{"C2}}
+\>{\thaiby\symbol{"C2}}
+\>{\thaibz\symbol{"C2}}\\
+C3\>RAW REUA\>{\tt rr}
+\>{\thair\symbol{"C3}}
+\>{\thairz\symbol{"C3}}
+\>{\thaii\symbol{"C3}}
+\>{\thaibx\symbol{"C3}}
+\>{\thaiby\symbol{"C3}}
+\>{\thaibz\symbol{"C3}}\\
+C4\>LEU!/REU!\>{\tt re}
+\>{\thair\symbol{"C4}}
+\>{\thairz\symbol{"C4}}
+\>{\thaii\symbol{"C4}}
+\>{\thaibx\symbol{"C4}}
+\>{\thaiby\symbol{"C4}}
+\>{\thaibz\symbol{"C4}}\\
+C5\>LAW LEE!NG\>{\tt li}
+\>{\thair\symbol{"C5}}
+\>{\thairz\symbol{"C5}}
+\>{\thaii\symbol{"C5}}
+\>{\thaibx\symbol{"C5}}
+\>{\thaiby\symbol{"C5}}
+\>{\thaibz\symbol{"C5}}\\
+C6\>LEU\>{\tt le}
+\>{\thair\symbol{"C6}}
+\>{\thairz\symbol{"C6}}
+\>{\thaii\symbol{"C6}}
+\>{\thaibx\symbol{"C6}}
+\>{\thaiby\symbol{"C6}}
+\>{\thaibz\symbol{"C6}}\\
+C7\>WAW WAAN\>{\tt ww}
+\>{\thair\symbol{"C7}}
+\>{\thairz\symbol{"C7}}
+\>{\thaii\symbol{"C7}}
+\>{\thaibx\symbol{"C7}}
+\>{\thaiby\symbol{"C7}}
+\>{\thaibz\symbol{"C7}}\\
+C8\>SAW SAH-LAH/SAW KAW\>{\tt sk}
+\>{\thair\symbol{"C8}}
+\>{\thairz\symbol{"C8}}
+\>{\thaii\symbol{"C8}}
+\>{\thaibx\symbol{"C8}}
+\>{\thaiby\symbol{"C8}}
+\>{\thaibz\symbol{"C8}}\\
+C9\>SAW REU SEE\>{\tt sr}
+\>{\thair\symbol{"C9}}
+\>{\thairz\symbol{"C9}}
+\>{\thaii\symbol{"C9}}
+\>{\thaibx\symbol{"C9}}
+\>{\thaiby\symbol{"C9}}
+\>{\thaibz\symbol{"C9}}\\
+CA\>SAW SEUA/SAW LAW\>{\tt sl}
+\>{\thair\symbol{"CA}}
+\>{\thairz\symbol{"CA}}
+\>{\thaii\symbol{"CA}}
+\>{\thaibx\symbol{"CA}}
+\>{\thaiby\symbol{"CA}}
+\>{\thaibz\symbol{"CA}}\\
+CB\>HAW HEEP\>{\tt he}
+\>{\thair\symbol{"CB}}
+\>{\thairz\symbol{"CB}}
+\>{\thaii\symbol{"CB}}
+\>{\thaibx\symbol{"CB}}
+\>{\thaiby\symbol{"CB}}
+\>{\thaibz\symbol{"CB}}\\
+CC\>LAW JOO!-LAH\>{\tt lj}
+\>{\thair\symbol{"CC}}
+\>{\thairz\symbol{"CC}}
+\>{\thaii\symbol{"CC}}
+\>{\thaibx\symbol{"CC}}
+\>{\thaiby\symbol{"CC}}
+\>{\thaibz\symbol{"CC}}\\
+CD\>AW AHNG\>{\tt aw}
+\>{\thair\symbol{"CD}}
+\>{\thairz\symbol{"CD}}
+\>{\thaii\symbol{"CD}}
+\>{\thaibx\symbol{"CD}}
+\>{\thaiby\symbol{"CD}}
+\>{\thaibz\symbol{"CD}}\\
+CE\>HAW NOK HOOK\>{\tt hn}
+\>{\thair\symbol{"CE}}
+\>{\thairz\symbol{"CE}}
+\>{\thaii\symbol{"CE}}
+\>{\thaibx\symbol{"CE}}
+\>{\thaiby\symbol{"CE}}
+\>{\thaibz\symbol{"CE}}\\
+CF\>PERY YAHN NOY\>{\tt py}
+\>{\thair\symbol{"CF}}
+\>{\thairz\symbol{"CF}}
+\>{\thaii\symbol{"CF}}
+\>{\thaibx\symbol{"CF}}
+\>{\thaiby\symbol{"CF}}
+\>{\thaibz\symbol{"CF}}\\
+D0\>SARA AH!\>{\tt uh}
+\>{\thair\symbol{"D0}}
+\>{\thairz\symbol{"D0}}
+\>{\thaii\symbol{"D0}}
+\>{\thaibx\symbol{"D0}}
+\>{\thaiby\symbol{"D0}}
+\>{\thaibz\symbol{"D0}}\\
+D1\>MY HUNAGAHT\>{\tt ma}
+\>{\thair\symbol{"CD}\symbol{"D1}}
+\>{\thairz\symbol{"CD}\symbol{"D1}}
+\>{\thaii\symbol{"CD}\symbol{"D1}}
+\>{\thaibx\symbol{"CD}\symbol{"D1}}
+\>{\thaiby\symbol{"CD}\symbol{"D1}}
+\>{\thaibz\symbol{"CD}\symbol{"D1}}\\
+D2\>SARA AH\>{\tt ah}
+\>{\thair\symbol{"D2}}
+\>{\thairz\symbol{"D2}}
+\>{\thaii\symbol{"D2}}
+\>{\thaibx\symbol{"D2}}
+\>{\thaiby\symbol{"D2}}
+\>{\thaibz\symbol{"D2}}\\
+D3\>AH!M\>{\tt um}
+\>{\thair\symbol{"CD}\symbol{"D3}}
+\>{\thairz\symbol{"CD}\symbol{"D3}}
+\>{\thaii\symbol{"CD}\symbol{"D3}}
+\>{\thaibx\symbol{"CD}\symbol{"D3}}
+\>{\thaiby\symbol{"CD}\symbol{"D3}}
+\>{\thaibz\symbol{"CD}\symbol{"D3}}\\
+D4\>EE!\>{\tt ih/see/shee}
+\>{\thair\symbol{"CD}\symbol{"D4}}
+\>{\thairz\symbol{"CD}\symbol{"D4}}
+\>{\thaii\symbol{"CD}\symbol{"D4}}
+\>{\thaibx\symbol{"CD}\symbol{"D4}}
+\>{\thaiby\symbol{"CD}\symbol{"D4}}
+\>{\thaibz\symbol{"CD}\symbol{"D4}}\\
+D5\>EE\>{\tt ee}
+\>{\thair\symbol{"CD}\symbol{"D5}}
+\>{\thairz\symbol{"CD}\symbol{"D5}}
+\>{\thaii\symbol{"CD}\symbol{"D5}}
+\>{\thaibx\symbol{"CD}\symbol{"D5}}
+\>{\thaiby\symbol{"CD}\symbol{"D5}}
+\>{\thaibz\symbol{"CD}\symbol{"D5}}\\
+D6\>EU!\>{\tt seu/sheu}
+\>{\thair\symbol{"CD}\symbol{"D6}}
+\>{\thairz\symbol{"CD}\symbol{"D6}}
+\>{\thaii\symbol{"CD}\symbol{"D6}}
+\>{\thaibx\symbol{"CD}\symbol{"D6}}
+\>{\thaiby\symbol{"CD}\symbol{"D6}}
+\>{\thaibz\symbol{"CD}\symbol{"D6}}\\
+D7\>EU\>{\tt eu}
+\>{\thair\symbol{"CD}\symbol{"D7}}
+\>{\thairz\symbol{"CD}\symbol{"D7}}
+\>{\thaii\symbol{"CD}\symbol{"D7}}
+\>{\thaibx\symbol{"CD}\symbol{"D7}}
+\>{\thaiby\symbol{"CD}\symbol{"D7}}
+\>{\thaibz\symbol{"CD}\symbol{"D7}}\\
+D8\>OO!\>{\tt shoo/soo}
+\>{\thair\symbol{"CD}\symbol{"D8}}
+\>{\thairz\symbol{"CD}\symbol{"D8}}
+\>{\thaii\symbol{"CD}\symbol{"D8}}
+\>{\thaibx\symbol{"CD}\symbol{"D8}}
+\>{\thaiby\symbol{"CD}\symbol{"D8}}
+\>{\thaibz\symbol{"CD}\symbol{"D8}}\\
+D9\>OO\>{\tt oo}
+\>{\thair\symbol{"CD}\symbol{"D9}}
+\>{\thairz\symbol{"CD}\symbol{"D9}}
+\>{\thaii\symbol{"CD}\symbol{"D9}}
+\>{\thaibx\symbol{"CD}\symbol{"D9}}
+\>{\thaiby\symbol{"CD}\symbol{"D9}}
+\>{\thaibz\symbol{"CD}\symbol{"D9}}\\
+DA\>full stop\>{\tt ..}
+\>{\thair\symbol{"DA}}
+\>{\thairz\symbol{"DA}}
+\>{\thaii\symbol{"DA}}
+\>{\thaibx\symbol{"DA}}
+\>{\thaiby\symbol{"DA}}
+\>{\thaibz\symbol{"DA}}\\
+E0\>EH\>{\tt ay/eh}
+\>{\thair\symbol{"E0}}
+\>{\thairz\symbol{"E0}}
+\>{\thaii\symbol{"E0}}
+\>{\thaibx\symbol{"E0}}
+\>{\thaiby\symbol{"E0}}
+\>{\thaibz\symbol{"E0}}\\
+E1\>AA\>{\tt aa}
+\>{\thair\symbol{"E1}}
+\>{\thairz\symbol{"E1}}
+\>{\thaii\symbol{"E1}}
+\>{\thaibx\symbol{"E1}}
+\>{\thaiby\symbol{"E1}}
+\>{\thaibz\symbol{"E1}}\\
+E2\>OH\>{\tt oh}
+\>{\thair\symbol{"E2}}
+\>{\thairz\symbol{"E2}}
+\>{\thaii\symbol{"E2}}
+\>{\thaibx\symbol{"E2}}
+\>{\thaiby\symbol{"E2}}
+\>{\thaibz\symbol{"E2}}\\
+E3\>AI\>{\tt aj}
+\>{\thair\symbol{"E3}}
+\>{\thairz\symbol{"E3}}
+\>{\thaii\symbol{"E3}}
+\>{\thaibx\symbol{"E3}}
+\>{\thaiby\symbol{"E3}}
+\>{\thaibz\symbol{"E3}}\\
+E4\>AI\>{\tt ai}
+\>{\thair\symbol{"E4}}
+\>{\thairz\symbol{"E4}}
+\>{\thaii\symbol{"E4}}
+\>{\thaibx\symbol{"E4}}
+\>{\thaiby\symbol{"E4}}
+\>{\thaibz\symbol{"E4}}\\
+E5\>Tall AH\>{\tt ae}
+\>{\thair\symbol{"E5}}
+\>{\thairz\symbol{"E5}}
+\>{\thaii\symbol{"E5}}
+\>{\thaibx\symbol{"E5}}
+\>{\thaiby\symbol{"E5}}
+\>{\thaibz\symbol{"E5}}\\
+E6\>YAMOK\>{\tt ym}
+\>{\thair\symbol{"E6}}
+\>{\thairz\symbol{"E6}}
+\>{\thaii\symbol{"E6}}
+\>{\thaibx\symbol{"E6}}
+\>{\thaiby\symbol{"E6}}
+\>{\thaibz\symbol{"E6}}\\
+E7\>MY DTY KOO\>{\tt mk}
+\>{\thair\symbol{"CD}\symbol{"E7}}
+\>{\thairz\symbol{"CD}\symbol{"E7}}
+\>{\thaii\symbol{"CD}\symbol{"E7}}
+\>{\thaibx\symbol{"CD}\symbol{"E7}}
+\>{\thaiby\symbol{"CD}\symbol{"E7}}
+\>{\thaibz\symbol{"CD}\symbol{"E7}}\\
+E8\>MY TOH\>{\tt mt}
+\>{\thair\symbol{"CD}\symbol{"E8}}
+\>{\thairz\symbol{"CD}\symbol{"E8}}
+\>{\thaii\symbol{"CD}\symbol{"E8}}
+\>{\thaibx\symbol{"CD}\symbol{"E8}}
+\>{\thaiby\symbol{"CD}\symbol{"E8}}
+\>{\thaibz\symbol{"CD}\symbol{"E8}}\\
+E9\>MY EHK\>{\tt me}
+\>{\thair\symbol{"CD}\symbol{"E9}}
+\>{\thairz\symbol{"CD}\symbol{"E9}}
+\>{\thaii\symbol{"CD}\symbol{"E9}}
+\>{\thaibx\symbol{"CD}\symbol{"E9}}
+\>{\thaiby\symbol{"CD}\symbol{"E9}}
+\>{\thaibz\symbol{"CD}\symbol{"E9}}\\
+EA\>MY DTREE\>{\tt md}
+\>{\thair\symbol{"CD}\symbol{"EA}}
+\>{\thairz\symbol{"CD}\symbol{"EA}}
+\>{\thaii\symbol{"CD}\symbol{"EA}}
+\>{\thaibx\symbol{"CD}\symbol{"EA}}
+\>{\thaiby\symbol{"CD}\symbol{"EA}}
+\>{\thaibz\symbol{"CD}\symbol{"EA}}\\
+EB\>MY JUTAWAH\>{\tt mj}
+\>{\thair\symbol{"CD}\symbol{"EB}}
+\>{\thairz\symbol{"CD}\symbol{"EB}}
+\>{\thaii\symbol{"CD}\symbol{"EB}}
+\>{\thaibx\symbol{"CD}\symbol{"EB}}
+\>{\thaiby\symbol{"CD}\symbol{"EB}}
+\>{\thaibz\symbol{"CD}\symbol{"EB}}\\
+\end{tabbing}
+\end{document}
diff --git a/fonts/thai/rmit/thai-test.mf b/fonts/thai/rmit/thai-test.mf
new file mode 100644
index 0000000000..c855561dae
--- /dev/null
+++ b/fonts/thai/rmit/thai-test.mf
@@ -0,0 +1,47 @@
+font_size 3pt#;
+vpt# := 0.6pt#;
+
+mode_setup;
+input thaibase;
+screenstrokes;
+
+
+w_rows := floor 1/3 screen_rows;
+w_cols := floor 1/2 screen_cols;
+
+w_rows := 1/3(600);
+w_cols := 1/2(500);
+
+message "screen rows, cols " & decimal screen_rows & "," & decimal screen_cols;
+def open(expr k, i, j) =
+ openwindow k from ((i-1)*w_rows,(j-1)*w_cols) to (i*w_rows, j*w_cols)
+ at (-60, 140)
+enddef;
+def openit =
+ open(1,1,1); open(2,1,2); open(3,2,1);
+ open(4,2,2); open(5,3,1); open(6,3,2);
+enddef;
+
+
+openit;
+string params[],fontname[];
+params[1] := "roman_params"; fontname[1] := "r";
+params[2] := "ital_params"; fontname[2] := "i";
+params[3] := "bold_params"; fontname[3] := "bx";
+params[4] := "roman2_params"; fontname[4] := "rz";
+params[5] := "bold2_params"; fontname[5] := "by";
+params[6] := "bold3_params"; fontname[6] := "bz";
+
+string charnum;
+forever:
+ message "Enter character code (eg: a1) ";
+ charnum := readstring;
+ for k = 1 upto 6:
+ if known params[k]:
+ currentwindow := k;
+ scantokens("input " & fontname[k]);
+ newstyle;
+ scantokens("input char" & charnum);
+ fi;
+ endfor;
+endfor;
diff --git a/fonts/thai/rmit/thai-test.tex b/fonts/thai/rmit/thai-test.tex
new file mode 100644
index 0000000000..23a11d8477
--- /dev/null
+++ b/fonts/thai/rmit/thai-test.tex
@@ -0,0 +1,120 @@
+\documentstyle{article}
+
+\newcommand{\testchars}{
+\symbol{"20}
+\symbol{"21}
+\symbol{"22}
+\symbol{"23}
+\symbol{"24}
+\symbol{"25}
+\symbol{"26}
+\symbol{"27}
+\symbol{"28}
+\symbol{"29}
+\symbol{"2A}
+\symbol{"2B}
+\symbol{"2C}
+\symbol{"2D}
+\symbol{"2E}
+\symbol{"2F}
+\symbol{"30}
+\symbol{"31}
+\symbol{"32}
+\symbol{"33}
+\symbol{"34}
+\symbol{"35}
+\symbol{"36}
+\symbol{"37}
+\symbol{"38}
+\symbol{"39}
+\symbol{"3A}
+\symbol{"3B}
+\symbol{"3C}
+\symbol{"3D}
+\symbol{"3E}
+\symbol{"3F}
+\symbol{"40}
+\symbol{"41}
+\symbol{"42}
+\symbol{"43}
+\symbol{"44}
+\symbol{"45}
+\symbol{"46}
+\symbol{"47}
+\symbol{"48}
+\symbol{"49}
+\symbol{"4A}
+\symbol{"4B}
+\symbol{"4C}
+\symbol{"4D}
+\symbol{"4E}
+\symbol{"4F}
+\symbol{"50}
+\symbol{"29}\symbol{"51}\symbol{"39}
+\symbol{"52}
+\symbol{"4D}\symbol{"53}
+\symbol{"4D}\symbol{"54}
+\symbol{"4D}\symbol{"55}
+\symbol{"4D}\symbol{"56}
+\symbol{"4D}\symbol{"57}
+\symbol{"4D}\symbol{"58}
+\symbol{"4D}\symbol{"59}
+\symbol{"5A}
+\symbol{"5F}
+\symbol{"60}
+\symbol{"61}
+\symbol{"62}
+\symbol{"63}
+\symbol{"64}
+\symbol{"65}
+\symbol{"66}
+\symbol{"4D}\symbol{"67}
+\symbol{"4D}\symbol{"68}
+\symbol{"4D}\symbol{"69}
+\symbol{"4D}\symbol{"6A}
+\symbol{"4D}\symbol{"6B}
+\symbol{"4D}\symbol{"6C}
+\symbol{"4D}\symbol{"6D}
+\symbol{"6E}
+\symbol{"6F}
+\symbol{"70}
+\symbol{"71}
+\symbol{"72}
+\symbol{"73}
+\symbol{"74}
+\symbol{"75}
+\symbol{"76}
+\symbol{"77}
+\symbol{"78}
+\symbol{"79}
+\symbol{"7A}
+\symbol{"7B}
+}
+\newfont{\thairCA}{thair20 scaled\magstep1}
+\newfont{\thairzCA}{thairz20 scaled\magstep1}
+\newfont{\thaiiCA}{thaii20 scaled\magstep1}
+\newfont{\thaibxCA}{thaibx20 scaled\magstep1}
+\newfont{\thaibyCA}{thaiby20 scaled\magstep1}
+\newfont{\thaibzCA}{thaibz20 scaled\magstep1}
+
+\begin{document}
+\sloppy
+This is thair at 20 point
+{\thairCA\testchars}
+
+This is thairz at 20 point
+{\thairzCA\testchars}
+
+This is thaii at 20 point
+{\thaiiCA\testchars}
+
+This is thaibx at 20 point
+{\thaibxCA\testchars}
+
+This is thaiby at 20 point
+{\thaibyCA\testchars}
+
+This is thaibz at 20 point
+{\thaibzCA\testchars}
+
+\end{document}
diff --git a/fonts/thai/rmit/thaibase.mf b/fonts/thai/rmit/thaibase.mf
new file mode 100644
index 0000000000..0835ecb7ab
--- /dev/null
+++ b/fonts/thai/rmit/thaibase.mf
@@ -0,0 +1,519 @@
+
+def newstyle =
+ if unknown slant:
+ slant := 0;
+ currenttransform := identity;
+ else:
+ currenttransform := identity slanted slant yscaled aspect_ratio;
+ fi;
+ define_pixels(thin, thick, overshoot, skinnywd);
+ define_pixels(normwd, normht, dia, jutout);
+ define_pixels(curveht, cupht, hatht, leftgap, rightgap);
+ define_pixels(lvgap, lvht, uvgap, uvht, tonegap, toneht, dotsize);
+ define_blacker_pixels(px, py);
+ def_curlywd;
+
+ pickup pencircle xscaled px yscaled py;
+ pickup pencircle;
+ thaipen := savepen;
+enddef;
+
+
+% redefinition of beginchar and endchar in case I want to add anything
+def beginthaichar(expr str, code, lig, wd, ht, dp) =
+ if wd = 0: wid := 0;
+ else: wid := leftgap# + wd + rightgap#; fi;
+ if proofing > 0:
+ beginchar(hex code, wid, ht, dp);
+ else:
+ beginchar(hex code, wid,
+ normht# + uvgap# + uvht# + toneht# + tonegap#,
+ lvgap# + lvht#);
+ fi;
+ pickup thaipen;
+ str & " (" & code & ": " & lig & ") ";
+ makelabel.lft("h", (0,h));
+ makelabel.lft("d", (0, -d));
+ leftmost := leftgap;
+ rightmost := w - rightgap;
+enddef;
+def endthaichar =
+ endchar;
+enddef;
+
+
+
+def dd_def(suffix $) =
+ penpos$(thick, 0);
+ x$a = x$d = x$c = x$f;
+ x$e + thin = x$b;
+ x$a = 1/2[x$b, x$l];
+ x$b + dia = x$l;
+ y$b = y$e;
+ y$ = y$f;
+ y$d + thin = y$a;
+ y$c + thin = y$f;
+ y$a + dia = y$c;
+ y$e = 1/2[y$a, y$c];
+ x$lft = x$e;
+ x$rt = x$r;
+ y$top = y$f;
+ bot y$bot = bot y$d = 0;
+enddef;
+
+def dd_path_i(suffix $) =
+ (z$l{down} .. {left}z$a .. {up}z$b .. {right}z$c)
+enddef;
+
+def dd_path_o(suffix $) =
+ (z$r{down} .. {left}z$d .. {up}z$e .. {right}z$f)
+enddef;
+
+
+def topcap_def(suffix $) =
+ x$l + thick = x$r;
+ y$l if known anglecut: + thick fi = y$r;
+ y$top = y$r;
+ z$ = 1/2[z$l, z$r];
+ x$lft = x$l; x$rt = x$r;
+enddef;
+
+def botcap_def(suffix $) =
+ x$l + thick = x$r;
+ y$l if known anglecut: + thick fi = y$r;
+ y$l = y$bot;
+ z$ = 1/2[z$l, z$r];
+ x$lft = x$l; x$rt = x$r;
+enddef;
+
+
+def gor_def(suffix $) =
+ if gorstyle = 1:
+ x$a + thick = x$e;
+ x$b + thick = x$h;
+ x$b = x$a - jutout;
+ x$j + thick = x$d;
+ x$c = x$i = 1/2[x$h, x$j];
+ x$f = x$g = 1/3[x$h, x$j];
+ y$a = y$b = y$e = y$f;
+ y$h = y$g = y$a + thin = y$j = y$d;
+ y$c = y$i + thin = normht + overshoot;
+ y$h + curveht = y$i;
+ x$lft = x$a;
+ x$rt = x$d;
+ y$top = y$c;
+ y$bot = y$a;
+ elseif gorstyle = 2:
+ x$a + thick = x$f;
+ x$b + thick = x$g;
+ x$c + thick = x$h;
+ x$d = x$i;
+ x$j + thick = x$e;
+ x$c = x$a - jutout;
+ x$g = 1/2[x$h, x$i];
+ x$i = 1/2[x$h, x$j];
+ y$a = y$f;
+ y$b = y$g;
+ y$c = y$h = y$j = y$e;
+ y$d = y$i + thin = normht + overshoot;
+ y$c + curveht = y$i;
+ y$f + curveht = y$h;
+ y$g = 1/2[y$f, y$h];
+ x$lft = x$a;
+ x$rt = x$e;
+ y$top = y$d;
+ y$bot = y$a;
+ else:
+ x$lft = x$a;
+ x$rt = x$f;
+ y$top = y$e;
+ y$bot = y$a;
+ x$a + thick = x$g;
+ x$c = x$d = x$a - jutout;
+ x$e = x$k = 1/2[x$g, x$l];
+ x$l + thick = x$f;
+ x$h = x$i = 1/3[x$g, x$l];
+ (x$h - x$g) = (y$h - y$g);
+ y$i = y$h + thin;
+ y$a = y$g;
+ % y$c = 1/5(x$i - x$c) + y$i;
+ y$c = y$i;
+ y$d = y$c + thin;
+ y$e = y$k + thin = normht + overshoot;
+ y$d = y$l = y$f = y$k - curveht;
+ % z$b = (z$a{up}..{right}z$i) intersectionpoint (z$h..z$c);
+ % z$j = (z$c..{right}z$k) intersectionpoint (z$d..z$i);
+ z$b = (x$i - thick, 1/2[y$i, y$h]);
+ z$j = (x$c + thin, 1/2[y$c, y$d]);
+ fi;
+enddef;
+
+def gor_path_i(suffix $) =
+ if gorstyle = 1:
+ (z$e -- z$f -- z$g -- z$h{up} .. z$i{right} .. z$j{down})
+ elseif gorstyle = 2:
+ (z$f{up}..{right}z$g & z$g{left}..z$h{up}..z$i{right}..{down}z$j)
+ else:
+ (z$g{up}..{right}z$h--z$i--z$j{dir 45}..{right}z$k..{down}z$l)
+ fi
+enddef;
+
+def gor_path_o(suffix $) =
+ if gorstyle = 1:
+ (z$a -- z$b{up} .. {right}z$c .. z$d{down})
+ elseif gorstyle = 2:
+ (z$a{up}..{right}z$b{left}..{up}z$c..{right}z$d..{down}z$e)
+ else:
+ (z$a{up}..{right}z$b--z$c--z$d{dir 45}..{right}z$e..{down}z$f)
+ fi
+enddef;
+
+
+def base_def(suffix $) =
+ x$a = x$e + thick = x$b;
+ x$d + thick = x$j;
+ x$i = x$c = 1/2[x$a, x$d];
+ x$e = x$f;
+ x$g = x$h = x$f - jutout;
+ y$a = y$e = y$d = y$j = y$c + cupht;
+ y$g = y$f = y$b = y$c = y$i + thin;
+ y$h = y$i;
+ x$lft = x$e;
+ x$rt = x$j;
+ y$top = y$e;
+ y$bot = y$i;
+enddef;
+
+def base_path_i(suffix $) =
+ (z$b -- z$c{right} .. {up}z$d)
+ % (z$a -- z$b -- z$c{right} .. {up}z$d)
+enddef;
+
+def base_path_o(suffix $) =
+ (z$f -- z$g -- z$h -- z$i{right} .. {up}z$j)
+ % (z$e -- z$f -- z$g -- z$h -- z$i{right} .. {up}z$j)
+enddef;
+
+
+def cup_def(suffix $) =
+ x$d + thick = x$a;
+ x$c + thick = x$f;
+ x$b = x$e = 1/2[x$a, x$c];
+ y$e + thin = y$b;
+ y$b + cupht = y$d = y$a = y$c = y$f;
+ bot y$e = -overshoot;
+ x$d = x$lft;
+ x$f = x$rt;
+ y$top = y$a;
+ y$bot = y$e;
+enddef;
+
+def cup_path_i(suffix $) =
+ (z$a{down} .. z$b{right} .. {up}z$c)
+enddef;
+
+def cup_path_o(suffix $) =
+ (z$d{down} .. z$e{right} .. {up}z$f)
+enddef;
+
+
+def def_curlywd =
+ if curlystyle = 1:
+ curlywd# := 2dia# + thin#;
+ kinkedcurlywd# := 3dia# + thin#;
+ else:
+ curlywd# := dia#;
+ kinkedcurlywd# := 2dia#;
+ fi;
+ define_pixels(curlywd, kinkedcurlywd);
+enddef;
+
+def curly_def(suffix $) =
+ if curlystyle = 1:
+ penpos$(thick, 0);
+ x$a = x$j = 1/2[x$b, x$l];
+ x$b = x$i + thin = x$l - 2dia;
+ x$c = x$h = x$e = x$f = 1/2[x$b, x$d];
+ x$d = x$b + dia;
+ x$g = x$d + thin;
+ top y$j = normht + overshoot;
+ y$a + thin = y$j;
+ y$b = y$i = y$d = y$g = 1/2[y$e, y$c] = y$;
+ y$c = y$e - dia;
+ y$e + dia = y$a;
+ y$f = y$e + thin;
+ y$h = y$c - thin;
+ x$lft = x$i;
+ x$rt = x$r;
+ y$top = y$j;
+ y$bot = y$h;
+ else:
+ penpos$(thick, 0);
+ x$a = x$j = 1/2[x$i, x$n];
+ x$b = x$i + thin = x$l - dia;
+ x$c = x$h = x$e = x$f = 1/2[x$b, x$d];
+ x$d = x$b + dia;
+ x$g = x$d + thin;
+ x$n = x$r;
+ x$m + thin = x$n;
+ top y$j = normht + overshoot;
+ y$a + thin = y$j;
+ y$b = y$i = y$d = y$g = 1/2[y$e, y$c] = y$m = y$n;
+ y$c = y$e - dia;
+ y$e + dia = y$a;
+ y$f = y$e + thin;
+ y$h = y$c - thin;
+ y$ + dia = y$n;
+ x$lft = x$i;
+ x$rt = x$r;
+ y$top = y$j;
+ y$bot = y$h;
+ fi;
+enddef;
+
+def curly_path(suffix $) =
+ if curlystyle = 1:
+ (z$l{up} .. z$a{left} .. z$b{down} .. z$c{right} .. z$d{up}
+ .. z$e{left} .. {down}z$b -- z$i{up} .. z$f{right}
+ .. z$g{down} .. z$h{left} .. z$i{up} .. z$j{right}
+ .. {down}z$r)
+ else:
+ (z$l .. z$m{up} .. z$a{left} .. z$b{down}
+ .. z$c{right} .. z$d{up}
+ .. z$e{left} .. {down}z$b -- z$i{up} .. z$f{right}
+ .. z$g{down} .. z$h{left} .. z$i{up} .. z$j{right}
+ .. z$n{down} .. {down}z$r)
+ fi
+enddef;
+
+
+def kinkedcurly_def(suffix $) =
+ if curlystyle = 1:
+ penpos$(thick, 0);
+ x$a = x$j = 1/2[x$b, x$l];
+ x$b = x$i + thin = x$l - 3dia;
+ x$c = x$h = x$e = x$f = 1/2[x$b, x$d];
+ x$d = x$b + dia;
+ x$g = x$d + thin;
+ x$s = x$t = 1/2[x$i, x$j];
+ x$u = x$v = 1/2[x$j, x$l];
+ top y$s = top y$u = normht;
+ y$j = y$s - (x$u - x$j);
+ y$s - thin = y$t;
+ y$u - thin = y$v;
+ y$a + thin = y$j;
+ y$b = y$i = y$d = y$g = 1/2[y$e, y$c] = y$;
+ y$c = y$e - dia;
+ y$e + dia = y$a;
+ y$f = y$e + thin;
+ y$h = y$c - thin;
+ x$lft = x$i;
+ x$rt = x$r;
+ y$top = y$j;
+ y$bot = y$h;
+ else:
+ penpos$(thick, 0);
+ x$a = x$j = 1/2[x$i, x$n];
+ x$b = x$i + thin = x$l - 2dia;
+ x$c = x$h = x$e = x$f = 1/2[x$b, x$d];
+ x$d = x$b + dia;
+ x$g = x$d + thin;
+ x$n = x$r;
+ x$m + thin = x$n;
+ x$s = x$t = 1/2[x$i, x$j];
+ x$u = x$v = 1/2[x$j, x$m];
+ top y$s = top y$u = normht;
+ y$j = y$s - (x$u - x$j);
+ y$s - thin = y$t;
+ y$u - thin = y$v;
+ y$a + thin = y$j;
+ y$b = y$i = y$d = y$g = 1/2[y$e, y$c] = y$m = y$n;
+ y$c = y$e - dia;
+ y$e + dia = y$a;
+ y$f = y$e + thin;
+ y$h = y$c - thin;
+ y$ + dia = y$n;
+ x$lft = x$i;
+ x$rt = x$r;
+ y$top = y$j;
+ y$bot = y$h;
+ fi;
+enddef;
+
+def kinkedcurly_path(suffix $) =
+ if curlystyle = 1:
+ (z$l{up} .. z$v{left} .. z$a{left} .. z$t{left}
+ .. z$b{down} .. z$c{right} .. z$d{up}
+ .. z$e{left} .. {down}z$b -- z$i{up} .. z$f{right}
+ .. z$g{down} .. z$h{left} .. z$i{up}
+ .. z$s{right} .. z$j{right} .. z$u{right}
+ .. {down}z$r)
+ else:
+ (z$l{up} .. z$m{up} .. z$v{left} .. z$a{left}
+ .. z$t{left} .. z$b{down}
+ .. z$c{right} .. z$d{up}
+ .. z$e{left} .. {down}z$b -- z$i{up} .. z$f{right}
+ .. z$g{down} .. z$h{left} .. z$i{up}
+ .. z$s{right} .. z$j{right} .. z$u{right}
+ .. z$n{down} .. {down}z$r)
+ fi
+enddef;
+
+
+def hat_def(suffix $)(expr linewd) =
+ penpos$(linewd, 0);
+ x$d = x$a = 1/2[x$b, x$l];
+ z$c = z$b + (-thin/2, thin/2);
+ y$b = y$l = y$bot;
+ y$a = y$c + hatht;
+ y$d = y$a + thin;
+ y$top = y$d;
+ x$lft = x$c;
+ x$rt = x$r;
+enddef;
+
+def hat_path(suffix $) =
+ (z$l{up} .. z$a{left} .. z$b{(-1,-3)} .. {(1,3)}z$c .. z$d{right}
+ .. {down}z$r)
+enddef;
+
+
+def b_def(suffix $)(expr linewd, embed) =
+ if embed > thick - thin: emb := thick - thin
+ else: emb := embed; fi;
+ penpos$(linewd, 0);
+ x$a = x$l;
+ x$f = x$r - emb;
+ x$h = x$f + dia;
+ x$b = x$i = x$g = x$d = 1/2[x$f, x$h];
+ x$c = x$h + thin;
+ x$e = x$f - thin;
+ y$a = y$e = y$f = y$h = y$c = 1/2[y$i, y$g];
+ y$b = y$i - thin;
+ y$d = y$g + thin;
+ y$g = y$i + dia;
+ y$top = y$d;
+ y$bot = y$b;
+ x$lft = x$a;
+ x$rt = x$c;
+ y$r = y$e + ( (dia/2) +-+ (dia/2-emb) );
+enddef;
+
+def b_path(suffix $) =
+ (z$l .. z$a{down} .. z$b{right} .. z$c{up} .. z$d{left} .. {down}z$e
+ -- z$f{up} .. z$g{right} .. z$h{down} .. z$i{left}
+ .. z$f{up} .. z$r)
+enddef;
+
+
+def d_def(suffix $)(expr linewd, embed) =
+ if embed > thick - thin: emb := thick - thin
+ else: emb := embed; fi;
+ penpos$(linewd, 0);
+ x$a = x$r;
+ x$f = x$l + emb;
+ x$h = x$f - dia;
+ x$b = x$i = x$g = x$d = 1/2[x$f, x$h];
+ x$c = x$h - thin;
+ x$e = x$f + thin;
+ y$a = y$e = y$f = y$h = y$c = 1/2[y$i, y$g];
+ y$b = y$i - thin;
+ y$d = y$g + thin;
+ y$g = y$i + dia;
+ y$top = y$d;
+ y$bot = y$b;
+ x$lft = x$c;
+ x$rt = x$a;
+ y$l = y$e + ( (dia/2) +-+ (dia/2-emb) );
+enddef;
+
+def d_path(suffix $) =
+ (z$l .. z$f{down} .. z$i{left} .. z$h{up} .. z$g{right} .. {down}z$f
+ -- z$e{up} .. z$d{left} .. z$c{down} .. z$b{right}
+ .. z$a{up} .. z$r)
+enddef;
+
+
+def p_def(suffix $)(expr linewd, embed) =
+ if embed > thick - thin: emb := thick - thin
+ else: emb := embed; fi;
+ penpos$(linewd, 0);
+ x$a = x$l;
+ x$f = x$r - emb;
+ x$h = x$f + dia;
+ x$b = x$i = x$g = x$d = 1/2[x$f, x$h];
+ x$c = x$h + thin;
+ x$e = x$f - thin;
+ y$a = y$e = y$f = y$h = y$c = 1/2[y$i, y$g];
+ y$b = y$i + thin;
+ y$d = y$g - thin;
+ y$g = y$i - dia;
+ y$top = y$b;
+ y$bot = y$d;
+ x$lft = x$a;
+ x$rt = x$c;
+ y$r = y$e - ( (dia/2) +-+ (dia/2-emb) );
+enddef;
+
+def p_path(suffix $) =
+ (z$l .. z$a{up} .. z$b{right} .. z$c{down} .. z$d{left} .. {up}z$e
+ -- z$f{down} .. z$g{right} .. z$h{up} .. z$i{left}
+ .. z$f{down} .. z$r)
+enddef;
+
+
+def q_def(suffix $)(expr linewd, embed) =
+ if embed > thick - thin: emb := thick - thin
+ else: emb := embed; fi;
+ penpos$(linewd, 0);
+ x$a = x$r;
+ x$f = x$l + emb;
+ x$h = x$f - dia;
+ x$b = x$i = x$g = x$d = 1/2[x$f, x$h];
+ x$c = x$h - thin;
+ x$e = x$f + thin;
+ y$a = y$e = y$f = y$h = y$c = 1/2[y$i, y$g];
+ y$b = y$i + thin;
+ y$d = y$g - thin;
+ y$g = y$i - dia;
+ y$top = y$b;
+ y$bot = y$d;
+ x$lft = x$c;
+ x$rt = x$a;
+ y$l = y$e - ( (dia/2) +-+ (dia/2-emb) );
+enddef;
+
+def q_path(suffix $) =
+ (z$l .. z$f{up} .. z$i{left} .. z$h{down} .. z$g{right} .. {up}z$f
+ -- z$e{down} .. z$d{left} .. z$c{up} .. z$b{right}
+ .. z$a{down} .. z$r)
+enddef;
+
+
+% must define left edge(x), right edge(x) and stem(x) as well as top(y)
+def rhat_def(suffix $) =
+ penpos$(thick, 0);
+
+ x$b = x$e = 1/3[x$a, x$c];
+ x$d = x$c - thick;
+ x$f = x$a + thin;
+ y$a = y$f - thin;
+ y$c = y$b - thick/3;
+ y$d = y$c - thick;
+ y$e = y$b - thick;
+ y$f = y$b - 1/4normht;
+ y$ = y$a - thick;
+ x$lft = x$a;
+ x$rt = x$c;
+ y$top = y$b;
+ y$bot = y$;
+ % needed for taw toh!ng
+ x$taw = x$a + dia;
+ y$taw = y$a;
+enddef;
+
+def rhat_path(suffix $) =
+ (z$l{up} ... {left}z$a & z$a .. tension 2 .. z$b .. tension 2 .. z$c
+ -- z$d .. tension 2 .. z$e .. tension 2 .. z$f & z$f{right}
+ ... {down}z$r)
+enddef;
diff --git a/fonts/thai/rmit/thaibx10.mf b/fonts/thai/rmit/thaibx10.mf
new file mode 100644
index 0000000000..aeec6c4c39
--- /dev/null
+++ b/fonts/thai/rmit/thaibx10.mf
@@ -0,0 +1,9 @@
+font_size 10pt#;
+vpt# := 10pt#/10;
+mode_setup;
+input thaibase;
+input bx;
+newstyle;
+input all;
+input lig;
+bye;
diff --git a/fonts/thai/rmit/thaiby10.mf b/fonts/thai/rmit/thaiby10.mf
new file mode 100644
index 0000000000..42f97f1f16
--- /dev/null
+++ b/fonts/thai/rmit/thaiby10.mf
@@ -0,0 +1,9 @@
+font_size 10pt#;
+vpt# := 10pt#/10;
+mode_setup;
+input thaibase;
+input by;
+newstyle;
+input all;
+input lig;
+bye;
diff --git a/fonts/thai/rmit/thaibz10.mf b/fonts/thai/rmit/thaibz10.mf
new file mode 100644
index 0000000000..1a94b96d95
--- /dev/null
+++ b/fonts/thai/rmit/thaibz10.mf
@@ -0,0 +1,9 @@
+font_size 10pt#;
+vpt# := 10pt#/10;
+mode_setup;
+input thaibase;
+input bz;
+newstyle;
+input all;
+input lig;
+bye;
diff --git a/fonts/thai/rmit/thaii10.mf b/fonts/thai/rmit/thaii10.mf
new file mode 100644
index 0000000000..6493723b17
--- /dev/null
+++ b/fonts/thai/rmit/thaii10.mf
@@ -0,0 +1,9 @@
+font_size 10pt#;
+vpt# := 10pt#/10;
+mode_setup;
+input thaibase;
+input i;
+newstyle;
+input all;
+input lig;
+bye;
diff --git a/fonts/thai/rmit/thair10.mf b/fonts/thai/rmit/thair10.mf
new file mode 100644
index 0000000000..5288a86db5
--- /dev/null
+++ b/fonts/thai/rmit/thair10.mf
@@ -0,0 +1,9 @@
+font_size 10pt#;
+vpt# := 10pt#/10;
+mode_setup;
+input thaibase;
+input r;
+newstyle;
+input all;
+input lig;
+bye;
diff --git a/fonts/thai/rmit/thairz10.mf b/fonts/thai/rmit/thairz10.mf
new file mode 100644
index 0000000000..06a0f5b228
--- /dev/null
+++ b/fonts/thai/rmit/thairz10.mf
@@ -0,0 +1,9 @@
+font_size 10pt#;
+vpt# := 10pt#/10;
+mode_setup;
+input thaibase;
+input rz;
+newstyle;
+input all;
+input lig;
+bye;