r,a=mtGetUser();if(a&&a.is_authenticated)if(a.is_banned)r='このブログにコメントする権限を持っていません。m;a.is_author?(m=''+a.name+""):m=a.url?''+a.name+"":a.name,r='__NAME__としてサインインしています。r=e?'コメントするにはまずサインインしてください。':'コメントする前にサインインすることもできます。ROMエミュレータを使ってみるなんちゃってROMの動きを確実に確かめるために、なにかよいアプリケーションはないかと考えました。そこで、Joystick版のSDカードアダプタからの読み込みをすることにしました。いっても、Joystick版の場合、SPIの動作をすべてAY-3-8910のI/Oで実現する必要があるため、非常に多くのコードが必要になります。aといった具合に、愚直に実現すると8バイトもかかってしまいます。なんちゃってROMに許されたアドレス空間は、アドレス線の本数の制約により128バイト。先頭の4バイトはBIOSがROMの判別とジャンプアドレスを得るために必要なため、実際は124バイトしかありません。そこで、ファイルを読み込むのは最初からあきらめ(FATなんてとても入らない)、セクタ0を読み込むことにしました。セクタ0の最初の446バイトは、ブートアップのためのコードを格納する領域ですしね。それでも、電源ON->初期化->読み込みとあるため、結構大変です。リリース済みのドライバを見てみたら、398バイトもありました。それを削りに削りました。エラーチェックやらレジスタの使い回しやら、それはもう、あらゆる手を使って。なんとか124バイトの枠内に収めました。Z80変態プログラムで、できたものがこれです。これから先は変態プログラムです。よい子は見てはいけません。Z=0jr_boot_wait実際にはプログラムは122バイト(全体で126バイト)で済んでいます。タイムアウト判定を省略しているので、正常にSDカードが挿さっていないと無限ループします。そのチェックは容量内ではできませんでした。セクタ0の最初の256バイトのみ読んでいます。言うほど変態チックじゃないかな?動かしてみると、正常に読んでいるため、20MHz動作なら問題ないみたいです。旅行記レビューニュースTinyCoreMovableTypePC-6001Aboutこのブログはクリエイティブ・コモンズでライセンスされています。