home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FreeWare Collection 3
/
FreeSoftwareCollection3pd199x-jp.img
/
oh_fm
/
bascheck
/
bascheck.txt
< prev
Wrap
Text File
|
1980-01-02
|
4KB
|
64 lines
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
BASICチェックサム
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ファイル名:BASCHECK.BAS
BASICチェックサムは,Oh!FM掲載プログラムを入力する際に打ち込
みミスのある行を発見するためのツールです。
Oh!FM掲載プログラムがたとえば "TEST.BAS" という名前だとすると,ま
ずBASICを立ち上げてそれを入力し,ASCIIセーブします(F-BASIC386
のファイルをクリックすると「保存 (アスキー) 」とあるものです) 。
さて,BASICチェックサムのプログラムを起動します。このCDに入って
いる"BASCHECK.BAS"を読み込み,実行します。すると,チェックサムを見たいフ
ァイル名を聞いてきますので,ファイルディスクリプタ( "A:TEST.BAS" など。
カレントディレクトリの場合はダブルクォーテーションは不要ですが,それ以外
の場合はディレクトリ名などが必要)を答えてください。
次に,1.画面上に表示するか,2.プリンタに出力するかを聞いてきますの
で,番号で答えてください。Oh!FM誌上の「BASICチェックサム」と書
かれたものと同じ形のものが出力されるでしょう。これは,BASICプログラ
ムの各行について,文字をASCIIキャラクタとしてとらえ,その値を足し算
した結果です。ですから,たとえば "TEST.BAS" が100 行から始まり,10行間隔
で350行まであるとすると,
LINE +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 SUM
100 nn nn nn nn nn nn nn nn nn nn :NN
200 nn nn nn nn nn nn nn nn nn nn :NN
300 nn nn nn nn nn nn 00 00 00 00 :NN
00 00 00 00 00 00 00 00 00 00 00 :00
--------------------------------------
NN NN NN NN NN NN NN NN NN NN :NN
と出力されます。nnに当たるところが各行のSUM で,NNに当たるところがさらに
そのSUM のSUM(合計値) です。ですから,もし一番右下のNNが本誌のものと違え
ば確実に打ち込みミスがあるということになります。その場合,次にどの段,ど
の行のNNが違うかを調べていきます。もし,+3の段,LINEが200 の行のnnが違っ
ていたなら,230 行に打ち込みミスがある,ということです。なお,nnやNNは00
からFFまでの16進数で表記されています。
ただし,このBASICチェックサムは,万能ではありません。単に文字の値
を足し算しているだけですから,たとえばPRINT をPRITN と打ち間違えていても,
SUM は合ってしまいます。音楽プログラムのデータなどではL8O11 をL81O1 など
と順番を間違えて打ち込むことも少なくないので,注意してください。
なお,このBASICチェックサムは,
1.REM およびシングルクォート (' ) が出てきたら,REM およびシングルクォ
ートを含めてそれ以降を計算しない
2.スペース記号(空白)は基本的に加算しない。ただし,ダブルクォーテショ
ン(" )中のスペースは加算の対象とする
3.ダブルクォーテーションそのものは加算しない
4.行番号そのものは計算しない(プログラム内で GOTO 150 などと使われてい
るものは加算する)
という仕様に従って作られていますので,ご注意願います。
なお,この本チェックサムは,TownsFOS対応になっていますので,T
ownsFOSからパラメータとしてファイルディスクリプタを受け渡せばその
まま実行されます(TownsFOSについてはそちらのディレクトリに入って
いるドキュメントファイルをお読みください)。
このプログラムの著作権はOh!FM編集部が保持しておりますが,著作権法
の定める「個人的な利用」の範疇であれば自由に利用してくださってけっこうで
す。また,転載・配布についても事前の許諾なしに自由に行ってくださってかま
いません。ただし配布時に,
1. Oh!FM掲載プログラムであること
2. 自由転載許可に基づいて転載・配布したものであること
の旨を,説明用のテキストに明記してください。