-
「UTILITIES PUBLIC DOCUMENT CC」の版間の差分
細 |
|||
22行目: | 22行目: | ||
;libdos2.lib | ;libdos2.lib | ||
:MSX-DOS2を使用するIOライブラリで、ソースはlibdos.lzhにあります。 | :MSX-DOS2を使用するIOライブラリで、ソースはlibdos.lzhにあります。 | ||
− | + | ;vsh1.o,vsh2.o ,vsh3.o | |
:CRT.Oの変種で他のプログラムを実行するためのプログラムです。詳細はvsh.txtをご覧ください。 | :CRT.Oの変種で他のプログラムを実行するためのプログラムです。詳細はvsh.txtをご覧ください。 | ||
− | |||
;vsh.txt | ;vsh.txt | ||
49行目: | 48行目: | ||
;-CR[file] : クロスリファレンスファイルを生成する | ;-CR[file] : クロスリファレンスファイルを生成する | ||
;-O : OPTIMを使って、CGENに生成されたアセンブリコードを最適化する | ;-O : OPTIMを使って、CGENに生成されたアセンブリコードを最適化する | ||
− | + | ;-O<file> : <file>にアウトプットを出力 | |
;-I<dir> : インクルードファイルの追加検索パスとしてしてCPPに渡されます。ドライブに対してのみ働き??cc.comが格納されているディレクトリは常にAPPEND環境変数を介して検索されます。 | ;-I<dir> : インクルードファイルの追加検索パスとしてしてCPPに渡されます。ドライブに対してのみ働き??cc.comが格納されているディレクトリは常にAPPEND環境変数を介して検索されます。 | ||
;-V : 冗長モードです。サブプロセスのコマンドを表示します。 | ;-V : 冗長モードです。サブプロセスのコマンドを表示します。 |
2017年8月24日 (木) 14:08時点における版
CC - HiTech-C及びmsx-dos2用改良型コントロールプログラム
About
cc.comはHI-TECH CでCプログラムをコンパイルする際のパスを自動実行します。HI-TECH社製のc.comは同じ動作をしますが、cc.comは次のようなアドバンテージがあります。
- cc.comはバッチファイルを使わず、またパスでエラーがあった場合に停止します。
- cc.comは追加を変数を設定しますので、ソースファイルをコンパイラのあるディレクトリ以外にも置けます。
インストール方法
初めにMSX-DOS2をインストールする必要があります。それからHI-TECH Z80 CP/M C Compilerをftp://ftp.funet.fi/pub/msx/programming/c/hitech-?.pmaからダウンロードして、pmextで解凍してください。
HI-TECH社は親切にも、このCコンパイラを無料で使用する許可をしてくれています。詳しくは
http://www.htsoft.com/products/CPM.php を見てください引用エラー: 無効な <ref>
タグです。
名前 (name 属性) がない場合は引用句の内容が必要です
cc.lzhをCコンパイラがあるディレクトリに解凍します。
以下のファイルが得られます。
- cc.com
- c.comの代替物
- libdos2.lib
- MSX-DOS2を使用するIOライブラリで、ソースはlibdos.lzhにあります。
- vsh1.o,vsh2.o ,vsh3.o
- CRT.Oの変種で他のプログラムを実行するためのプログラムです。詳細はvsh.txtをご覧ください。
- vsh.txt
- vsh?.oに関するテキストです。
- redir.obj
- link.comの-Uバグに対して使うものです。
- cc.txt
- このテキストです。
- cc.c
- cc.comのソースです。
- vshrt.as
- vsh?.oのソースです。
- redir.as
- redir.objのソースです。
- makefile
- pack.bat
ccを使う
CCを以下のようにして起動できます。
cc <options> <files>
次のオプションが認識されます。
- -C
- オブジェクトファイルをキープし、リンクしない
- -CR[file]
- クロスリファレンスファイルを生成する
- -O
- OPTIMを使って、CGENに生成されたアセンブリコードを最適化する
- -O<file>
- <file>にアウトプットを出力
- -I<dir>
- インクルードファイルの追加検索パスとしてしてCPPに渡されます。ドライブに対してのみ働き??cc.comが格納されているディレクトリは常にAPPEND環境変数を介して検索されます。
- -V
- 冗長モードです。サブプロセスのコマンドを表示します。
- -F<file>
- シンボルファイルに書き込みます
- -U<sym>
- CPPのシンボル定義を取り消します
- -D<sym>[=<def>]
- CPPのシンボルを定義します
- -S
- アセンブリファイルをキープします。アセンブリもリンクもしません。
- -X
- ローカルシンボルを抜き出し、LINKに渡します。
- -P<pspec>
- psectの順を定義します(通常は必要ありません)
- -M<file>
- マップファイルを書き出します
- -W<n>
- マップファイルの幅です
- -l<xx>
- LINKにlib<xx>.libを渡します。順番が重要です。
全てのオプションは大文字、小文字を区別しません。
ファイル
拡張子のないファイルは、".c"の拡張子を取ります。".c"の拡張子がついたファイルはC言語のソースファイルとして扱われます。".as"の拡張子がついたファイルはアセンブラのソースファイルとして扱われます。 他のファイルはリンカに直接渡されます。
環境変数
CCでは使われず、また検証もされないビデオメモリの最初のページをVSHTOPで指定します。
- VSHTOP
- ページ0-7は普通のビデオメモリ、8-11は拡張ビデオメモリです。有効な数値は2-12で、デフォルト値は12です。
他の数値は静的に無視されます。:VSHTOPが2の場合、CCは動きません。より高位アドレスで、データを保存することができます。あるエミュレータではvshtop=8が必要かもしれません。
注記
CC.COMは一時的な保存にビデオメモリを使用します?そのため、同じくビデオメモリを使うRAMDISKは内容が壊れてしまう可能性があります。 スクリーンはコンパイルのステップの間にフラッシュします。これはビデオメモリとの読み書きの信頼性を高めるためで、悩む必要はありません。 HI-TECH Cは大きなC言語のファイルを扱えません。これは本当のところ問題ではありません。プログラムを6-7kのC言語のファイルに分けるだけです。 Arnold metselaar によるMAKEプログラムはCC.comと一緒に使え、 リコンパイルする必要があるモジュールだけをコンパイルするのに使えます。
以下も参照してください
- HI-TECH C同梱のドキュメント
- 一般的なC言語に関するドキュメント
- vsh.txt
作者
CC.CはHI-TECH社とPierre Gielenの成果物をベースにしています。Arnold Metselaarはサブプログラムを実行し、メインプログラムを続行する部分のコードを追加しました。