root/doc_inner/gnu_global/S/10202.html

/* [<][>][^][v][top][bottom][index][help] */
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml'>
<head>
<title>doc_inner/gnu_global/S/11788.html</title>
<meta name='robots' content='noindex,nofollow' />
<meta name='generator' content='GLOBAL-6.6.14' />
<meta http-equiv='Content-Style-Type' content='text/css' />
<link rel='stylesheet' type='text/css' href='../style.css' />
</head>
<body>
<a id='TOP' name='TOP'></a><h2 class='header'><a href='../mains.html'>root</a>/<a href='../files/21157.html'>doc_inner</a>/<a href='../files/21160.html'>gnu_global</a>/<a href='../files/21165.html'>S</a>/11788.html</h2>
<em class='comment'>/* [&lt;][&gt;][^][v][top]<a href='#BOTTOM'>[bottom]</a><a href='../mains.html'>[index]</a><a href='../help.html'>[help]</a> */</em>
<hr />
<pre>
<a id='L1' name='L1'></a>&lt;!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'&gt;
<a id='L2' name='L2'></a>&lt;html xmlns='http://www.w3.org/1999/xhtml'&gt;
<a id='L3' name='L3'></a>&lt;head&gt;
<a id='L4' name='L4'></a>&lt;title&gt;doc_inner/doxygen/latex/assemble_8c_source.tex&lt;/title&gt;
<a id='L5' name='L5'></a>&lt;meta name='robots' content='noindex,nofollow' /&gt;
<a id='L6' name='L6'></a>&lt;meta name='generator' content='GLOBAL-6.6.14' /&gt;
<a id='L7' name='L7'></a>&lt;meta http-equiv='Content-Style-Type' content='text/css' /&gt;
<a id='L8' name='L8'></a>&lt;link rel='stylesheet' type='text/css' href='../style.css' /&gt;
<a id='L9' name='L9'></a>&lt;/head&gt;
<a id='L10' name='L10'></a>&lt;body&gt;
<a id='L11' name='L11'></a>&lt;a id='TOP' name='TOP'&gt;&lt;/a&gt;&lt;h2 class='header'&gt;&lt;a href='../mains.html'&gt;root&lt;/a&gt;/&lt;a href='../files/15609.html'&gt;doc_inner&lt;/a&gt;/&lt;a href='../files/15610.html'&gt;doxygen&lt;/a&gt;/&lt;a href='../files/15611.html'&gt;latex&lt;/a&gt;/assemble_8c_source.tex&lt;/h2&gt;
<a id='L12' name='L12'></a>&lt;em class='comment'&gt;/* [&amp;lt;][&amp;gt;][^][v][top]&lt;a href='#BOTTOM'&gt;[bottom]&lt;/a&gt;&lt;a href='../mains.html'&gt;[index]&lt;/a&gt;&lt;a href='../help.html'&gt;[help]&lt;/a&gt; */&lt;/em&gt;
<a id='L13' name='L13'></a>&lt;hr /&gt;
<a id='L14' name='L14'></a>&lt;pre&gt;
<a id='L15' name='L15'></a>&lt;a id='L1' name='L1'&gt;&lt;/a&gt;\doxysection{assemble.\+c}
<a id='L16' name='L16'></a>&lt;a id='L2' name='L2'&gt;&lt;/a&gt;\label{assemble_8c_source}\index{src/assemble.c@{src/assemble.c}}
<a id='L17' name='L17'></a>&lt;a id='L3' name='L3'&gt;&lt;/a&gt;\textbf{ Go to the documentation of this file.}
<a id='L18' name='L18'></a>&lt;a id='L4' name='L4'&gt;&lt;/a&gt;\begin{DoxyCode}{0}
<a id='L19' name='L19'></a>&lt;a id='L5' name='L5'&gt;&lt;/a&gt;\DoxyCodeLine{00001\ \textcolor{preprocessor}{\#include\ "{}assemble.h"{}}}
<a id='L20' name='L20'></a>&lt;a id='L6' name='L6'&gt;&lt;/a&gt;\DoxyCodeLine{00002\ }
<a id='L21' name='L21'></a>&lt;a id='L7' name='L7'&gt;&lt;/a&gt;\DoxyCodeLine{00011\ \textcolor{keywordtype}{void}\ printline(FILE\ *stream,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *filename,\ \textcolor{keywordtype}{int}\ lineno,\ \textcolor{keywordtype}{char}\ *line);}
<a id='L22' name='L22'></a>&lt;a id='L8' name='L8'&gt;&lt;/a&gt;\DoxyCodeLine{00012\ }
<a id='L23' name='L23'></a>&lt;a id='L9' name='L9'&gt;&lt;/a&gt;\DoxyCodeLine{00024\ WORD\ getadr(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *prog,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *str,\ PASS\ pass);}
<a id='L24' name='L24'></a>&lt;a id='L10' name='L10'&gt;&lt;/a&gt;\DoxyCodeLine{00025\ }
<a id='L25' name='L25'></a>&lt;a id='L11' name='L11'&gt;&lt;/a&gt;\DoxyCodeLine{00038\ WORD\ grword(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *str,\ \textcolor{keywordtype}{bool}\ is\_x);}
<a id='L26' name='L26'></a>&lt;a id='L12' name='L12'&gt;&lt;/a&gt;\DoxyCodeLine{00039\ }
<a id='L27' name='L27'></a>&lt;a id='L13' name='L13'&gt;&lt;/a&gt;\DoxyCodeLine{00048\ WORD\ getliteral(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *str,\ PASS\ pass);}
<a id='L28' name='L28'></a>&lt;a id='L14' name='L14'&gt;&lt;/a&gt;\DoxyCodeLine{00049\ }
<a id='L29' name='L29'></a>&lt;a id='L15' name='L15'&gt;&lt;/a&gt;\DoxyCodeLine{00057\ \textcolor{keywordtype}{void}\ writememory(WORD\ word,\ WORD\ adr,\ PASS\ pass);}
<a id='L30' name='L30'></a>&lt;a id='L16' name='L16'&gt;&lt;/a&gt;\DoxyCodeLine{00058\ }
<a id='L31' name='L31'></a>&lt;a id='L17' name='L17'&gt;&lt;/a&gt;\DoxyCodeLine{00066\ \textcolor{keywordtype}{void}\ writestr(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *str,\ \textcolor{keywordtype}{bool}\ literal,\ PASS\ pass);}
<a id='L32' name='L32'></a>&lt;a id='L18' name='L18'&gt;&lt;/a&gt;\DoxyCodeLine{00067\ }
<a id='L33' name='L33'></a>&lt;a id='L19' name='L19'&gt;&lt;/a&gt;\DoxyCodeLine{00074\ \textcolor{keywordtype}{void}\ writedc(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *str,\ PASS\ pass);}
<a id='L34' name='L34'></a>&lt;a id='L20' name='L20'&gt;&lt;/a&gt;\DoxyCodeLine{00075\ }
<a id='L35' name='L35'></a>&lt;a id='L21' name='L21'&gt;&lt;/a&gt;\DoxyCodeLine{00083\ \textcolor{keywordtype}{void}\ assemble\_start(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass);}
<a id='L36' name='L36'></a>&lt;a id='L22' name='L22'&gt;&lt;/a&gt;\DoxyCodeLine{00084\ }
<a id='L37' name='L37'></a>&lt;a id='L23' name='L23'&gt;&lt;/a&gt;\DoxyCodeLine{00092\ \textcolor{keywordtype}{void}\ assemble\_ds(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass);}
<a id='L38' name='L38'></a>&lt;a id='L24' name='L24'&gt;&lt;/a&gt;\DoxyCodeLine{00093\ }
<a id='L39' name='L39'></a>&lt;a id='L25' name='L25'&gt;&lt;/a&gt;\DoxyCodeLine{00101\ \textcolor{keywordtype}{void}\ assemble\_end(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass);}
<a id='L40' name='L40'></a>&lt;a id='L26' name='L26'&gt;&lt;/a&gt;\DoxyCodeLine{00102\ }
<a id='L41' name='L41'></a>&lt;a id='L27' name='L27'&gt;&lt;/a&gt;\DoxyCodeLine{00110\ \textcolor{keywordtype}{void}\ assemble\_dc(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass);}
<a id='L42' name='L42'></a>&lt;a id='L28' name='L28'&gt;&lt;/a&gt;\DoxyCodeLine{00111\ }
<a id='L43' name='L43'></a>&lt;a id='L29' name='L29'&gt;&lt;/a&gt;\DoxyCodeLine{00130\ \textcolor{keywordtype}{void}\ assemble\_in(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass);}
<a id='L44' name='L44'></a>&lt;a id='L30' name='L30'&gt;&lt;/a&gt;\DoxyCodeLine{00131\ }
<a id='L45' name='L45'></a>&lt;a id='L31' name='L31'&gt;&lt;/a&gt;\DoxyCodeLine{00152\ \textcolor{keywordtype}{void}\ assemble\_out(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass);}
<a id='L46' name='L46'></a>&lt;a id='L32' name='L32'&gt;&lt;/a&gt;\DoxyCodeLine{00153\ }
<a id='L47' name='L47'></a>&lt;a id='L33' name='L33'&gt;&lt;/a&gt;\DoxyCodeLine{00171\ \textcolor{keywordtype}{void}\ assemble\_rpush(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass);}
<a id='L48' name='L48'></a>&lt;a id='L34' name='L34'&gt;&lt;/a&gt;\DoxyCodeLine{00172\ }
<a id='L49' name='L49'></a>&lt;a id='L35' name='L35'&gt;&lt;/a&gt;\DoxyCodeLine{00191\ \textcolor{keywordtype}{void}\ assemble\_rpop(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass);}
<a id='L50' name='L50'></a>&lt;a id='L36' name='L36'&gt;&lt;/a&gt;\DoxyCodeLine{00192\ }
<a id='L51' name='L51'></a>&lt;a id='L37' name='L37'&gt;&lt;/a&gt;\DoxyCodeLine{00197\ }
<a id='L52' name='L52'></a>&lt;a id='L38' name='L38'&gt;&lt;/a&gt;\DoxyCodeLine{00211\ \textcolor{keywordtype}{bool}\ casl2cmd(CMD\ *cmdtbl,\ \textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass);}
<a id='L53' name='L53'></a>&lt;a id='L39' name='L39'&gt;&lt;/a&gt;\DoxyCodeLine{00212\ }
<a id='L54' name='L54'></a>&lt;a id='L40' name='L40'&gt;&lt;/a&gt;\DoxyCodeLine{00221\ \textcolor{keywordtype}{bool}\ assemble\_comet2cmd(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass);}
<a id='L55' name='L55'></a>&lt;a id='L41' name='L41'&gt;&lt;/a&gt;\DoxyCodeLine{00222\ }
<a id='L56' name='L56'></a>&lt;a id='L42' name='L42'&gt;&lt;/a&gt;\DoxyCodeLine{00231\ \textcolor{keywordtype}{bool}\ assembletok(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass);}
<a id='L57' name='L57'></a>&lt;a id='L43' name='L43'&gt;&lt;/a&gt;\DoxyCodeLine{00232\ }
<a id='L58' name='L58'></a>&lt;a id='L44' name='L44'&gt;&lt;/a&gt;\DoxyCodeLine{00243\ \textcolor{keywordtype}{bool}\ assembleline(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *line,\ PASS\ pass);}
<a id='L59' name='L59'></a>&lt;a id='L45' name='L45'&gt;&lt;/a&gt;\DoxyCodeLine{00244\ }
<a id='L60' name='L60'></a>&lt;a id='L46' name='L46'&gt;&lt;/a&gt;\DoxyCodeLine{00248\ \textcolor{keyword}{static}\ CERR\ cerr\_assemble[]\ =\ \{}
<a id='L61' name='L61'></a>&lt;a id='L47' name='L47'&gt;&lt;/a&gt;\DoxyCodeLine{00249\ \ \ \ \ \{\ 106,\ \textcolor{stringliteral}{"{}operand\ mismatch\ in\ CASL\ II\ command"{}}\ \},}
<a id='L62' name='L62'></a>&lt;a id='L48' name='L48'&gt;&lt;/a&gt;\DoxyCodeLine{00250\ \ \ \ \ \{\ 107,\ \textcolor{stringliteral}{"{}no\ label\ in\ START"{}}\ \},}
<a id='L63' name='L63'></a>&lt;a id='L49' name='L49'&gt;&lt;/a&gt;\DoxyCodeLine{00251\ \ \ \ \ \{\ 108,\ \textcolor{stringliteral}{"{}not\ command\ of\ operand\ \(\backslash\)"{}r\(\backslash\)"{}"{}}\ \},}
<a id='L64' name='L64'></a>&lt;a id='L50' name='L50'&gt;&lt;/a&gt;\DoxyCodeLine{00252\ \ \ \ \ \{\ 109,\ \textcolor{stringliteral}{"{}not\ command\ of\ operand\ \(\backslash\)"{}r1,r2\(\backslash\)"{}"{}}\ \},}
<a id='L65' name='L65'></a>&lt;a id='L51' name='L51'&gt;&lt;/a&gt;\DoxyCodeLine{00253\ \ \ \ \ \{\ 110,\ \textcolor{stringliteral}{"{}not\ command\ of\ operand\ \(\backslash\)"{}r,adr[,x]\(\backslash\)"{}"{}}\ \},}
<a id='L66' name='L66'></a>&lt;a id='L52' name='L52'&gt;&lt;/a&gt;\DoxyCodeLine{00254\ \ \ \ \ \{\ 111,\ \textcolor{stringliteral}{"{}not\ command\ of\ operand\ \(\backslash\)"{}adr[,x]\(\backslash\)"{}"{}}\ \},}
<a id='L67' name='L67'></a>&lt;a id='L53' name='L53'&gt;&lt;/a&gt;\DoxyCodeLine{00255\ \ \ \ \ \{\ 112,\ \textcolor{stringliteral}{"{}not\ command\ of\ no\ operand"{}}\ \},}
<a id='L68' name='L68'></a>&lt;a id='L54' name='L54'&gt;&lt;/a&gt;\DoxyCodeLine{00256\ \ \ \ \ \{\ 113,\ \textcolor{stringliteral}{"{}operand\ too\ many\ in\ COMET\ II\ command"{}}\ \},}
<a id='L69' name='L69'></a>&lt;a id='L55' name='L55'&gt;&lt;/a&gt;\DoxyCodeLine{00257\ \ \ \ \ \{\ 119,\ \textcolor{stringliteral}{"{}out\ of\ COMET\ II\ memory"{}}\ \},}
<a id='L70' name='L70'></a>&lt;a id='L56' name='L56'&gt;&lt;/a&gt;\DoxyCodeLine{00258\ \ \ \ \ \{\ 120,\ \textcolor{stringliteral}{"{}GR0\ in\ operand\ x"{}}\ \},}
<a id='L71' name='L71'></a>&lt;a id='L57' name='L57'&gt;&lt;/a&gt;\DoxyCodeLine{00259\ \ \ \ \ \{\ 122,\ \textcolor{stringliteral}{"{}cannot\ create\ hash\ table"{}}\ \},}
<a id='L72' name='L72'></a>&lt;a id='L58' name='L58'&gt;&lt;/a&gt;\DoxyCodeLine{00260\ \ \ \ \ \{\ 124,\ \textcolor{stringliteral}{"{}more\ than\ one\ character\ in\ literal"{}}\ \},}
<a id='L73' name='L73'></a>&lt;a id='L59' name='L59'&gt;&lt;/a&gt;\DoxyCodeLine{00261\ \ \ \ \ \{\ 125,\ \textcolor{stringliteral}{"{}not\ GR\ in\ operand\ x"{}}\ \},}
<a id='L74' name='L74'></a>&lt;a id='L60' name='L60'&gt;&lt;/a&gt;\DoxyCodeLine{00262\ \};}
<a id='L75' name='L75'></a>&lt;a id='L61' name='L61'&gt;&lt;/a&gt;\DoxyCodeLine{00263\ }
<a id='L76' name='L76'></a>&lt;a id='L62' name='L62'&gt;&lt;/a&gt;\DoxyCodeLine{00267\ \textcolor{keyword}{static}\ CMD\ ascmd[]\ =\ \{}
<a id='L77' name='L77'></a>&lt;a id='L63' name='L63'&gt;&lt;/a&gt;\DoxyCodeLine{00268\ \ \ \ \ \{\ \textcolor{stringliteral}{"{}START"{}},\ assemble\_start\ \},}
<a id='L78' name='L78'></a>&lt;a id='L64' name='L64'&gt;&lt;/a&gt;\DoxyCodeLine{00269\ \ \ \ \ \{\ \textcolor{stringliteral}{"{}END"{}},\ assemble\_end\ \},}
<a id='L79' name='L79'></a>&lt;a id='L65' name='L65'&gt;&lt;/a&gt;\DoxyCodeLine{00270\ \ \ \ \ \{\ \textcolor{stringliteral}{"{}DS"{}},\ assemble\_ds\ \},}
<a id='L80' name='L80'></a>&lt;a id='L66' name='L66'&gt;&lt;/a&gt;\DoxyCodeLine{00271\ \ \ \ \ \{\ \textcolor{stringliteral}{"{}DC"{}},\ assemble\_dc\ \},}
<a id='L81' name='L81'></a>&lt;a id='L67' name='L67'&gt;&lt;/a&gt;\DoxyCodeLine{00272\ \ \ \ \ \{\ \textcolor{stringliteral}{"{}"{}},\ NULL\ \}}
<a id='L82' name='L82'></a>&lt;a id='L68' name='L68'&gt;&lt;/a&gt;\DoxyCodeLine{00273\ \};}
<a id='L83' name='L83'></a>&lt;a id='L69' name='L69'&gt;&lt;/a&gt;\DoxyCodeLine{00274\ }
<a id='L84' name='L84'></a>&lt;a id='L70' name='L70'&gt;&lt;/a&gt;\DoxyCodeLine{00278\ \textcolor{keyword}{static}\ CMD\ macrocmd[]\ =\ \{}
<a id='L85' name='L85'></a>&lt;a id='L71' name='L71'&gt;&lt;/a&gt;\DoxyCodeLine{00279\ \ \ \ \ \{\ \textcolor{stringliteral}{"{}OUT"{}},\ assemble\_out\ \},}
<a id='L86' name='L86'></a>&lt;a id='L72' name='L72'&gt;&lt;/a&gt;\DoxyCodeLine{00280\ \ \ \ \ \{\ \textcolor{stringliteral}{"{}IN"{}},\ assemble\_in\ \},}
<a id='L87' name='L87'></a>&lt;a id='L73' name='L73'&gt;&lt;/a&gt;\DoxyCodeLine{00281\ \ \ \ \ \{\ \textcolor{stringliteral}{"{}RPUSH"{}},\ assemble\_rpush\ \},}
<a id='L88' name='L88'></a>&lt;a id='L74' name='L74'&gt;&lt;/a&gt;\DoxyCodeLine{00282\ \ \ \ \ \{\ \textcolor{stringliteral}{"{}RPOP"{}},\ assemble\_rpop\ \},}
<a id='L89' name='L89'></a>&lt;a id='L75' name='L75'&gt;&lt;/a&gt;\DoxyCodeLine{00283\ \ \ \ \ \{\ \textcolor{stringliteral}{"{}"{}},\ NULL\ \}}
<a id='L90' name='L90'></a>&lt;a id='L76' name='L76'&gt;&lt;/a&gt;\DoxyCodeLine{00284\ \};}
<a id='L91' name='L91'></a>&lt;a id='L77' name='L77'&gt;&lt;/a&gt;\DoxyCodeLine{00285\ }
<a id='L92' name='L92'></a>&lt;a id='L78' name='L78'&gt;&lt;/a&gt;\DoxyCodeLine{00286\ ASPTR\ *asptr\ =\ NULL;}
<a id='L93' name='L93'></a>&lt;a id='L79' name='L79'&gt;&lt;/a&gt;\DoxyCodeLine{00287\ }
<a id='L94' name='L94'></a>&lt;a id='L80' name='L80'&gt;&lt;/a&gt;\DoxyCodeLine{00288\ ASMODE\ asmode\ =\ \{\textcolor{keyword}{false},\ \textcolor{keyword}{false},\ \textcolor{keyword}{false},\ \textcolor{keyword}{false},\ \textcolor{keyword}{false}\};}
<a id='L95' name='L95'></a>&lt;a id='L81' name='L81'&gt;&lt;/a&gt;\DoxyCodeLine{00289\ }
<a id='L96' name='L96'></a>&lt;a id='L82' name='L82'&gt;&lt;/a&gt;\DoxyCodeLine{00290\ \textcolor{keywordtype}{void}\ printline(FILE\ *stream,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *filename,\ \textcolor{keywordtype}{int}\ lineno,\ \textcolor{keywordtype}{char}\ *line)}
<a id='L97' name='L97'></a>&lt;a id='L83' name='L83'&gt;&lt;/a&gt;\DoxyCodeLine{00291\ \{}
<a id='L98' name='L98'></a>&lt;a id='L84' name='L84'&gt;&lt;/a&gt;\DoxyCodeLine{00292\ \ \ \ \ fprintf(stream,\ \textcolor{stringliteral}{"{}\%s:\%5d:\%s"{}},\ filename,\ lineno,\ line);}
<a id='L99' name='L99'></a>&lt;a id='L85' name='L85'&gt;&lt;/a&gt;\DoxyCodeLine{00293\ \}}
<a id='L100' name='L100'></a>&lt;a id='L86' name='L86'&gt;&lt;/a&gt;\DoxyCodeLine{00294\ }
<a id='L101' name='L101'></a>&lt;a id='L87' name='L87'&gt;&lt;/a&gt;\DoxyCodeLine{00295\ WORD\ getadr(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *prog,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *str,\ PASS\ pass)}
<a id='L102' name='L102'></a>&lt;a id='L88' name='L88'&gt;&lt;/a&gt;\DoxyCodeLine{00296\ \{}
<a id='L103' name='L103'></a>&lt;a id='L89' name='L89'&gt;&lt;/a&gt;\DoxyCodeLine{00297\ \ \ \ \ WORD\ adr\ =\ 0;}
<a id='L104' name='L104'></a>&lt;a id='L90' name='L90'&gt;&lt;/a&gt;\DoxyCodeLine{00298\ }
<a id='L105' name='L105'></a>&lt;a id='L91' name='L91'&gt;&lt;/a&gt;\DoxyCodeLine{00299\ \ \ \ \ \textcolor{keywordflow}{if}(str[0]\ ==\ \textcolor{charliteral}{'='})\ \{}
<a id='L106' name='L106'></a>&lt;a id='L92' name='L92'&gt;&lt;/a&gt;\DoxyCodeLine{00300\ \ \ \ \ \ \ \ \ adr\ =\ getliteral(str,\ pass);}
<a id='L107' name='L107'></a>&lt;a id='L93' name='L93'&gt;&lt;/a&gt;\DoxyCodeLine{00301\ \ \ \ \ \}\ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}(isdigit(str[0])\ ||\ str[0]\ ==\ \textcolor{charliteral}{'-\/'}\ ||\ str[0]\ ==\ \textcolor{charliteral}{'\#'})\ \{}
<a id='L108' name='L108'></a>&lt;a id='L94' name='L94'&gt;&lt;/a&gt;\DoxyCodeLine{00302\ \ \ \ \ \ \ \ \ adr\ =\ nh2word(str);}
<a id='L109' name='L109'></a>&lt;a id='L95' name='L95'&gt;&lt;/a&gt;\DoxyCodeLine{00303\ \ \ \ \ \}\ \textcolor{keywordflow}{else}\ \{}
<a id='L110' name='L110'></a>&lt;a id='L96' name='L96'&gt;&lt;/a&gt;\DoxyCodeLine{00304\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(pass\ ==\ SECOND)\ \{}
<a id='L111' name='L111'></a>&lt;a id='L97' name='L97'&gt;&lt;/a&gt;\DoxyCodeLine{00305\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}((adr\ =\ getlabel(prog,\ str))\ ==\ 0xFFFF)\ \{}
<a id='L112' name='L112'></a>&lt;a id='L98' name='L98'&gt;&lt;/a&gt;\DoxyCodeLine{00306\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(103,\ str);\ \ \ \ \textcolor{comment}{/*\ label\ not\ found\ */}}
<a id='L113' name='L113'></a>&lt;a id='L99' name='L99'&gt;&lt;/a&gt;\DoxyCodeLine{00307\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L114' name='L114'></a>&lt;a id='L100' name='L100'&gt;&lt;/a&gt;\DoxyCodeLine{00308\ \ \ \ \ \ \ \ \ \}}
<a id='L115' name='L115'></a>&lt;a id='L101' name='L101'&gt;&lt;/a&gt;\DoxyCodeLine{00309\ \ \ \ \ \}}
<a id='L116' name='L116'></a>&lt;a id='L102' name='L102'&gt;&lt;/a&gt;\DoxyCodeLine{00310\ \ \ \ \ \textcolor{keywordflow}{return}\ adr;}
<a id='L117' name='L117'></a>&lt;a id='L103' name='L103'&gt;&lt;/a&gt;\DoxyCodeLine{00311\ \}}
<a id='L118' name='L118'></a>&lt;a id='L104' name='L104'&gt;&lt;/a&gt;\DoxyCodeLine{00312\ }
<a id='L119' name='L119'></a>&lt;a id='L105' name='L105'&gt;&lt;/a&gt;\DoxyCodeLine{00313\ WORD\ grword(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *str,\ \textcolor{keywordtype}{bool}\ is\_x)}
<a id='L120' name='L120'></a>&lt;a id='L106' name='L106'&gt;&lt;/a&gt;\DoxyCodeLine{00314\ \{}
<a id='L121' name='L121'></a>&lt;a id='L107' name='L107'&gt;&lt;/a&gt;\DoxyCodeLine{00315\ \ \ \ \ WORD\ r\ =\ 0;}
<a id='L122' name='L122'></a>&lt;a id='L108' name='L108'&gt;&lt;/a&gt;\DoxyCodeLine{00316\ }
<a id='L123' name='L123'></a>&lt;a id='L109' name='L109'&gt;&lt;/a&gt;\DoxyCodeLine{00317\ \ \ \ \ \textcolor{comment}{/*\ \ "{}GR[0-\/7]"{}\ 以外の文字列では、0xFFFFを返して終了\ */}}
<a id='L124' name='L124'></a>&lt;a id='L110' name='L110'&gt;&lt;/a&gt;\DoxyCodeLine{00318\ \ \ \ \ \textcolor{keywordflow}{if}(strlen(str)\ !=\ 3\ ||}
<a id='L125' name='L125'></a>&lt;a id='L111' name='L111'&gt;&lt;/a&gt;\DoxyCodeLine{00319\ \ \ \ \ \ \ \ strncmp(str,\ \textcolor{stringliteral}{"{}GR"{}},\ 2)\ !=\ 0\ ||}
<a id='L126' name='L126'></a>&lt;a id='L112' name='L112'&gt;&lt;/a&gt;\DoxyCodeLine{00320\ \ \ \ \ \ \ \ str[2]\ &amp;lt;\ \textcolor{charliteral}{'0'}\ ||\ str[2]\ &amp;gt;\ \textcolor{charliteral}{'0'}\ +\ (GRSIZE\ -\/\ 1))}
<a id='L127' name='L127'></a>&lt;a id='L113' name='L113'&gt;&lt;/a&gt;\DoxyCodeLine{00321\ \ \ \ \ \{}
<a id='L128' name='L128'></a>&lt;a id='L114' name='L114'&gt;&lt;/a&gt;\DoxyCodeLine{00322\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0xFFFF;}
<a id='L129' name='L129'></a>&lt;a id='L115' name='L115'&gt;&lt;/a&gt;\DoxyCodeLine{00323\ \ \ \ \ \}}
<a id='L130' name='L130'></a>&lt;a id='L116' name='L116'&gt;&lt;/a&gt;\DoxyCodeLine{00324\ \ \ \ \ r\ =\ (WORD)(str[2]\ -\/\ \textcolor{charliteral}{'0'});}
<a id='L131' name='L131'></a>&lt;a id='L117' name='L117'&gt;&lt;/a&gt;\DoxyCodeLine{00325\ \ \ \ \ \textcolor{comment}{/*\ GR0は指標レジスタとして用いることができない\ */}}
<a id='L132' name='L132'></a>&lt;a id='L118' name='L118'&gt;&lt;/a&gt;\DoxyCodeLine{00326\ \ \ \ \ \textcolor{keywordflow}{if}(is\_x\ ==\ \textcolor{keyword}{true}\ \&amp;amp;\&amp;amp;\ r\ ==\ 0x0)\ \{}
<a id='L133' name='L133'></a>&lt;a id='L119' name='L119'&gt;&lt;/a&gt;\DoxyCodeLine{00327\ \ \ \ \ \ \ \ \ setcerr(120,\ \textcolor{stringliteral}{"{}"{}});\ \ \ \ \textcolor{comment}{/*\ GR0\ in\ operand\ x\ */}}
<a id='L134' name='L134'></a>&lt;a id='L120' name='L120'&gt;&lt;/a&gt;\DoxyCodeLine{00328\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0;}
<a id='L135' name='L135'></a>&lt;a id='L121' name='L121'&gt;&lt;/a&gt;\DoxyCodeLine{00329\ \ \ \ \ \}}
<a id='L136' name='L136'></a>&lt;a id='L122' name='L122'&gt;&lt;/a&gt;\DoxyCodeLine{00330\ \ \ \ \ \textcolor{keywordflow}{return}\ r;}
<a id='L137' name='L137'></a>&lt;a id='L123' name='L123'&gt;&lt;/a&gt;\DoxyCodeLine{00331\ \}}
<a id='L138' name='L138'></a>&lt;a id='L124' name='L124'&gt;&lt;/a&gt;\DoxyCodeLine{00332\ }
<a id='L139' name='L139'></a>&lt;a id='L125' name='L125'&gt;&lt;/a&gt;\DoxyCodeLine{00333\ WORD\ getliteral(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *str,\ PASS\ pass)}
<a id='L140' name='L140'></a>&lt;a id='L126' name='L126'&gt;&lt;/a&gt;\DoxyCodeLine{00334\ \{}
<a id='L141' name='L141'></a>&lt;a id='L127' name='L127'&gt;&lt;/a&gt;\DoxyCodeLine{00335\ \ \ \ \ assert(str[0]\ ==\ \textcolor{charliteral}{'='});}
<a id='L142' name='L142'></a>&lt;a id='L128' name='L128'&gt;&lt;/a&gt;\DoxyCodeLine{00336\ \ \ \ \ WORD\ adr\ =\ asptr-\/&amp;gt;lptr;}
<a id='L143' name='L143'></a>&lt;a id='L129' name='L129'&gt;&lt;/a&gt;\DoxyCodeLine{00337\ }
<a id='L144' name='L144'></a>&lt;a id='L130' name='L130'&gt;&lt;/a&gt;\DoxyCodeLine{00338\ \ \ \ \ str++;}
<a id='L145' name='L145'></a>&lt;a id='L131' name='L131'&gt;&lt;/a&gt;\DoxyCodeLine{00339\ \ \ \ \ \textcolor{keywordflow}{if}(str[0]\ ==\ \textcolor{charliteral}{'\(\backslash\)''})\ \{\ \ \ \ \textcolor{comment}{/*\ 文字定数\ */}}
<a id='L146' name='L146'></a>&lt;a id='L132' name='L132'&gt;&lt;/a&gt;\DoxyCodeLine{00340\ \ \ \ \ \ \ \ \ writestr(str,\ \textcolor{keyword}{true},\ pass);}
<a id='L147' name='L147'></a>&lt;a id='L133' name='L133'&gt;&lt;/a&gt;\DoxyCodeLine{00341\ \ \ \ \ \}\ \textcolor{keywordflow}{else}\ \{}
<a id='L148' name='L148'></a>&lt;a id='L134' name='L134'&gt;&lt;/a&gt;\DoxyCodeLine{00342\ \ \ \ \ \ \ \ \ writememory(nh2word(str),\ (asptr-\/&amp;gt;lptr)++,\ pass);}
<a id='L149' name='L149'></a>&lt;a id='L135' name='L135'&gt;&lt;/a&gt;\DoxyCodeLine{00343\ \ \ \ \ \}}
<a id='L150' name='L150'></a>&lt;a id='L136' name='L136'&gt;&lt;/a&gt;\DoxyCodeLine{00344\ \ \ \ \ \textcolor{keywordflow}{return}\ adr;}
<a id='L151' name='L151'></a>&lt;a id='L137' name='L137'&gt;&lt;/a&gt;\DoxyCodeLine{00345\ \}}
<a id='L152' name='L152'></a>&lt;a id='L138' name='L138'&gt;&lt;/a&gt;\DoxyCodeLine{00346\ }
<a id='L153' name='L153'></a>&lt;a id='L139' name='L139'&gt;&lt;/a&gt;\DoxyCodeLine{00347\ \textcolor{keywordtype}{void}\ writememory(WORD\ word,\ WORD\ adr,\ PASS\ pass)}
<a id='L154' name='L154'></a>&lt;a id='L140' name='L140'&gt;&lt;/a&gt;\DoxyCodeLine{00348\ \{}
<a id='L155' name='L155'></a>&lt;a id='L141' name='L141'&gt;&lt;/a&gt;\DoxyCodeLine{00349\ \ \ \ \ \textcolor{keywordtype}{char}\ *n\ =\ NULL;}
<a id='L156' name='L156'></a>&lt;a id='L142' name='L142'&gt;&lt;/a&gt;\DoxyCodeLine{00350\ }
<a id='L157' name='L157'></a>&lt;a id='L143' name='L143'&gt;&lt;/a&gt;\DoxyCodeLine{00351\ \ \ \ \ \textcolor{comment}{/*\ メモリオーバーの場合、エラー発生\ */}}
<a id='L158' name='L158'></a>&lt;a id='L144' name='L144'&gt;&lt;/a&gt;\DoxyCodeLine{00352\ \ \ \ \ \textcolor{keywordflow}{if}(adr\ &amp;gt;=\ sys-\/&amp;gt;memsize)\ \{}
<a id='L159' name='L159'></a>&lt;a id='L145' name='L145'&gt;&lt;/a&gt;\DoxyCodeLine{00353\ \ \ \ \ \ \ \ \ setcerr(119,\ (n\ =\ word2n(adr)));\ \ \ \ \textcolor{comment}{/*\ out\ of\ COMET\ II\ memory\ */}}
<a id='L160' name='L160'></a>&lt;a id='L146' name='L146'&gt;&lt;/a&gt;\DoxyCodeLine{00354\ \ \ \ \ \ \ \ \ FREE(n)}
<a id='L161' name='L161'></a>&lt;a id='L147' name='L147'&gt;&lt;/a&gt;\DoxyCodeLine{00355\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}
<a id='L162' name='L162'></a>&lt;a id='L148' name='L148'&gt;&lt;/a&gt;\DoxyCodeLine{00356\ \ \ \ \ \}}
<a id='L163' name='L163'></a>&lt;a id='L149' name='L149'&gt;&lt;/a&gt;\DoxyCodeLine{00357\ \ \ \ \ (sys-\/&amp;gt;memory)[adr]\ =\ word;}
<a id='L164' name='L164'></a>&lt;a id='L150' name='L150'&gt;&lt;/a&gt;\DoxyCodeLine{00358\ \ \ \ \ \textcolor{keywordflow}{if}(pass\ ==\ SECOND\ \&amp;amp;\&amp;amp;\ asmode.asdetail\ ==\ \textcolor{keyword}{true})\ \{}
<a id='L165' name='L165'></a>&lt;a id='L151' name='L151'&gt;&lt;/a&gt;\DoxyCodeLine{00359\ \ \ \ \ \ \ \ \ fprintf(stdout,\ \textcolor{stringliteral}{"{}\(\backslash\)t\#\%04X\(\backslash\)t\#\%04X\(\backslash\)n"{}},\ adr,\ word);}
<a id='L166' name='L166'></a>&lt;a id='L152' name='L152'&gt;&lt;/a&gt;\DoxyCodeLine{00360\ \ \ \ \ \}}
<a id='L167' name='L167'></a>&lt;a id='L153' name='L153'&gt;&lt;/a&gt;\DoxyCodeLine{00361\ \}}
<a id='L168' name='L168'></a>&lt;a id='L154' name='L154'&gt;&lt;/a&gt;\DoxyCodeLine{00362\ }
<a id='L169' name='L169'></a>&lt;a id='L155' name='L155'&gt;&lt;/a&gt;\DoxyCodeLine{00363\ \textcolor{keywordtype}{void}\ writestr(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *str,\ \textcolor{keywordtype}{bool}\ literal,\ PASS\ pass)}
<a id='L170' name='L170'></a>&lt;a id='L156' name='L156'&gt;&lt;/a&gt;\DoxyCodeLine{00364\ \{}
<a id='L171' name='L171'></a>&lt;a id='L157' name='L157'&gt;&lt;/a&gt;\DoxyCodeLine{00365\ \ \ \ \ assert(str[0]\ ==\ \textcolor{charliteral}{'\(\backslash\)''});}
<a id='L172' name='L172'></a>&lt;a id='L158' name='L158'&gt;&lt;/a&gt;\DoxyCodeLine{00366\ \ \ \ \ \textcolor{keywordtype}{bool}\ lw\ =\ \textcolor{keyword}{false};}
<a id='L173' name='L173'></a>&lt;a id='L159' name='L159'&gt;&lt;/a&gt;\DoxyCodeLine{00367\ }
<a id='L174' name='L174'></a>&lt;a id='L160' name='L160'&gt;&lt;/a&gt;\DoxyCodeLine{00368\ \ \ \ \ \textcolor{comment}{/*\ 「'」の場合、1文字スキップし、次の文字が「'」でなければ正常終了\ */}}
<a id='L175' name='L175'></a>&lt;a id='L161' name='L161'&gt;&lt;/a&gt;\DoxyCodeLine{00369\ \ \ \ \ \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int}\ i\ =\ 1;\ str[i]\ !=\ \textcolor{charliteral}{'\(\backslash\)''}\ ||\ str[++i]\ ==\ \textcolor{charliteral}{'\(\backslash\)''};\ i++)\ \{}
<a id='L176' name='L176'></a>&lt;a id='L162' name='L162'&gt;&lt;/a&gt;\DoxyCodeLine{00370\ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ 「'」が閉じないまま文字列が終了した場合はエラー\ */}}
<a id='L177' name='L177'></a>&lt;a id='L163' name='L163'&gt;&lt;/a&gt;\DoxyCodeLine{00371\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(!str[i])\ \{}
<a id='L178' name='L178'></a>&lt;a id='L164' name='L164'&gt;&lt;/a&gt;\DoxyCodeLine{00372\ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(123,\ str);\ \ \ \ \textcolor{comment}{/*\ unclosed\ quote\ */}}
<a id='L179' name='L179'></a>&lt;a id='L165' name='L165'&gt;&lt;/a&gt;\DoxyCodeLine{00373\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
<a id='L180' name='L180'></a>&lt;a id='L166' name='L166'&gt;&lt;/a&gt;\DoxyCodeLine{00374\ \ \ \ \ \ \ \ \ \}}
<a id='L181' name='L181'></a>&lt;a id='L167' name='L167'&gt;&lt;/a&gt;\DoxyCodeLine{00375\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(literal\ ==\ \textcolor{keyword}{true}\ \&amp;amp;\&amp;amp;\ lw\ ==\ \textcolor{keyword}{true})\ \{}
<a id='L182' name='L182'></a>&lt;a id='L168' name='L168'&gt;&lt;/a&gt;\DoxyCodeLine{00376\ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(124,\ str);\ \ \ \ \textcolor{comment}{/*\ more\ than\ one\ character\ in\ literal\ */}}
<a id='L183' name='L183'></a>&lt;a id='L169' name='L169'&gt;&lt;/a&gt;\DoxyCodeLine{00377\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
<a id='L184' name='L184'></a>&lt;a id='L170' name='L170'&gt;&lt;/a&gt;\DoxyCodeLine{00378\ \ \ \ \ \ \ \ \ \}}
<a id='L185' name='L185'></a>&lt;a id='L171' name='L171'&gt;&lt;/a&gt;\DoxyCodeLine{00379\ \ \ \ \ \ \ \ \ \textcolor{comment}{/*リテラルの場合はリテラル領域に書込\ */}}
<a id='L186' name='L186'></a>&lt;a id='L172' name='L172'&gt;&lt;/a&gt;\DoxyCodeLine{00380\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(literal\ ==\ \textcolor{keyword}{true})\ \{}
<a id='L187' name='L187'></a>&lt;a id='L173' name='L173'&gt;&lt;/a&gt;\DoxyCodeLine{00381\ \ \ \ \ \ \ \ \ \ \ \ \ writememory(str[i],\ (asptr-\/&amp;gt;lptr)++,\ pass);}
<a id='L188' name='L188'></a>&lt;a id='L174' name='L174'&gt;&lt;/a&gt;\DoxyCodeLine{00382\ \ \ \ \ \ \ \ \ \ \ \ \ lw\ =\ \textcolor{keyword}{true};}
<a id='L189' name='L189'></a>&lt;a id='L175' name='L175'&gt;&lt;/a&gt;\DoxyCodeLine{00383\ \ \ \ \ \ \ \ \ \}\ \textcolor{keywordflow}{else}\ \{}
<a id='L190' name='L190'></a>&lt;a id='L176' name='L176'&gt;&lt;/a&gt;\DoxyCodeLine{00384\ \ \ \ \ \ \ \ \ \ \ \ \ writememory(str[i],\ (asptr-\/&amp;gt;ptr)++,\ pass);}
<a id='L191' name='L191'></a>&lt;a id='L177' name='L177'&gt;&lt;/a&gt;\DoxyCodeLine{00385\ \ \ \ \ \ \ \ \ \}}
<a id='L192' name='L192'></a>&lt;a id='L178' name='L178'&gt;&lt;/a&gt;\DoxyCodeLine{00386\ \ \ \ \ \}}
<a id='L193' name='L193'></a>&lt;a id='L179' name='L179'&gt;&lt;/a&gt;\DoxyCodeLine{00387\ \}}
<a id='L194' name='L194'></a>&lt;a id='L180' name='L180'&gt;&lt;/a&gt;\DoxyCodeLine{00388\ }
<a id='L195' name='L195'></a>&lt;a id='L181' name='L181'&gt;&lt;/a&gt;\DoxyCodeLine{00389\ \textcolor{keywordtype}{void}\ writedc(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *str,\ PASS\ pass)}
<a id='L196' name='L196'></a>&lt;a id='L182' name='L182'&gt;&lt;/a&gt;\DoxyCodeLine{00390\ \{}
<a id='L197' name='L197'></a>&lt;a id='L183' name='L183'&gt;&lt;/a&gt;\DoxyCodeLine{00391\ \ \ \ \ WORD\ adr\ =\ 0;}
<a id='L198' name='L198'></a>&lt;a id='L184' name='L184'&gt;&lt;/a&gt;\DoxyCodeLine{00392\ }
<a id='L199' name='L199'></a>&lt;a id='L185' name='L185'&gt;&lt;/a&gt;\DoxyCodeLine{00393\ \ \ \ \ \textcolor{keywordflow}{if}(*str\ ==\ \textcolor{charliteral}{'\(\backslash\)''})\ \{}
<a id='L200' name='L200'></a>&lt;a id='L186' name='L186'&gt;&lt;/a&gt;\DoxyCodeLine{00394\ \ \ \ \ \ \ \ \ writestr(str,\ \textcolor{keyword}{false},\ pass);}
<a id='L201' name='L201'></a>&lt;a id='L187' name='L187'&gt;&lt;/a&gt;\DoxyCodeLine{00395\ \ \ \ \ \}\ \textcolor{keywordflow}{else}\ \{}
<a id='L202' name='L202'></a>&lt;a id='L188' name='L188'&gt;&lt;/a&gt;\DoxyCodeLine{00396\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(str[0]\ ==\ \textcolor{charliteral}{'\#'}\ ||\ isdigit(str[0])\ ||\ str[0]\ ==\ \textcolor{charliteral}{'-\/'})\ \{}
<a id='L203' name='L203'></a>&lt;a id='L189' name='L189'&gt;&lt;/a&gt;\DoxyCodeLine{00397\ \ \ \ \ \ \ \ \ \ \ \ \ adr\ =\ nh2word(str);}
<a id='L204' name='L204'></a>&lt;a id='L190' name='L190'&gt;&lt;/a&gt;\DoxyCodeLine{00398\ \ \ \ \ \ \ \ \ \}\ \textcolor{keywordflow}{else}\ \{}
<a id='L205' name='L205'></a>&lt;a id='L191' name='L191'&gt;&lt;/a&gt;\DoxyCodeLine{00399\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(pass\ ==\ SECOND\ \&amp;amp;\&amp;amp;\ (adr\ =\ getlabel(asptr-\/&amp;gt;prog,\ str))\ ==\ 0xFFFF)\ \{}
<a id='L206' name='L206'></a>&lt;a id='L192' name='L192'&gt;&lt;/a&gt;\DoxyCodeLine{00400\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(103,\ str);\ \ \ \ \textcolor{comment}{/*\ label\ not\ found\ */}}
<a id='L207' name='L207'></a>&lt;a id='L193' name='L193'&gt;&lt;/a&gt;\DoxyCodeLine{00401\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L208' name='L208'></a>&lt;a id='L194' name='L194'&gt;&lt;/a&gt;\DoxyCodeLine{00402\ \ \ \ \ \ \ \ \ \}}
<a id='L209' name='L209'></a>&lt;a id='L195' name='L195'&gt;&lt;/a&gt;\DoxyCodeLine{00403\ \ \ \ \ \ \ \ \ writememory(adr,\ (asptr-\/&amp;gt;ptr)++,\ pass);}
<a id='L210' name='L210'></a>&lt;a id='L196' name='L196'&gt;&lt;/a&gt;\DoxyCodeLine{00404\ \ \ \ \ \}}
<a id='L211' name='L211'></a>&lt;a id='L197' name='L197'&gt;&lt;/a&gt;\DoxyCodeLine{00405\ \}}
<a id='L212' name='L212'></a>&lt;a id='L198' name='L198'&gt;&lt;/a&gt;\DoxyCodeLine{00406\ }
<a id='L213' name='L213'></a>&lt;a id='L199' name='L199'&gt;&lt;/a&gt;\DoxyCodeLine{00407\ \textcolor{keywordtype}{void}\ assemble\_start(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass)}
<a id='L214' name='L214'></a>&lt;a id='L200' name='L200'&gt;&lt;/a&gt;\DoxyCodeLine{00408\ \{}
<a id='L215' name='L215'></a>&lt;a id='L201' name='L201'&gt;&lt;/a&gt;\DoxyCodeLine{00409\ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ &amp;gt;\ 1)\ \{}
<a id='L216' name='L216'></a>&lt;a id='L202' name='L202'&gt;&lt;/a&gt;\DoxyCodeLine{00410\ \ \ \ \ \ \ \ \ setcerr(106,\ \textcolor{stringliteral}{"{}"{}});\ \ \ \ \textcolor{comment}{/*\ operand\ count\ mismatch\ */}}
<a id='L217' name='L217'></a>&lt;a id='L203' name='L203'&gt;&lt;/a&gt;\DoxyCodeLine{00411\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}
<a id='L218' name='L218'></a>&lt;a id='L204' name='L204'&gt;&lt;/a&gt;\DoxyCodeLine{00412\ \ \ \ \ \}}
<a id='L219' name='L219'></a>&lt;a id='L205' name='L205'&gt;&lt;/a&gt;\DoxyCodeLine{00413\ \ \ \ \ \textcolor{keywordflow}{if}(!cmdl-\/&amp;gt;label[0])\ \{}
<a id='L220' name='L220'></a>&lt;a id='L206' name='L206'&gt;&lt;/a&gt;\DoxyCodeLine{00414\ \ \ \ \ \ \ \ \ setcerr(107,\ \textcolor{stringliteral}{"{}"{}});\ \ \ \ \textcolor{comment}{/*\ no\ label\ in\ START\ */}}
<a id='L221' name='L221'></a>&lt;a id='L207' name='L207'&gt;&lt;/a&gt;\DoxyCodeLine{00415\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}
<a id='L222' name='L222'></a>&lt;a id='L208' name='L208'&gt;&lt;/a&gt;\DoxyCodeLine{00416\ \ \ \ \ \}}
<a id='L223' name='L223'></a>&lt;a id='L209' name='L209'&gt;&lt;/a&gt;\DoxyCodeLine{00417\ \ \ \ \ \textcolor{comment}{/*\ プログラム名の設定\ */}}
<a id='L224' name='L224'></a>&lt;a id='L210' name='L210'&gt;&lt;/a&gt;\DoxyCodeLine{00418\ \ \ \ \ strcpy(asptr-\/&amp;gt;prog,\ cmdl-\/&amp;gt;label);}
<a id='L225' name='L225'></a>&lt;a id='L211' name='L211'&gt;&lt;/a&gt;\DoxyCodeLine{00419\ \ \ \ \ \textcolor{comment}{/*\ オペランドがある場合、書き込みと実行の開始アドレスを設定\ */}}
<a id='L226' name='L226'></a>&lt;a id='L212' name='L212'&gt;&lt;/a&gt;\DoxyCodeLine{00420\ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[0]\ !=\ NULL)\ \{}
<a id='L227' name='L227'></a>&lt;a id='L213' name='L213'&gt;&lt;/a&gt;\DoxyCodeLine{00421\ \ \ \ \ \ \ \ \ asptr-\/&amp;gt;ptr\ =\ execptr-\/&amp;gt;start\ =\ getadr(asptr-\/&amp;gt;prog,\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[0],\ pass);}
<a id='L228' name='L228'></a>&lt;a id='L214' name='L214'&gt;&lt;/a&gt;\DoxyCodeLine{00422\ \ \ \ \ \}}
<a id='L229' name='L229'></a>&lt;a id='L215' name='L215'&gt;&lt;/a&gt;\DoxyCodeLine{00423\ \}}
<a id='L230' name='L230'></a>&lt;a id='L216' name='L216'&gt;&lt;/a&gt;\DoxyCodeLine{00424\ }
<a id='L231' name='L231'></a>&lt;a id='L217' name='L217'&gt;&lt;/a&gt;\DoxyCodeLine{00425\ \textcolor{keywordtype}{void}\ assemble\_end(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass)}
<a id='L232' name='L232'></a>&lt;a id='L218' name='L218'&gt;&lt;/a&gt;\DoxyCodeLine{00426\ \{}
<a id='L233' name='L233'></a>&lt;a id='L219' name='L219'&gt;&lt;/a&gt;\DoxyCodeLine{00427\ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ &amp;gt;\ 0)\ \{}
<a id='L234' name='L234'></a>&lt;a id='L220' name='L220'&gt;&lt;/a&gt;\DoxyCodeLine{00428\ \ \ \ \ \ \ \ \ setcerr(106,\ \textcolor{stringliteral}{"{}"{}});\ \ \ \ \textcolor{comment}{/*\ operand\ count\ mismatch\ */}}
<a id='L235' name='L235'></a>&lt;a id='L221' name='L221'&gt;&lt;/a&gt;\DoxyCodeLine{00429\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}
<a id='L236' name='L236'></a>&lt;a id='L222' name='L222'&gt;&lt;/a&gt;\DoxyCodeLine{00430\ \ \ \ \ \}}
<a id='L237' name='L237'></a>&lt;a id='L223' name='L223'&gt;&lt;/a&gt;\DoxyCodeLine{00431\ \ \ \ \ \textcolor{comment}{/*\ 1回目のアセンブルの場合は、リテラル領域開始アドレスを設定\ */}}
<a id='L238' name='L238'></a>&lt;a id='L224' name='L224'&gt;&lt;/a&gt;\DoxyCodeLine{00432\ \ \ \ \ \textcolor{keywordflow}{if}(pass\ ==\ FIRST)\ \{}
<a id='L239' name='L239'></a>&lt;a id='L225' name='L225'&gt;&lt;/a&gt;\DoxyCodeLine{00433\ \ \ \ \ \ \ \ \ asptr-\/&amp;gt;lptr\ =\ asptr-\/&amp;gt;ptr;}
<a id='L240' name='L240'></a>&lt;a id='L226' name='L226'&gt;&lt;/a&gt;\DoxyCodeLine{00434\ \ \ \ \ \}}
<a id='L241' name='L241'></a>&lt;a id='L227' name='L227'&gt;&lt;/a&gt;\DoxyCodeLine{00435\ \ \ \ \ \textcolor{comment}{/*\ 2回目のアセンブルの場合は、リテラル領域終了アドレスを実行終了アドレスとして設定\ */}}
<a id='L242' name='L242'></a>&lt;a id='L228' name='L228'&gt;&lt;/a&gt;\DoxyCodeLine{00436\ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}(pass\ ==\ SECOND)\ \{}
<a id='L243' name='L243'></a>&lt;a id='L229' name='L229'&gt;&lt;/a&gt;\DoxyCodeLine{00437\ \ \ \ \ \ \ \ \ execptr-\/&amp;gt;end\ =\ asptr-\/&amp;gt;lptr;}
<a id='L244' name='L244'></a>&lt;a id='L230' name='L230'&gt;&lt;/a&gt;\DoxyCodeLine{00438\ \ \ \ \ \}}
<a id='L245' name='L245'></a>&lt;a id='L231' name='L231'&gt;&lt;/a&gt;\DoxyCodeLine{00439\ \ \ \ \ strcpy(asptr-\/&amp;gt;prog,\ \textcolor{stringliteral}{"{}"{}});}
<a id='L246' name='L246'></a>&lt;a id='L232' name='L232'&gt;&lt;/a&gt;\DoxyCodeLine{00440\ \}}
<a id='L247' name='L247'></a>&lt;a id='L233' name='L233'&gt;&lt;/a&gt;\DoxyCodeLine{00441\ }
<a id='L248' name='L248'></a>&lt;a id='L234' name='L234'&gt;&lt;/a&gt;\DoxyCodeLine{00442\ \textcolor{keywordtype}{void}\ assemble\_ds(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass)}
<a id='L249' name='L249'></a>&lt;a id='L235' name='L235'&gt;&lt;/a&gt;\DoxyCodeLine{00443\ \{}
<a id='L250' name='L250'></a>&lt;a id='L236' name='L236'&gt;&lt;/a&gt;\DoxyCodeLine{00444\ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ !=\ 1)\ \{}
<a id='L251' name='L251'></a>&lt;a id='L237' name='L237'&gt;&lt;/a&gt;\DoxyCodeLine{00445\ \ \ \ \ \ \ \ \ setcerr(106,\ \textcolor{stringliteral}{"{}"{}});\ \ \ \ \textcolor{comment}{/*\ operand\ count\ mismatch\ */}}
<a id='L252' name='L252'></a>&lt;a id='L238' name='L238'&gt;&lt;/a&gt;\DoxyCodeLine{00446\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}
<a id='L253' name='L253'></a>&lt;a id='L239' name='L239'&gt;&lt;/a&gt;\DoxyCodeLine{00447\ \ \ \ \ \}}
<a id='L254' name='L254'></a>&lt;a id='L240' name='L240'&gt;&lt;/a&gt;\DoxyCodeLine{00448\ \ \ \ \ \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int}\ i\ =\ 0;\ i\ &amp;lt;\ atoi(cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[0]);\ i++)\ \{}
<a id='L255' name='L255'></a>&lt;a id='L241' name='L241'&gt;&lt;/a&gt;\DoxyCodeLine{00449\ \ \ \ \ \ \ \ \ writememory(0x0,\ (asptr-\/&amp;gt;ptr)++,\ pass);}
<a id='L256' name='L256'></a>&lt;a id='L242' name='L242'&gt;&lt;/a&gt;\DoxyCodeLine{00450\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(cerr-\/&amp;gt;num\ &amp;gt;\ 0)\ \{}
<a id='L257' name='L257'></a>&lt;a id='L243' name='L243'&gt;&lt;/a&gt;\DoxyCodeLine{00451\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
<a id='L258' name='L258'></a>&lt;a id='L244' name='L244'&gt;&lt;/a&gt;\DoxyCodeLine{00452\ \ \ \ \ \ \ \ \ \}}
<a id='L259' name='L259'></a>&lt;a id='L245' name='L245'&gt;&lt;/a&gt;\DoxyCodeLine{00453\ \ \ \ \ \}}
<a id='L260' name='L260'></a>&lt;a id='L246' name='L246'&gt;&lt;/a&gt;\DoxyCodeLine{00454\ \}}
<a id='L261' name='L261'></a>&lt;a id='L247' name='L247'&gt;&lt;/a&gt;\DoxyCodeLine{00455\ }
<a id='L262' name='L262'></a>&lt;a id='L248' name='L248'&gt;&lt;/a&gt;\DoxyCodeLine{00456\ \textcolor{keywordtype}{void}\ assemble\_dc(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass)}
<a id='L263' name='L263'></a>&lt;a id='L249' name='L249'&gt;&lt;/a&gt;\DoxyCodeLine{00457\ \{}
<a id='L264' name='L264'></a>&lt;a id='L250' name='L250'&gt;&lt;/a&gt;\DoxyCodeLine{00458\ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 0\ ||\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ &amp;gt;=\ OPDSIZE)\ \{}
<a id='L265' name='L265'></a>&lt;a id='L251' name='L251'&gt;&lt;/a&gt;\DoxyCodeLine{00459\ \ \ \ \ \ \ \ \ setcerr(106,\ \textcolor{stringliteral}{"{}"{}});\ \ \ \ \textcolor{comment}{/*\ operand\ count\ mismatch\ */}}
<a id='L266' name='L266'></a>&lt;a id='L252' name='L252'&gt;&lt;/a&gt;\DoxyCodeLine{00460\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}
<a id='L267' name='L267'></a>&lt;a id='L253' name='L253'&gt;&lt;/a&gt;\DoxyCodeLine{00461\ \ \ \ \ \}}
<a id='L268' name='L268'></a>&lt;a id='L254' name='L254'&gt;&lt;/a&gt;\DoxyCodeLine{00462\ \ \ \ \ \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int}\ i\ =\ 0;\ i\ &amp;lt;\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdc;\ i++)\ \{}
<a id='L269' name='L269'></a>&lt;a id='L255' name='L255'&gt;&lt;/a&gt;\DoxyCodeLine{00463\ \ \ \ \ \ \ \ \ writedc(cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[i],\ pass);}
<a id='L270' name='L270'></a>&lt;a id='L256' name='L256'&gt;&lt;/a&gt;\DoxyCodeLine{00464\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(cerr-\/&amp;gt;num\ &amp;gt;\ 0)\ \{}
<a id='L271' name='L271'></a>&lt;a id='L257' name='L257'&gt;&lt;/a&gt;\DoxyCodeLine{00465\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
<a id='L272' name='L272'></a>&lt;a id='L258' name='L258'&gt;&lt;/a&gt;\DoxyCodeLine{00466\ \ \ \ \ \ \ \ \ \}}
<a id='L273' name='L273'></a>&lt;a id='L259' name='L259'&gt;&lt;/a&gt;\DoxyCodeLine{00467\ \ \ \ \ \}}
<a id='L274' name='L274'></a>&lt;a id='L260' name='L260'&gt;&lt;/a&gt;\DoxyCodeLine{00468\ \}}
<a id='L275' name='L275'></a>&lt;a id='L261' name='L261'&gt;&lt;/a&gt;\DoxyCodeLine{00469\ }
<a id='L276' name='L276'></a>&lt;a id='L262' name='L262'&gt;&lt;/a&gt;\DoxyCodeLine{00470\ \textcolor{keywordtype}{void}\ assemble\_in(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass)}
<a id='L277' name='L277'></a>&lt;a id='L263' name='L263'&gt;&lt;/a&gt;\DoxyCodeLine{00471\ \{}
<a id='L278' name='L278'></a>&lt;a id='L264' name='L264'&gt;&lt;/a&gt;\DoxyCodeLine{00472\ \ \ \ \ \textcolor{keywordtype}{char}\ *line\ =\ malloc\_chk(LINESIZE\ +\ 1,\ \textcolor{stringliteral}{"{}assemble\_in.line"{}});}
<a id='L279' name='L279'></a>&lt;a id='L265' name='L265'&gt;&lt;/a&gt;\DoxyCodeLine{00473\ }
<a id='L280' name='L280'></a>&lt;a id='L266' name='L266'&gt;&lt;/a&gt;\DoxyCodeLine{00474\ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 0\ ||\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ &amp;gt;\ 2)\ \{}
<a id='L281' name='L281'></a>&lt;a id='L267' name='L267'&gt;&lt;/a&gt;\DoxyCodeLine{00475\ \ \ \ \ \ \ \ \ setcerr(106,\ \textcolor{stringliteral}{"{}"{}});\ \ \ \ \textcolor{comment}{/*\ operand\ count\ mismatch\ */}}
<a id='L282' name='L282'></a>&lt;a id='L268' name='L268'&gt;&lt;/a&gt;\DoxyCodeLine{00476\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}
<a id='L283' name='L283'></a>&lt;a id='L269' name='L269'&gt;&lt;/a&gt;\DoxyCodeLine{00477\ \ \ \ \ \}}
<a id='L284' name='L284'></a>&lt;a id='L270' name='L270'&gt;&lt;/a&gt;\DoxyCodeLine{00478\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ PUSH\ 0,GR1"{}},\ pass);}
<a id='L285' name='L285'></a>&lt;a id='L271' name='L271'&gt;&lt;/a&gt;\DoxyCodeLine{00479\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ PUSH\ 0,GR2"{}},\ pass);}
<a id='L286' name='L286'></a>&lt;a id='L272' name='L272'&gt;&lt;/a&gt;\DoxyCodeLine{00480\ \ \ \ \ sprintf(line,\ \textcolor{stringliteral}{"{}\ \ \ \ LAD\ GR1,\%s"{}},\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[0]);}
<a id='L287' name='L287'></a>&lt;a id='L273' name='L273'&gt;&lt;/a&gt;\DoxyCodeLine{00481\ \ \ \ \ assembleline(line,\ pass);}
<a id='L288' name='L288'></a>&lt;a id='L274' name='L274'&gt;&lt;/a&gt;\DoxyCodeLine{00482\ \ \ \ \ sprintf(line,\ \textcolor{stringliteral}{"{}\ \ \ \ LAD\ GR2,\%s"{}},\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[1]);}
<a id='L289' name='L289'></a>&lt;a id='L275' name='L275'&gt;&lt;/a&gt;\DoxyCodeLine{00483\ \ \ \ \ assembleline(line,\ pass);}
<a id='L290' name='L290'></a>&lt;a id='L276' name='L276'&gt;&lt;/a&gt;\DoxyCodeLine{00484\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ SVC\ 1"{}},\ pass);}
<a id='L291' name='L291'></a>&lt;a id='L277' name='L277'&gt;&lt;/a&gt;\DoxyCodeLine{00485\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ POP\ GR2"{}},\ pass);}
<a id='L292' name='L292'></a>&lt;a id='L278' name='L278'&gt;&lt;/a&gt;\DoxyCodeLine{00486\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ POP\ GR1"{}},\ pass);}
<a id='L293' name='L293'></a>&lt;a id='L279' name='L279'&gt;&lt;/a&gt;\DoxyCodeLine{00487\ \ \ \ \ FREE(line);}
<a id='L294' name='L294'></a>&lt;a id='L280' name='L280'&gt;&lt;/a&gt;\DoxyCodeLine{00488\ \}}
<a id='L295' name='L295'></a>&lt;a id='L281' name='L281'&gt;&lt;/a&gt;\DoxyCodeLine{00489\ }
<a id='L296' name='L296'></a>&lt;a id='L282' name='L282'&gt;&lt;/a&gt;\DoxyCodeLine{00490\ \textcolor{keywordtype}{void}\ assemble\_out(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass)}
<a id='L297' name='L297'></a>&lt;a id='L283' name='L283'&gt;&lt;/a&gt;\DoxyCodeLine{00491\ \{}
<a id='L298' name='L298'></a>&lt;a id='L284' name='L284'&gt;&lt;/a&gt;\DoxyCodeLine{00492\ \ \ \ \ \textcolor{keywordtype}{char}\ *line\ =\ malloc\_chk(LINESIZE\ +\ 1,\ \textcolor{stringliteral}{"{}assemble\_out.line"{}});}
<a id='L299' name='L299'></a>&lt;a id='L285' name='L285'&gt;&lt;/a&gt;\DoxyCodeLine{00493\ }
<a id='L300' name='L300'></a>&lt;a id='L286' name='L286'&gt;&lt;/a&gt;\DoxyCodeLine{00494\ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 0\ ||\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ &amp;gt;\ 2)\ \{}
<a id='L301' name='L301'></a>&lt;a id='L287' name='L287'&gt;&lt;/a&gt;\DoxyCodeLine{00495\ \ \ \ \ \ \ \ \ setcerr(106,\ \textcolor{stringliteral}{"{}"{}});\ \ \ \ \textcolor{comment}{/*\ operand\ count\ mismatch\ */}}
<a id='L302' name='L302'></a>&lt;a id='L288' name='L288'&gt;&lt;/a&gt;\DoxyCodeLine{00496\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}
<a id='L303' name='L303'></a>&lt;a id='L289' name='L289'&gt;&lt;/a&gt;\DoxyCodeLine{00497\ \ \ \ \ \}}
<a id='L304' name='L304'></a>&lt;a id='L290' name='L290'&gt;&lt;/a&gt;\DoxyCodeLine{00498\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ PUSH\ 0,GR1"{}},\ pass);}
<a id='L305' name='L305'></a>&lt;a id='L291' name='L291'&gt;&lt;/a&gt;\DoxyCodeLine{00499\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ PUSH\ 0,GR2"{}},\ pass);}
<a id='L306' name='L306'></a>&lt;a id='L292' name='L292'&gt;&lt;/a&gt;\DoxyCodeLine{00500\ \ \ \ \ sprintf(line,\ \textcolor{stringliteral}{"{}\ \ \ \ LAD\ GR1,\%s"{}},\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[0]);}
<a id='L307' name='L307'></a>&lt;a id='L293' name='L293'&gt;&lt;/a&gt;\DoxyCodeLine{00501\ \ \ \ \ assembleline(line,\ pass);}
<a id='L308' name='L308'></a>&lt;a id='L294' name='L294'&gt;&lt;/a&gt;\DoxyCodeLine{00502\ \ \ \ \ sprintf(line,\ \textcolor{stringliteral}{"{}\ \ \ \ LAD\ GR2,\%s"{}},\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[1]);}
<a id='L309' name='L309'></a>&lt;a id='L295' name='L295'&gt;&lt;/a&gt;\DoxyCodeLine{00503\ \ \ \ \ assembleline(line,\ pass);}
<a id='L310' name='L310'></a>&lt;a id='L296' name='L296'&gt;&lt;/a&gt;\DoxyCodeLine{00504\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ SVC\ 2"{}},\ pass);}
<a id='L311' name='L311'></a>&lt;a id='L297' name='L297'&gt;&lt;/a&gt;\DoxyCodeLine{00505\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ LAD\ GR1,=\#A"{}},\ pass);}
<a id='L312' name='L312'></a>&lt;a id='L298' name='L298'&gt;&lt;/a&gt;\DoxyCodeLine{00506\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ LAD\ GR2,=1"{}},\ pass);}
<a id='L313' name='L313'></a>&lt;a id='L299' name='L299'&gt;&lt;/a&gt;\DoxyCodeLine{00507\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ SVC\ 2"{}},\ pass);}
<a id='L314' name='L314'></a>&lt;a id='L300' name='L300'&gt;&lt;/a&gt;\DoxyCodeLine{00508\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ POP\ GR2"{}},\ pass);}
<a id='L315' name='L315'></a>&lt;a id='L301' name='L301'&gt;&lt;/a&gt;\DoxyCodeLine{00509\ \ \ \ \ assembleline(\textcolor{stringliteral}{"{}\ \ \ \ POP\ GR1"{}},\ pass);}
<a id='L316' name='L316'></a>&lt;a id='L302' name='L302'&gt;&lt;/a&gt;\DoxyCodeLine{00510\ \ \ \ \ FREE(line);}
<a id='L317' name='L317'></a>&lt;a id='L303' name='L303'&gt;&lt;/a&gt;\DoxyCodeLine{00511\ \}}
<a id='L318' name='L318'></a>&lt;a id='L304' name='L304'&gt;&lt;/a&gt;\DoxyCodeLine{00512\ }
<a id='L319' name='L319'></a>&lt;a id='L305' name='L305'&gt;&lt;/a&gt;\DoxyCodeLine{00513\ \textcolor{keywordtype}{void}\ assemble\_rpush(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass)}
<a id='L320' name='L320'></a>&lt;a id='L306' name='L306'&gt;&lt;/a&gt;\DoxyCodeLine{00514\ \{}
<a id='L321' name='L321'></a>&lt;a id='L307' name='L307'&gt;&lt;/a&gt;\DoxyCodeLine{00515\ \ \ \ \ \textcolor{keywordtype}{char}\ *line\ =\ malloc\_chk(LINESIZE\ +\ 1,\ \textcolor{stringliteral}{"{}assemble\_rpush.line"{}});}
<a id='L322' name='L322'></a>&lt;a id='L308' name='L308'&gt;&lt;/a&gt;\DoxyCodeLine{00516\ }
<a id='L323' name='L323'></a>&lt;a id='L309' name='L309'&gt;&lt;/a&gt;\DoxyCodeLine{00517\ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ &amp;gt;\ 0)\ \{}
<a id='L324' name='L324'></a>&lt;a id='L310' name='L310'&gt;&lt;/a&gt;\DoxyCodeLine{00518\ \ \ \ \ \ \ \ \ setcerr(106,\ \textcolor{stringliteral}{"{}"{}});\ \ \ \ \textcolor{comment}{/*\ operand\ count\ mismatch\ */}}
<a id='L325' name='L325'></a>&lt;a id='L311' name='L311'&gt;&lt;/a&gt;\DoxyCodeLine{00519\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}
<a id='L326' name='L326'></a>&lt;a id='L312' name='L312'&gt;&lt;/a&gt;\DoxyCodeLine{00520\ \ \ \ \ \}}
<a id='L327' name='L327'></a>&lt;a id='L313' name='L313'&gt;&lt;/a&gt;\DoxyCodeLine{00521\ \ \ \ \ \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int}\ i\ =\ 1;\ i\ &amp;lt;=\ GRSIZE-\/1;\ i++)\ \{}
<a id='L328' name='L328'></a>&lt;a id='L314' name='L314'&gt;&lt;/a&gt;\DoxyCodeLine{00522\ \ \ \ \ \ \ \ \ sprintf(line,\ \textcolor{stringliteral}{"{}\ \ \ \ PUSH\ 0,GR\%d"{}},\ i);}
<a id='L329' name='L329'></a>&lt;a id='L315' name='L315'&gt;&lt;/a&gt;\DoxyCodeLine{00523\ \ \ \ \ \ \ \ \ assembleline(line,\ pass);}
<a id='L330' name='L330'></a>&lt;a id='L316' name='L316'&gt;&lt;/a&gt;\DoxyCodeLine{00524\ \ \ \ \ \}}
<a id='L331' name='L331'></a>&lt;a id='L317' name='L317'&gt;&lt;/a&gt;\DoxyCodeLine{00525\ \ \ \ \ FREE(line);}
<a id='L332' name='L332'></a>&lt;a id='L318' name='L318'&gt;&lt;/a&gt;\DoxyCodeLine{00526\ \}}
<a id='L333' name='L333'></a>&lt;a id='L319' name='L319'&gt;&lt;/a&gt;\DoxyCodeLine{00527\ }
<a id='L334' name='L334'></a>&lt;a id='L320' name='L320'&gt;&lt;/a&gt;\DoxyCodeLine{00528\ \textcolor{keywordtype}{void}\ assemble\_rpop(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass)}
<a id='L335' name='L335'></a>&lt;a id='L321' name='L321'&gt;&lt;/a&gt;\DoxyCodeLine{00529\ \{}
<a id='L336' name='L336'></a>&lt;a id='L322' name='L322'&gt;&lt;/a&gt;\DoxyCodeLine{00530\ \ \ \ \ \textcolor{keywordtype}{char}\ *line\ =\ malloc\_chk(LINESIZE\ +\ 1,\ \textcolor{stringliteral}{"{}assemble\_rpop.line"{}});}
<a id='L337' name='L337'></a>&lt;a id='L323' name='L323'&gt;&lt;/a&gt;\DoxyCodeLine{00531\ }
<a id='L338' name='L338'></a>&lt;a id='L324' name='L324'&gt;&lt;/a&gt;\DoxyCodeLine{00532\ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ &amp;gt;\ 0)\ \{}
<a id='L339' name='L339'></a>&lt;a id='L325' name='L325'&gt;&lt;/a&gt;\DoxyCodeLine{00533\ \ \ \ \ \ \ \ \ setcerr(106,\ \textcolor{stringliteral}{"{}"{}});\ \ \ \ \textcolor{comment}{/*\ operand\ count\ mismatch\ */}}
<a id='L340' name='L340'></a>&lt;a id='L326' name='L326'&gt;&lt;/a&gt;\DoxyCodeLine{00534\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};}
<a id='L341' name='L341'></a>&lt;a id='L327' name='L327'&gt;&lt;/a&gt;\DoxyCodeLine{00535\ \ \ \ \ \}}
<a id='L342' name='L342'></a>&lt;a id='L328' name='L328'&gt;&lt;/a&gt;\DoxyCodeLine{00536\ \ \ \ \ \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int}\ i\ =\ GRSIZE-\/1;\ i\ &amp;gt;=\ 1;\ i-\/-\/)\ \{}
<a id='L343' name='L343'></a>&lt;a id='L329' name='L329'&gt;&lt;/a&gt;\DoxyCodeLine{00537\ \ \ \ \ \ \ \ \ sprintf(line,\ \textcolor{stringliteral}{"{}\ \ \ \ POP\ GR\%d"{}},\ i);}
<a id='L344' name='L344'></a>&lt;a id='L330' name='L330'&gt;&lt;/a&gt;\DoxyCodeLine{00538\ \ \ \ \ \ \ \ \ assembleline(line,\ pass);}
<a id='L345' name='L345'></a>&lt;a id='L331' name='L331'&gt;&lt;/a&gt;\DoxyCodeLine{00539\ \ \ \ \ \}}
<a id='L346' name='L346'></a>&lt;a id='L332' name='L332'&gt;&lt;/a&gt;\DoxyCodeLine{00540\ \ \ \ \ FREE(line);}
<a id='L347' name='L347'></a>&lt;a id='L333' name='L333'&gt;&lt;/a&gt;\DoxyCodeLine{00541\ \}}
<a id='L348' name='L348'></a>&lt;a id='L334' name='L334'&gt;&lt;/a&gt;\DoxyCodeLine{00542\ }
<a id='L349' name='L349'></a>&lt;a id='L335' name='L335'&gt;&lt;/a&gt;\DoxyCodeLine{00543\ \textcolor{keywordtype}{bool}\ casl2cmd(CMD\ *cmdtbl,\ \textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass)}
<a id='L350' name='L350'></a>&lt;a id='L336' name='L336'&gt;&lt;/a&gt;\DoxyCodeLine{00544\ \{}
<a id='L351' name='L351'></a>&lt;a id='L337' name='L337'&gt;&lt;/a&gt;\DoxyCodeLine{00545\ \ \ \ \ void\ (*cmdptr)(\textcolor{keyword}{const}\ CMDLINE\ *,\ PASS)\ =\ NULL;}
<a id='L352' name='L352'></a>&lt;a id='L338' name='L338'&gt;&lt;/a&gt;\DoxyCodeLine{00546\ }
<a id='L353' name='L353'></a>&lt;a id='L339' name='L339'&gt;&lt;/a&gt;\DoxyCodeLine{00547\ \ \ \ \ \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int}\ i\ =\ 0;\ cmdtbl[i].name[0];\ i++)\ \{}
<a id='L354' name='L354'></a>&lt;a id='L340' name='L340'&gt;&lt;/a&gt;\DoxyCodeLine{00548\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(strcmp(cmdl-\/&amp;gt;cmd,\ cmdtbl[i].name)\ ==\ 0)\ \{}
<a id='L355' name='L355'></a>&lt;a id='L341' name='L341'&gt;&lt;/a&gt;\DoxyCodeLine{00549\ \ \ \ \ \ \ \ \ \ \ \ \ cmdptr\ =\ cmdtbl[i].ptr;}
<a id='L356' name='L356'></a>&lt;a id='L342' name='L342'&gt;&lt;/a&gt;\DoxyCodeLine{00550\ \ \ \ \ \ \ \ \ \ \ \ \ (*cmdptr)(cmdl,\ pass);}
<a id='L357' name='L357'></a>&lt;a id='L343' name='L343'&gt;&lt;/a&gt;\DoxyCodeLine{00551\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{true};}
<a id='L358' name='L358'></a>&lt;a id='L344' name='L344'&gt;&lt;/a&gt;\DoxyCodeLine{00552\ \ \ \ \ \ \ \ \ \}}
<a id='L359' name='L359'></a>&lt;a id='L345' name='L345'&gt;&lt;/a&gt;\DoxyCodeLine{00553\ \ \ \ \ \}}
<a id='L360' name='L360'></a>&lt;a id='L346' name='L346'&gt;&lt;/a&gt;\DoxyCodeLine{00554\ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
<a id='L361' name='L361'></a>&lt;a id='L347' name='L347'&gt;&lt;/a&gt;\DoxyCodeLine{00555\ \}}
<a id='L362' name='L362'></a>&lt;a id='L348' name='L348'&gt;&lt;/a&gt;\DoxyCodeLine{00556\ }
<a id='L363' name='L363'></a>&lt;a id='L349' name='L349'&gt;&lt;/a&gt;\DoxyCodeLine{00557\ \textcolor{keywordtype}{bool}\ assemble\_comet2cmd(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass)}
<a id='L364' name='L364'></a>&lt;a id='L350' name='L350'&gt;&lt;/a&gt;\DoxyCodeLine{00558\ \{}
<a id='L365' name='L365'></a>&lt;a id='L351' name='L351'&gt;&lt;/a&gt;\DoxyCodeLine{00559\ \ \ \ \ WORD\ cmd\ =\ 0;}
<a id='L366' name='L366'></a>&lt;a id='L352' name='L352'&gt;&lt;/a&gt;\DoxyCodeLine{00560\ \ \ \ \ WORD\ r\_r1\ =\ 0;}
<a id='L367' name='L367'></a>&lt;a id='L353' name='L353'&gt;&lt;/a&gt;\DoxyCodeLine{00561\ \ \ \ \ WORD\ x\_r2\ =\ 0;}
<a id='L368' name='L368'></a>&lt;a id='L354' name='L354'&gt;&lt;/a&gt;\DoxyCodeLine{00562\ \ \ \ \ WORD\ adr\ =\ 0;}
<a id='L369' name='L369'></a>&lt;a id='L355' name='L355'&gt;&lt;/a&gt;\DoxyCodeLine{00563\ }
<a id='L370' name='L370'></a>&lt;a id='L356' name='L356'&gt;&lt;/a&gt;\DoxyCodeLine{00564\ \ \ \ \ \textcolor{comment}{/*\ オペランドなし\ */}}
<a id='L371' name='L371'></a>&lt;a id='L357' name='L357'&gt;&lt;/a&gt;\DoxyCodeLine{00565\ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 0)\ \{}
<a id='L372' name='L372'></a>&lt;a id='L358' name='L358'&gt;&lt;/a&gt;\DoxyCodeLine{00566\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}((cmd\ =\ getcmdcode(cmdl-\/&amp;gt;cmd,\ NONE))\ ==\ 0xFFFF)\ \{}
<a id='L373' name='L373'></a>&lt;a id='L359' name='L359'&gt;&lt;/a&gt;\DoxyCodeLine{00567\ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(112,\ cmdl-\/&amp;gt;cmd);\ \ \ \ \textcolor{comment}{/*\ not\ command\ of\ no\ operand\ */}}
<a id='L374' name='L374'></a>&lt;a id='L360' name='L360'&gt;&lt;/a&gt;\DoxyCodeLine{00568\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
<a id='L375' name='L375'></a>&lt;a id='L361' name='L361'&gt;&lt;/a&gt;\DoxyCodeLine{00569\ \ \ \ \ \ \ \ \ \}}
<a id='L376' name='L376'></a>&lt;a id='L362' name='L362'&gt;&lt;/a&gt;\DoxyCodeLine{00570\ \ \ \ \ \ \ \ \ writememory(cmd,\ (asptr-\/&amp;gt;ptr)++,\ pass);}
<a id='L377' name='L377'></a>&lt;a id='L363' name='L363'&gt;&lt;/a&gt;\DoxyCodeLine{00571\ \ \ \ \ \}}
<a id='L378' name='L378'></a>&lt;a id='L364' name='L364'&gt;&lt;/a&gt;\DoxyCodeLine{00572\ \ \ \ \ \textcolor{comment}{/*\ 第1オペランドは汎用レジスタ\ */}}
<a id='L379' name='L379'></a>&lt;a id='L365' name='L365'&gt;&lt;/a&gt;\DoxyCodeLine{00573\ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}((r\_r1\ =\ grword(cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[0],\ \textcolor{keyword}{false}))\ !=\ 0xFFFF)\ \{}
<a id='L380' name='L380'></a>&lt;a id='L366' name='L366'&gt;&lt;/a&gt;\DoxyCodeLine{00574\ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ オペランド数1\ */}}
<a id='L381' name='L381'></a>&lt;a id='L367' name='L367'&gt;&lt;/a&gt;\DoxyCodeLine{00575\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 1)\ \{}
<a id='L382' name='L382'></a>&lt;a id='L368' name='L368'&gt;&lt;/a&gt;\DoxyCodeLine{00576\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}((cmd\ =\ getcmdcode(cmdl-\/&amp;gt;cmd,\ R\_))\ ==\ 0xFFFF)\ \{}
<a id='L383' name='L383'></a>&lt;a id='L369' name='L369'&gt;&lt;/a&gt;\DoxyCodeLine{00577\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(108,\ cmdl-\/&amp;gt;cmd);\ \ \ \ \textcolor{comment}{/*\ not\ command\ of\ operand\ "{}r"{}\ */}}
<a id='L384' name='L384'></a>&lt;a id='L370' name='L370'&gt;&lt;/a&gt;\DoxyCodeLine{00578\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
<a id='L385' name='L385'></a>&lt;a id='L371' name='L371'&gt;&lt;/a&gt;\DoxyCodeLine{00579\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L386' name='L386'></a>&lt;a id='L372' name='L372'&gt;&lt;/a&gt;\DoxyCodeLine{00580\ \ \ \ \ \ \ \ \ \ \ \ \ cmd\ |=\ (r\_r1\ &amp;lt;&amp;lt;\ 4);}
<a id='L387' name='L387'></a>&lt;a id='L373' name='L373'&gt;&lt;/a&gt;\DoxyCodeLine{00581\ \ \ \ \ \ \ \ \ \ \ \ \ writememory(cmd,\ (asptr-\/&amp;gt;ptr)++,\ pass);}
<a id='L388' name='L388'></a>&lt;a id='L374' name='L374'&gt;&lt;/a&gt;\DoxyCodeLine{00582\ \ \ \ \ \ \ \ \ \}}
<a id='L389' name='L389'></a>&lt;a id='L375' name='L375'&gt;&lt;/a&gt;\DoxyCodeLine{00583\ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ オペランド数2。第2オペランドは汎用レジスタ\ */}}
<a id='L390' name='L390'></a>&lt;a id='L376' name='L376'&gt;&lt;/a&gt;\DoxyCodeLine{00584\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 2\ \&amp;amp;\&amp;amp;\ (x\_r2\ =\ grword(cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[1],\ \textcolor{keyword}{false}))\ !=\ 0xFFFF)\ \{}
<a id='L391' name='L391'></a>&lt;a id='L377' name='L377'&gt;&lt;/a&gt;\DoxyCodeLine{00585\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}((cmd\ =\ getcmdcode(cmdl-\/&amp;gt;cmd,\ R1\_R2))\ ==\ 0xFFFF)\ \{}
<a id='L392' name='L392'></a>&lt;a id='L378' name='L378'&gt;&lt;/a&gt;\DoxyCodeLine{00586\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(109,\ cmdl-\/&amp;gt;cmd);\ \ \ \ \textcolor{comment}{/*\ not\ command\ of\ operand\ "{}r1,r2"{}\ */}}
<a id='L393' name='L393'></a>&lt;a id='L379' name='L379'&gt;&lt;/a&gt;\DoxyCodeLine{00587\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
<a id='L394' name='L394'></a>&lt;a id='L380' name='L380'&gt;&lt;/a&gt;\DoxyCodeLine{00588\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L395' name='L395'></a>&lt;a id='L381' name='L381'&gt;&lt;/a&gt;\DoxyCodeLine{00589\ \ \ \ \ \ \ \ \ \ \ \ \ cmd\ |=\ ((r\_r1\ &amp;lt;&amp;lt;\ 4)\ |\ x\_r2);\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ 第1オペランド、第2オペランドともに汎用レジスタ\ */}}
<a id='L396' name='L396'></a>&lt;a id='L382' name='L382'&gt;&lt;/a&gt;\DoxyCodeLine{00590\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ メモリへの書き込み\ */}}
<a id='L397' name='L397'></a>&lt;a id='L383' name='L383'&gt;&lt;/a&gt;\DoxyCodeLine{00591\ \ \ \ \ \ \ \ \ \ \ \ \ writememory(cmd,\ (asptr-\/&amp;gt;ptr)++,\ pass);}
<a id='L398' name='L398'></a>&lt;a id='L384' name='L384'&gt;&lt;/a&gt;\DoxyCodeLine{00592\ \ \ \ \ \ \ \ \ \}}
<a id='L399' name='L399'></a>&lt;a id='L385' name='L385'&gt;&lt;/a&gt;\DoxyCodeLine{00593\ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ オペランド数2または3\ */}}
<a id='L400' name='L400'></a>&lt;a id='L386' name='L386'&gt;&lt;/a&gt;\DoxyCodeLine{00594\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 2\ ||\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 3)\ \{}
<a id='L401' name='L401'></a>&lt;a id='L387' name='L387'&gt;&lt;/a&gt;\DoxyCodeLine{00595\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}((cmd\ =\ getcmdcode(cmdl-\/&amp;gt;cmd,\ R\_ADR\_X))\ ==\ 0xFFFF)\ \{}
<a id='L402' name='L402'></a>&lt;a id='L388' name='L388'&gt;&lt;/a&gt;\DoxyCodeLine{00596\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(110,\ cmdl-\/&amp;gt;cmd);\ \ \ \ \textcolor{comment}{/*\ not\ command\ of\ operand\ "{}r,adr[,x]"{}\ */}}
<a id='L403' name='L403'></a>&lt;a id='L389' name='L389'&gt;&lt;/a&gt;\DoxyCodeLine{00597\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
<a id='L404' name='L404'></a>&lt;a id='L390' name='L390'&gt;&lt;/a&gt;\DoxyCodeLine{00598\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L405' name='L405'></a>&lt;a id='L391' name='L391'&gt;&lt;/a&gt;\DoxyCodeLine{00599\ \ \ \ \ \ \ \ \ \ \ \ \ cmd\ |=\ (r\_r1\ &amp;lt;&amp;lt;\ 4);\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ 第1オペランドは汎用レジスタ\ */}}
<a id='L406' name='L406'></a>&lt;a id='L392' name='L392'&gt;&lt;/a&gt;\DoxyCodeLine{00600\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ オペランド数3の場合\ */}}
<a id='L407' name='L407'></a>&lt;a id='L393' name='L393'&gt;&lt;/a&gt;\DoxyCodeLine{00601\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 3)\ \{\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ 第3オペランドは指標レジスタとして用いる汎用レジスタ\ */}}
<a id='L408' name='L408'></a>&lt;a id='L394' name='L394'&gt;&lt;/a&gt;\DoxyCodeLine{00602\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}((x\_r2\ =\ grword(cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[2],\ \textcolor{keyword}{true}))\ ==\ 0xFFFF)\ \{}
<a id='L409' name='L409'></a>&lt;a id='L395' name='L395'&gt;&lt;/a&gt;\DoxyCodeLine{00603\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(125,\ cmdl-\/&amp;gt;cmd);\ \ \ \ \textcolor{comment}{/*\ not\ GR\ in\ operand\ x\ */}}
<a id='L410' name='L410'></a>&lt;a id='L396' name='L396'&gt;&lt;/a&gt;\DoxyCodeLine{00604\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
<a id='L411' name='L411'></a>&lt;a id='L397' name='L397'&gt;&lt;/a&gt;\DoxyCodeLine{00605\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L412' name='L412'></a>&lt;a id='L398' name='L398'&gt;&lt;/a&gt;\DoxyCodeLine{00606\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ cmd\ |=\ x\_r2;}
<a id='L413' name='L413'></a>&lt;a id='L399' name='L399'&gt;&lt;/a&gt;\DoxyCodeLine{00607\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L414' name='L414'></a>&lt;a id='L400' name='L400'&gt;&lt;/a&gt;\DoxyCodeLine{00608\ \ \ \ \ \ \ \ \ \ \ \ \ adr\ =\ getadr(asptr-\/&amp;gt;prog,\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[1],\ pass);\ \textcolor{comment}{/*\ 第2オペランドはアドレス\ */}}
<a id='L415' name='L415'></a>&lt;a id='L401' name='L401'&gt;&lt;/a&gt;\DoxyCodeLine{00609\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ メモリへの書き込み\ */}}
<a id='L416' name='L416'></a>&lt;a id='L402' name='L402'&gt;&lt;/a&gt;\DoxyCodeLine{00610\ \ \ \ \ \ \ \ \ \ \ \ \ writememory(cmd,\ (asptr-\/&amp;gt;ptr)++,\ pass);}
<a id='L417' name='L417'></a>&lt;a id='L403' name='L403'&gt;&lt;/a&gt;\DoxyCodeLine{00611\ \ \ \ \ \ \ \ \ \ \ \ \ writememory(adr,\ (asptr-\/&amp;gt;ptr)++,\ pass);}
<a id='L418' name='L418'></a>&lt;a id='L404' name='L404'&gt;&lt;/a&gt;\DoxyCodeLine{00612\ \ \ \ \ \ \ \ \ \}\ \textcolor{keywordflow}{else}\ \{}
<a id='L419' name='L419'></a>&lt;a id='L405' name='L405'&gt;&lt;/a&gt;\DoxyCodeLine{00613\ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(113,\ cmdl-\/&amp;gt;cmd);\ \ \ \ \textcolor{comment}{/*\ operand\ too\ many\ in\ COMET\ II\ command\ */}}
<a id='L420' name='L420'></a>&lt;a id='L406' name='L406'&gt;&lt;/a&gt;\DoxyCodeLine{00614\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
<a id='L421' name='L421'></a>&lt;a id='L407' name='L407'&gt;&lt;/a&gt;\DoxyCodeLine{00615\ \ \ \ \ \ \ \ \ \}}
<a id='L422' name='L422'></a>&lt;a id='L408' name='L408'&gt;&lt;/a&gt;\DoxyCodeLine{00616\ \ \ \ \ \}}
<a id='L423' name='L423'></a>&lt;a id='L409' name='L409'&gt;&lt;/a&gt;\DoxyCodeLine{00617\ \ \ \ \ \textcolor{comment}{/*\ オペランド数1または2。第1オペランドはアドレス\ */}}
<a id='L424' name='L424'></a>&lt;a id='L410' name='L410'&gt;&lt;/a&gt;\DoxyCodeLine{00618\ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 1\ ||\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 2)\ \{}
<a id='L425' name='L425'></a>&lt;a id='L411' name='L411'&gt;&lt;/a&gt;\DoxyCodeLine{00619\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}((cmd\ =\ getcmdcode(cmdl-\/&amp;gt;cmd,\ ADR\_X))\ ==\ 0xFFFF)\ \{}
<a id='L426' name='L426'></a>&lt;a id='L412' name='L412'&gt;&lt;/a&gt;\DoxyCodeLine{00620\ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(111,\ cmdl-\/&amp;gt;cmd);\ \ \ \ \textcolor{comment}{/*\ not\ command\ of\ operand\ "{}adr[,x]"{}\ */}}
<a id='L427' name='L427'></a>&lt;a id='L413' name='L413'&gt;&lt;/a&gt;\DoxyCodeLine{00621\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
<a id='L428' name='L428'></a>&lt;a id='L414' name='L414'&gt;&lt;/a&gt;\DoxyCodeLine{00622\ \ \ \ \ \ \ \ \ \}}
<a id='L429' name='L429'></a>&lt;a id='L415' name='L415'&gt;&lt;/a&gt;\DoxyCodeLine{00623\ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ オペランド数2の場合\ */}}
<a id='L430' name='L430'></a>&lt;a id='L416' name='L416'&gt;&lt;/a&gt;\DoxyCodeLine{00624\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd-\/&amp;gt;opdc\ ==\ 2)\ \{\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ 第2オペランドは指標レジスタとして用いる汎用レジスタ\ */}}
<a id='L431' name='L431'></a>&lt;a id='L417' name='L417'&gt;&lt;/a&gt;\DoxyCodeLine{00625\ \ \ \ \ \ \ \ \ \ \ \ \ x\_r2\ =\ grword(cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[1],\ \textcolor{keyword}{true});}
<a id='L432' name='L432'></a>&lt;a id='L418' name='L418'&gt;&lt;/a&gt;\DoxyCodeLine{00626\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(cerr-\/&amp;gt;num\ &amp;gt;\ 0)\ \{}
<a id='L433' name='L433'></a>&lt;a id='L419' name='L419'&gt;&lt;/a&gt;\DoxyCodeLine{00627\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
<a id='L434' name='L434'></a>&lt;a id='L420' name='L420'&gt;&lt;/a&gt;\DoxyCodeLine{00628\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L435' name='L435'></a>&lt;a id='L421' name='L421'&gt;&lt;/a&gt;\DoxyCodeLine{00629\ \ \ \ \ \ \ \ \ \ \ \ \ cmd\ |=\ x\_r2;}
<a id='L436' name='L436'></a>&lt;a id='L422' name='L422'&gt;&lt;/a&gt;\DoxyCodeLine{00630\ \ \ \ \ \ \ \ \ \}}
<a id='L437' name='L437'></a>&lt;a id='L423' name='L423'&gt;&lt;/a&gt;\DoxyCodeLine{00631\ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ CALLの場合はプログラムの入口名を表すラベルを取得\ */}}
<a id='L438' name='L438'></a>&lt;a id='L424' name='L424'&gt;&lt;/a&gt;\DoxyCodeLine{00632\ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ CALL以外の命令の場合と、プログラムの入口名を取得できない場合は、\ */}}
<a id='L439' name='L439'></a>&lt;a id='L425' name='L425'&gt;&lt;/a&gt;\DoxyCodeLine{00633\ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ 同一プログラム内のラベルを取得\ */}}
<a id='L440' name='L440'></a>&lt;a id='L426' name='L426'&gt;&lt;/a&gt;\DoxyCodeLine{00634\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(pass\ ==\ SECOND\ \&amp;amp;\&amp;amp;\ cmd\ ==\ 0x8000)\ \{\ \ \ \ \ \ \ \ \textcolor{comment}{/*\ CALL命令\ */}}
<a id='L441' name='L441'></a>&lt;a id='L427' name='L427'&gt;&lt;/a&gt;\DoxyCodeLine{00635\ \ \ \ \ \ \ \ \ \ \ \ \ adr\ =\ getlabel(\textcolor{stringliteral}{"{}"{}},\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[0]);}
<a id='L442' name='L442'></a>&lt;a id='L428' name='L428'&gt;&lt;/a&gt;\DoxyCodeLine{00636\ \ \ \ \ \ \ \ \ \}}
<a id='L443' name='L443'></a>&lt;a id='L429' name='L429'&gt;&lt;/a&gt;\DoxyCodeLine{00637\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(cmd\ !=\ 0x8000\ ||\ (pass\ ==\ SECOND\ \&amp;amp;\&amp;amp;\ adr\ ==\ 0xFFFF))\ \{}
<a id='L444' name='L444'></a>&lt;a id='L430' name='L430'&gt;&lt;/a&gt;\DoxyCodeLine{00638\ \ \ \ \ \ \ \ \ \ \ \ \ adr\ =\ getadr(asptr-\/&amp;gt;prog,\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[0],\ pass);}
<a id='L445' name='L445'></a>&lt;a id='L431' name='L431'&gt;&lt;/a&gt;\DoxyCodeLine{00639\ \ \ \ \ \ \ \ \ \}}
<a id='L446' name='L446'></a>&lt;a id='L432' name='L432'&gt;&lt;/a&gt;\DoxyCodeLine{00640\ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ メモリへの書込\ */}}
<a id='L447' name='L447'></a>&lt;a id='L433' name='L433'&gt;&lt;/a&gt;\DoxyCodeLine{00641\ \ \ \ \ \ \ \ \ writememory(cmd,\ (asptr-\/&amp;gt;ptr)++,\ pass);}
<a id='L448' name='L448'></a>&lt;a id='L434' name='L434'&gt;&lt;/a&gt;\DoxyCodeLine{00642\ \ \ \ \ \ \ \ \ writememory(adr,\ (asptr-\/&amp;gt;ptr)++,\ pass);}
<a id='L449' name='L449'></a>&lt;a id='L435' name='L435'&gt;&lt;/a&gt;\DoxyCodeLine{00643\ \ \ \ \ \}}
<a id='L450' name='L450'></a>&lt;a id='L436' name='L436'&gt;&lt;/a&gt;\DoxyCodeLine{00644\ \ \ \ \ \textcolor{keywordflow}{return}\ (cerr-\/&amp;gt;num\ ==\ 0)\ ?\ true\ :\ \textcolor{keyword}{false};}
<a id='L451' name='L451'></a>&lt;a id='L437' name='L437'&gt;&lt;/a&gt;\DoxyCodeLine{00645\ \}}
<a id='L452' name='L452'></a>&lt;a id='L438' name='L438'&gt;&lt;/a&gt;\DoxyCodeLine{00646\ }
<a id='L453' name='L453'></a>&lt;a id='L439' name='L439'&gt;&lt;/a&gt;\DoxyCodeLine{00647\ \textcolor{keywordtype}{bool}\ assembletok(\textcolor{keyword}{const}\ CMDLINE\ *cmdl,\ PASS\ pass)}
<a id='L454' name='L454'></a>&lt;a id='L440' name='L440'&gt;&lt;/a&gt;\DoxyCodeLine{00648\ \{}
<a id='L455' name='L455'></a>&lt;a id='L441' name='L441'&gt;&lt;/a&gt;\DoxyCodeLine{00649\ \ \ \ \ \textcolor{comment}{/*\ 命令がない場合\ */}}
<a id='L456' name='L456'></a>&lt;a id='L442' name='L442'&gt;&lt;/a&gt;\DoxyCodeLine{00650\ \ \ \ \ \textcolor{keywordflow}{if}(!cmdl-\/&amp;gt;cmd[0])\ \{}
<a id='L457' name='L457'></a>&lt;a id='L443' name='L443'&gt;&lt;/a&gt;\DoxyCodeLine{00651\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{true};}
<a id='L458' name='L458'></a>&lt;a id='L444' name='L444'&gt;&lt;/a&gt;\DoxyCodeLine{00652\ \ \ \ \ \}}
<a id='L459' name='L459'></a>&lt;a id='L445' name='L445'&gt;&lt;/a&gt;\DoxyCodeLine{00653\ \ \ \ \ \textcolor{comment}{/*\ アセンブラ命令またはマクロ命令の書込\ */}}
<a id='L460' name='L460'></a>&lt;a id='L446' name='L446'&gt;&lt;/a&gt;\DoxyCodeLine{00654\ \ \ \ \ \textcolor{keywordflow}{if}(casl2cmd(ascmd,\ cmdl,\ pass)\ ==\ \textcolor{keyword}{false}\ \&amp;amp;\&amp;amp;\ casl2cmd(macrocmd,\ cmdl,\ pass)\ ==\ \textcolor{keyword}{false})\ \{}
<a id='L461' name='L461'></a>&lt;a id='L447' name='L447'&gt;&lt;/a&gt;\DoxyCodeLine{00655\ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ 機械語命令の書込\ */}}
<a id='L462' name='L462'></a>&lt;a id='L448' name='L448'&gt;&lt;/a&gt;\DoxyCodeLine{00656\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(assemble\_comet2cmd(cmdl,\ pass)\ ==\ \textcolor{keyword}{false})\ \{}
<a id='L463' name='L463'></a>&lt;a id='L449' name='L449'&gt;&lt;/a&gt;\DoxyCodeLine{00657\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(cerr-\/&amp;gt;num\ ==\ 0)\ \{}
<a id='L464' name='L464'></a>&lt;a id='L450' name='L450'&gt;&lt;/a&gt;\DoxyCodeLine{00658\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ setcerr(113,\ cmdl-\/&amp;gt;cmd);\ \ \ \ \textcolor{comment}{/*\ operand\ too\ many\ in\ COMET\ II\ command\ */}}
<a id='L465' name='L465'></a>&lt;a id='L451' name='L451'&gt;&lt;/a&gt;\DoxyCodeLine{00659\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L466' name='L466'></a>&lt;a id='L452' name='L452'&gt;&lt;/a&gt;\DoxyCodeLine{00660\ \ \ \ \ \ \ \ \ \}}
<a id='L467' name='L467'></a>&lt;a id='L453' name='L453'&gt;&lt;/a&gt;\DoxyCodeLine{00661\ \ \ \ \ \}}
<a id='L468' name='L468'></a>&lt;a id='L454' name='L454'&gt;&lt;/a&gt;\DoxyCodeLine{00662\ \ \ \ \ \textcolor{keywordflow}{return}\ (cerr-\/&amp;gt;num\ ==\ 0)\ ?\ true\ :\ \textcolor{keyword}{false};}
<a id='L469' name='L469'></a>&lt;a id='L455' name='L455'&gt;&lt;/a&gt;\DoxyCodeLine{00663\ \}}
<a id='L470' name='L470'></a>&lt;a id='L456' name='L456'&gt;&lt;/a&gt;\DoxyCodeLine{00664\ }
<a id='L471' name='L471'></a>&lt;a id='L457' name='L457'&gt;&lt;/a&gt;\DoxyCodeLine{00665\ \textcolor{keywordtype}{bool}\ assembleline(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *line,\ PASS\ pass)}
<a id='L472' name='L472'></a>&lt;a id='L458' name='L458'&gt;&lt;/a&gt;\DoxyCodeLine{00666\ \{}
<a id='L473' name='L473'></a>&lt;a id='L459' name='L459'&gt;&lt;/a&gt;\DoxyCodeLine{00667\ \ \ \ \ CMDLINE\ *cmdl\ =\ NULL;}
<a id='L474' name='L474'></a>&lt;a id='L460' name='L460'&gt;&lt;/a&gt;\DoxyCodeLine{00668\ \ \ \ \ \textcolor{keywordtype}{bool}\ stat\ =\ \textcolor{keyword}{true};}
<a id='L475' name='L475'></a>&lt;a id='L461' name='L461'&gt;&lt;/a&gt;\DoxyCodeLine{00669\ }
<a id='L476' name='L476'></a>&lt;a id='L462' name='L462'&gt;&lt;/a&gt;\DoxyCodeLine{00670\ \ \ \ \ cmdl\ =\ linetok(line);}
<a id='L477' name='L477'></a>&lt;a id='L463' name='L463'&gt;&lt;/a&gt;\DoxyCodeLine{00671\ \ \ \ \ stat\ =\ (cerr-\/&amp;gt;num\ ==\ 0)\ ?\ \textcolor{keyword}{true}\ :\ \textcolor{keyword}{false};}
<a id='L478' name='L478'></a>&lt;a id='L464' name='L464'&gt;&lt;/a&gt;\DoxyCodeLine{00672\ \ \ \ \ \textcolor{keywordflow}{if}(cmdl\ !=\ NULL)\ \{}
<a id='L479' name='L479'></a>&lt;a id='L465' name='L465'&gt;&lt;/a&gt;\DoxyCodeLine{00673\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(stat\ ==\ \textcolor{keyword}{true})\ \{}
<a id='L480' name='L480'></a>&lt;a id='L466' name='L466'&gt;&lt;/a&gt;\DoxyCodeLine{00674\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(pass\ ==\ FIRST\ \&amp;amp;\&amp;amp;\ cmdl-\/&amp;gt;label[0])\ \{}
<a id='L481' name='L481'></a>&lt;a id='L467' name='L467'&gt;&lt;/a&gt;\DoxyCodeLine{00675\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ stat\ =\ addlabel(asptr-\/&amp;gt;prog,\ cmdl-\/&amp;gt;label,\ asptr-\/&amp;gt;ptr);}
<a id='L482' name='L482'></a>&lt;a id='L468' name='L468'&gt;&lt;/a&gt;\DoxyCodeLine{00676\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L483' name='L483'></a>&lt;a id='L469' name='L469'&gt;&lt;/a&gt;\DoxyCodeLine{00677\ \ \ \ \ \ \ \ \ \}}
<a id='L484' name='L484'></a>&lt;a id='L470' name='L470'&gt;&lt;/a&gt;\DoxyCodeLine{00678\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(stat\ ==\ \textcolor{keyword}{true})\ \{}
<a id='L485' name='L485'></a>&lt;a id='L471' name='L471'&gt;&lt;/a&gt;\DoxyCodeLine{00679\ \ \ \ \ \ \ \ \ \ \ \ \ stat\ =\ assembletok(cmdl,\ pass);}
<a id='L486' name='L486'></a>&lt;a id='L472' name='L472'&gt;&lt;/a&gt;\DoxyCodeLine{00680\ \ \ \ \ \ \ \ \ \}}
<a id='L487' name='L487'></a>&lt;a id='L473' name='L473'&gt;&lt;/a&gt;\DoxyCodeLine{00681\ \ \ \ \ \ \ \ \ FREE(cmdl-\/&amp;gt;label);}
<a id='L488' name='L488'></a>&lt;a id='L474' name='L474'&gt;&lt;/a&gt;\DoxyCodeLine{00682\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(cmdl-\/&amp;gt;opd\ !=\ NULL)\ \{}
<a id='L489' name='L489'></a>&lt;a id='L475' name='L475'&gt;&lt;/a&gt;\DoxyCodeLine{00683\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int}\ i\ =\ 0;\ i\ &amp;lt;\ cmdl-\/&amp;gt;opd-\/&amp;gt;opdc;\ i++)\ \{}
<a id='L490' name='L490'></a>&lt;a id='L476' name='L476'&gt;&lt;/a&gt;\DoxyCodeLine{00684\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ FREE(cmdl-\/&amp;gt;opd-\/&amp;gt;opdv[i]);}
<a id='L491' name='L491'></a>&lt;a id='L477' name='L477'&gt;&lt;/a&gt;\DoxyCodeLine{00685\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L492' name='L492'></a>&lt;a id='L478' name='L478'&gt;&lt;/a&gt;\DoxyCodeLine{00686\ \ \ \ \ \ \ \ \ \}}
<a id='L493' name='L493'></a>&lt;a id='L479' name='L479'&gt;&lt;/a&gt;\DoxyCodeLine{00687\ \ \ \ \ \ \ \ \ FREE(cmdl-\/&amp;gt;opd);}
<a id='L494' name='L494'></a>&lt;a id='L480' name='L480'&gt;&lt;/a&gt;\DoxyCodeLine{00688\ \ \ \ \ \ \ \ \ FREE(cmdl-\/&amp;gt;cmd);}
<a id='L495' name='L495'></a>&lt;a id='L481' name='L481'&gt;&lt;/a&gt;\DoxyCodeLine{00689\ \ \ \ \ \}}
<a id='L496' name='L496'></a>&lt;a id='L482' name='L482'&gt;&lt;/a&gt;\DoxyCodeLine{00690\ \ \ \ \ FREE(cmdl);}
<a id='L497' name='L497'></a>&lt;a id='L483' name='L483'&gt;&lt;/a&gt;\DoxyCodeLine{00691\ \ \ \ \ \textcolor{keywordflow}{return}\ stat;}
<a id='L498' name='L498'></a>&lt;a id='L484' name='L484'&gt;&lt;/a&gt;\DoxyCodeLine{00692\ \}}
<a id='L499' name='L499'></a>&lt;a id='L485' name='L485'&gt;&lt;/a&gt;\DoxyCodeLine{00693\ }
<a id='L500' name='L500'></a>&lt;a id='L486' name='L486'&gt;&lt;/a&gt;\DoxyCodeLine{00699\ \textcolor{keywordtype}{bool}\ assemblefile(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *file,\ PASS\ pass)}
<a id='L501' name='L501'></a>&lt;a id='L487' name='L487'&gt;&lt;/a&gt;\DoxyCodeLine{00700\ \{}
<a id='L502' name='L502'></a>&lt;a id='L488' name='L488'&gt;&lt;/a&gt;\DoxyCodeLine{00701\ \ \ \ \ \textcolor{keywordtype}{int}\ lineno\ =\ 1;}
<a id='L503' name='L503'></a>&lt;a id='L489' name='L489'&gt;&lt;/a&gt;\DoxyCodeLine{00702\ \ \ \ \ \textcolor{keywordtype}{char}\ *line\ =\ NULL;}
<a id='L504' name='L504'></a>&lt;a id='L490' name='L490'&gt;&lt;/a&gt;\DoxyCodeLine{00703\ \ \ \ \ FILE\ *fp\ =\ NULL;}
<a id='L505' name='L505'></a>&lt;a id='L491' name='L491'&gt;&lt;/a&gt;\DoxyCodeLine{00704\ }
<a id='L506' name='L506'></a>&lt;a id='L492' name='L492'&gt;&lt;/a&gt;\DoxyCodeLine{00705\ \ \ \ \ \textcolor{keywordflow}{if}((fp\ =\ fopen(file,\ \textcolor{stringliteral}{"{}r"{}}))\ ==\ NULL)\ \{}
<a id='L507' name='L507'></a>&lt;a id='L493' name='L493'&gt;&lt;/a&gt;\DoxyCodeLine{00706\ \ \ \ \ \ \ \ \ cerr-\/&amp;gt;num\ =\ errno;}
<a id='L508' name='L508'></a>&lt;a id='L494' name='L494'&gt;&lt;/a&gt;\DoxyCodeLine{00707\ \ \ \ \ \ \ \ \ perror(file);}
<a id='L509' name='L509'></a>&lt;a id='L495' name='L495'&gt;&lt;/a&gt;\DoxyCodeLine{00708\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
<a id='L510' name='L510'></a>&lt;a id='L496' name='L496'&gt;&lt;/a&gt;\DoxyCodeLine{00709\ \ \ \ \ \}}
<a id='L511' name='L511'></a>&lt;a id='L497' name='L497'&gt;&lt;/a&gt;\DoxyCodeLine{00710\ \ \ \ \ \textcolor{keywordflow}{for}(line\ =\ malloc\_chk(LINESIZE\ +\ 1,\ \textcolor{stringliteral}{"{}assemble.line"{}});\ fgets(line,\ LINESIZE,\ fp);\ lineno++)\ \{}
<a id='L512' name='L512'></a>&lt;a id='L498' name='L498'&gt;&lt;/a&gt;\DoxyCodeLine{00711\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}((pass\ ==\ FIRST\ \&amp;amp;\&amp;amp;\ asmode.src\ ==\ \textcolor{keyword}{true})\ ||\ (pass\ ==\ SECOND\ \&amp;amp;\&amp;amp;\ asmode.asdetail\ ==\ \textcolor{keyword}{true}))\ \{}
<a id='L513' name='L513'></a>&lt;a id='L499' name='L499'&gt;&lt;/a&gt;\DoxyCodeLine{00712\ \ \ \ \ \ \ \ \ \ \ \ \ printline(stdout,\ file,\ lineno,\ line);}
<a id='L514' name='L514'></a>&lt;a id='L500' name='L500'&gt;&lt;/a&gt;\DoxyCodeLine{00713\ \ \ \ \ \ \ \ \ \}}
<a id='L515' name='L515'></a>&lt;a id='L501' name='L501'&gt;&lt;/a&gt;\DoxyCodeLine{00714\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(assembleline(line,\ pass)\ ==\ \textcolor{keyword}{false})\ \{}
<a id='L516' name='L516'></a>&lt;a id='L502' name='L502'&gt;&lt;/a&gt;\DoxyCodeLine{00715\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
<a id='L517' name='L517'></a>&lt;a id='L503' name='L503'&gt;&lt;/a&gt;\DoxyCodeLine{00716\ \ \ \ \ \ \ \ \ \}}
<a id='L518' name='L518'></a>&lt;a id='L504' name='L504'&gt;&lt;/a&gt;\DoxyCodeLine{00717\ \ \ \ \ \}}
<a id='L519' name='L519'></a>&lt;a id='L505' name='L505'&gt;&lt;/a&gt;\DoxyCodeLine{00718\ \ \ \ \ \textcolor{keywordflow}{if}(cerr-\/&amp;gt;num\ &amp;gt;\ 0)\ \{}
<a id='L520' name='L520'></a>&lt;a id='L506' name='L506'&gt;&lt;/a&gt;\DoxyCodeLine{00719\ \ \ \ \ \ \ \ \ fprintf(stderr,\ \textcolor{stringliteral}{"{}Assemble\ error\ -\/\ \%d:\ \%s\(\backslash\)n"{}},\ cerr-\/&amp;gt;num,\ cerr-\/&amp;gt;msg);}
<a id='L521' name='L521'></a>&lt;a id='L507' name='L507'&gt;&lt;/a&gt;\DoxyCodeLine{00720\ \ \ \ \ \ \ \ \ printline(stderr,\ file,\ lineno,\ line);}
<a id='L522' name='L522'></a>&lt;a id='L508' name='L508'&gt;&lt;/a&gt;\DoxyCodeLine{00721\ \ \ \ \ \}}
<a id='L523' name='L523'></a>&lt;a id='L509' name='L509'&gt;&lt;/a&gt;\DoxyCodeLine{00722\ \ \ \ \ FREE(line);}
<a id='L524' name='L524'></a>&lt;a id='L510' name='L510'&gt;&lt;/a&gt;\DoxyCodeLine{00723\ \ \ \ \ fclose(fp);}
<a id='L525' name='L525'></a>&lt;a id='L511' name='L511'&gt;&lt;/a&gt;\DoxyCodeLine{00724\ \ \ \ \ \textcolor{keywordflow}{return}\ (cerr-\/&amp;gt;num\ ==\ 0)\ ?\ true\ :\ \textcolor{keyword}{false};}
<a id='L526' name='L526'></a>&lt;a id='L512' name='L512'&gt;&lt;/a&gt;\DoxyCodeLine{00725\ \}}
<a id='L527' name='L527'></a>&lt;a id='L513' name='L513'&gt;&lt;/a&gt;\DoxyCodeLine{00726\ }
<a id='L528' name='L528'></a>&lt;a id='L514' name='L514'&gt;&lt;/a&gt;\DoxyCodeLine{00727\ \textcolor{keywordtype}{bool}\ assemble(\textcolor{keywordtype}{int}\ filec,\ \textcolor{keywordtype}{char}\ *filev[],\ WORD\ adr)}
<a id='L529' name='L529'></a>&lt;a id='L515' name='L515'&gt;&lt;/a&gt;\DoxyCodeLine{00728\ \{}
<a id='L530' name='L530'></a>&lt;a id='L516' name='L516'&gt;&lt;/a&gt;\DoxyCodeLine{00729\ \ \ \ \ \textcolor{keywordtype}{int}\ i;}
<a id='L531' name='L531'></a>&lt;a id='L517' name='L517'&gt;&lt;/a&gt;\DoxyCodeLine{00730\ \ \ \ \ PASS\ pass;}
<a id='L532' name='L532'></a>&lt;a id='L518' name='L518'&gt;&lt;/a&gt;\DoxyCodeLine{00731\ \ \ \ \ WORD\ bp[filec];}
<a id='L533' name='L533'></a>&lt;a id='L519' name='L519'&gt;&lt;/a&gt;\DoxyCodeLine{00732\ \ \ \ \ \textcolor{keywordtype}{bool}\ stat\ =\ \textcolor{keyword}{false};}
<a id='L534' name='L534'></a>&lt;a id='L520' name='L520'&gt;&lt;/a&gt;\DoxyCodeLine{00733\ }
<a id='L535' name='L535'></a>&lt;a id='L521' name='L521'&gt;&lt;/a&gt;\DoxyCodeLine{00734\ \ \ \ \ asptr\ =\ malloc\_chk(\textcolor{keyword}{sizeof}(ASPTR),\ \textcolor{stringliteral}{"{}asptr"{}});\ \ \ \ \textcolor{comment}{/*\ アセンブル時のプロパティ用の領域確保\ */}}
<a id='L536' name='L536'></a>&lt;a id='L522' name='L522'&gt;&lt;/a&gt;\DoxyCodeLine{00735\ \ \ \ \ asptr-\/&amp;gt;prog\ =\ malloc\_chk(LABELSIZE\ +\ 1,\ \textcolor{stringliteral}{"{}asptr.prog"{}});}
<a id='L537' name='L537'></a>&lt;a id='L523' name='L523'&gt;&lt;/a&gt;\DoxyCodeLine{00736\ \ \ \ \ asptr-\/&amp;gt;ptr\ =\ adr;}
<a id='L538' name='L538'></a>&lt;a id='L524' name='L524'&gt;&lt;/a&gt;\DoxyCodeLine{00737\ \ \ \ \ \textcolor{comment}{/*\ アセンブル。ラベル表作成のため、2回行う\ */}}
<a id='L539' name='L539'></a>&lt;a id='L525' name='L525'&gt;&lt;/a&gt;\DoxyCodeLine{00738\ \ \ \ \ \textcolor{keywordflow}{for}(pass\ =\ FIRST;\ pass\ &amp;lt;=\ SECOND;\ pass++)\ \{}
<a id='L540' name='L540'></a>&lt;a id='L526' name='L526'&gt;&lt;/a&gt;\DoxyCodeLine{00739\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{for}(i\ =\ 0;\ i\ &amp;lt;\ filec;\ i++)\ \{}
<a id='L541' name='L541'></a>&lt;a id='L527' name='L527'&gt;&lt;/a&gt;\DoxyCodeLine{00740\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ データの格納開始位置\ */}}
<a id='L542' name='L542'></a>&lt;a id='L528' name='L528'&gt;&lt;/a&gt;\DoxyCodeLine{00741\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(pass\ ==\ FIRST)\ \{}
<a id='L543' name='L543'></a>&lt;a id='L529' name='L529'&gt;&lt;/a&gt;\DoxyCodeLine{00742\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ bp[i]\ =\ asptr-\/&amp;gt;ptr;}
<a id='L544' name='L544'></a>&lt;a id='L530' name='L530'&gt;&lt;/a&gt;\DoxyCodeLine{00743\ \ \ \ \ \ \ \ \ \ \ \ \ \}\ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}(pass\ ==\ SECOND)\ \{}
<a id='L545' name='L545'></a>&lt;a id='L531' name='L531'&gt;&lt;/a&gt;\DoxyCodeLine{00744\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ asptr-\/&amp;gt;ptr\ =\ bp[i];}
<a id='L546' name='L546'></a>&lt;a id='L532' name='L532'&gt;&lt;/a&gt;\DoxyCodeLine{00745\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L547' name='L547'></a>&lt;a id='L533' name='L533'&gt;&lt;/a&gt;\DoxyCodeLine{00746\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(execmode.trace\ ==\ \textcolor{keyword}{true}\ ||\ execmode.dump\ ==\ \textcolor{keyword}{true}\ ||}
<a id='L548' name='L548'></a>&lt;a id='L534' name='L534'&gt;&lt;/a&gt;\DoxyCodeLine{00747\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ asmode.src\ ==\ \textcolor{keyword}{true}\ ||\ asmode.label\ ==\ \textcolor{keyword}{true}\ ||\ asmode.asdetail\ ==\ \textcolor{keyword}{true})}
<a id='L549' name='L549'></a>&lt;a id='L535' name='L535'&gt;&lt;/a&gt;\DoxyCodeLine{00748\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
<a id='L550' name='L550'></a>&lt;a id='L536' name='L536'&gt;&lt;/a&gt;\DoxyCodeLine{00749\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ fprintf(stdout,\ \textcolor{stringliteral}{"{}\(\backslash\)nAssemble\ \%s\ (\%d)\(\backslash\)n"{}},\ filev[i],\ pass);}
<a id='L551' name='L551'></a>&lt;a id='L537' name='L537'&gt;&lt;/a&gt;\DoxyCodeLine{00750\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L552' name='L552'></a>&lt;a id='L538' name='L538'&gt;&lt;/a&gt;\DoxyCodeLine{00751\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ ファイルをアセンブル\ */}}
<a id='L553' name='L553'></a>&lt;a id='L539' name='L539'&gt;&lt;/a&gt;\DoxyCodeLine{00752\ \ \ \ \ \ \ \ \ \ \ \ \ stat\ =\ assemblefile(filev[i],\ pass);}
<a id='L554' name='L554'></a>&lt;a id='L540' name='L540'&gt;&lt;/a&gt;\DoxyCodeLine{00753\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(stat\ ==\ \textcolor{keyword}{false})\ \{}
<a id='L555' name='L555'></a>&lt;a id='L541' name='L541'&gt;&lt;/a&gt;\DoxyCodeLine{00754\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{goto}\ asfin;}
<a id='L556' name='L556'></a>&lt;a id='L542' name='L542'&gt;&lt;/a&gt;\DoxyCodeLine{00755\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L557' name='L557'></a>&lt;a id='L543' name='L543'&gt;&lt;/a&gt;\DoxyCodeLine{00756\ \ \ \ \ \ \ \ \ \}}
<a id='L558' name='L558'></a>&lt;a id='L544' name='L544'&gt;&lt;/a&gt;\DoxyCodeLine{00757\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(pass\ ==\ FIRST\ \&amp;amp;\&amp;amp;\ asmode.label\ ==\ \textcolor{keyword}{true})\ \{}
<a id='L559' name='L559'></a>&lt;a id='L545' name='L545'&gt;&lt;/a&gt;\DoxyCodeLine{00758\ \ \ \ \ \ \ \ \ \ \ \ \ fprintf(stdout,\ \textcolor{stringliteral}{"{}\(\backslash\)nLabel::::\(\backslash\)n"{}});}
<a id='L560' name='L560'></a>&lt;a id='L546' name='L546'&gt;&lt;/a&gt;\DoxyCodeLine{00759\ \ \ \ \ \ \ \ \ \ \ \ \ printlabel();}
<a id='L561' name='L561'></a>&lt;a id='L547' name='L547'&gt;&lt;/a&gt;\DoxyCodeLine{00760\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(asmode.onlylabel\ ==\ \textcolor{keyword}{true})\ \{}
<a id='L562' name='L562'></a>&lt;a id='L548' name='L548'&gt;&lt;/a&gt;\DoxyCodeLine{00761\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
<a id='L563' name='L563'></a>&lt;a id='L549' name='L549'&gt;&lt;/a&gt;\DoxyCodeLine{00762\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
<a id='L564' name='L564'></a>&lt;a id='L550' name='L550'&gt;&lt;/a&gt;\DoxyCodeLine{00763\ \ \ \ \ \ \ \ \ \}}
<a id='L565' name='L565'></a>&lt;a id='L551' name='L551'&gt;&lt;/a&gt;\DoxyCodeLine{00764\ \ \ \ \ \}}
<a id='L566' name='L566'></a>&lt;a id='L552' name='L552'&gt;&lt;/a&gt;\DoxyCodeLine{00765\ asfin:}
<a id='L567' name='L567'></a>&lt;a id='L553' name='L553'&gt;&lt;/a&gt;\DoxyCodeLine{00766\ \ \ \ \ freelabel();\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ ラベルハッシュ表を解放\ */}}
<a id='L568' name='L568'></a>&lt;a id='L554' name='L554'&gt;&lt;/a&gt;\DoxyCodeLine{00767\ \ \ \ \ FREE(asptr-\/&amp;gt;prog);\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ アセンブル時のプロパティを解放\ */}}
<a id='L569' name='L569'></a>&lt;a id='L555' name='L555'&gt;&lt;/a&gt;\DoxyCodeLine{00768\ \ \ \ \ FREE(asptr);}
<a id='L570' name='L570'></a>&lt;a id='L556' name='L556'&gt;&lt;/a&gt;\DoxyCodeLine{00769\ \ \ \ \ \textcolor{keywordflow}{return}\ stat;}
<a id='L571' name='L571'></a>&lt;a id='L557' name='L557'&gt;&lt;/a&gt;\DoxyCodeLine{00770\ \}}
<a id='L572' name='L572'></a>&lt;a id='L558' name='L558'&gt;&lt;/a&gt;\DoxyCodeLine{00771\ }
<a id='L573' name='L573'></a>&lt;a id='L559' name='L559'&gt;&lt;/a&gt;\DoxyCodeLine{00772\ \textcolor{comment}{/*\ assemble.hで定義された関数群\ */}}
<a id='L574' name='L574'></a>&lt;a id='L560' name='L560'&gt;&lt;/a&gt;\DoxyCodeLine{00773\ \textcolor{keywordtype}{void}\ addcerrlist\_assemble()}
<a id='L575' name='L575'></a>&lt;a id='L561' name='L561'&gt;&lt;/a&gt;\DoxyCodeLine{00774\ \{}
<a id='L576' name='L576'></a>&lt;a id='L562' name='L562'&gt;&lt;/a&gt;\DoxyCodeLine{00775\ \ \ \ \ addcerrlist\_tok();}
<a id='L577' name='L577'></a>&lt;a id='L563' name='L563'&gt;&lt;/a&gt;\DoxyCodeLine{00776\ \ \ \ \ addcerrlist\_word();}
<a id='L578' name='L578'></a>&lt;a id='L564' name='L564'&gt;&lt;/a&gt;\DoxyCodeLine{00777\ \ \ \ \ addcerrlist\_label();}
<a id='L579' name='L579'></a>&lt;a id='L565' name='L565'&gt;&lt;/a&gt;\DoxyCodeLine{00778\ \ \ \ \ addcerrlist(ARRAYSIZE(cerr\_assemble),\ cerr\_assemble);}
<a id='L580' name='L580'></a>&lt;a id='L566' name='L566'&gt;&lt;/a&gt;\DoxyCodeLine{00779\ \}}
<a id='L581' name='L581'></a>&lt;a id='L567' name='L567'&gt;&lt;/a&gt;\DoxyCodeLine{00780\ }
<a id='L582' name='L582'></a>&lt;a id='L568' name='L568'&gt;&lt;/a&gt;\DoxyCodeLine{00781\ \textcolor{keywordtype}{void}\ outassemble(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *file)}
<a id='L583' name='L583'></a>&lt;a id='L569' name='L569'&gt;&lt;/a&gt;\DoxyCodeLine{00782\ \{}
<a id='L584' name='L584'></a>&lt;a id='L570' name='L570'&gt;&lt;/a&gt;\DoxyCodeLine{00783\ \ \ \ \ FILE\ *fp\ =\ NULL;}
<a id='L585' name='L585'></a>&lt;a id='L571' name='L571'&gt;&lt;/a&gt;\DoxyCodeLine{00784\ }
<a id='L586' name='L586'></a>&lt;a id='L572' name='L572'&gt;&lt;/a&gt;\DoxyCodeLine{00785\ \ \ \ \ \textcolor{keywordflow}{if}((fp\ =\ fopen(file,\ \textcolor{stringliteral}{"{}w"{}}))\ ==\ NULL)\ \{}
<a id='L587' name='L587'></a>&lt;a id='L573' name='L573'&gt;&lt;/a&gt;\DoxyCodeLine{00786\ \ \ \ \ \ \ \ \ perror(file);}
<a id='L588' name='L588'></a>&lt;a id='L574' name='L574'&gt;&lt;/a&gt;\DoxyCodeLine{00787\ \ \ \ \ \ \ \ \ exit(1);}
<a id='L589' name='L589'></a>&lt;a id='L575' name='L575'&gt;&lt;/a&gt;\DoxyCodeLine{00788\ \ \ \ \ \}}
<a id='L590' name='L590'></a>&lt;a id='L576' name='L576'&gt;&lt;/a&gt;\DoxyCodeLine{00789\ \ \ \ \ fwrite(sys-\/&amp;gt;memory,\ \textcolor{keyword}{sizeof}(WORD),\ execptr-\/&amp;gt;end,\ fp);}
<a id='L591' name='L591'></a>&lt;a id='L577' name='L577'&gt;&lt;/a&gt;\DoxyCodeLine{00790\ \ \ \ \ fclose(fp);}
<a id='L592' name='L592'></a>&lt;a id='L578' name='L578'&gt;&lt;/a&gt;\DoxyCodeLine{00791\ \}}
<a id='L593' name='L593'></a>&lt;a id='L579' name='L579'&gt;&lt;/a&gt;
<a id='L594' name='L594'></a>&lt;a id='L580' name='L580'&gt;&lt;/a&gt;\end{DoxyCode}
<a id='L595' name='L595'></a>&lt;/pre&gt;
<a id='L596' name='L596'></a>&lt;hr /&gt;
<a id='L597' name='L597'></a>&lt;a id='BOTTOM' name='BOTTOM'&gt;&lt;/a&gt;
<a id='L598' name='L598'></a>&lt;em class='comment'&gt;/* [&amp;lt;][&amp;gt;][^][v]&lt;a href='#TOP'&gt;[top]&lt;/a&gt;[bottom]&lt;a href='../mains.html'&gt;[index]&lt;/a&gt;&lt;a href='../help.html'&gt;[help]&lt;/a&gt; */&lt;/em&gt;
<a id='L599' name='L599'></a>&lt;/body&gt;
<a id='L600' name='L600'></a>&lt;/html&gt;
</pre>
<hr />
<a id='BOTTOM' name='BOTTOM'></a>
<em class='comment'>/* [&lt;][&gt;][^][v]<a href='#TOP'>[top]</a>[bottom]<a href='../mains.html'>[index]</a><a href='../help.html'>[help]</a> */</em>
</body>
</html>

/* [<][>][^][v][top][bottom][index][help] */