<!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/manual_html/casl2-invocation.html</title> <meta name='robots' content='noindex,nofollow' /> <meta name='generator' content='GLOBAL-6.6.5' /> <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/2921.html'>doc</a>/<a href='../files/2926.html'>manual_html</a>/casl2-invocation.html</h2> <em class='comment'>/* [<][>][^][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><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <a id='L2' name='L2'></a><html> <a id='L3' name='L3'></a><!-- Copyright (C) 2010-2021 j8takagi --> <a id='L4' name='L4'></a><!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ --> <a id='L5' name='L5'></a><head> <a id='L6' name='L6'></a><meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <a id='L7' name='L7'></a><title>casl2 invocation (YACASL2 - CASL II 処理システム)</title> <a id='L8' name='L8'></a> <a id='L9' name='L9'></a><meta name="description" content="casl2 invocation (YACASL2 - CASL II 処理システム)"> <a id='L10' name='L10'></a><meta name="keywords" content="casl2 invocation (YACASL2 - CASL II 処理システム)"> <a id='L11' name='L11'></a><meta name="resource-type" content="document"> <a id='L12' name='L12'></a><meta name="distribution" content="global"> <a id='L13' name='L13'></a><meta name="Generator" content="makeinfo"> <a id='L14' name='L14'></a><link href="index.html" rel="start" title="Top"> <a id='L15' name='L15'></a><link href="index.html#SEC_Contents" rel="contents" title="Table of Contents"> <a id='L16' name='L16'></a><link href="index.html" rel="up" title="Top"> <a id='L17' name='L17'></a><link href="comet2-invocation.html" rel="next" title="comet2 invocation"> <a id='L18' name='L18'></a><link href="Use-CASL2LIB.html" rel="prev" title="Use CASL2LIB"> <a id='L19' name='L19'></a><style type="text/css"> <a id='L20' name='L20'></a><!-- <a id='L21' name='L21'></a>a.summary-letter {text-decoration: none} <a id='L22' name='L22'></a>blockquote.indentedblock {margin-right: 0em} <a id='L23' name='L23'></a>div.display {margin-left: 3.2em} <a id='L24' name='L24'></a>div.example {margin-left: 3.2em} <a id='L25' name='L25'></a>div.lisp {margin-left: 3.2em} <a id='L26' name='L26'></a>kbd {font-style: oblique} <a id='L27' name='L27'></a>pre.display {font-family: inherit} <a id='L28' name='L28'></a>pre.format {font-family: inherit} <a id='L29' name='L29'></a>pre.menu-comment {font-family: serif} <a id='L30' name='L30'></a>pre.menu-preformatted {font-family: serif} <a id='L31' name='L31'></a>span.nolinebreak {white-space: nowrap} <a id='L32' name='L32'></a>span.roman {font-family: initial; font-weight: normal} <a id='L33' name='L33'></a>span.sansserif {font-family: sans-serif; font-weight: normal} <a id='L34' name='L34'></a>ul.no-bullet {list-style: none} <a id='L35' name='L35'></a>--> <a id='L36' name='L36'></a></style> <a id='L37' name='L37'></a><link rel="stylesheet" type="text/css" href="style.css"> <a id='L38' name='L38'></a> <a id='L39' name='L39'></a> <a id='L40' name='L40'></a></head> <a id='L41' name='L41'></a> <a id='L42' name='L42'></a><body lang="ja_JP"> <a id='L43' name='L43'></a><span id="casl2-invocation"></span><div class="header"> <a id='L44' name='L44'></a><p> <a id='L45' name='L45'></a>Next: <a href="comet2-invocation.html" accesskey="n" rel="next">comet2 invocation</a>, Previous: <a href="Sample-usage.html" accesskey="p" rel="prev">Sample usage</a>, Up: <a href="index.html" accesskey="u" rel="up">Top</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p> <a id='L46' name='L46'></a></div> <a id='L47' name='L47'></a><hr> <a id='L48' name='L48'></a><span id="casl2noHu-biChu-si"></span><h2 class="chapter">3 <code>casl2</code>の呼び出し</h2> <a id='L49' name='L49'></a> <a id='L50' name='L50'></a><span id="index-casl2-1"></span> <a id='L51' name='L51'></a><span id="index-casl2"></span> <a id='L52' name='L52'></a><span id="index-invoking"></span> <a id='L53' name='L53'></a><span id="index-options"></span> <a id='L54' name='L54'></a><span id="index-usage"></span> <a id='L55' name='L55'></a><span id="index-help"></span> <a id='L56' name='L56'></a> <a id='L57' name='L57'></a><p><code>casl2</code>は、引数として指定されたCASLファイルをアセンブルし、仮想マシンCOMET II上で実行します。 <a id='L58' name='L58'></a>CASLファイルは、アセンブラ言語CASL IIで記述されたテキストファイルです。 <a id='L59' name='L59'></a>引数が指定されない場合は、エラーメッセージを表示して終了します。 <a id='L60' name='L60'></a></p> <a id='L61' name='L61'></a><div class="example"> <a id='L62' name='L62'></a><pre class="example">$ <kbd>casl2 hello.casl</kbd> <a id='L63' name='L63'></a></pre></div> <a id='L64' name='L64'></a> <a id='L65' name='L65'></a><p>複数のCASLファイルを指定することで、副プログラムを呼び出すこともできます。 <a id='L66' name='L66'></a></p> <a id='L67' name='L67'></a><div class="example"> <a id='L68' name='L68'></a><pre class="example">$ <kbd>casl2 addl_outl.casl ~/yacasl2/as/casl2lib/outl.casl</kbd> <a id='L69' name='L69'></a></pre></div> <a id='L70' name='L70'></a> <a id='L71' name='L71'></a><span id="opusiyon"></span><h3 class="unnumberedsec">オプション</h3> <a id='L72' name='L72'></a> <a id='L73' name='L73'></a><p><code>casl2</code>は、次のオプションを指定できます。 <a id='L74' name='L74'></a></p> <a id='L75' name='L75'></a><dl compact="compact"> <a id='L76' name='L76'></a><dt><samp>-s</samp></dt> <a id='L77' name='L77'></a><dt><samp>--source</samp></dt> <a id='L78' name='L78'></a><dd><p>CASLファイルの内容を表示します。 <a id='L79' name='L79'></a></p> <a id='L80' name='L80'></a></dd> <a id='L81' name='L81'></a><dt><samp>-l</samp></dt> <a id='L82' name='L82'></a><dt><samp>--label</samp></dt> <a id='L83' name='L83'></a><dd><p>ラベルの一覧を次の形式で表示します。 <a id='L84' name='L84'></a>表示後、ほかの作業を続行します。 <a id='L85' name='L85'></a></p> <a id='L86' name='L86'></a><div class="example"> <a id='L87' name='L87'></a><pre class="example">&lt;プログラム名&gt;.&lt;ラベル名&gt; ---&gt; &lt;アドレスの16進数表現&gt; <a id='L88' name='L88'></a></pre></div> <a id='L89' name='L89'></a> <a id='L90' name='L90'></a></dd> <a id='L91' name='L91'></a><dt><samp>-L</samp></dt> <a id='L92' name='L92'></a><dt><samp>--labelonly</samp></dt> <a id='L93' name='L93'></a><dd><p><samp>-l</samp>と同じ形式でラベルの一覧を表示します。 <a id='L94' name='L94'></a>表示後、ほかの作業は続行せず、終了します。 <a id='L95' name='L95'></a></p> <a id='L96' name='L96'></a></dd> <a id='L97' name='L97'></a><dt><samp>-a</samp></dt> <a id='L98' name='L98'></a><dt><samp>--assembledetail</samp></dt> <a id='L99' name='L99'></a><dd><p>アセンブル詳細結果を表示し、ほかの作業を続行します。 <a id='L100' name='L100'></a></p> <a id='L101' name='L101'></a></dd> <a id='L102' name='L102'></a><dt><samp>-A</samp></dt> <a id='L103' name='L103'></a><dt><samp>--assembledetailonly</samp></dt> <a id='L104' name='L104'></a><dd><p>アセンブル詳細結果を表示して終了します。 <a id='L105' name='L105'></a></p> <a id='L106' name='L106'></a></dd> <a id='L107' name='L107'></a><dt><samp>-o&lt;OBJECTFILE&gt;</samp></dt> <a id='L108' name='L108'></a><dt><samp>--assembleout&lt;OBJECTFILE&gt;</samp></dt> <a id='L109' name='L109'></a><dd><p>アセンブル結果をオブジェクトファイル<samp>&lt;OBJECTFILE&gt;</samp>に出力し、ほかの作業を続行します。 <a id='L110' name='L110'></a>出力されたオブジェクトファイルは、<code>comet2</code>で実行できます。 <a id='L111' name='L111'></a>オブジェクトファイルを指定しない場合、出力先は<samp>a.o</samp>です。 <a id='L112' name='L112'></a>オブジェクトファイルは1つだけ指定できます。 <a id='L113' name='L113'></a></p> <a id='L114' name='L114'></a></dd> <a id='L115' name='L115'></a><dt><samp>-O[&lt;OBJECTFILE&gt;]</samp></dt> <a id='L116' name='L116'></a><dt><samp>--assembleoutonly[&lt;OBJECTFILE&gt;]</samp></dt> <a id='L117' name='L117'></a><dd><p>アセンブル結果をオブジェクトファイル<samp>&lt;OBJECTFILE&gt;</samp>に出力し、終了します。 <a id='L118' name='L118'></a>出力されたオブジェクトファイルは、<code>comet2</code>で実行できます。 <a id='L119' name='L119'></a>オブジェクトファイルを指定しない場合、出力先は<samp>a.o</samp>です。 <a id='L120' name='L120'></a>オブジェクトファイルは1つだけ指定できます。 <a id='L121' name='L121'></a></p> <a id='L122' name='L122'></a></dd> <a id='L123' name='L123'></a><dt><samp>-t</samp></dt> <a id='L124' name='L124'></a><dt><samp>--trace</samp></dt> <a id='L125' name='L125'></a><dt><samp>--tracearithmetic</samp></dt> <a id='L126' name='L126'></a><dd><p>プログラム実行中のレジスタの値を次の形式で表示します。 <a id='L127' name='L127'></a></p> <a id='L128' name='L128'></a><div class="example"> <a id='L129' name='L129'></a><pre class="example">&lt;PR値の16進数表現&gt;: &lt;レジスタ&gt;: &lt;値の10進数表現&gt; = <a id='L130' name='L130'></a>&lt;値の16進数表現&gt; = &lt;値の2進数表現&gt;[ ='文字'] <a id='L131' name='L131'></a></pre></div> <a id='L132' name='L132'></a> <a id='L133' name='L133'></a><ul> <a id='L134' name='L134'></a><li> <code>&lt;PR値の16進数表現&gt;</code>と<code>&lt;レジスタ&gt;</code>、<code>&lt;値の16進数表現&gt;</code>は、4けたの16進数で表されます。 <a id='L135' name='L135'></a><code>&lt;PR値の16進数表現&gt;</code>と<code>&lt;値の16進数表現&gt;</code>には、先頭に<code>#</code>が付きます。 <a id='L136' name='L136'></a>範囲は<code>#0000</code>から<code>#FFFF</code>です <a id='L137' name='L137'></a> <a id='L138' name='L138'></a></li><li> <code>&lt;値の10進数表現&gt;</code>は符号の付いた10進数です。 <a id='L139' name='L139'></a>範囲は-32768から32767です。 <a id='L140' name='L140'></a> <a id='L141' name='L141'></a></li><li> <code>&lt;値の2進数表現&gt;</code>は、16けたの2進数で表されます。 <a id='L142' name='L142'></a>範囲は、<code>0000000000000000</code>から<code>1111111111111111</code>です <a id='L143' name='L143'></a> <a id='L144' name='L144'></a></li><li> <code>[ ='文字']</code>は、レジストリの値が「文字の組」の範囲に含まれる場合に表示されます。 <a id='L145' name='L145'></a></li></ul> <a id='L146' name='L146'></a> <a id='L147' name='L147'></a><p>表示されるレジスタには、次の種類があります。 <a id='L148' name='L148'></a></p> <a id='L149' name='L149'></a><dl compact="compact"> <a id='L150' name='L150'></a><dt><code>GR0 GR1 GR2 GR3 GR4 GR5 GR6 GR7</code></dt> <a id='L151' name='L151'></a><dd><p>汎用レジスタ <a id='L152' name='L152'></a></p> <a id='L153' name='L153'></a></dd> <a id='L154' name='L154'></a><dt><code>SP</code></dt> <a id='L155' name='L155'></a><dd><p>スタックポインタ <a id='L156' name='L156'></a></p> <a id='L157' name='L157'></a></dd> <a id='L158' name='L158'></a><dt><code>PR</code></dt> <a id='L159' name='L159'></a><dd><p>プログラムレジスタ <a id='L160' name='L160'></a></p> <a id='L161' name='L161'></a></dd> <a id='L162' name='L162'></a><dt><code>FR</code></dt> <a id='L163' name='L163'></a><dd><p>フラグレジスタ <a id='L164' name='L164'></a></p></dd> <a id='L165' name='L165'></a></dl> <a id='L166' name='L166'></a> <a id='L167' name='L167'></a><p>例えば、次のように表示されます。 <a id='L168' name='L168'></a></p> <a id='L169' name='L169'></a><div class="example"> <a id='L170' name='L170'></a><pre class="example">#0002: GR1: 3 = #0003 = 0000000000000011 <a id='L171' name='L171'></a></pre></div> <a id='L172' name='L172'></a> <a id='L173' name='L173'></a></dd> <a id='L174' name='L174'></a><dt><samp>-T</samp></dt> <a id='L175' name='L175'></a><dt><samp>--tracelogical</samp></dt> <a id='L176' name='L176'></a><dd><p><samp>-t</samp>と同じように、プログラム実行中のレジスタの値を表示します。 <a id='L177' name='L177'></a>ただし<samp>-t</samp>と異なり、<code>&lt;値の10進数表現&gt;</code>は符号の付かない10進数です。 <a id='L178' name='L178'></a>値の範囲は0から65535です。 <a id='L179' name='L179'></a></p> <a id='L180' name='L180'></a></dd> <a id='L181' name='L181'></a><dt><samp>-d</samp></dt> <a id='L182' name='L182'></a><dt><samp>--dump</samp></dt> <a id='L183' name='L183'></a><dd><p>メモリの内容をすべて表示します。 <a id='L184' name='L184'></a></p> <a id='L185' name='L185'></a></dd> <a id='L186' name='L186'></a><dt><samp>-M &lt;MEMORYSIZE&gt;</samp></dt> <a id='L187' name='L187'></a><dt><samp>--memorysize &lt;MEMORYSIZE&gt;</samp></dt> <a id='L188' name='L188'></a><dd><p>アセンブルおよび実行時のメモリサイズ<samp>&lt;MEMORYSIZE&gt;</samp>を0から65535の範囲で指定します。 <a id='L189' name='L189'></a>指定しない場合、512です。 <a id='L190' name='L190'></a></p> <a id='L191' name='L191'></a></dd> <a id='L192' name='L192'></a><dt><samp>-C &lt;CLOCKS&gt;</samp></dt> <a id='L193' name='L193'></a><dt><samp>--clocks &lt;CLOCKS&gt;</samp></dt> <a id='L194' name='L194'></a><dd><p>実行時のクロック周波数<samp>&lt;CLOCKS&gt;</samp>を0より大きい整数で指定します。 <a id='L195' name='L195'></a>指定しない場合、クロック周波数は5000000です。 <a id='L196' name='L196'></a></p> <a id='L197' name='L197'></a></dd> <a id='L198' name='L198'></a><dt><samp>-v</samp></dt> <a id='L199' name='L199'></a><dt><samp>--version</samp></dt> <a id='L200' name='L200'></a><dd><p><code>casl2</code>のバージョンを表示して終了します。 <a id='L201' name='L201'></a></p> <a id='L202' name='L202'></a></dd> <a id='L203' name='L203'></a><dt><samp>-h</samp></dt> <a id='L204' name='L204'></a><dt><samp>--help</samp></dt> <a id='L205' name='L205'></a><dd><p><code>casl2</code>の使用方法を表示して終了します。 <a id='L206' name='L206'></a></p></dd> <a id='L207' name='L207'></a></dl> <a id='L208' name='L208'></a> <a id='L209' name='L209'></a> <a id='L210' name='L210'></a> <a id='L211' name='L211'></a> <a id='L212' name='L212'></a></body> <a id='L213' name='L213'></a></html> </pre> <hr /> <a id='BOTTOM' name='BOTTOM'></a> <em class='comment'>/* [<][>][^][v]<a href='#TOP'>[top]</a>[bottom]<a href='../mains.html'>[index]</a><a href='../help.html'>[help]</a> */</em> </body> </html>