2019年2月18日月曜日

しまった!やっちまった。

無料のオンライン小説専門電子書籍となりはてているマイKindlePaperwhiteをスマホと一緒にベッドに放り投げたら表面に傷が逝って変に輝く点を作ってしまった。
画像では上からの光を反射していてよくわからないけどテーブルの長音文字の左の横向きの傷が暗いところで読むとちょっと気になるような光を漏らしている。e-inkの自然な光とは異質な感じなので気になって仕方がない。

あーあ、キンドル買うかなあ、ちょっと1万数千円は痛いよなあ

2019年2月16日土曜日

retroPCのベンチマークと比較

「はりせん」さんという方のサイトのどこからたどるのか不明なRetoroPC Galleryにasciiartベンチマークというページがありました。
私製姉妹サイトのarduinoでマンデルブローをキャラクタで描く記事と同じような感じなので大変興味深く見させていただきました。
(200327) http://haserin09.la.coocan.jp/asciiart.htmlにありました。

どうせなら先達に敬意を評して同じような繰り返し範囲にして同じ(ような)結果がエられるのを確認したいと思います。

結果は下図のようになりました。最終行に所要時間を示してます。約2秒ですね




















この2012msですが改行コードを含めて1行80文字x25行で描画量2000文字です。
転送レートが9600bps設定ですので、8bit+1bit(=stop bit)で送ると9600/9=1067文字/秒で
2000/1067=1874msは文字転送にかかる時間と考えても良いので転送レートを上げてみました。結果として19200と38400では倍ほどの差はなくて19200のとき1150ms、38400のとき1024msとなりました。したがって9600bpsではちょっとCPUが転送待ちをしていて19200bps程度まで上げれば転送レートなりの時間向上となりました。

cp/mをエミュレートするようなケースで転送を115200とかにしているのがあるけどボードは追いつくんだろうか?

2019年2月12日火曜日

arduinoをちょっと使って思ったこと

なんだか5年位放置してあったんだけどarduino使ってみたら面白かった。
  • IDEは他のを使ったことがあればほとんど迷わないくらいシンプル
  • よく使う機能がショートカットに割り振られてるので割とスピーディーに試せる
    (ctrl+U = スケッチをコンパイルして書き込む、とか ctrl+shift+m = シリアルモニタとか)
  • 言語仕様や使い方はC++って言うよりはC寄りに感じた。
    どうせ短いプログラムになることも多いのでグローバル変数もどんどん置くしあんまり細かく関数を分けない感じ。oop的にメソッドの恩恵に預かるのはライブラリーを使うときな感じ。
開発のスタイルとして全てをアセンブラで書くのはちょっとめんどくさいし時間もかかる。
かと言って全てを高級言語で書くとArduinoIDEを使ってATtiny2313とかを開発するときに
領域不足に陥りがちかもしれない。そんなときにプログラム中にasm命令でアセンブリ語のニーモニックが書けるのが実に嬉しい感じ。

あ、これってかつてturbo pascalで使えたinline文([ハンドアセンブルした]バイナリーの機械語を書ける)と同じなんだって思った。(ms-dosのtpでは使えたけどcp/mはどうだったか記憶なし)
cp/mでturbopascal使えたらやりたいことの代表的なものの1つなのでarduino触ってたら満足しちゃうことも出てくるのかな?


2019年2月5日火曜日

ハードウェアへのリハビリ?Arduinoを出してきた

もう何年も前に購入して放置してあったArduinoUnoを出してきた。
現物を久しぶりに見たら・・・ちっさ!
ArduinoとピンコンパチのMbedのこの写真を見ていたらもうすこし大きそう。

(この画像は秋月のサイトからDLしてます。まずければ関係者の方教えて下さい。)

そしてHP dv6のLinux MintにArduinoのIDEをインストールした。

最初はボードに書き込みができなくて焦ったのだがこちらの情報を見て解決、多謝。

あまり大げさなことはできないけどcp/mハードウェアエミュなどの練習としてしばらくハマって見ようと思います。

2019年2月2日土曜日

デジモノ SBC+AVRでたどりたい系譜

電子工作野郎としての方向性は大きく分けて2つ、アナログ(アンプとか)とデジタルだ。

で、色々やりたいとしても時間を始め様々なリソースが有限なので絞る必要がある

デジタル系は以下のような感じで楽しみたい

  • 最初はリハビリとしてのArduino UNO・・手持ちですぐに使えるので・・・
  • 次はZ80を使わないcp/mのエミュ・・
    最右翼は cpm8266(Z80-CP/M 2.2 emulator running on ESP8266)
    ハードとしては秋月のESP-WROOM-02開発ボード@1,280でいけるか?
    当然ながら並行してソフトウェアエミュでも動作を検証しつつすすめる
  • avr+ブレッドボード ここでArduinoを利用していたことが伏線として生きる
    つまりAVRの書き込み機としてarduinoを利用する
  • RaspberryPi 3 B+ もはやスタンドアロンPCとして使えないかを見る
  • NaoPi NEO2 + NAS kit 組み込みの例として高機能NASを構築する
  • Z80-MBC2 やはり8bitCPU最後のロマンは実機でOS:cp/m

なんで超特価? Raspberry Pi Zero v1.3

スイッチサイエンスでRaspberry Pi Zero v1.3が超特価だ。なんと@648 ただし一人1個だけ

スペックは
  • CPU:ARM 1GHz(これってMPDにしているRaspberryPi 1 Bよりも速い(700MHz)
  • RAM:512MB
  • maicroSD + microUSB
  • RasPiZeroを使うのに必要な周辺パーツの図
  • 初代と比べて徹底的な違いはLAN接続のEthernet端子とGPIBが無いこと
    これってcp/mエミュ機としてみたらそんなに悪くないよな
  • あこがれのフリスクケースが使えるみたい。これに入れてHDMIでLCDつけて
    キーボードとマウスを無線でつけたらスタンドアロンのNESエミュとかで遊べそう
    (重い処理はシングルコアではきついと思う)
  • 無線LANを乗っけたRaspberry Pi Zero Wもあってこちらは@1,296
最近amazonで見るとこの手のボードとかめっちゃ高値なんだが・・なんで?

あと、こんなの見つけた「HD ピコ レーザー プロジェクター」だとラズ3とつなげるみたい
値段は税込み@17,820 これが安いかどうかは??

2019年1月29日火曜日

あこがれの Z80とcp/m (aspire to Z80 and cp/m)

1976年に発売され8bitCPUでは初めての本格的なOSとなったcp/m

そのころは英語のDDJ(Dr. Dobb's Journal)でTinyBASICが紹介され始めた頃で実際に動く姿を見ることはまるでなかった。

自分もTK-80BSをあえてTK-80と組み合わせずに自作のZ80のcpuボードを組み合わせて動かすのが精一杯だった。(手配線が下手くそで連続使用するとすぐにストールしたものだ)
Z80は最初の8bitCPUインテルの8008の改良型の8080の上位互換でかなり力の入ったCPUだった。それが動くマイコン(personal computerの当時の呼び方)を持つのがステータスだった。

より安定した環境を求めてNECから発表されたPC-8001を名古屋で予約をして年を越した1980初頭に手に入れるのがやっとでIOとしてはRF変調器を介してTVにコンソール画面を写し、カセットに600bpsでプログラムを記録するのがせいぜいだった。Z80の存在は知っていたけど当時としては非常に高価なFDDを必要としたためなかなか実機を手に入れることができなかった。
※当時の友人がPC8001の拡張ボードとFDD2基のセットを親に買ってもらったのがたいそう羨ましかった記憶がある。

そんなz80やcp/mであるがそれから40年以上の月日を経た今日、ワンコイン(100円)で入手できるatmega88を使ってz80や周辺をエミュレートさせてcp/mを動かすといった試みも多くある。
そもそもcp/mやその上で動く開発系ソフトやゲームが無料でネットで自由にダウンロードして使える時代になったのである。その他にもwindowsでcp/mマシンをエミュレートしたりcp/mのコマンドラインをエミュレートするフリーソフトも多く存在する。

8bitのz80や8080について調べることは趣味としてもPCの構造に対する総計を深めたり過去の簡素な環境でソフトを作成するための工夫に触れたりする良い機会になると思う。



dosvaxj3が更新されていた。

 最近、エミュレータ系をあまり触っていなかったのだけど久しぶりに見てみたらタイトルのようにdosvaxj3が更新されていた。 on emulatorでセルフにcなどのソースを書いて実行するのに母艦側の特定のフォルダをドライブとしてマウント出来たり普通に母艦のimeで漢字が入力でき...