ORANGE pico・ORANGE BASIC の Q&A


ORANGE pico の由来は?

正式な由来は公開されていませんが、

公開元が PicoSoft(ピコソフト)なので、pico が付いた名称を検討し、

ORANGE pico にたどり着いた事が予測されます。

 

オレンジペコ・Orange Pekoe は紅茶の分類(リーフグレード)の一種です。

略称は OP です。これが ORANGE pico でも略称になってきています。


ORANGE pico と IchigoJam の違いは?

BASIC プログラミング言語で動作する小さなパソコンという事で

共通しているところがいくつかがあります。
スペックでの違いは次のとおりです。(2017年9月現在)

  ORANGE pico IchigoJam
発表・公開 2015年12月

2014年4月

一般発売開始 2016年4月

2014年7月 (旧プリント基板)

種類 type S・E・A・C・iC・D・
モニター版・Orangino
他にも種類増加予定

IchigoJam U・旧プリント基板・
ブレッドボードなど、互換品あり
公開当初はユニバーサル基板など

価格 1382円〜2138円

1620円・2160円 (IchigoJam U)

販売場所 公式ネットショップ

全国店舗・ネットショップ

FB グループ 参加人数約 250 人

参加人数約 2000 人

キーボード

USB (要 PS/2 対応)

type D は PS/2 非対応使用可

PS/2 (変換アダプタで USB 可)
テキスト出力 40×25 32×24 (旧バージョン 36×27)
PCG

&h00〜&hff のほぼ全て

#E0〜#FF の 32 文字のみ
漢字出力 JIS 第一・第ニ水準内蔵
グラフィック画面へ出力可能
なし
文字列 文字列変数あり 1.2 より文字列対応
グラフィック

機能内蔵 320×200 モノクロ

仮想グラフィック 64×48 モノクロ
拡張できる
グラフィック

カラー TFT 液晶モジュール
320×240・240×320 フルカラー

マルチメディアボード PanCake
80×45 16 色
音声出力 コンポジット端子 or JP2・BEEP

圧電サウンダ・PLAY/BEEP

PanCake 4重和音

汎用入出力

シリアル

汎用 I/O 9 ピン

シリアル・I2C
IN×4+BTN / OUT×6+LED
プログラム容量 約 8KB 1KB
EEPROM 必須 最大 512k・8 プログラム 拡張 最大 1024k・128 プログラム
OS ORANGE BASIC IchigoJam BASIC
CPU PIC32MX・LPC1114 LPC1114
周波数 48MHz 48MHz

標準機能だけでいうと、漢字出力、標準でグラフィック対応など、

IchigoJam よりも高性能な部分が多くなります。

一方 IchigoJam は先行して発売されていて、
すでに全国の店舗と多数のネットで発売され、利用者も多くいらっしゃいます。

 

ORANGE pico の Facebook グループ はほとんどの人が

IchigoJam でも活動している方のように見られます。
 

周辺機器は IchigoJam が USB-シリアル でファームウェアの更新が可能なのに対し、

ORANGE pico は PICkit3 など、専用機器を別途入手する必要があります。

一方で、IchigoJam がグラフィック機能を持たず(仮想グラフィックはあります)
別途マルチディアボード PanCake を使用する必要があります。

この辺は一長一短があります。

 

なお、ポート型のパソコンとしては Raspberry Pi も有名ですが、

OS をインストールして使用する前提であり、用途・使用者層が異なります。


パーツを揃えて互換機を作成して問題ありませんか?

問題ありません。その前提でモニター版の回路図が公開されていて、
ファームフェアを入れる事で、動作する事が可能です。

Facebook グループ では 実際に互換機を作成し動作させている方 がいらっしゃいます。


ORANGE pico 各 type の ORANGE BASIC は同じものですか?

CPU は通常 PIC32MX170F256B が採用されています。

type D のサブ CPU は PIC32MX270F256B です。(170 ではなく 270 を採用)

PIC32MX170F256B はオレンジピコ公式ショップで単体を扱っています。 

公開当初は PIC32MX150F128B も使用されていましたが、
最近のファームウェアでは動作できなくなっているかもしれません。
 

開発中の ORANGE pico type iC は LPC1114 を採用します。

こちらはファームウェアが別になります。


ORANGE pico type S は type D・モニター版 より端子が多いのですが?

ORANGE pico (モニター版) の JP9 が type S では JP1 と JP2 に分かれています。

そのうち JP1 はカラー TFT 液晶モジュールなどの接続です。

残りは JP2 に割り当てられています。

 

type S で増えているのは GND、SOUND、VDD、PORT 100・101 端子です。

モニター版 では音声出力も映像同様単体のコンポジット端子になっています。

PORT 100・101 端子は水晶発振子で用いていた端子が

ファームウェアの更新で不要になったために割り当てられています。

モニター版では CPU 周辺の端子などを使用できます。

 

下の項目も参照して下さい。


ORANGE pico type S には音声出力がないのですか?

ORANGE pico type S にはコンポジットの音声出力端子が存在しません。

type S 構成を極力少なくしてありますが、
学校などの学習向けの提供という事であえて音を出さない前提にしているようです。

 

JP2 端子 5 ピンに SOUND 出力されています。8 番ピンが GND です。
必要な場合はここから接続して下さい。


ORANGE pico type E・C・iC に電源・ビデオ出力・キーボード端子も存在しないのですが……

ORANGE pico type E・C・iC は
ピンソケット・ピンヘッダを付ける端子しか用意されていません。

USB-シリアルモジュールから電源を供給し

他のパソコンなどからターミナルソフトを用いてリモート操作する前提になっています。

 

ORANGE pico type E の大きさは 2.2 インチカラー液晶モジュールと同じで、

モジュールを表面に重ねて使用する事ができます。


ORANGE pico type iC は IchigoJam のファームウェアが動作しますか?

運営者が IchicoJam のファームウェアで動作する事を確認しています。

 

ビデオ出力はないため、通常はシリアルでの使用です。
基板に付いている EEPROM も使用する事ができます。
ただし ORANGE pico の基板仕様上 32k〜512k を使用して下さい。


ORANGE pico を組み立てたのですが、電源を入れても何も表示されません

モニター特典で提供されている ORANGE pico の一部は

CPU にファームウェアが入っていない状態となっています。

もしこれで入手した場合は、まず CPU へファームウェアを入れる必要があります。

基本的に PICkit 3 が必要となります。

 

カラー液晶モジュールを使用している場合、こちらにテキスト表示は行われません。


電源が入らなくなりました

正常に使えていたのに、電源が入らなくなった場合はいくつか考えられます。

 

EEPROM を外した経験がある場合は、EEPROM を逆に挿している可能性があります。

 

電源供給方法を変えている場合は、電源を戻すなど
電源供給を変える事で動作するかもしれません。

 

電源 LED が光ってるのにビデオ信号出力されていない場合は

電源供給の影響以外に spitft コマンドでカラー液晶 TFT モジュール出力に

設定している場合があります。spitft 0 を実行して下さい。

 

これらも正常と思われる場合は、各パーツ・半田部分をご確認下さい。


ビデオ出力画面が縦長に表示されるのですが……

ORANGE pico は 16:9 の画面で

出力する前提で製作されています。

そのため古いテレビなど、
4:3 で使用している場合は

縦長表示になります。

 

画面キャプチャを行っている場合や
16:9 対応モニタの場合は

16:9 出力に設定して下さい。

キャプチャした画像が 4:3 になる場合、
横のサイズを 1.2 倍にして下さい。

例えば 640×480 の場合は 864×480 に画像のサイズを修正すると
縦横比がちょうど良い大きさになります。

 

なお、現在 ORANGE pico で採用されているフォントは 4:3 で表示しても良いように
フォントを 6×7 メインの横長に製作してあります。


キーボードを入力しても反応しません・異なる表示が表示されます

記号が異なる場合は、日本語キーボード・英語キーボードの違いによるものです。
config コマンドで変更できます。キーボード設定は再起動が発生します。
config 0,0 で日本語 JIS キーボード、config 0,1 で英語 US キーボードとなります。

0.97 以前は代わりに kbset コマンドになっています。

 

残念ながらすべてのキーボードで動作するわけではありません。

キーボードの種類によって問題が発生する事があります。

公式サイトに動作確認されているキーボードの記載があります。

 

新品の USB 接続キーボードは PS/2 非対応です。この場合は動作しません。

PS/2 アダプタが付いている USB 接続キーボードだと動作する可能性が高いです。

 

type S はキーボードが USB 端子しかありませんが、この条件は同じです。

 

type D で PS/2 に対応していない USB キーボードを使用する場合は、

PS/2 側ではなく、USB メモリを接続する USB 端子を使用します。

USB メモリとキーボード両方使用したい場合は USB ハブを経由して下さい。

サブ CPU を使用するため、中央下の JP6 および JP7 は
左(1-2 ショート)にする必要があります。

 

USB-シリアル経由で発生している場合、
0.97 以降でデフォルトになったスクリーンエディタではシリアル出力されません。

config 3,0(0.98 は mode 0)でラインエディタ動作にして下さい。

その他通信速度などの設定を確認して下さい。

macOS の場合は macOS を再起動すると改善する場合があります。


ORANGE BASIC の操作が使いにくいです。当時のパソコンみたいな操作にできますか?

0.87 よりスクリーンエディターが搭載されています。
mode 1 として下さい。(リセットされます)

これで当時のパソコンに近い操作性になります。

 

0.97 よりこの設定がデフォルトになっています。
0.98 よりコマンドは mode から config に変更されています。


テンキーを押しても数字が入力できません。

ORANGE BASIC ではテンキーが Num Lock オフの割り当てになっています。

つまり、カーソルなどの操作になっています。


EEPROM に保存したプログラムが読み込めません

ファームウェアを更新しましたか? その場合は読み込めなくなる場合があります。

EEPROM の保存形式は次のバージョンで異なります。

  • 0.01〜0.33
  • 0.34〜0.36
  • 0.37〜

これらの異なる保存形式で保存されたプログラム・データは読み出す事できません。
 

まれに I2C の通信が失敗するなど、EEPROM へ保存されていない場合があります。

save・mwrite を行った後 files で保存されているかご確認下さい。


任意の I2C アクセスは対応していますか?

ファームウェア 0.54 より i2c2〜 コマンドが追加され、

I2C デバイスの任意アクセスに対応しています。

 

PIC32MX の CPU では、SDA が 6 番ピン、SCL が 7 番ピンです。

CPU 周りから端子を得る必要があるでしょう。
または EEPROM の端子を使うのも手です。

 

EEPROM が標準装備で、抵抗は EEPROM 経由で付いているため、

直接デバイスを接続して動作可能でしょう。

EEPROM と同じ ID の場合、EEPROM に影響がある事にご注意下さい。


カラー TFT 液晶モジュールが 1 ピン接続されていないのですが……

これで正常です。(右画像は type E)

液晶モジュールの 9 番ピンを接続せず、

1〜8 番ピンを接続する状態になります。

 

type S の JP1、type E の JP3、

type D・モニター版 の JP9、

それぞれ 1 番ピン側を合わせて

8 ピンを接続するようにして下さい。

 

type D・モニター版 では

9 ピン接続した状態でも使用できますが、
その場合は PORT 4 端子が塞がります。


カラー TFT 液晶モジュールを接続しましたが、全く表示されません

config 2,1 と入力して下さい。カラー液晶モジュールへの出力に変化します。

(0.97 まで spitft コマンド。この時 ORANGE pico は再起動します)

config 2,2〜4で縦方向や逆方向への表示も可能です。

この状態でもカラー液晶モジュールは真っ黒のままですが、

バックライトで液晶に変化があるので確認できます。

 

カラー液晶モジュール出力時は、ビデオ出力は行われなくなります。
そのためテキストの入出力は USB-シリアル 経由が必須となります。
ビデオ出力に戻す時は spitft 0 とします。

 

type E にはビデオ出力端子が存在しませんので、
常時 config 2,1〜4 のカラー液晶モジュール出力状態にしておいて良いでしょう。

「PicoSoft ORANGE pico E」の印字がある側を

カラー液晶モジュールの下にする場合は config 2,1 になります。


どうも動作がおかしいです

現在開発途上ですので、想定外の動作は多いと思われます。

 

コマンドによってバージョンによる対応・非対応があります。

コマンド一覧 の各コマンドに記載しているバージョンを確認して下さい。

また、一部バージョンでコマンドの不具合(バグ)も見られます。

ファームウェアが古いバージョンでしたら、最新版に更新して下さい。

例えば次の問題はファームウェアの更新によって改善されます。

  • プログラム1行の文字数 80〜90 文字を超えると表示がおかしくなる
  • 文字列変数に入っている文字数が 80〜90 文字を超えると表示がおかしくなる
  • 文字列に \x00 を含む場合にフォント処理などで意図しない動作が発生する
  • コードとして存在しないシフト JIS コードを入れると再起動する
  • cls 1・cls 2 が動作せず、テキスト・グラフィック共にクリアされる
  • カラー TFT 液晶の gprint で左右が反転されて表示される
  • print のみで何も動作しない(改行しない)
  • input で入力しても変数に入らない
  • Esc・Ctrl+C 中断時 OK が表示される位置が右にずれる
  • 範囲指定の横スクロールが動作しない
  • 長いプログラムが 4k バイトで入らなくなる
  • cursor 1 をしているのにカーソルが表示されない
  • chain を行ってもプログラムが実行されない
  • autoexec 1 にしてもプログラムが実行されずエラーになる

最新版でも動作がおかしい場合は Facebook グループ へ投稿するか、

または PicoSoft へお問い合わせを行って下さい。

ORANGE pico モニター版を 公式サイト から入手している場合は、

入手時のメールアドレスへお問い合わせを行って構いません。


ネットに公開されているプログラムを ORANGE pico へ転送するには?

USB-シリアル の接続が必要です。周辺機器パーツ で紹介しています。

パソコンにはシリアル接続に対応したターミナルソフト等が必要です。

 

ターミナルソフト等を起動し、
プログラムをコピーし、ターミナルソフトへ貼り付けて下さい。

これでプログラムが ORANGE pico に入力された状態になります。

転送が終わったら list で一度確認すると良いでしょう。

 

テキストファイルの送信があれば、それも使用できる場合があります。


プログラムをネット上に公開するには?

USB-シリアル で受信したテキストを公開するのが無難です。

Facebook グループ での公開であれば、本文に貼り付ける事もできますし、

添付ファイルにテキストファイルを入れる事もできます。

本文に貼り付ける際、<3 の文字列は ♥(ハート) に変換されてしまうので、

< 3 と空白を入れたり、3>● と逆に記載して下さい。

 

このサイトの BASIC プログラム では GitHub Gist を使用しています。

同じようにテキストを貼り付けられるサービスを使用すると良いでしょう。

Pastebin.com が有名です。

 

他に list で表示した画面を撮影し公開する方法もあります。

 

仮想メモリのデータを公開するのはは容易ではなく、
プログラムで生成するよう配慮する必要があります。

mptr・mdata で入れるプログラムにするのが良いでしょう。


モニター版では CPU が 2 つ接続できるようになっているようですが……?

サブ CPU によって CPU 間通信を行い、次の機能を実現します。

  • USB メモリへのアクセス機能
  • I/O ポートの拡張

これは type D として製品化が検討されていて、
モニター版は type D 同等へ更新が可能となる予定です。

 

2017年夏に type D の開発が行われています。

ただし仕様変更が発生したため、モニタ版を type D 同等にする場合
ジャンパの追加が必要になる事が公開されています。


BASIC 以外のプログラミング言語が採用される予定はありますか?

当初 ORANGE pico は C 言語での実装を検討していたようですが、
開発途中で BASIC 言語に変更されたそうです。

このような経緯から後に C 言語など、他言語での実現もあるかもしれません。


ORANGE BASIC のフォントは何が使われていますか?

0.43 よりデフォルトで表示されるフォントは

ORANGE pico オリジナルのフォントになりました。

カナ・英数部は運営者(ふうせん Fu-sen.)、

cpoke で表示できるキャラクターは
花摘 さんがデザインしています。(通称 花摘フォント)

 

記号は 80 年代のパソコンで採用されていた形状に変更、

ORANGE BASIC は小文字もよく用いるため、横に広げて大きくしつつ、

4:3 の環境でも見やすいように 6×7 ドットをメインにしたデザインにしてあります。

 

このキャラクターを含めた TrueType フォントを運営者が公開しています。

 

TrueType フォント 関連ファイル・ツール内

JIS 第一・第二水準文字(漢字など)、

0.42 以前ではデフォルトフォントを含めて

美咲ゴシック の全角文字が使われています。

 

8×8 ドット日本語フォント「美咲フォント」

 

ただしデフォルトフォントの数字 0 は大文字 O と間違えやすい事から

斜体付に変更されています。

 

美咲フォントと合わせる事で、
ORANGE pico の全キャラクターをパソコンでも使用できます。


ロゴは何を表現したものですか?

オレンジの形をフラットデザインでシンプルに表現したものです。

 

オレンジピコにベーシック では、PicoSoft の確認・了承を得て

公式ロゴとそこから派生した画像をサイトに使用しています。