アマチュア無線コンテストの zLog令和版 を M1 Mac + Wine CrossOver で動かす

先程上手くいったので詳細は後ほど書きますが、表題の通りの動かし方ができるようになりました。

  • brew の wine-crossover を利用する
  • 実行時には wine64 を利用する。
  • ~/.wine/dosdevice/ にシリアルポートへの symbolic linkを作成する
  • Retina Mode (High DPI) は不便


Wine Crossover のインストール

Wine は homebrew でインストールしました。

brew tap gcenx/wine
brew install --cask --no-quarantine wine-crossover
brew install winetricks

そして日本語フォントに対応させるために winetricksを使って設定します。

WINE=wine64 winetricks fakejapanese

その後には Wine の実行環境を作るためにも winecfg あたりを動かしておいてください。

wine64 winecfg

M1 Mac, Wine, zLog令和版とは

今回利用する部材の M1 Mac, Wine, zLog令和版 について紹介します。

M1 Mac と読んでいるのは 2020年に登場したARMのCPUを搭載したMacのことを指しています。最近ではM2のMacも出ていますね。最近までMacでもWindowsなどで使っているIntelのCPUを使っていたのですが、昨今のiPhone/iPadでの実績もあってかMacでもARMのCPUを使ったものを出してきた具合です。 CPUの種類が違うため、今までのIntel CPU用に作られたプログラムは基本的にはそのままでは動きません。Intel CPU で実行するMacOS用のアプリケーションや実行可能ファイルはRosetta Stoneなどの技術を使って ARM CPUで動かす仕組みは入っていますが、完璧に再現されているわけでもないです。 ということで、今までは比較的簡単にWindowsのアプリをMacで動かせていたのですが、CPUが変わったこともあり制約が増えた次第です。 今回は64Bit版のWindowsのバイナリならばARMでも動くことがわかったので、この組み合わせを利用しています。

Wine と読んでいるものは、Windowsの実行ファイル (EXE やDLL など)を他のOSでも実行できるようにする互換レイヤーを提供するプログラムです。 https://www.winehq.org/ MacでWindowsのアプリケーションを動かす場合には、Parallels などの仮想環境を使うか、このWineを使ってMacのアプリのように動かすか、の2種類があります。 Wineの互換レイヤーを使うと、Windowsの実行ファイルのプロセスがMacのプロセス(アプリ)であるかのようなフリをして動作します。 今回は互換レイヤーの方法を用いて Windowsアプリを実行しています。

zLog 令和版 (zlog.org) は、アマチュア無線のコンテスト(競争)用のソフトウェアです。コンテストでは決められた時間や条件の範囲で無線交信の無線局数などを多く稼ぐ競技で、交信記録から点数計算するゲームとなっています。 交信記録を行うソフトウェアにはいくつかあります。有名なところでは、N1MM, CTESTWIN, zLog などが、有名ではないですが 私が時々使う Mac の RumLogNG など、があります。

日本国内のコンテストの場合は点数計算や出力するログファイルの都合もあり、日本で開発されたCTESTWINを使うことが多かったです。 今回、久しぶりに M1 Mac で Parallels を使って Windows 11 を入れて、そこにCTESTWINをインストールしたところ、ボタンの日本語文字列が表示されない不具合に遭遇しました。この際なので他のコンテスト用ソフトウェアを使ってみようと思い、最近開発が活発な zLog令和版 を使ってみた次第です。

Zlog令和版のインストール

https://github.com/jr8ppg/zLog/release あたりから最新の64bit版をダウンロードしてきます。Zipで解凍したものを ~/.wine/drive_c/zlog/ に入れておきます。

あとは起動するだけです。

wine64 c:\\zlog\\zlog.exe
M1 Mac で Wine Crossover を使って zLog令和版


Wine からシリアルポートを使う方法

Wineからシリアルポートも使えれば、Rig controlやCW Keyerも使えることとなり完璧なのに、と思いながら調べてみました。

結論としては、 /dev/tty.* で出てくるシリアルポートのデバイスファイルへの symbolic link を ~/.wine/dosdevice/ の中に com1 , com2 などの名前で作ればよい、とのことでした。

例えば ICOM IC-705 をUSB接続した場合には、添付の画像のように /dev/tty.usbmodem14201 , /dev/tty.usbmodem14203 といった character device file ができます。



これに対して symbolic link を貼ればよいです。

ln -s /dev/tty.usbmodem14201 ~/.wine/dosdevice/com1
ln -s /dev/tty.usbmodem14203 ~/.wine/dosdevice/com2

ICOM IC-705 の場合は先のデバイスIDとなっているシリアルポートはCI-Vでの Rig controlが行え、2番目のシリアルポートは RTSかDTSなどを使ったCW Keyerとして使える具合になっています。(USB-Serialのチップを2個も積んでいるのかと思うと豪華ですね)

MacとのUSBケーブルを抜き差ししたり、違うType-Cポートに繋いだりすると /dev のデバイスファイル名が変わるので、その都度 symbolic link を作り直していただければと思います。


コメント

このブログの人気の投稿

ICOM IC-7300 と RS-BA1 Version 2 でリモート操作

Windows 11 で Win10Pcap のアンインストール方法

大型特殊自動車免許を取った時の話。