怪盗列車(旧・本館)

混ぜると危険!萌え鉄スタンドマンの断末魔の叫び
<< August 2019 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 >>

スポンサーサイト

一定期間更新がないため広告を表示しています

- | permalink | - | -
<< ZLOGのコンテストログをJARL形式に変換する | main | ZLOGのコンテストログをJARL形式に変換する(3) >>

ZLOGのコンテストログをJARL形式に変換する(2)

先にN88互換BASICでプログラムしたものがありますが、汎用性の高いHSP(Hot Soup Prosesser) v3.4に移植しました。
厳密には、HSPにはファイルの入出力はあれど、シーケンシャル入出力ではないため、メモリに展開する形にしています。そのため、現状で公開するプログラムは約5,000行程度までの変換となります。

HSP自体、方言が強い言語ではありますが、ワンチップマイコンにC言語でプログラムしてとりあえず動く程度のスキルがあれば使えると思います(※ポインタの知識がなくてもOKです)。また、EXE形式ファイルを出力できるのも魅力です。

(追記)
EXEファイルを公開しました。
このブログ右側にあります、「怪盗列車(別館)」のリンクより「ダウンロード」を選んでご覧ください。
--------

HSP v3.4用のスクリプト(プログラム)です。


; ZLOG2ELOG.hsp v1.00 by.JF1IIP
; ZLog em形式ファイルをJARL e-log(コンテストログ)形式に変換する

sdim buf,400000
buf=""
sdim dat,500
data=""
sdim A,500
A=""
F=0
L=0
fname=""

*file_load
dialog "em",16,"ZLog2Elog v1.00 変換するZLog emファイル"
if stat=0 : end
fname=getpath(refstr,1)
notesel buf
noteload refstr

*data_conv
notesel buf
L=noteinfo(0)
repeat L
noteget dat,cnt
if strmid(dat,0,1)="<" : F=0
if F=1 : goto *data_conv2
if strmid(dat,1,8)="LOGSHEET" : noteadd "",cnt,1
if strmid(dat,0,4)="Date" : F=1
if strmid(dat,0,4)="Date" : noteadd "DATE(JST) TIME BAND MODE CALLSIGN SENTNo RCVNo Multi PTS",cnt,1
continue
*data_conv2
A=strmid(dat,0,4)+"-"+strmid(dat,5,2)+"-"+strmid(dat,8,9)+strmid(dat,66,10)+strmid(dat,17,43)+" "+strmid(dat,76,4)
noteadd A,cnt,1
loop

*file_save
notesel buf
notesave fname+".elg"

end
アマチュア無線 | permalink | comments(0) | trackbacks(0)

スポンサーサイト

- | permalink | - | -

この記事に対するコメント

コメントする









この記事のトラックバックURL
http://sailors.jugem.jp/trackback/1820
この記事に対するトラックバック