武田と申します。
pbibtex と upbibtex で組込みの substring$ 関数の動作が異なります。substring$ は文字列の一部を抜き出す関数です。
例えば
"abcdef" #1 #2 substring$
であれば、文字列「abcdef」の1文字目から2文字分を抜き出します(つまり、"ab" を返します)。また、
"abcdef" #-1 #2 substring$
であれば、「abcdef」の最後の1文字目から2文字分を抜き出します("ef" を返します)。以下の文書の 6 ページに詳しい説明があります。
ftp://ftp.yzu.edu.tw/CTAN/biblio/pbibtex/base/jbtxhak.pdf
この substring$ 関数の引数として日本語の文字列を与えた場合に、pbibtex とupbibtex で結果が変わってしまいます。
例えば、pbibtex では
"あいうえお" #-1 #1 substring$
は「お」を返しますが、upbibtex では返ってくる文字列が文字化けしてしまいます。
もっと詳しい具体例を含んだファイルを添付しています。test_pbibtex.pdf が pbibtex を利用したケース、test_upbibtex.pdf が upbibtex を利用したケースです。run_bibtex.bat でコンパイルします。jplain_alt.bst は jplain.bst と同じですが、substring$ の動作を確認するための check.substring という関数を追加したものです。
私としては upbibtex で処理した場合でも、pbibtex と同じ出力になって欲しいです。
これが upbibtex の不具合なのか、それとも意図した動作なのかということも含め、どなたかこの問題についてわかる方はいらっしゃるでしょうか?