<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <!-- Copyright (C) 2010-2023 j8takagi --> <!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ --> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>casl2 invocation (YACASL2 - CASL II 処理システム)</title> <meta name="description" content="casl2 invocation (YACASL2 - CASL II 処理システム)"> <meta name="keywords" content="casl2 invocation (YACASL2 - CASL II 処理システム)"> <meta name="resource-type" content="document"> <meta name="distribution" content="global"> <meta name="Generator" content="makeinfo"> <link href="index.html" rel="start" title="Top"> <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents"> <link href="index.html" rel="up" title="Top"> <link href="comet2-invocation.html" rel="next" title="comet2 invocation"> <link href="Use-CASL2LIB.html" rel="prev" title="Use CASL2LIB"> <style type="text/css"> <!-- a.summary-letter {text-decoration: none} blockquote.indentedblock {margin-right: 0em} div.display {margin-left: 3.2em} div.example {margin-left: 3.2em} div.lisp {margin-left: 3.2em} kbd {font-style: oblique} pre.display {font-family: inherit} pre.format {font-family: inherit} pre.menu-comment {font-family: serif} pre.menu-preformatted {font-family: serif} span.nolinebreak {white-space: nowrap} span.roman {font-family: initial; font-weight: normal} span.sansserif {font-family: sans-serif; font-weight: normal} ul.no-bullet {list-style: none} --> </style> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body lang="ja_JP"> <span id="casl2-invocation"></span><div class="header"> <p> 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> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p> </div> <hr> <span id="casl2noHu-biChu-si"></span><h2 class="chapter">3 <code>casl2</code>の呼び出し</h2> <span id="index-casl2-1"></span> <span id="index-casl2"></span> <span id="index-invoking"></span> <span id="index-options"></span> <span id="index-usage"></span> <span id="index-help"></span> <p><code>casl2</code>は、引数として指定されたCASLファイルをアセンブルし、仮想マシンCOMET II上で実行します。 CASLファイルは、アセンブラ言語CASL IIで記述されたテキストファイルです。 引数が指定されない場合は、エラーメッセージを表示して終了します。 </p> <div class="example"> <pre class="example">$ <kbd>casl2 hello.casl</kbd> </pre></div> <p>複数のCASLファイルを指定することで、副プログラムを呼び出すこともできます。 </p> <div class="example"> <pre class="example">$ <kbd>casl2 addl_outl.casl ~/yacasl2/as/casl2lib/outl.casl</kbd> </pre></div> <span id="opusiyon"></span><h3 class="unnumberedsec">オプション</h3> <p><code>casl2</code>は、次のオプションを指定できます。 </p> <dl compact="compact"> <dt><samp>-s</samp></dt> <dt><samp>--source</samp></dt> <dd><p>CASLファイルの内容を表示します。 </p> </dd> <dt><samp>-l</samp></dt> <dt><samp>--label</samp></dt> <dd><p>ラベルの一覧を次の形式で表示します。 表示後、ほかの作業を続行します。 </p> <div class="example"> <pre class="example"><プログラム名>.<ラベル名> ---> <アドレスの16進数表現> </pre></div> </dd> <dt><samp>-L</samp></dt> <dt><samp>--labelonly</samp></dt> <dd><p><samp>-l</samp>と同じ形式でラベルの一覧を表示します。 表示後、ほかの作業は続行せず、終了します。 </p> </dd> <dt><samp>-a</samp></dt> <dt><samp>--assembledetail</samp></dt> <dd><p>アセンブル詳細結果を表示し、ほかの作業を続行します。 </p> </dd> <dt><samp>-A</samp></dt> <dt><samp>--assembledetailonly</samp></dt> <dd><p>アセンブル詳細結果を表示して終了します。 </p> </dd> <dt><samp>-o<OBJECTFILE></samp></dt> <dt><samp>--assembleout<OBJECTFILE></samp></dt> <dd><p>アセンブル結果をオブジェクトファイル<samp><OBJECTFILE></samp>に出力し、ほかの作業を続行します。 出力されたオブジェクトファイルは、<code>comet2</code>で実行できます。 オブジェクトファイルを指定しない場合、出力先は<samp>a.o</samp>です。 オブジェクトファイルは1つだけ指定できます。 </p> </dd> <dt><samp>-O[<OBJECTFILE>]</samp></dt> <dt><samp>--assembleoutonly[<OBJECTFILE>]</samp></dt> <dd><p>アセンブル結果をオブジェクトファイル<samp><OBJECTFILE></samp>に出力し、終了します。 出力されたオブジェクトファイルは、<code>comet2</code>で実行できます。 オブジェクトファイルを指定しない場合、出力先は<samp>a.o</samp>です。 オブジェクトファイルは1つだけ指定できます。 </p> </dd> <dt><samp>-t</samp></dt> <dt><samp>--trace</samp></dt> <dt><samp>--tracearithmetic</samp></dt> <dd><p>プログラム実行中のレジスタの値を次の形式で表示します。 </p> <div class="example"> <pre class="example"><PR値の16進数表現>: <レジスタ>: <値の10進数表現> = <値の16進数表現> = <値の2進数表現>[ ='文字'] </pre></div> <ul> <li> <code><PR値の16進数表現></code>と<code><レジスタ></code>、<code><値の16進数表現></code>は、4けたの16進数で表されます。 <code><PR値の16進数表現></code>と<code><値の16進数表現></code>には、先頭に<code>#</code>が付きます。 範囲は<code>#0000</code>から<code>#FFFF</code>です </li><li> <code><値の10進数表現></code>は符号の付いた10進数です。 範囲は-32768から32767です。 </li><li> <code><値の2進数表現></code>は、16けたの2進数で表されます。 範囲は、<code>0000000000000000</code>から<code>1111111111111111</code>です </li><li> <code>[ ='文字']</code>は、レジストリの値が「文字の組」の範囲に含まれる場合に表示されます。 </li></ul> <p>表示されるレジスタには、次の種類があります。 </p> <dl compact="compact"> <dt><code>GR0 GR1 GR2 GR3 GR4 GR5 GR6 GR7</code></dt> <dd><p>汎用レジスタ </p> </dd> <dt><code>SP</code></dt> <dd><p>スタックポインタ </p> </dd> <dt><code>PR</code></dt> <dd><p>プログラムレジスタ </p> </dd> <dt><code>FR</code></dt> <dd><p>フラグレジスタ </p></dd> </dl> <p>例えば、次のように表示されます。 </p> <div class="example"> <pre class="example">#0002: GR1: 3 = #0003 = 0000000000000011 </pre></div> </dd> <dt><samp>-T</samp></dt> <dt><samp>--tracelogical</samp></dt> <dd><p><samp>-t</samp>と同じように、プログラム実行中のレジスタの値を表示します。 ただし<samp>-t</samp>と異なり、<code><値の10進数表現></code>は符号の付かない10進数です。 値の範囲は0から65535です。 </p> </dd> <dt><samp>-d</samp></dt> <dt><samp>--dump</samp></dt> <dd><p>メモリの内容をすべて表示します。 </p> </dd> <dt><samp>-M <MEMORYSIZE></samp></dt> <dt><samp>--memorysize <MEMORYSIZE></samp></dt> <dd><p>アセンブルおよび実行時のメモリサイズ<samp><MEMORYSIZE></samp>を0から65535の範囲で指定します。 指定しない場合、512です。 </p> </dd> <dt><samp>-C <CLOCKS></samp></dt> <dt><samp>--clocks <CLOCKS></samp></dt> <dd><p>実行時のクロック周波数<samp><CLOCKS></samp>を0より大きい整数で指定します。 指定しない場合、クロック周波数は5000000です。 </p> </dd> <dt><samp>-v</samp></dt> <dt><samp>--version</samp></dt> <dd><p><code>casl2</code>のバージョンを表示して終了します。 </p> </dd> <dt><samp>-h</samp></dt> <dt><samp>--help</samp></dt> <dd><p><code>casl2</code>の使用方法を表示して終了します。 </p></dd> </dl> </body> </html>