NEC PC-8801mkIISR

去年の暮れに88SRを入手したはいいけれど、肝心のキーボードがないので電源をいれてN-88BASICが起動する様を眺めることしかできなかったのだが、今回やっとキーボードを入手したのでちょっと紹介したい。

入手したキーボードはmkII用だった。PC-8801用のキーボードにはコネクタの種類が3種類あり、mkIISRにつかえるのはmkII/SR/TR/FR/MR用のもの。

RsDSC00722

 

88のキーボードとしてはかなり美品の部類だろう。比較対象がないので黄ばみがどの程度なのかは判断しかねるが、どうなんだろう。

通常キーはすべてALPS社製のメカニカルスイッチで、打鍵はしっかりとしたクリック感があり、音はカチカチと大きい。

CAPSキー、カナキーはトグルスイッチである。

 

次に本体だが、DRIVE Aの動作がかなりあやしい。FDDはTEAC製、ダイレクトドライブである。

DRIVE Bは元気なようなので、少々のメンテナンスの後、ドライブを入れ替えた。

 

RsDSC00605

 

上面カバーを開くとこんな感じ。

まずはそれぞれのドライブのネジを外す。DRIVE Bは左側、DRIVE Aは右側だけ外せばいい。

次に真ん中の固定金具のネジを外す。

ネジは固定金具の底面の2つ、ネジを外したら固定金具を上に引き抜く。これでFDDは解放される。RsDSC00712

 

あとは電源ケーブルなどを外しつつ全面に引っ張りだせばいい。

 

RsDSC00713

 

 

ドライブを入れ替えて、固定し直しておわり。

 

これで88SRの実機環境がとりあえず整った。

mkII用のキーボードをSRに差すと、L字プラグ用のくぼみの向きが違うので収まりが悪いが、まぁ使用する上での問題はない。

DSC00714

 

 

とりあえずイースIIを起動。

影の部分の色がおかしいのは撮影の問題と思われる。たぶん。

こいつ対応は31KHzのみの液晶モニタだが、15KHzの88でも24.8KHzの98でもOUT OF RANGEといいつつ自動調整してちゃんと画面うつしてくれるな。

RsDSC00719

 

WordPressが応答しなくなった

昨晩ブログデザインを弄っていたらWordPressが応答しなくなった。

結局原因はプラグインだったのだが、それに全く気づかず解決しようとあさっての方向に向かっていた。

 

まずPHPコードを実験しつつ貼っていたのでPHPあたりがおかしくなったのかと思い

service httpd restart

するも回復せず。つづいてPHP -vなどを打ち込んでみるとなんかモジュールが見つからないとエラーを吐く。

これは結果的に動作には特に関係ないエラーだったし、すぐに解決できたように思われたのだが、WordPressの管理画面を再度開くと「お使いのサーバーの PHP では WordPress に必要な MySQL 拡張を利用できないようです。」などと表示された。

 

もうこうなったらしかたがないと思い、PHPを再インストール…

yum remove php-*

を実行後

yum install php php-mysql php-mcrypt

で再インストール。

その後設定ファイルを書き直した。

 

が、まだ解決しない。原因が違うのだからあたりまえである。PHPを再インストールする前にphpinfo()でも開けばよかったのだけどね。

 

そして別なディレクトリにWordPressをインストールしてみる。これは問題なく動く。

じゃあ原因はなんだ。あ、もしかしてプラグイン…。

というわけでwordpress/wp-content/pluginsフォルダをリネーム。WordPressにアクセス。

 

なんだ開くじゃん…。そして画面上部にはキャッシュプラグインがエラーを吐いたとのメッセージが。

pluginsフォルダから該当プラグインを抜いてフォルダ名を直したら元通りになった。

いやいや焦ったよ。

無駄に疲れてしまって、明日は月曜なのになぁと思ったら問題発生からちょうど1時間。あれ。

 

それにしてもなぜいきなりPHPを疑ったのかが謎。まだまだ勉強不足だなぁ。

HSP3 横スクロールシューティング

先日はHSPで星もどきを多重スクロールするプログラムについて紹介しましたが、ああいうのはいかにも横シューの背景であるのでレーザーを撃てる自機を作ってみます。

とりあえず、以下のプログラムを実行してみてください。なお、今回は敵のプログラム部分は抜いてあります。

 

動作イメージがわかったところで各セクションについて説明を加えていきます。

各命令についてはHSPの命令リファレンスなどを参照してください。

 

 

//ショットフラグ用の変数

・この配列変数には、「レーザーが画面に表示されているか」のフラグが格納されます。

・上のサンプルでは配列が10ですので、画面上には同時に10本のレーザーが表示できます。

 

//画面初期化

・次フレーム描画のためにここで画面を一度まっさらな状態にしています。

 

//キー入力判定

・getkey及びstick命令でキー入力を取得しています。

・stick命令は同時押し判定が必要な時に便利です。

 

//ショットフラグを立てる

・スペースキーが押された場合にショットフラグを立てます。配列の若い方が優先されます。

・shotLimitで1フレーム中にフラグを立てられる数を1つに制限しています。

 

//自機移動

・キー入力に基づいて自機を移動します。サンプルでは上下左右ともに移動速度は4ドット/フレームです。

 

//レーザー描画

・ショットフラグに基づいてレーザーを描画します。

・サンプルではlaserLength(レーザー長)は100です。自機の前に突然長さ100のレーザーが現れるのは不自然ですから、64行目で自機からレーザーが伸びる処理をしています。レーザー長が100に達するまではレーザーの始点は自機に追従します。

・レーザーは10ドット/1フレームの速度で発射されます。

・65行目は実際にline命令でレーザーを描画しています。

・66行目ではlaserLengthが100に達したレーザーを画面右にスクロールしています。レーザ長や速度を変更する場合は、64行目のlaserLengthとlaserPosXに数値を一致させなければなりません。

・67行目では、画面外に出たレーザーのショットフラグを解除(下ろす)しています。

 

//背景スクロール

前述の通り、前回のプログラムを使用しています。

 

//画面に反映

・試してもらえばわかりますが、redraw部分がないと画面がちらつきます。

 

 

ざっと説明させてもらいましたが、不明な点などはコメント欄にお寄せいただければ可能な限りお答えいたします。

それでは今回はこの辺で。

 

 

MSX2修理 SONY HB-F1XD

今回のブツはこちら

RsDSC00029

 

SONY HB-F1XD MSX2

人々のヒットビットというやつだ。ダイレクトドライブFDDのおかげで発売から25年たった今でも2DDフロッピーが読める。

だがこいつテレビにつなぐとこうなる。

MSX2-A

ゲームを起動してもこのありさま。twinbee

 

どうしたものか。VDPの故障を疑ったが、某MSXスレでVDP以降ではないかというアドバイスをいただけたのでパターンを追ってみた。

 

RsDSC00065

これがメインボード。映像出力系は右上である。

パターンを追って気づいたのだが、VDPからはRGBしか結線されてない。取り出されたRGB出力は、VDPの右横にある基板で処理されるようで、コンポジット出力はそこで作られているらしい。

MSX2のVDPであるV9938のデータシートを見ると、21pinがVIDEO OUTとなっており、VDPから直接コンポジット出力を取り出せるようだ。

試しに21pinと適当なGNDを拾って映像を出力してみた。

 

MSX2-D

 

うおおおおおおおおおおおおおお!!!!

ちゃんと表示されるではないか!

根本的に直すならばVDPの横の基板を外して修理しなければならないが、どうせコンポジットしか使わないので21pinから映像を取り出すことにした。

 

RsDSC00067

 

さすがにVDPとRCA端子直結は怖いのでアンプ回路を挟む。

なお、このアンプ回路は一般的なもので、ファミコンのAV化を紹介しているページだとだいたい載ってると思う。

ちなみにこのアンプ回路はてきとうに組んだので色味がよろしくない。あまり参考にしないこと。VCCは近くのコントローラ端子からとった。ATARI仕様の9pinコントローラ端子では5pinが5V+になっている。

 

完璧ではないが、とりあえず乱れがなくなったのでいいことにしよう。

nemesisまとめ

 

 

HSP3基礎編 ループ命令

今回はHSPネタです。

大昔に自分が書いたコードを見ていたら、「星の多重スクロール」をさせるプログラムがありました。星といってもpsetで点を打って動かしてるだけです。横スクロールシューティングの背景でよくあるアレです。

 

仕様としては、3レイヤーで各20個の点が移動します。

続きを読む

aswRvrt.sysで止まるはなし

久しぶりの更新。

先日WindowsUpdate関連のエラーで、PCがまともに立ち上がらなくなり、ほかにもいろいろゴミがたまっていたので思い切って再インストールを行った。

OSはWindows7 Professional x64。

ところが昨日から起動後5分以内に停止、ブルースクリーンを繰り返すように。

画面には0x000000F4。調べてみたところ、メモリ・ハードディスクを疑えという記述が見られたのでとりあえずメモリチェックを実施。しかし問題は発見できない。

私のノートPCはHDDをSSDに換装して使っているので、SSDの故障とすればなかなか痛い出費を覚悟していたのだが、原因は意外なところだった。

 

データ救出だけでもと思い、起動オプションでセーフモードを選択するも、ドライバなどが呼び込まれていくところで停止する。

何回やっても「aswRvrt.sys」でとまるので、こりゃ1CDlinuxかなと思いつつ

このファイルはなんじゃらほいと調べると、どうやらAvast!Antivirus関連らしい。確かにPCにはAvastが入っている。

ならばと思いWindowsを通常起動、速攻でAvast!のアンインストールを試みた。

成功した結果、システムは停止しなくなり、ブルスクも解消。よかったよかった。

 

 

それにしてもPCを守るためのセキュリティソフトがPCを破壊してどうするんだと…

 

Netwalkerを買ってみた SHARP PC-Z1

タブレットなどの普及で今更感がすごい製品だが、中古で安くなっていたので買ってみた。

 

IMG_2384

 

まぁシャープの小型電子機器の箱はだいたいこんな感じのイメージ。

 

中身。

IMG_2385

 

え、これほんとに中古ですか。といった具合で、とても状態はいい。梱包材、付属品も完璧。

 

電源投入。非常に液晶画面はきれいである。5インチで1024×600ドットあるのでピクセルは細かいのだが、文字や画像は鮮明。

液晶は自社製品だろうか。さすが液晶のシャープ。視野角も問題なし。

IMG_2386

 

 

よく電子辞書サイズと言われる本機。実際に並べてみた。

左はSHARP Brain。WindowsCEベースのため、いろいろアプリケーションが動作することで有名だろうか。

印象ではBrainの方がスマートな印象を受ける。

 

IMG_2389

 

 

オーバークロックカーネルを導入してみた話などはまた後日。

 

 

Avast!とMactypeの相性問題

予算がなかなかまわらんので普段はPCのセキュリティはフリーのものですませてしまう。

現在使用しているのはAvast!バージョン8。ところがふとタスクトレイのアイコンを見ると停止している。

 

ウィンドウを開くと「登録されていません」などと表示されていた。どういうことだろうか。

登録してくださいもなにも、先月更新したので期限が切れているはずもなく、再インストールしてみたが一向に改善しない。

 

ググってみると、どうやらMacTypeと相性が悪いらしく、MacType側から「除外」してやらなければならないらしい。

なるほど。

 

その後MacTypeのプロセスマネージャからAvast!を除外してやると、正常に動作するようになった。

 

CASIO UI-7A USB MIDIインターフェース

 

IMG_2356

CASIOのUSB MIDIインターフェース。16×16チャンネルのごく一般的な仕様。

最近のMIDI機器にはUSBポートがついているのであまり出る幕はなさそうだが、常日頃からあったらいいなと思っていたのでハードオフで見つけたついでに買ってみた。

こういう機会がないと買わないしな。

サポートOSはWindows98/Me/2000/XPおよびMacintosh OS9.2又はMacOS 10.1.5以降。

 

 

そう。64bitWindowsなど完全にサポート外なのである。もちろんドライバーの供給もない。どうしたものだろうか。

分解して中身のチップの型番を~などと思っていたのだが、意外にもこの問題はあっさり解決できた。

 

なんだこいつ

http://www.m-audio.jp/products/jp_jp/Uno.html

これと同じじゃないですか。

 

 

というわけでM-AUDIOから供給されている64bit用のドライバをインストールして終わり。

デバイスマネージャから見るとCASIO UI-7AじゃなくてM-AUDIO UNOになっているけどなんの問題もない。気になる人はインストーラーからドライバ抜いてinfファイルでも書き換えたらいいんじゃないかと思います。

 

 

余談

IMG_2357

 

「Pentium MMX200kHZ以上」

 

 

おいおい

200kHZってなんだよ…

 

Server Internal Error 500に焦る

突然WordPressがServer Internal Errorで繋がらなくなった

わりと焦ったんだが、直前に何をしていたか考えた。

Contents.phpを弄ってた。

 

Apacheも正常のようだし原因はこいつしかない…

仕方ないのでSSHでサーバーに接続。contents.phpはどこにあるのか。

wordpress →wp-content→theme→TwentyTwelve(テーマ名)

ここにある。

vi contents.php

さっき弄った箇所を元に書き直す。上書き。

 

ブラウザに戻ってwww.eximradar.jpをリロードするとブログが表示された。

よかったよかった…