shapa のパラメータを変更する事で shapa の挙動を変える事ができます.
例えば,デフォルト出力ファイルは "prg.bin" となってますが,コレを変更したり,
アーキテクチャパラメータファイル("poco.rb"等)として読むファイルを変更したり,
出力ファイルに毎回ヘッダをつけたり等できます.
less で shapa を開いてみましょう.
% less shapa
#!/usr/bin/env ruby
################################################################################
# SCRIPT : SHAcho {Pa,Pi,Pu,Pe,Po}co Assembler
# VERSION : 2.0007
# LAST UPDATE : 2009/06/04(Thu) 05:31 AM
# AUTHOR : Yoshiki Saito (shacho)
# AFFILIATION : Amano Laboratory, Department of Computer Science,
# : Open and Environmental Systems, Keio University, Japan
################################################################################
DEF_PARAM_FILENAME = './poco.rb'
DEF_DST_FILENAME = './prg.bin'
DEF_PC_INCR = 2
DEF_HEAD_FILENAME = nil
DEF_TAIL_FILENAME = nil
DEF_WITH_SRC = true
DEF_NUMERIC_BITNUM = 16
DEF_NUMERIC_SIGN = 'signed'
SOURCE_TAB_SIZE = 4
COMMENT_MARK = '//'
VERILOG_COMMENT_MARK = '//'
DONT_CARE_CHAR = '0'
DEF_DEBUG_MODE = false
DEBUG_ARCH_VARS = false
DEBUG_ARCH_VAR_ORDER = false
DEBUG_ARCH_ASM_OPCODE = false
DEBUG_ARCH_BIN_OPCODE = false
DEBUG_ARCH_VARS_TEMPLATE = false
DEBUG_SOURCE_LINES = false
DEBUG_SOURCE_ERRORS = false
DEBUG_SOURCE_LABELS = true
DEBUG_SOURCE_BIN = false
################################################################
## ##
## DON'T EDIT BELOW ##
## ##
################################################################
$arch = nil
$debug_mode = DEF_DEBUG_MODE
...
40行目〜44行: "DON'T EDIT BELOW"
文字通り,これ以降の行は編集しないで下さい
13行目〜26行目
ここで,shapa のパラメータを設定します
DEF_PARAM_FILENAME
アーキテクチャのパラメータファイルを指定."-a" オプションを用いる事で無効化
DEF_DST_FILENAME
デフォルトの出力ファイル名
DEC_PC_INCR
アーキテクチャのパラメータファイル内で
@pc_incr (1命令実行後に Program Counter がいくつインクリメントされるか)が定義されていない時のデフォルト値
DEF_HEAD_FILENAME
ファイル出力する時,ヘッダ部分に挿入するファイル
DEF_TAIL_FILENAME
ファイル出力する時,最後の部分に挿入するファイル
DEF_WITH_SRC
ファイル出力する時,基のソースコードをコメント出力するか,の設定
DEF_NUMERIC_BITNUM
"-n" オプションを使用した時の,変数のデフォルトビット幅を設定
DEF_NUMERIC_SIGN
"-n" オプションを使用した時の,デフォルト符号を設定.'signed' か 'unsigned'
SOURCE_TAB_SIZE
タブ幅
COMMENT_MARK
アセンブリ言語のコメントマーク
VERILOG_COMMENT_MARK
Verilog-HDL のコメントマーク
DONT_CARE_CHAR
アーキテクチャパラメータファイルの命令セット定義で "x"(don't care) とした部分に挿入する文字.'0' か '1'
DEF_DEBUG_MODE
デバッグモードでの実行
DEBUG_...
デバッグ出力する内容.true にすると表示