diff --git a/Source/Doc/Applications.md b/Source/Doc/Applications.md index 0795aff1..6222d07d 100644 --- a/Source/Doc/Applications.md +++ b/Source/Doc/Applications.md @@ -1,13 +1,14 @@ -include(`Common.m4') -define({{doc_title}},{{Applications}}) +\include{"Common.h"} +\define{doc_title}{Applications} + --- title: | - | doc_product doc_title + | \doc_product \doc_title | - | Version doc_ver -author: doc_author (mailto:doc_authmail) -date: doc_date -institution: doc_orgname + | Version \doc_ver +author: \doc_author (mailto:\doc_authmail) +date: \doc_date +institution: \doc_orgname documentclass: article toc: true toc-depth: 1 @@ -60,8 +61,8 @@ on the media. Most of the applications are included as source code in the RomWBW distribution and are built in the normal build process. The source -code is found in the Source\\Apps directory of the distribution. The -binary executable applications are found in the Binary\\Apps directory. +code is found in the Source\\\\Apps directory of the distribution. The +binary executable applications are found in the Binary\\\\Apps directory. The following table clarifies where each of the applications can be found: @@ -555,7 +556,7 @@ manually perform a verification function with the `FLASH VERIFY` form of the command. The author's documentation for the application is found in the RomWBW -distribution in the Doc\\Contrib directory. +distribution in the Doc\\\\Contrib directory. ## Notes @@ -984,6 +985,6 @@ The `TUNE` application was custom written for RomWBW. All of the hardware interface code is specific to RomWBW. The sound file decoding software was adapted and embedded from pre-existing sources. The YM player code is from MYMPLAY 0.4 by Lieves!Tuore and the PT player code -is (c)2004-2007 S.V.Bulba . +is (c)2004-2007 S.V.Bulba . The source code is provided in the RomWBW distribution. diff --git a/Source/Doc/Architecture.md b/Source/Doc/Architecture.md index 3c41b0e4..69e9dee1 100644 --- a/Source/Doc/Architecture.md +++ b/Source/Doc/Architecture.md @@ -1,13 +1,14 @@ -include(`Common.m4') -define({{doc_title}},{{Architecture}}) +\include{"Common.h"} +\define{doc_title}{Architecture} + --- title: | - | doc_product doc_title + | \doc_product \doc_title | - | Version doc_ver -author: doc_author (mailto:doc_authmail) -date: doc_date -institution: doc_orgname + | Version \doc_ver +author: \doc_author (mailto:\doc_authmail) +date: \doc_date +institution: \doc_orgname documentclass: book classoption: - oneside @@ -44,14 +45,14 @@ header-includes: \includegraphics[width=\paperwidth]{Graphics/Logo.pdf} \par \vfill \raggedleft - {\scshape \bfseries \fontsize{48pt}{56pt} \selectfont doc_product \par} - {\bfseries \fontsize{32pt}{36pt} \selectfont doc_title \par} + {\scshape \bfseries \fontsize{48pt}{56pt} \selectfont \doc_product \par} + {\bfseries \fontsize{32pt}{36pt} \selectfont \doc_title \par} \vspace{24pt} - {\huge Version doc_ver \\ doc_date \par} + {\huge Version \doc_ver \\ \doc_date \par} \vspace{24pt} - {\large \itshape doc_orgname \\ \href{http://doc_orgurl}{doc_orgurl} \par} + {\large \itshape \doc_orgname \\ \href{http://\doc_orgurl}{\doc_orgurl} \par} \vspace{12pt} - {\large \itshape doc_author \\ \href{mailto:doc_authmail}{doc_authmail} \par} + {\large \itshape \doc_author \\ \href{mailto:\doc_authmail}{\doc_authmail} \par} \end{titlepage} } \pagestyle{empty} @@ -70,7 +71,7 @@ include-before: ```{=latex} \clearpage \pagenumbering{arabic} -\lhead{\fancyplain{}{\nouppercase{\footnotesize \bfseries \leftmark \hfill doc_product doc_title}}} +\lhead{\fancyplain{}{\nouppercase{\footnotesize \bfseries \leftmark \hfill \doc_product \doc_title}}} ``` Overview diff --git a/Source/Doc/Build.cmd b/Source/Doc/Build.cmd index 73c57769..67332011 100644 --- a/Source/Doc/Build.cmd +++ b/Source/Doc/Build.cmd @@ -7,7 +7,7 @@ setlocal :: set TOOLS=..\..\Tools -set PATH=%TOOLS%\m4;%PATH% +set PATH=%TOOLS%\m4;%TOOLS%\gpp;%PATH% if not "%1"=="" (call :GenDoc %1 & goto :eof) @@ -37,9 +37,9 @@ echo. echo Processing document %1.md... -m4 -D doc_date="%date%" %1.md >%1.tmp +gpp -T <%1.md >%1.tmp -pandoc %1.tmp -f markdown -t latex -s -o %1.pdf --default-image-extension=pdf || exit /b +pandoc %1.tmp -f markdown -t pdf -s -o %1.pdf --default-image-extension=pdf || exit /b pandoc %1.tmp -f markdown -t html -o %1.html --default-image-extension=png || exit /b pandoc %1.tmp -f markdown -t dokuwiki -o %1.dw --default-image-extension=png || exit /b pandoc %1.tmp -f markdown -t gfm -o %1.gfm --default-image-extension=png || exit /b diff --git a/Source/Doc/Catalog.md b/Source/Doc/Catalog.md index 28a78b8f..44116f5b 100644 --- a/Source/Doc/Catalog.md +++ b/Source/Doc/Catalog.md @@ -1,14 +1,15 @@ -include(`Common.m4') -define({{doc_title}},{{Disk Catalog}}) -define({{doc_author}},{{Mykl Orders}}) +\include{"Common.h"} +\define{doc_title}{Disk Catalog} +\define{doc_author}{Mykl Orders} + --- title: | - | doc_product doc_title + | \doc_product \doc_title | - | Version doc_ver -author: doc_author -date: doc_date -institution: doc_orgname + | Version \doc_ver +author: \doc_author +date: \doc_date +institution: \doc_orgname documentclass: article classoption: - oneside @@ -39,7 +40,7 @@ header-includes: \pagestyle{fancyplain} \fancyhf{} \pagenumbering{arabic} -\lhead{\fancyplain{}{\nouppercase{\footnotesize \bfseries \leftmark \hfill doc_product doc_title}}} +\lhead{\fancyplain{}{\nouppercase{\footnotesize \bfseries \leftmark \hfill \doc_product \doc_title}}} \lfoot{\small RetroBrew Computing Group ~~ {\xrfill[3pt]{1pt}[cyan]} ~~ \thepage} ``` diff --git a/Source/Doc/Common.h b/Source/Doc/Common.h new file mode 100644 index 00000000..ba843e30 --- /dev/null +++ b/Source/Doc/Common.h @@ -0,0 +1,8 @@ +\define{doc_ver}{3.1 Pre-release} +\define{doc_product}{RomWBW} +\define{doc_title}{Document Title} +\define{doc_author}{Wayne Warthen} +\define{doc_date}{\date{%d %b %Y}} +\define{doc_authmail}{wwarthen@@gmail.com} +\define{doc_orgname}{RetroBrew Computers Group} +\define{doc_orgurl}{www.retrobrewcomputers.org} diff --git a/Source/Doc/GettingStarted.md b/Source/Doc/GettingStarted.md index 0050a18f..8bf21166 100644 --- a/Source/Doc/GettingStarted.md +++ b/Source/Doc/GettingStarted.md @@ -1,13 +1,14 @@ -include(`Common.m4') -define({{doc_title}},{{Getting Started}}) +\include{"Common.h"} +\define{doc_title}{Getting Started} + --- title: | - | doc_product doc_title + | \doc_product \doc_title | - | Version doc_ver -author: doc_author (mailto:doc_authmail) -date: doc_date -institution: doc_orgname + | Version \doc_ver +author: \doc_author (mailto:\doc_authmail) +date: \doc_date +institution: \doc_orgname documentclass: article classoption: - oneside @@ -37,10 +38,10 @@ header-includes: ## Z80/Z180 System Software -| Version doc_ver -| doc_date +| Version \doc_ver +| \doc_date -doc_author [doc_authmail](mailto:doc_authmail) +\doc_author [\doc_authmail](mailto:\doc_authmail) ### Download @@ -1141,7 +1142,7 @@ To cancel: Ctrl-X, pause, Ctrl-X Thanks for the upload E>flash write rom.rom -FLASH4 by Will Sowerbutts version 1.2.3 +FLASH4 by Will Sowerbutts version 1.2.3 Using RomWBW (v2.6+) bank switching. Flash memory chip ID is 0xBFB7: 39F040 @@ -1383,4 +1384,4 @@ RetroBrew Computers projects is via the community forums: Submission of issues and bugs are welcome at the [RomWBW GitHub Repository](https://github.com/wwarthen/RomWBW). -Also feel free to email doc_author at [doc_authmail](mailto:doc_authmail). +Also feel free to email \doc_author at [\doc_authmail](mailto:\doc_authmail). diff --git a/Source/Doc/Makefile b/Source/Doc/Makefile index 40f06f0a..88025c96 100644 --- a/Source/Doc/Makefile +++ b/Source/Doc/Makefile @@ -1,7 +1,7 @@ # -# NOTE: Pandoc, Latex (MiKTeX or TexLive), and M4 must be installed +# NOTE: Pandoc, Latex (MiKTeX or TexLive), and gpp must be installed # and available on commandline for this build to work!!! -# Typically "sudo apt install pandoc, texlive-latex-extra, M4" +# Typically "sudo apt install pandoc, texlive-latex-extra, gpp" # OBJECTS = GettingStarted.pdf GettingStarted.gfm GettingStarted.txt Applications.pdf Architecture.pdf Catalog.pdf ROM_Applications.pdf # DEST = ../../Doc @@ -13,7 +13,7 @@ include $(TOOLS)/Makefile.inc all :: deploy %.tmp : %.md - m4 -D doc_date="`date +"%d %b %Y"`" $< >$@ + gpp -T $< >$@ %.pdf : %.tmp pandoc $< -f markdown -t latex -s -o $@ --default-image-extension=pdf diff --git a/Source/Doc/ROM_Applications.md b/Source/Doc/ROM_Applications.md index f53695f4..fba106ad 100644 --- a/Source/Doc/ROM_Applications.md +++ b/Source/Doc/ROM_Applications.md @@ -1,14 +1,15 @@ -include(`Common.m4') -define({{doc_title}},{{ROM Applications}}) -define({{doc_author}},{{Phillip Summers}}) +\include{"Common.h"} +\define{doc_title}{ROM Applications} +\define{doc_title}{Phillip Summers} + --- title: | - | doc_product doc_title + | \doc_product \doc_title | - | Version doc_ver -author: doc_author -date: doc_date -institution: doc_orgname + | Version \doc_ver +author: \doc_author +date: \doc_date +institution: \doc_orgname documentclass: article toc: true toc-depth: 1 @@ -129,7 +130,7 @@ Examples: `D 100 1FF` 0130: E5 CD 6C 1F C1 C1 E5 2A C9 8C E5 CD 45 05 E5 CD åÍl.ÁÁå*É.åÍE.åÍ 0140: 59 1F C3 00 00 C3 AE 01 C3 51 04 C3 4C 02 C3 57 Y.Ã..î.ÃQ.ÃL.ÃW 0150: 02 C3 64 02 C3 75 02 C3 88 02 C3 B2 03 C3 0D 04 .Ãd.Ãu.Ã..ò.Ã.. -0160: C3 19 04 C3 22 04 C3 2A 04 C3 35 04 C3 40 04 C3 Ã..Ã".Ã*.Ã5.Ã@.à +0160: C3 19 04 C3 22 04 C3 2A 04 C3 35 04 C3 40 04 C3 Ã..Ã".Ã*.Ã5.Ã@@.à 0170: 48 04 C3 50 04 C3 50 04 C3 50 04 C3 8F 02 C3 93 H.ÃP.ÃP.ÃP.Ã..Ã. 0180: 02 C3 94 02 C3 95 02 C3 85 04 C3 C7 04 C3 D1 01 .Ã..Ã..Ã..ÃÇ.ÃÑ. 0190: C3 48 02 C3 E7 04 C3 56 03 C3 D0 01 C3 D0 01 C3 ÃH.Ãç.ÃV.ÃÐ.ÃÐ.à diff --git a/Source/ver.inc b/Source/ver.inc index 202747a4..80985639 100644 --- a/Source/ver.inc +++ b/Source/ver.inc @@ -2,4 +2,4 @@ #DEFINE RMN 1 #DEFINE RUP 1 #DEFINE RTP 0 -#DEFINE BIOSVER "3.1.1-pre.128" +#DEFINE BIOSVER "3.1.1-pre.130" diff --git a/Source/ver.lib b/Source/ver.lib index 33f8c767..6de948d3 100644 --- a/Source/ver.lib +++ b/Source/ver.lib @@ -3,5 +3,5 @@ rmn equ 1 rup equ 1 rtp equ 0 biosver macro - db "3.1.1-pre.128" + db "3.1.1-pre.130" endm diff --git a/Tools/gpp/gpp.exe b/Tools/gpp/gpp.exe new file mode 100644 index 00000000..f32ff575 Binary files /dev/null and b/Tools/gpp/gpp.exe differ diff --git a/Tools/m4/m4.exe b/Tools/m4/m4.exe deleted file mode 100644 index d9d33add..00000000 Binary files a/Tools/m4/m4.exe and /dev/null differ diff --git a/Tools/m4/man/cat1/m4.1.txt b/Tools/m4/man/cat1/m4.1.txt deleted file mode 100644 index dedca549..00000000 --- a/Tools/m4/man/cat1/m4.1.txt +++ /dev/null @@ -1,147 +0,0 @@ -M4(1) User Commands M4(1) - - - -NAME - m4 - macro processor - -SYNOPSIS - m4 [OPTION]... [FILE]... - -DESCRIPTION - Process macros in FILEs. If no FILE or if FILE is `-', - standard input is read. - - Mandatory or optional arguments to long options are - mandatory or optional for short options too. - - Operation modes: - --help display this help and exit - - --version - output version information and exit - - -E, --fatal-warnings - once: warnings become errors, twice: stop execu- - tion at first error - - -i, --interactive - unbuffer output, ignore interrupts - - -P, --prefix-builtins - force a `m4_' prefix to all builtins - - -Q, --quiet, --silent - suppress some warnings for builtins - - --warn-macro-sequence[=REGEXP] - warn if macro definition matches REGEXP, - - default \$\({[^}]*}\|[0-9][0-9]+\) - - Preprocessor features: - -D, --define=NAME[=VALUE] - define NAME as having VALUE, or empty - - -I, --include=DIRECTORY - append DIRECTORY to include path - - -s, --synclines - generate `#line NUM "FILE"' lines - - -U, --undefine=NAME - undefine NAME - - Limits control: - -g, --gnu - override -G to re-enable GNU extensions - - -G, --traditional - suppress all GNU extensions - - -H, --hashsize=PRIME - set symbol lookup hash table size [509] - - -L, --nesting-limit=NUMBER - change nesting limit, 0 for unlimited [0] - - Frozen state files: - -F, --freeze-state=FILE - produce a frozen state on FILE at end - - -R, --reload-state=FILE - reload a frozen state from FILE at start - - Debugging: - -d, --debug[=FLAGS] - set debug level (no FLAGS implies `aeq') - - --debugfile[=FILE] - redirect debug and trace output to FILE (default - stderr, discard if empty string) - - -l, --arglength=NUM - restrict macro tracing size - - -t, --trace=NAME - trace NAME when it is defined - - FLAGS is any of: - a show actual arguments - - c show before collect, after collect and after call - - e show expansion - - f say current input file name - - i show changes in input files - - l say current input line number - - p show results of path searches - - q quote values as necessary, with a or e flag - - t trace for all macro calls, not only traceon'ed - - x add a unique macro call id, useful with c flag - - V shorthand for all of the above flags - - If defined, the environment variable `M4PATH' is a - colon-separated list of directories included after any - specified by `-I'. - - Exit status is 0 for success, 1 for failure, 63 for - frozen file version mismatch, or whatever value was - passed to the m4exit macro. - -AUTHOR - Written by Rene' Seindal. - -REPORTING BUGS - Report bugs to: bug-m4@gnu.org GNU M4 home page: - General help using GNU - software: - -COPYRIGHT - Copyright 2010 Free Software Foundation, Inc. License - GPLv3+: GNU GPL version 3 or later - . - This is free software: you are free to change and redis- - tribute it. There is NO WARRANTY, to the extent permit- - ted by law. - -SEE ALSO - The full documentation for m4 is maintained as a Texinfo - manual. If the info and m4 programs are properly - installed at your site, the command - - info m4 - - should give you access to the complete manual. - - - -GNU M4 1.4.14 February 2010 M4(1) diff --git a/Tools/m4/man/cat1p/m4.1p.txt b/Tools/m4/man/cat1p/m4.1p.txt deleted file mode 100644 index b7fd6840..00000000 --- a/Tools/m4/man/cat1p/m4.1p.txt +++ /dev/null @@ -1,530 +0,0 @@ -M4(P) POSIX Programmer's Manual M4(P) - - - -NAME - m4 - macro processor (DEVELOPMENT) - -SYNOPSIS - m4 [-s][-D name[=val]]...[-U name]... file... - -DESCRIPTION - The m4 utility is a macro processor that shall read one - or more text files, process them according to their - included macro statements, and write the results to - standard output. - -OPTIONS - The m4 utility shall conform to the Base Definitions - volume of IEEE Std 1003.1-2001, Section 12.2, Utility - Syntax Guidelines, except that the order of the -D and - -U options shall be significant. - - The following options shall be supported: - - -s Enable line synchronization output for the c99 - preprocessor phase (that is, #line directives). - - -D name[=val] - - Define name to val or to null if = val is omit- - ted. - - -U name - Undefine name. - - -OPERANDS - The following operand shall be supported: - - file A pathname of a text file to be processed. If no - file is given, or if it is '-' , the standard - input shall be read. - - -STDIN - The standard input shall be a text file that is used if - no file operand is given, or if it is '-' . - -INPUT FILES - The input file named by the file operand shall be a text - file. - -ENVIRONMENT VARIABLES - The following environment variables shall affect the - execution of m4: - - LANG Provide a default value for the internationaliza- - tion variables that are unset or null. (See the - Base Definitions volume of IEEE Std 1003.1-2001, - Section 8.2, Internationalization Variables for - the precedence of internationalization variables - used to determine the values of locale cate- - gories.) - - LC_ALL If set to a non-empty string value, override the - values of all the other internationalization - variables. - - LC_CTYPE - Determine the locale for the interpretation of - sequences of bytes of text data as characters - (for example, single-byte as opposed to multi- - byte characters in arguments and input files). - - LC_MESSAGES - Determine the locale that should be used to - affect the format and contents of diagnostic mes- - sages written to standard error. - - NLSPATH - Determine the location of message catalogs for - the processing of LC_MESSAGES . - - -ASYNCHRONOUS EVENTS - Default. - -STDOUT - The standard output shall be the same as the input - files, after being processed for macro expansion. - -STDERR - The standard error shall be used to display strings with - the errprint macro, macro tracing enabled by the traceon - macro, the defined text for macros written by the - dumpdef macro, or for diagnostic messages. - -OUTPUT FILES - None. - -EXTENDED DESCRIPTION - The m4 utility shall compare each token from the input - against the set of built-in and user-defined macros. If - the token matches the name of a macro, then the token - shall be replaced by the macro's defining text, if any, - and rescanned for matching macro names. Once no portion - of the token matches the name of a macro, it shall be - written to standard output. Macros may have arguments, - in which case the arguments shall be substituted into - the defining text before it is rescanned. - - Macro calls have the form: - - - name(arg1, arg2, ..., argn) - - Macro names shall consist of letters, digits, and under- - scores, where the first character is not a digit. Tokens - not of this form shall not be treated as macros. - - The application shall ensure that the left parenthesis - immediately follows the name of the macro. If a token - matching the name of a macro is not followed by a left - parenthesis, it is handled as a use of that macro with- - out arguments. - - If a macro name is followed by a left parenthesis, its - arguments are the comma-separated tokens between the - left parenthesis and the matching right parenthesis. - Unquoted s and s preceding each argument - shall be ignored. All other characters, including trail- - ing s and s, are retained. Commas - enclosed between left and right parenthesis characters - do not delimit arguments. - - Arguments are positionally defined and referenced. The - string "$1" in the defining text shall be replaced by - the first argument. Systems shall support at least nine - arguments; only the first nine can be referenced, using - the strings "$1" to "$9" , inclusive. The string "$0" is - replaced with the name of the macro. The string "$#" is - replaced by the number of arguments as a string. The - string "$*" is replaced by a list of all of the argu- - ments, separated by commas. The string "$@" is replaced - by a list of all of the arguments separated by commas, - and each argument is quoted using the current left and - right quoting strings. - - If fewer arguments are supplied than are in the macro - definition, the omitted arguments are taken to be null. - It is not an error if more arguments are supplied than - are in the macro definition. - - No special meaning is given to any characters enclosed - between matching left and right quoting strings, but the - quoting strings are themselves discarded. By default, - the left quoting string consists of a grave accent ( '`' - ) and the right quoting string consists of an acute - accent ( '" ); see also the changequote macro. - - Comments are written but not scanned for matching macro - names; by default, the begin-comment string consists of - the number sign character and the end-comment string - consists of a . See also the changecom and dnl - macros. - - The m4 utility shall make available the following built- - in macros. They can be redefined, but once this is done - the original meaning is lost. Their values shall be null - unless otherwise stated. In the descriptions below, the - term defining text refers to the value of the macro: the - second argument to the define macro, among other things. - Except for the first argument to the eval macro, all - numeric arguments to built-in macros shall be inter- - preted as decimal values. The string values produced as - the defining text of the decr, divnum, incr, index, len, - and sysval built-in macros shall be in the form of a - decimal-constant as defined in the C language. - - changecom - The changecom macro shall set the begin-comment - and end-comment strings. With no arguments, the - comment mechanism shall be disabled. With a sin- - gle argument, that argument shall become the - begin-comment string and the shall - become the end-comment string. With two argu- - ments, the first argument shall become the begin- - comment string and the second argument shall - become the end-comment string. Systems shall sup- - port comment strings of at least five characters. - - changequote - The changequote macro shall set the begin-quote - and end-quote strings. With no arguments, the - quote strings shall be set to the default values - (that is, `'). With a single argument, that argu- - ment shall become the begin-quote string and the - shall become the end-quote string. With - two arguments, the first argument shall become - the begin-quote string and the second argument - shall become the end-quote string. Systems shall - support quote strings of at least five charac- - ters. - - decr The defining text of the decr macro shall be its - first argument decremented by 1. It shall be an - error to specify an argument containing any non- - numeric characters. - - define The second argument shall become the defining - text of the macro whose name is the first argu- - ment. - - defn The defining text of the defn macro shall be the - quoted definition (using the current quoting - strings) of its arguments. - - divert The m4 utility maintains nine temporary buffers, - numbered 1 to 9, inclusive. When the last of the - input has been processed, any output that has - been placed in these buffers shall be written to - standard output in buffer-numerical order. The - divert macro shall divert future output to the - buffer specified by its argument. Specifying no - argument or an argument of 0 shall resume the - normal output process. Output diverted to a - stream other than 0 to 9 shall be discarded. It - shall be an error to specify an argument contain- - ing any non-numeric characters. - - divnum The defining text of the divnum macro shall be - the number of the current output stream as a - string. - - dnl The dnl macro shall cause m4 to discard all input - characters up to and including the next . - - dumpdef - The dumpdef macro shall write the defined text to - standard error for each of the macros specified - as arguments, or, if no arguments are specified, - for all macros. - - errprint - The errprint macro shall write its arguments to - standard error. - - eval The eval macro shall evaluate its first argument - as an arithmetic expression, using 32-bit signed - integer arithmetic. All of the C-language opera- - tors shall be supported, except for: - - - [] - -> - ++ - -- - (type) - unary * - sizeof, - . - ?: - unary & - - and all assignment operators. It shall be an error to - specify any of these operators. Precedence and associa- - tivity shall be as in the ISO C standard. Systems shall - support octal and hexadecimal numbers as in the ISO C - standard. The second argument, if specified, shall set - the radix for the result; the default is 10. The third - argument, if specified, sets the minimum number of dig- - its in the result. It shall be an error to specify the - second or third argument containing any non-numeric - characters. - - ifdef If the first argument to the ifdef macro is - defined, the defining text shall be the second - argument. Otherwise, the defining text shall be - the third argument, if specified, or the null - string, if not. - - ifelse The ifelse macro takes three or more arguments. - If the first two arguments compare as equal - strings (after macro expansion of both argu- - ments), the defining text shall be the third - argument. If the first two arguments do not com- - pare as equal strings and there are three argu- - ments, the defining text shall be null. If the - first two arguments do not compare as equal - strings and there are four or five arguments, the - defining text shall be the fourth argument. If - the first two arguments do not compare as equal - strings and there are six or more arguments, the - first three arguments shall be discarded and pro- - cessing shall restart with the remaining argu- - ments. - - include - The defining text for the include macro shall be - the contents of the file named by the first argu- - ment. It shall be an error if the file cannot be - read. - - incr The defining text of the incr macro shall be its - first argument incremented by 1. It shall be an - error to specify an argument containing any non- - numeric characters. - - index The defining text of the index macro shall be the - first character position (as a string) in the - first argument where a string matching the second - argument begins (zero origin), or -1 if the sec- - ond argument does not occur. - - len The defining text of the len macro shall be the - length (as a string) of the first argument. - - m4exit Exit from the m4 utility. If the first argument - is specified, it is the exit code. The default is - zero. It shall be an error to specify an argument - containing any non-numeric characters. - - m4wrap The first argument shall be processed when EOF is - reached. If the m4wrap macro is used multiple - times, the arguments specified shall be processed - in the order in which the m4wrap macros were pro- - cessed. - - maketemp - The defining text shall be the first argument, - with any trailing 'X' characters replaced with - the current process ID as a string. - - popdef The popdef macro shall delete the current defini- - tion of its arguments, replacing that definition - with the previous one. If there is no previous - definition, the macro is undefined. - - pushdef - The pushdef macro shall be equivalent to the - define macro with the exception that it shall - preserve any current definition for future - retrieval using the popdef macro. - - shift The defining text for the shift macro shall be - all of its arguments except for the first one. - - sinclude - The sinclude macro shall be equivalent to the - include macro, except that it shall not be an - error if the file is inaccessible. - - substr The defining text for the substr macro shall be - the substring of the first argument beginning at - the zero-offset character position specified by - the second argument. The third argument, if spec- - ified, shall be the number of characters to - select; if not specified, the characters from the - starting point to the end of the first argument - shall become the defining text. It shall not be - an error to specify a starting point beyond the - end of the first argument and the defining text - shall be null. It shall be an error to specify an - argument containing any non-numeric characters. - - syscmd The syscmd macro shall interpret its first argu- - ment as a shell command line. The defining text - shall be the string result of that command. No - output redirection shall be performed by the m4 - utility. The exit status value from the command - can be retrieved using the sysval macro. - - sysval The defining text of the sysval macro shall be - the exit value of the utility last invoked by the - syscmd macro (as a string). - - traceon - The traceon macro shall enable tracing for the - macros specified as arguments, or, if no argu- - ments are specified, for all macros. The trace - output shall be written to standard error in an - unspecified format. - - traceoff - The traceoff macro shall disable tracing for the - macros specified as arguments, or, if no argu- - ments are specified, for all macros. - - translit - The defining text of the translit macro shall be - the first argument with every character that - occurs in the second argument replaced with the - corresponding character from the third argument. - - undefine - The undefine macro shall delete all definitions - (including those preserved using the pushdef - macro) of the macros named by its arguments. - - undivert - The undivert macro shall cause immediate output - of any text in temporary buffers named as argu- - ments, or all temporary buffers if no arguments - are specified. Buffers can be undiverted into - other temporary buffers. Undiverting shall dis- - card the contents of the temporary buffer. It - shall be an error to specify an argument contain- - ing any non-numeric characters. - - -EXIT STATUS - The following exit values shall be returned: - - 0 Successful completion. - - >0 An error occurred - - - If the m4exit macro is used, the exit value can be spec- - ified by the input file. - -CONSEQUENCES OF ERRORS - Default. - - The following sections are informative. - -APPLICATION USAGE - The defn macro is useful for renaming macros, especially - built-ins. - -EXAMPLES - If the file m4src contains the lines: - - - The value of `VER' is "VER". - ifdef(`VER', "VER" is defined to be VER., VER is not defined.) - ifelse(VER, 1, "VER" is `VER'.) - ifelse(VER, 2, "VER" is `VER'., "VER" is not 2.) - end - - then the command - - - m4 m4src - - or the command: - - - m4 -U VER m4src - - produces the output: - - - The value of VER is "VER". - VER is not defined. - - - VER is not 2. - end - - The command: - - - m4 -D VER m4src - - produces the output: - - - The value of VER is "". - VER is defined to be . - - - VER is not 2. - end - - The command: - - - m4 -D VER=1 m4src - - produces the output: - - - The value of VER is "1". - VER is defined to be 1. - VER is 1. - VER is not 2. - end - - The command: - - - m4 -D VER=2 m4src - - - produces the output: - The value of VER is "2". - VER is defined to be 2. - - - VER is 2. - end - -RATIONALE - None. - -FUTURE DIRECTIONS - None. - -SEE ALSO - c99 - -COPYRIGHT - Portions of this text are reprinted and reproduced in - electronic form from IEEE Std 1003.1, 2003 Edition, - Standard for Information Technology -- Portable Operat- - ing System Interface (POSIX), The Open Group Base Speci- - fications Issue 6, Copyright (C) 2001-2003 by the Insti- - tute of Electrical and Electronics Engineers, Inc and - The Open Group. In the event of any discrepancy between - this version and the original IEEE and The Open Group - Standard, the original IEEE and The Open Group Standard - is the referee document. The original Standard can be - obtained online at http://www.open- - group.org/unix/online.html . - - - -IEEE/The Open Group 2003 M4(P) diff --git a/Tools/m4/regex2.dll b/Tools/m4/regex2.dll deleted file mode 100644 index f84a847a..00000000 Binary files a/Tools/m4/regex2.dll and /dev/null differ