くろょろぐ

はてダからはてブロに移行済み

6502系

去年だったか一昨年だったか、つい衝動買いしてしまったWDCのマイコン。なぜかDigiKeyでは扱っていなくて、Mouserで購入したもの。以前から6502の16ビット拡張版である65816を入手したいと常々思っていたら、6502系はWDCで引き継いでCMOS版のW65C02S/W65C816Sを製造販売していて(ご時世というか、IP版もあるみたい)、ついに購入したというわけ。WDCではW65C02S/W65C816SをコアにしたシングルチップマイコンW65C134S/W65C265Sも作って売っている。
というわけでうっかり、これら4つのMPU/MCUチップを購入、ついでに周辺チップのW65C22S(VIA)と、W65C51N(ACIA)もついでに入手。ブレッドボードで使えるようにとほとんどDIP版を購入。ただMCUだけはDIP版がないので、PLCC版を入手した。DIPとPLCCの他にQFP版も製造されている。65C51は68系のACIAにボーレートジェネレータを内蔵したようなチップだけど、ちょっと制約が多くて使いづらいチップだったかも…。ちなみにチップ名末尾の"S"と"N"は入出力インターフェースがそれぞれCMOSレベル/NMOSレベルであることを意味している。N版は電源電圧5Vのみ対応、S版は2V~5Vの広い電圧範囲で使える。詳しくはデータシート参照の事。
ところで、WDCのページではW65C134Sは最大で8MHz動作という事になっているけど、パッケージの刻印を見る限り、W65C02S/W65C816S同様に最大14MHzで動作するっぽい。ちなみにW65C265Sは最大8MHz動作で、ちょっと残念。
二つのMCU、W65C134SとW65C265Sは、最近のマイコンに比べると少し控え目(アナログ系が全くと言っていいほどない)だけど、パラレルI/O、シリアルI/O、カウンタタイマー、クロックジェネレータ、そして小容量のRAMとROMが統合されている。ROMは残念ながら今流行りのFlashではなくマスクROMなので、オリジナルのコードをROMに入れるにはメーカーに特注するしかない。代わりにデフォルトでは内蔵のUARTをターミナルに接続して使用する簡易モニタープログラムが入っている(ソースも全て公開されている)。そのせいかどうか、MCUには端子設定でI/Oポートをいくつか犠牲にして内蔵MPUのバスラインを引き出すという昔ながらの方法をとる事ができる。なので、オリジナルのコードは外部バス上に自前のROMをつなぐなどすればいいという事らしい(ここも、小ピンのI2C/SPIシリアルROMでブートするという最近の流行りとは違う)。バスラインは本当にそのまま引き出されているので、MPUを止めて外からチップ内のI/Oにアクセスする事すら可能。まぁ、用途はDMAなんだろうけど。DMAコントローラは内蔵されてないけどね。面白い事に、65816は40ピンのパッケージにおさめるために24本のアドレスのうち、最上位の8本はデータバスとマルチプレックスするのに、それをコアにしたW65C265Sではマルチプレックスなしで24本全部を一度に引き出せる。
あ、ちなみに65816は16ビットMPUだけど、データバスは8ビットしかないので、16ビットデータの転送は8ビットデータバスを2サイクルかけて転送してる。

パブー

ひさしぶりにブクログのパブーを覗いてみたら、なんかすごく寂しくなっていた。
やはり、一度はサービス終了を宣言してしまった事が尾を引いているのだろうか…。本や作家の発見がしづらくなっていて、なんかなげやりな感じ。書籍の検索はできるけど、本に出合う楽しみはなくなったように思える。以前はジャンルで探す事もできたのに…。Kindleに直接送信できるとマニュアルには書いてあるし、そのための設定もできるけど、書籍ページにKindleへ送信するリンクがなかったり。マークダウンの仕様が変わり、以前の仕様で書かれた本の変換にも不備があるように思える。
登録ユーザーの数や本の数も表示されなくなっているので、きっとユーザー離れが進んでいるのだろう…。電子書籍の販売プラットフォームとしてはよくできていたサービスだと思っていたので、さびれていくのは残念な気がする。

(追記)前回の記事: Pubooがなくなる - くろょろぐ

AppleIIふたたび

かなり以前(2005年頃かな)、MacOS用に書いたAppleIIエミュレータ
FireOrgan/CEEMACをもう一度見たいというただそれだけのために始めた事だけど、俺の事なので相変わらず難航しているんだけども。
MacOS用をCarbon/MacOSX用に書きなおしてそのままほったらかしになってたのを、DxLib/Windows10用に書きなおした。久しぶりに会えてうれしいよ!

さてこれとは別にやはり途中でほったらかしにしてたAppleIIのモニタの解析を再開してCMTインターフェースの仕様を調べてみた。
勘違いもあるかもしれないが、概ね以下の通り。

  • スペース2KHz/マーク1KHzのFSK
  • ビット値に関係なく、常に1cycle/bit
    • したがって、ボーレートは平均で1500ボーという事になる。
  • MSBファーストでバイト境界なし
    • スタートビットやストップビットの類は無く、nバイトあれば8nビットを連続送出する
  • データフォーマットは以下のよう
    1. リーダー部(マーク約8000サイクル)
    2. スタートビット(スペース1サイクル)
    3. データ(バイト数×8サイクル)
    4. チェックバイト(8サイクル)
  • データ部からチェックバイトまでの全てのEXORが$FFになれば正常終了

と、一般的な調歩同期シリアルとは全く正反対の構成。

Pubooがなくなる

個人向けの電子書籍作成頒布販売プラットフォーム「ブクログパブー」が今秋に閉店だそうです。残念です。プロフィールからリンク外しました。

(追記)その後別会社に引き継がれましたが…→ パブー - くろょろぐ