summaryrefslogtreecommitdiff
path: root/macros/generic/musixtex/tex/musixbbm.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/generic/musixtex/tex/musixbbm.tex')
-rw-r--r--macros/generic/musixtex/tex/musixbbm.tex69
1 files changed, 69 insertions, 0 deletions
diff --git a/macros/generic/musixtex/tex/musixbbm.tex b/macros/generic/musixtex/tex/musixbbm.tex
new file mode 100644
index 0000000000..c3c2333002
--- /dev/null
+++ b/macros/generic/musixtex/tex/musixbbm.tex
@@ -0,0 +1,69 @@
+%
+% This file is part of MusiXTeX
+%
+% MusiXTeX is free software; you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation; either version 2, or (at your option)
+% any later version.
+%
+% MusiXTeX is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with MusiXTeX; see the file COPYING. If not, write to
+% the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+% Boston, MA 02111-1307, USA.
+%
+%
+% musixbbm.tex : allocate registers and define macros for 256th beam
+%
+\immediate\write16{MusiXBBeaM T.115 <19 Nov 2010>}%
+%
+\ifx\undefined\ibbbbbbu \else \endinput \fi
+%
+% setup the maximum element numbers
+\setmaxcclvibeams{6}%
+%
+%
+% definitions for 256th beams
+\edef\catcodeat{\the\catcode`\@}\catcode`\@=11
+%
+\def\s@l@ctg{\edef\g@x{\csname g@x\romannumeral\n@i\endcsname}%
+ \edef\g@z{\csname g@z\romannumeral\n@i\endcsname}\s@l@ctf}
+
+\def\ibbbbbbu#1{\s@l@ctbeam#1\relax \s@l@ctg \i@bbbbbbu}
+\def\ibbbbbbl#1{\s@l@ctbeam#1\relax \s@l@ctg \i@bbbbbbl}
+
+\def\i@bbbbbbu#1#2{%
+ \ifnum\b@n=\z@ \i@bbbbbu{#1}{#2}\C@ba\b@z\@ne \C@ba\c@z\@ne
+ \C@ba\d@z\@ne \C@ba\e@z\@ne \C@ba\f@z\@ne \fi \n@bbbbbbu}
+\def\i@bbbbbbl#1#2{%
+ \ifnum\b@n=\z@ \i@bbbbbl{#1}{#2}\C@ba\b@z\m@ne \C@ba\c@z\m@ne
+ \C@ba\d@z\m@ne \C@ba\e@z\m@ne \C@ba\f@z\m@ne \fi \n@bbbbbbl}
+
+\def\nbbbbbbu#1{\s@l@ctbeam#1\relax \s@l@ctg \Dec@b\@ne\n@bbu
+ \Dec@b\tw@\n@bbbu \Dec@b\thr@@\n@bbbbu \Dec@b\f@ur\n@bbbbbu
+ \Dec@b\fiv@\n@bbbbbbu}
+\def\nbbbbbbl#1{\s@l@ctbeam#1\relax \s@l@ctg \Dec@b\@ne\n@bbl
+ \Dec@b\tw@\n@bbbl \Dec@b\thr@@\n@bbbbl \Dec@b\f@ur\n@bbbbbl
+ \Dec@b\fiv@\n@bbbbbbl}
+
+\def\n@bbbbbbu{\C@nb\g@z\g@x\fiv@\qd@skip}
+\def\n@bbbbbbl{\C@nb\g@z\g@x\fiv@\z@}
+
+\def\tbbbbbbu#1{\s@l@ctbeam#1\relax \s@l@ctg \t@bbbbbbu}
+\def\tbbbbbbl#1{\s@l@ctbeam#1\relax \s@l@ctg \t@bbbbbbl}
+
+\def\t@bbbbbu{\n@v\fiv@ \C@b\t@bbbbbbu\n@bbbbbu\y@i\f@z \beam@pos\f@x \t@xbu}
+\def\t@bbbbbl{\n@v\fiv@ \C@b\t@bbbbbbl\n@bbbbbl\y@i\f@z \beam@pos\f@x \t@xbl}
+
+\def\t@bbbbbbu{\n@v\si@ \C@b\empty\n@bbbbbu\y@i\g@z \beam@pos\g@x \t@xbu}
+\def\t@bbbbbbl{\n@v\si@ \C@b\empty\n@bbbbbl\y@i\g@z \beam@pos\g@x \t@xbl}
+
+\def\Ibbbbbbu#1{\s@l@ctbeam#1\relax \s@l@ctg \I@bu\i@bbbbbbu}
+\def\Ibbbbbbl#1{\s@l@ctbeam#1\relax \s@l@ctg \I@bl\i@bbbbbbl}
+
+\catcode`\@=\catcodeat
+\endinput