はなれ(サブルーチン風ファイル)の大場であったRemarksが決着したところで、1行分の記述の下に罫線を引きます。

その後、次の行への準備として、母屋(メイン側の定義)に書いても良いのだが、取りあえず、ここに記述した。

#LineS 1, 0, 0x808080 ; 行間の横罫の色指定
#LineX $$X, $$W+35, 1160 ; 行間の横罫を印字
#Mov $$W=$$W+40 ; 印字位置を1行分だけ下へ移動
#Mov $$U=$$U-1 ; 最大行数までの残りの行数

以上で、はなれの定義ファイルは終了です。

終了した部分の定義ファイルを下記に公開します。
下記URLからダウンロード可能です。


ファイル名 multi-sub-01.QSL 4.8K Byts

但し、このはなれ単独では、1行分だけですから、母屋(メインの定義)と併用しないとまともな動作はできません。

multi-sub-01.QSLの全文

;QSOの内容を一時記憶----------------------------------------------------------
? RmStr "1/1" ; Remarksの一部に[1/1]があるか?
#Mov $$R="1st" ; この行に1stQSOがあった場合、$$Rに[1st]を記録
? Name ; His Nameに書込みがあるか?
? DXST! ; DXでないか?
? Space "!$$N" ; 変数$$Nがカラであるか?
#Mov $$N="!NAさん" ; 名前を変数$$Nに記録(国内)
? Name! ; His Nameに書込みがないか?
? DXST! ; DXでないか?
? Space! "!R1$O" ; Remarks1にオペレータの記載はあるか?
? Space "!$$N" ; 変数$$Nがカラであるか?
#Mov $$N="!R1$Oさん" ; オペレータを変数$$Nに記録(国内)
? Name ; His Nameに書込みがあるか?
? DXST ; DXであるか?
? Space "!$$N" ; 変数$$Nがカラであるか?
#Mov $$N="DR OM !NA" ; 名前を変数$$Nに記録(海外)
? Data7 "CW" ; モードはCWであるか?
#Mov $$M="CW" ; CWがあった場合、変数$$Nに[CW]を記録

;1行分のQSOデータの記述-----------------------------------------------------
#FontName="Special Elite" ; データ行のフォント指定
#FontSize=10 ; 文字の大きさ(風雨)
#FontColor=0 ; 文字色(黒)
#FontStyle=0 ; 文字飾り(なし)
#Print $$X+5$$W+2, "!DD-!DJ-!DY" ; 01-May-2015で日付を印字
#Print $$X+250, $$W+2, "!TH:!TM" ; 15:30 形式で時刻を印字
#Print $$X+360$$W+2, "!HR" ; His [RST]を印字
#Print $$X+440$$W+2, "!FR" ; [.]以上の周波数を印字 
#Print $$X+540$$W+2, "!MD" ; モードを印字
#FontColor=0x00AA00 ; PSEの文字色
? Rcv! ; QSLカードを受理してないか?   
#Print $$X+640$$W+2, "PSE" ; [PSE]を印字
#FontColor=0x0080FF ; TNXの文字色
? Rcv ; QSLカードを受理しているか?
#Print $$X+640$$W+2, "TNX" ; [TNX]を印字

;Remarksの分類と表記----------------------------------------------------------

#Mov $$A="" Remarksコメント収納の変数をクリア

? Space! "!R2$C" ; Remarks2にコンテスト($C=)はあるか?
? Space! "!R1$O" ; Remarks1にオペレータ($O=)はあるか?
? DXST ; DXであるか?
#Mov $$A="@!R2$C TNX !R1$O"
; Remarks2($C=) Remarks1($O=)を$$Aに代入
? Space! "!R2$C" ; Remarks2にコンテスト($C=)はあるか?
? Space "!R1$O" ; Remarks1にオペレータ($O=)はないか?
? DXST ; DXであるか?
#Mov $$A="@!R2$C" ; Remarks2($C=)を$$Aに代入
? Space "!R2$C" ; Remarks2にコンテスト($C=)はないか?
? Space! "!R1$D" ; Remarks1にアワード記述($D=)はあるか?
? DXST ; DXであるか?
#Mov $$A="Ur:!R1$D" ; Remarks1($D=)$$Aに代入
? Space "!R2$C" ; Remarks2にコンテスト($C=)はないか?
? Space "!R1$D" ; Remarks1にアワード記述($D=)はないか?
? Space "!R1$O" ; Remarks1にオペレータ($O=)はないか?
? Potbl ; 移動局であるか?
? DXST ; DXであるか?
#Mov $$A="Ur:!QT" ; 移動先QTH$$Aに代入
? Space "!R2$C" ; Remarks2にコンテスト($C=)はないか?
? Space! "!R1$O" ; Remarks1にオペレータ($O=)はあるか?
? Space "!R1$D" ; Remarks1にアワード記述($D=)はないか?
? DXST ; DXであるか?
#Mov $$A="TNX !R1$O" ; Remarks1($O=)$$Aに代入

? Space! "!R2$C" ; Remarks2にコンテスト($C=)はあるか?
? Space! "!R1$O" ; Remarks1にオペレータ($O=)はあるか?
? DXST! ; DXでないか?
#Mov $$A="@!R2$C op:!R1$Oサン"
; Remarks2($C=) Remarks1($O=)を$$Aに代入
? Space! "!R2$C" ; Remarks2にコンテスト($C=)はあるか?
? Space "!R1$O" ; Remarks1にオペレータ($O=)はないか?
? DXST! ; DXでないか?
#Mov $$A="@!R2$C" ; Remarks2($C=)を$$Aに代入
? Space "!R2$C" ; Remarks2にコンテスト($C=)はないか?
? Space! "!R1$D" ; Remarks1にアワード記述($D=)はあるか?
? Potbl ; 移動局であるか?
? DXST! ; DXでないか?
#Mov $$A="@/!PT !R1$D" ; 移動エリア Remarks1($D=)を$$Aに代入
? Space "!R2$C" ; Remarks2にコンテスト($C=)はないか?
? Space! "!R1$O" ; Remarks1にオペレータ($O=)はあるか?
? Space "!R1$D" ; Remarks1にアワード記述($D=)はないか?
? Potbl ; 移動局であるか?
? DXST! ; DXでないか?
#Mov $$A="@/!PT !JC op:!R1$Oサン"
; 移動エリア JCC/G Remarks1($O=)を$$Aに代入
? Space "!R2$C" ; Remarks2にコンテスト($C=)はないか?
? Space "!R1$O" ; Remarks1にオペレータ($O=)はないか?
? Space "!R1$D" ; Remarks1にアワード記述($D=)はないか?
? Potbl ; 移動局であるか?
? DXST! ; DXでないか?
#Mov $$A="@/!PT !QT" ; 移動局エリア QTHを$$Aに代入
? Space "!R2$C" ; Remarks2にコンテスト($C=)はないか?
? Space! "!R1$O" ; Remarks1にオペレータ($O=)はあるか?
? Space "!R1$D" ; Remarks1にアワード記述($D=)はないか?
? Potbl! ; 移動局でないか?
? DXST! ; DXでないか?
#Mov $$A="op:!R1$Oサン" ; Remarks1($O=)を$$Aに代入

#FontColor=0 ; 文字色(黒)
? Space! "!$$A" コメント!$$Aはあるか?
? DXST ; DXであるか?
#Print $$X+720$$W+2, "!$$A" ; DX向けコメント!$$Aを印字

#FontName="MS Pゴシック"; 日本語記述のフォント
#FontSize=8 ; 文字の大きさ(小さ目)
? Space! "!$$A" Jコメント!$$Aはあるか?
? DXST! ; DXでないか?
#Print $$X+720$$W+2, "!$$A" ; JA向けコメント!$$Aを印字

#LineS 100x808080 ; 行間の横罫の色指定
#LineX $$X$$W+351160 ; 行間の横罫を印字
#Mov $$W=$$W+40 ; 印字位置を1行分だけ下へ移動
#Mov $$U=$$U-1 ; 最大行数までの残りの行数


次回からメインの定義に戻りますが、残すは今までQSOデータから蓄積した情報をコメントに活かす作業です。