フォト
2025年2月
            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  
無料ブログはココログ

2025年2月11日 (火)

MSXのジョイスティックポートを使ったシリアル通信 (2)

以前、MSXJoy232を使ってジョイスティック端子を使って、シリアル接続を試してみたのですが、
送信のみしかできず、何とかならないかなぁと思っていたのですが、
最近、TINY野郎 mkIIさんが開発・公開している「ジョイジョイファイルシステム」なるものを知り、
早速試してみました。

参考文献
・MSXとWindowsで通信してみよう 「ジョイジョイファイルシステム」
 https://www.tiny-yarou.com/joyjoy_fs.html
・TINY野郎 mkIIさんのホームページ
 https://www.tiny-yarou.com

公開ページの情報を元に、
その辺に転がっていたメガドライブ用のゲームパッドと、MSX用ゲームカートリッジを使って
必要となるパーツを用意しました。
Pxl_20250205_010527854 Pxl_20250204_043307151_1
 Pxl_20250205_011656846
ROM化しなくても使えるのですが、利用の都度プログラムをロードして実行したり、
Windows側でサーバーアプリを起動して、
アプリをダウンロードしてインストールの操作が省略出来ます。ライターがあれば、簡単に焼けますしね...

Pxl_20250211_002900098

とりあえず接続後、Windows 11側でTeraTermを使って、動作確認してみました。
MSX側で、メッセージ送信プログラムを実行すると、
20250211092733

TeraTermにメッセージが表示されました。
20250211-092746

公開ツールの「ジョイジョイファイルサーバー」でパソコンからのメッセージ送信を試すと、

20250211-092126
MSX側で受信できました。
シリアル接続のデータ通信機能を拡張コマンドにて実装されており、
至れり尽くせりの機能です。
このような、素晴らしいツールを公開して頂き、感謝です(*´ω`*)

今後、色々と試してみたいと思います。

関連記事
MSXのジョイスティックポートを使ったシリアル通信 (1)
プログラマ XGecu TL866II Plus USB を入手しました
MSX用ゲームカートリッジのROM交換
MSX用ゲームカートリッジの中身

2025年2月 1日 (土)

gitでサブモジュールを作成する

豊四季タイニーBASIC for Arduino STM32 のプロジェクト見直し中です。

本プロジェクトにて使用しているいくつかのGitHubリポジトリを、
サブモジュールとして分離しました。
その際のメモです。

■ サブモジュールの追加
git submodule add コマンドを使用します。

・実際の作業
git submodule add https://github.com/Tamakichi/SD.git ./libraries/SD
git submodule add https://github.com/Tamakichi/Arduino_STM32.git ./hardware/Arduino_STM32
git submodule add https://github.com/Tamakichi/ArduinoSTM32_TNTSC.git ./libraries/TNTSC
git submodule add https://github.com/Tamakichi/ArduinoSTM32_PS2Keyboard.git ./libraries/PS2Keyboard
git submodule add https://github.com/Tamakichi/ArduinoSTM32_TVout.git ./libraries/TTVout
git submodule add https://github.com/Tamakichi/ArduinoSTM32_TFlash.git ./libraries/TFlash
git submodule add https://github.com/Tamakichi/Arduino-SJISKanjiFont-Library-SD.git ./libraries/SDSfonts
git submodule add https://github.com/Tamakichi/libBitmap.git ./libraries/libBitmap
git submodule add https://github.com/Tamakichi/Arduino-SD-Bitmap.git ./libraries/sdbitmap
git submodule add https://github.com/Tamakichi/TTVoutfont.git ./libraries/TTVoutfonts
git submodule add https://github.com/Tamakichi/mcurses.git ./libraries/mcurses
git submodule add https://github.com/Tamakichi/Adafruit_SH1106_STM32.git ./libraries/Adafruit_SH1106_STM32

■ サブモジュールを含むリポジトリのクローンの方法
下記の本体のみのクローンでは、サブモジュールのフォルダ内は空の状態です。
git clone -b for_inport_submodules https://github.com/Tamakichi/ttbasic_arduino_stm32.git
※ 上記はブランチ for_inport_submodules のクローン

サブモジュールを含めてクローンする場合は、
git clone -b for_inport_submodules --recursive https://github.com/Tamakichi/ttbasic_arduino_stm32.git

とします。

または、本体だけのクローンに、サブモジュールを後からクローンする場合
git clone -b for_inport_submodules https://github.com/Tamakichi/ttbasic_arduino_stm32.git
cd ttbasic_arduino_stm32
git submodule init
git submodule update --recursive

■参考文献
git - 7.11 Git のさまざまなツール - サブモジュール
Qiita - git clone の際に submodule の clone を忘れたときの対処法

2025年1月31日 (金)

焼き芋ちゃんカレンダー、ポチリました(*´ω`*)

「保護団体 ねこのて」さんの保護猫 「焼き芋ちゃん」カレンダー」ゲットしました(*´ω`*)
茶とらねこ好きには、たまりません(*´ω`*)

Pxl_20250131_011216468



2025年1月23日 (木)

Arduino IDE+Arduino STM32環境で指定と異なるgccが使われてしまう

Windows 11のArduino IDE 1.8.21/2.3.4ともに発生した現象です。
ここしばらくはまってしまいました。その対策のメモです。
(あくまでも、個人的な調査で保証のないた対応方法です)

Arduino STM32(Roger氏版)では、ツールチェーンの定義があいまいで、
ARM系の別のボート用パッケージ(Arduuino Uno R4など) をインストールしたりすると、
STM32のスケッチのコンパイル時に別のツールチェーンにてコンパイルされてしまうようです。

20250123-181415

上の例ではSTM32環境では、arm-none-eabi-gcc 4.8.3-2014q1を利用していたのですが、
Arduino Uno R4のボード用のパッケージをインストールすると
arm-none-eabi-gcc-7-2017q4(gcc 7.2.1)が使われてしまっています。

調べると、Arduino STM32のボード関連の設定のhardware\Arduino_STM32\STM32F1\platform.txt
ツールチェーンの設定と思われる個所が、
 compiler.path={runtime.tools.arm-none-eabi-gcc.path}/bin/

となっていて、これだと指定があいまいのようです。
  C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\arm-none-eabi-gcc\
ある複数のツールチェーン環境がある場合(下の画像)には、
20250123-182340

別のツールチェーンが選択されてしまうようです。
arm-none-eabi-gcc フォルダにツールチェーン環境が複数あると、フォルダ名の降順で選択されるのかな?
試しに、7-2017q4フォルダを一時的にゴミ箱に移動してコンパイルしたところ、
4.8.3-2014q1 の方を利用してくれました。

対策として、hardware\Arduino_STM32\STM32F1\platform.txt の compiler.path
 compiler.path={runtime.tools.arm-none-eabi-gcc-4.8.3-2014q1.path}/bin/

とき修正することで、4.8.3-2014q1 の方を利用してくれました。
platform.txtの修正部分(抜粋)

      ・・・・・
# compiler variables
# ----------------------
#compiler.path={runtime.tools.arm-none-eabi-gcc.path}/bin/
compiler.path={runtime.tools.arm-none-eabi-gcc-4.8.3-2014q1.path}/bin/
compiler.c.cmd=arm-none-eabi-gcc
      ・・・・・

 

 






ちなみにArduino Uno R4の場合、
\hardware\renesas_uno\1.3.2\boards.txt にツールチェーンの設定がしてあるようで、

      ・・・・・
minima.name=Arduino UNO R4 Minima
minima.build.core=arduino
minima.build.crossprefix=arm-none-eabi-
minima.build.compiler_path={runtime.tools.arm-none-eabi-gcc-7-2017q4.path}/bin/
      ・・・・・

 

 





となっていて、曖昧なく設定されているようです。
Arduino_Core_STM32の方も見てみましたが、曖昧なく設定されていました。

ArduinoのSTM32環境は、Roger氏版のメンテナンスがいまいちになってきており、
そろそろCore版の方に切り替えた方が良さそうですね。

2025年1月20日 (月)

Windows環境不要かも..

Zorin OSをインスタグラムして使っているのですが、意外と快適です。
もう、個人利用ではWindows不要ですね〜
長きに渡って使っていたマイクロソフト365 サブスクリプションも
今回の値上げを受け、次回の更新は行わないことにしました。

よく考えたら、代替え環境はいくらでもあるので使う必要ないですね〜

«Zorin OSでArduino Uno互換機(CH340)が認識しない