-- CharADefs.mesa 

-- Revised by Tripp: 	  8-Sep-82 20:30:42 
-- Owner: GCurry

CharADefs: DEFINITIONS =
  BEGIN

  --CHARACTER SET 0  

  -- Codes which are not to be used in a particular character set are named "unused#B"; codes which are available, but unassigned are named "available#B"  The actual code assignments may change up to a point, so clients should reference characters symbolically whenever possible. 

  Codes0: TYPE = MACHINE DEPENDENT{  --Symbolic names for character set 0

    available0B(0B), available1B(1B), available2B(2B), available3B(3B),
    available4B(4B), available5B(5B), available6B(6B), available7B(7B),
    available10B(10B), tab(11B), lineFeed(12B), available13B(13B),
    available14B(14B), newLine(15B), available16B(16B), available17B(17B),
    available20B(20B), region(21B), pageFormat(22B), startOfDocument(23B),
    stop(24B), available25B(25B), available26B(26B), available27B(27B),
    available30B(30B), available31B(31B), blackRect(32B), available33B(33B),
    available34B(34B), newParagraph(35B), available36B(36B), available37B(37B),
    space(40B), exclamationMark(41B), doubleQuote(42B), poundSign(43B),
    dollarSign(44B), percentSign(45B), ampersand(46B), rightQuote(47B),
    leftParenthesis(50B), rightParenthesis(51B), asterisk(52B), plus(53B),
    comma(54B), hyphen(55B), period(56B), slash(57B),

    digit0(60B), digit1(61B), digit2(62B), digit3(63B), digit4(64B), digit5(65B),
    digit6(66B), digit7(67B), digit8(70B), digit9(71B),

    colon(72B), semicolon(73B), leftAngleBracket(74B), equals(75B),
    rightAngleBracket(76B), questionMark(77B),

    atSign(100B),

    upperA(101B), upperB(102B), upperC(103B), upperD(104B), upperE(105B),
    upperF(106B), upperG(107B), upperH(110B), upperI(111B), upperJ(112B),
    upperK(113B), upperL(114B), upperM(115B), upperN(116B), upperO(117B),
    upperP(120B), upperQ(121B), upperR(122B), upperS(123B), upperT(124B),
    upperU(125B), upperV(126B), upperW(127B), upperX(130B), upperY(131B),
    upperZ(132B),

    leftSquareBracket(133B), backSlash(134B), rightSquareBracket(135B),
    arrowHead(136B), lowBar(137B), leftQuote(140B),

    lowerA(141B), lowerB(142B), lowerC(143B), lowerD(144B), lowerE(145B),
    lowerF(146B), lowerG(147B), lowerH(150B), lowerI(151B), lowerJ(152B),
    lowerK(153B), lowerL(154B), lowerM(155B), lowerN(156B), lowerO(157B),
    lowerP(160B), lowerQ(161B), lowerR(162B), lowerS(163B), lowerT(164B),
    lowerU(165B), lowerV(166B), lowerW(167B), lowerX(170B), lowerY(171B),
    lowerZ(172B),

    leftBracket(173B), verticalBar(174B), rightBracket(175B), approximately(176B),

    unused177B(177B),

    available200B(200B), available201B(201B), available202B(202B),
    available203B(203B), available204B(204B), available205B(205B),
    available206B(206B), available207B(207B), available210B(210B), paraTab(211B),
    available212B(212B), available213B(213B), available214B(214B), newPara(215B),
    available216B(216B), available217B(217B), available220B(220B), boxMT(221B),
    boxNOT(222B), boxEllipsis(223B), boxRange(224B), boxUpperX(225B),
    boxUpperA(226B), boxdigit9(227B), boxUpperZ(230B), boxAsterisk(231B),
    available232B(232B), available233B(233B), boxPlus(234B), boxMinus(235B),
    boxPeriod(236B), boxComma(237B),

    available240B(240B), invertedExclamation(241B), centSign(242B),
    britishPoundSterlingSign(243B), ascii244B(244B), yenSign(245B),
    ascii246B(246B), sectionSign(247B), currencySign(250B), unused251B(251B),
    unused252B(252B), leftGuillemet(253B), unused254B(254B), unused255B(255B),
    unused256B(256B), unused257B(257B), degreesSign(260B), plusOrMinus(261B),
    squaredSign(262B), cubedSign(263B), multiply(264B), micro(265B),
    paragraphSign(266B), centeredDot(267B), divide(270B), unused271B(271B),
    unused272B(272B), rightGuillemet(273B), oneQuarter(274B), oneHalf(275B),
    threeQuarters(276B), invertedQuestionMark(277B),

    --ACCENTS.
    unused300B(300B), accentGrave(301B), accentAcute(302B),
    accentCircumflex(303B), accentTilde(304B), accentMacron(305B),
    accentBreve(306B), accentOverdot(307B), accentDieresis(310B),
    unused311B(311B), accentRaisedRing(312B), accentCedilla(313B),
    accentUnderbar(314B), accentDoubleAcute(315B), accentOgnek(316B),
    accentHacek(317B),

    unused320B(320B), unused321B(321B), unused322B(322B), unused323B(323B),
    unused324B(324B), unused325B(325B), unused326B(326B), unused327B(327B),
    unused330B(330B), unused331B(331B), unused332B(332B), unused333B(333B),
    unused334B(334B), unused335B(335B), unused336B(336B), unused337B(337B),


    --Real Weird characters.
    ohmSign(340B), upperAEdipthong(341B), upperDstroke(342B),
    lowerAunderline(343B), upperHstroke(344B), unused345B(345B),
    upperIJligature(346B), upperLdot(347B), upperLstroke(350B), upperOslash(351B),
    upperOEligature(352B), lowerOunderline(353B), upperThorn(354B),
    upperTstroke(355B), upperEng(356B), lowerNapostrophe(357B),
    lowerKgreenlandic(360B), lowerAEdipthong(361B), lowerDstroke(362B),
    lowerEth(363B), lowerHstroke(364B), lowerIdotless(365B),
    lowerIJligature(366B), lowerLdot(367B), lowerLstroke(370B), lowerOslash(371B),
    lowerOEligature(372B), lowerSzed(373B), lowerThorn(374B), lowerTstroke(375B),
    lowerEng(376B),

    escape(377B)};

  --CHARACTER SET 1: Greek and Cyrillic alphabets

  Codes1: TYPE = MACHINE DEPENDENT{
    -- Upper case Greek letters
    upperAlpha(41B), upperBeta(42B), upperGamma(43B), upperDelta(44B),
    upperEpsilon(45B), upperZeta(46B), upperEta(47B), upperTheta(50B),
    upperIota(51B), upperKappa(52B), upperLambda(53B), upperMu(54B), upperNu(55B),
    upperXi(56B), upperOmicron(57B), upperPi(60B), upperRho(61B), upperSigma(62B),
    upperTau(63B), upperUpsilon(64B), upperPhi(65B), upperKhi(66B), upperPsi(67B),
    upperOmega(70B),

    asper(71B),

    -- Lower case Greek letters
    lowerAlpha(101B), lowerBeta(102B), lowerGamma(103B), lowerDelta(104B),
    lowerEpsilon(105B), lowerZeta(106B), lowerEta(107B), lowerTheta(110B),
    lowerIota(111B), lowerKappa(112B), lowerLambda(113B), lowerMu(114B),
    lowerNu(115B), lowerXi(116B), lowerOmicron(117B), lowerPi(120B),
    lowerRho(121B), lowerSigma(122B), lowerTau(123B), lowerUpsilon(124B),
    lowerPhi(125B), lowerKhi(126B), lowerPsi(127B), lowerOmega(130B),

    lenis(131B),

    -- Upper case Cyrillic letters
    upperA(241B), upperBe(242B), upperVe(243B), upperGe(244B), upperDe(245B),
    upperYe(246B), upperYo(247B), upperZhe(250B), upperZe(251B), upperI(252B),
    upperIKratkoye(253B), upperKa(254B), upperEl(255B), upperEm(256B),
    upperEn(257B), upperO(260B), upperPe(261B), upperEr(262B), upperEs(263B),
    upperTe(264B), upperU(265B), upperEf(266B), upperXa(267B), upperTse(270B),
    upperChe(271B), upperSha(272B), upperShCha(273B), upperTvyordiiZnak(274B),
    upperYeri(275B), upperMyaxkiiZnak(276B), upperEOborotnoye(277B),
    upperYu(300B), upperYa(301B),

    -- Lower case Cyrillic letters
    lowerA(321B), lowerBe(322B), lowerVe(323B), lowerGe(324B), lowerDe(325B),
    lowerYe(326B), lowerYo(327B), lowerZhe(330B), lowerZe(331B), lowerI(332B),
    lowerIKratkoye(333B), lowerKa(334B), lowerEl(335B), lowerEm(336B),
    lowerEn(337B), lowerO(340B), lowerPe(341B), lowerEr(342B), lowerEs(343B),
    lowerTe(344B), lowerU(345B), lowerEf(346B), lowerXa(347B), lowerTse(350B),
    lowerChe(351B), lowerSha(352B), lowerShCha(353B), lowerTvyordiiZnak(354B),
    lowerYeri(355B), lowerMyaxkiiZnak(356B), lowerEOborotnoye(357B),
    lowerYu(360B), lowerYa(361B)};

  --CHARACTER SET 2: Japanese "Hiragana & Katakana"  

  Codes2: TYPE = MACHINE DEPENDENT{  --Symbolic names for character set 2
    -- unused: 0B ~ 40B

    -- hiragana: 41B ~ 163B
    hirSmallA(41B), hirA(42B), hirSmallI(43B), hirI(44B), hirSmallU(45B),
    hirU(46B), hirSmallE(47B), hirE(50B), hirSmallO(51B), hirO(52B), hirKa(53B),
    hirGa(54B), hirKi(55B), hirGi(56B), hirKu(57B), hirGu(60B), hirKe(61B),
    hirGe(62B), hirKo(63B), hirGo(64B), hirSa(65B), hirZa(66B), hirSi(67B),
    hirJi(70B), hirSu(71B), hirZu(72B), hirSe(73B), hirZe(74B), hirSo(75B),
    hirZo(76B), hirTa(77B), hirDa(100B), hirTi(101B), hirDi(102B),
    hirSmallTu(103B), hirTu(104B), hirDu(105B), hirTe(106B), hirDe(107B),
    hirTo(110B), hirDo(111B), hirNa(112B), hirNi(113B), hirNu(114B), hirNe(115B),
    hirNo(116B), hirHa(117B), hirBa(120B), hirPa(121B), hirHi(122B), hirBi(123B),
    hirPi(124B), hirHu(125B), hirBu(126B), hirPu(127B), hirHe(130B), hirBe(131B),
    hirPe(132B), hirHo(133B), hirBo(134B), hirPo(135B), hirMa(136B), hirMi(137B),
    hirMu(140B), hirMe(141B), hirMo(142B), hirSmallYa(143B), hirYa(144B),
    hirSmallYu(145B), hirYu(146B), hirSmallYo(147B), hirYo(150B), hirRa(151B),
    hirRi(152B), hirRu(153B), hirRe(154B), hirRo(155B), hirSmallWa(156B),
    hirWa(157B), hirWi(160B), hirWe(161B), hirWo(162B), hirN(163B),

    -- unused: 164B ~ 166B

    -- punctuations: 173B ~ 176B
    hirKurikaesi(167B), hirKurikaesiDakuon(170B), touten(171B), kuten(172B),
    hajimeKagiKakko(173B), owariKagiKakko(174B), hajimeNijuKagiKakko(175B),
    owariNijuKagiKakko(176B),
    -- hirRepeat(167B), hirRepeatDakuon(170B), jComma(171B), jPeriod(172B), jLeftQuote(173B), jRightQuote(174B), jLeftDoubleQuote(175B), jRightDoubleQuote(176B),

    -- unused: 177B ~ 240B

    -- katakana: 241B ~ 366B
    katSmallA(241B), katA(242B), katSmallI(243B), katI(244B), katSmallU(245B),
    katU(246B), katSmallE(247B), katE(250B), katSmallO(251B), katO(252B),
    katKa(253B), katGa(254B), katKi(255B), katGi(256B), katKu(257B), katGu(260B),
    katKe(261B), katGe(262B), katKo(263B), katGo(264B), katSa(265B), katZa(266B),
    katSi(267B), katJi(270B), katSu(271B), katZu(272B), katSe(273B), katZe(274B),
    katSo(275B), katZo(276B), katTa(277B), katDa(300B), katTi(301B), katDi(302B),
    katSmallTu(303B), katTu(304B), katDu(305B), katTe(306B), katDe(307B),
    katTo(310B), katDo(311B), katNa(312B), katNi(313B), katNu(314B), katNe(315B),
    katNo(316B), katHa(317B), katBa(320B), katPa(321B), katHi(322B), katBi(323B),
    katPi(324B), katHu(325B), katBu(326B), katPu(327B), katHe(330B), katBe(331B),
    katPe(332B), katHo(333B), katBo(334B), katPo(335B), katMa(336B), katMi(337B),
    katMu(340B), katMe(341B), katMo(342B), katSmallYa(343B), katYa(344B),
    katSmallYu(345B), katYu(346B), katSmallYo(347B), katYo(350B), katRa(351B),
    katRi(352B), katRu(353B), katRe(354B), katRo(355B), katSmallWa(356B),
    katWa(357B), katWi(360B), katWe(361B), katWo(362B), katN(363B), katVu(364B),
    katSmallKa(365B), katSmallKe(366B),

    -- punctuations: 367B ~ 371B
    katKurikaesi(367B), katKurikaesiDakuon(370B), chouon(371B),
    --katRepeat(367B), katRepeatDakuon(370B), longVowelBar(371B),

    -- available:372B ~ 376B
    available372B(372B), available373B(373B), available374B(374B),
    available375B(375B), available376B(376B),

    escape(377B)};

  --CHARACTER SET 3: Hebrew

  Codes3: TYPE = MACHINE DEPENDENT{  --Symbolic names for character set 3
    -- unused: 0B ~ 40B

    -- Hebrew alphabet: 41B ~ 176B.  Most of these are still to be defined [TBD].
    aleph(41B),

    -- unused: 177B ~ 240B

    -- available: 241B ~ 376B

    escape(377B)};
    
  --CHARACTER SET 4: Chinese "Bopomofo" Phonetic Alphabet 

  Codes4: TYPE = MACHINE DEPENDENT{  --Symbolic names for character set 4
    -- unused: 0B ~ 40B

    -- Bopomofo: 41B ~ 113B
    bpB(41B), bpP(42B), bpM(43B), bpF(44B), bpD(45B), bpT(46B), bpN(47B), bpL(50B),
    bpG(51B), bpK(52B), bpH(53B), bpJ(54B), bpQ(55B), bpX(56B), bpZH(57B), bpCH(60B),
    bpSH(61B), bpR(62B), bpZ(63B), bpC(64B), bpS(65B), bpA(66B), bpO(67B), bpE(70B),
    bpEH(71B), bpAI(72B), bpEI(73B), bpAU(74B), bpOU(75B), bpAN(76B), bpEN(77B), bpANG(100B),
    bpENG(101B), bpER(102B), bpI(103B), bpU(104B), bpIU(105B), bpTone2(106B), bpTone3(107B), bpTone4(110B),
    bpTone5(111B), bpTone1(112B), bpNG(113B),
    
    -- available:372B ~ 376B

    escape(377B)};

  END. -- of CharADefs

LOG	( date - person - action )
July 2, 1981 - Buelow - created
July 31, 1981 - Morrison - Added Codes3.
 8-Sep-82 - Becker/Tripp - Added Codes4.