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

« 豊四季Tiny BASIC for Arduino STM32で日本語フォント利用対応中(4) | トップページ | ジャンク品のMSXの修理 その3 »

2018年12月13日 (木)

豊四季Tiny BASIC for Arduino STM32 をV0.87に更新しました

豊四季Tiny BASIC for Arduino STM32 をV0.87に更新しました。

 

公開サイト
・豊四季タイニーBASIC for Arduino STM32V0.87β
  https://github.com/Tamakichi/ttbasic_arduino_stm32

 

  テストが不十分でβ版です^^;

マニュアルの作成がまだまだ進まないのですが、とりあえすコマンドリファレンスを
V0.87対応に更新しました。

・「豊四季タイニーBASIC for Arduino STM32」 コマンドリファレンス(更新中)

 

 


V0.87の主な追加機能


・漢字フォント利用の対応(SDカード上のシフトJISコードフォントファイルを利用)
   - KANJI コマンドによる全角文字列の描画が出来る
   - SETKANJI コマンドで全角文字描画時のフォントサイス等の設定が出来る
   - KFONT コマンドによる、漢字フォントデータの取得が出来る

・内部フラッシュメモリのプログラム保存領域の直接書き換え対応
   - 仮想化ドレスPRG2 の追加
   - BANK コマンドの追加
   - FWRITE コマンドの追加、
   - BLOAD コマンドの機能強化でバイナリファイルに直接書き込みに対応

   この機能は少々危険ですが、プログラム保存領域4096バイト x 6本の領域を
   有効利用するために、データを配置して利用出来たら.. と思い追加しました。
   
   SDカード上のバイナリーファイルをBLOADコマンドでフラッシュメモリに
   読み込んだり出来ちゃいます。
   ファイルからちょっとした画像や文書データを読み込んで配置出来ます。

・バイナリファイル操作の機能強化
   - BLOADBSAVE コマンドで、ファイル内読み書き位置を指定可能にしました

   ちょっとしたレコードファイルの構造を実現できると思います。

・文字列比較関数の追加
   - STRCMP 関数を追加しました

・グラフィック描画関連のコマンド追加
   - GCOLOR GCLS コマンドの追加

・その他

 

   いくつかの不具合対応を行いました


ここで、あらためて補足ですが、

 

豊四季Tiny BASICのオリジナル版開発は私ではなく、鈴木氏です。

 

私は、オリジナル版をSTM32対応し、機能拡張しているのみです。
オリジナル版  https://github.com/vintagechips/ttbasic_arduino


今後の予定としては、機能追加はこのあたり迄として、
ドキュメントの充実、BASICプログラムの作成、基板作成を行っていこうと思っています。

 

 

 

 

« 豊四季Tiny BASIC for Arduino STM32で日本語フォント利用対応中(4) | トップページ | ジャンク品のMSXの修理 その3 »

日記・コラム・つぶやき」カテゴリの記事

arduino」カテゴリの記事

ARM」カテゴリの記事

STM32」カテゴリの記事

TinyBASIC」カテゴリの記事

コメント

TinyBASICの作り方に興味を持ち、いろいろ調べていったら、たま吉さんの機能拡張した豊四季タイニーBASICにたどり着きました。
機能拡張、素晴らしいですね大変参考になります。自分でもさらに機能追加しようと思い、STM32 V0.87b版をgithubからダウンロードしました。
開発環境はgithubに書かれていた通りホルダを作成して、arduino 1.8.16でコンパイルしたところ問題が発生したので質問させてください。(NTSC使用でコンパイル)
1.コンパイル時にbasic.ccpでstrnicmp()の関数ないと叱られます。strncmp()に変更してコンパイルを通して書込みましたが、これでは全て大文字で入力しなければならないため少し不便です。arduinoのバージョン又は設定の違いによるものなのでしょうか?
しかたなく、自分でstrnicmp()関数を作って使っています。
2.SD書込みやSD参照するとコンピュータが暴走します(LED(PC13)が点滅して終了しない)。フォルダにあるbinファイルを直接書き込むと問題なく動きます。
bin作成時のソースとライブラリとgithubにあるソースとライブラリに違いがあるように思えるのですが?
掲載して数年後の質問になりますが何卒よろしくお願い致します。

yujiさん

かなり放置をしてしまい、現状のコンパイラ、ライブラリの利用環境では支障をきたしているようです。
以前、arm-gccの大きなバージョンアップで、Arduino STM32のフォームでも少々問題が生じた議論がありました。
arm-gccの採用しているC/C++言語仕様のバージョンが上がったようですが、検証を行っていない状況です。

strnicmp()がエラーとなるのは、gccの変更で
strnicmp()が使えなくなったようです。代りにstrncasecmp()を使うと良いようです(未確認) 。

> bin作成時のソースとライブラリとgithubにあるソースとライブラリに違いがあるように思えるのですが?
違いがあるかは、微妙です。コンパイラの大幅変更の影響が大きいかもです。
開発&公開当時は、facebookのTinyBASICのグループで多くの方に検証していただき、動作することを確認しています。

時間が取れれば、現時点のgccや、Arduino STM32環境に対応したいです。

たま吉さん

バージョンアップによる支障了解しました。ありがとうございます。
strncasecmp()での動作確認okでした。
現時点での対応よろしくお願いいたします。

たま吉さん
バージョンアップによる支障とのことなので、ボードマネージーでArduino SAMD Boards (32-bit ARM Coetex -M0+)のバージョンを最新版(Ver 1.8.13)からVer 1.6.10に落とした所、無事SDの読書きができるようになりました。このバージョンで機能拡張していこうと思います。ありがとうございました。

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: 豊四季Tiny BASIC for Arduino STM32 をV0.87に更新しました:

« 豊四季Tiny BASIC for Arduino STM32で日本語フォント利用対応中(4) | トップページ | ジャンク品のMSXの修理 その3 »