2012年3月16日金曜日

パソピアのV-RAM

今回は、パソピアのV-RAMについて備忘録

武田さんもいってますが、V-RAMのアドレス配置は変態的

一番左端1バイトは、色を指定するためのアトリビュートエリアで、1ライン81バイトの領域。
8ラインで1文字だが、V-RAMは0800h単位で跳び番。
こんな配置なので、07E9h~07FFhなど未使用部分があって、そこはアクセスしても何も起きない

例えば画面の一番左上8x8ドットの場合、
0001h
0801h
1001h
1801h
2001h
2801h
3001h
3801h
の8バイトにデータを書き込むことになる
書き込むデータは、スクリーンモードによって異なる。

Screen 0の場合
V-RAMには、アスキーコードを書き込む。色を指定するアトリビュートキャラクターは以下の通り
コード色
F8h黒
F9h青
FAh赤
FBh紫
FCh緑
FDh水色
FEh黄
FFh白
アトリビュートはライン単位で有効で、ラインの途中にアトリビュート・キャラクタがあると、それ以降の文字色が変化する

Screen 1/1.5の場合
8255-1のCポート(=0Ah)7bitで、V-RAMのデータタイプを指定
7bitデータタイプ書き込むデータ
0テキストScreen 0と同じように、アスキーコードを書き込む
1グラフィック1バイトで2ドット分の色を指定(1ドット分の色は4bitで指定)
Screen 1では1バイトで2ライン分の指定になり、Screen 1.5では1バイトで1ライン分の指定

Screen 2の場合
8255-1のCポート(=0Ah)7bitで、V-RAMのデータタイプを指定
7bitデータタイプ書き込むデータ
0テキストScreen 0と同じように、アスキーコードを書き込む
1グラフィック1バイトで8ドット分のパターンを指定。表示される色は単色で、そのラインのアトリビュートキャラクターに依存。

V-RAMを直接読み書きできるプログラムで試したところ、ライン単位でアトリビュートを指定できる。
色が飛んで見にくいが、実機でのScreen 2画面
アトリビュートキャラクターを書き込んだ8ドット分は抜けてしまうが、ラインの途中でも色を変更できる

Screen 1の場合は、2ライン単位で変化する

テキストとグラフィックが重なった場合、ライン単位でグラフィックかテキストが表示される

エミュレータも、この辺を対応して再現できるように



特に初代パソピアのゲームは、このV-RAM特性を活かしたゲームがあったりするので。

2012年3月15日木曜日

パソピアの画面モード

初代パソピアの画面モードについて備忘録

8255-1のAポート(=08h)5~7bitは、以下のようになっていて、
5bit80桁表示モードの設定
6bitグラフィックモードの設定
7bitファイングラフィックモードの設定

それぞれの組み合わせによって、以下のようなモードになる
5bit6bit7bitWidthScreenPixel
000360-
100800-
01036172 x 96
110801160 x 100
001362288 x 192
101802640 x 200
011361.572 x 192
111801.5160 x 200

Screen 2(ファイングラフィックモード)はドット単位での色付けができないので、コスモトラベラーなどのキャラクターゲームはScreen 1を使って、ドット単位の色付けをしてる。

Screen 1.5はマニュアルには記載されていないが、パソピアの内部構造(アスキー・テクニカル・バンク)に紹介されている。設定は、08ポートに0b11100000=224を出力
WIDTH 80:CLS:SCREEN 2:OUT 8,224
但しBASICのLINE命令は正しく座標計算できないので、PSETで描画する。
パソピアの内部構造に掲載されているサンプルを実行してみると、
ちゃんと160 x 200で、色でた。

エミュレータでもScreen 1.5を再現できるように対応。
武田さん、thxです。

#つか、このモード使ってるソフトはあるのか?

2012年3月14日水曜日

2001年宇宙の旅

既に2012年だが、、、2001年宇宙の旅(Tecno Soft)

オープニング。雰囲気が出てて、いいかんじ

ゲームの説明

 ゲーム中。HALの監視っつーやつが、めちゃくちゃ速くて。。

クリアーすると、ポット?が噴射されるので、XとYで位置合わせ。


ゲームオーバーは爆発。。


動画はこちら

パソピア7買った頃、2001年ってすごく遠い未来だった。
つか当時はノストラダムスの大予言とか読んで、惑星直列とか恐怖の大王とか2000年は来ないと思ってた

2012年3月13日火曜日

スーパースタートレック

今回もハドソン。パソピア版のスーパースタートレック
意外とメジャーなゲームだったようで、Wikipediaにも説明が。

んで、パソピア版のオープニングは、こんなかんじ
Screen 2のグラフィックもいいんだけど、個人的にはアルデバランのオープニングの方が好き。

長いけど、説明ページを全て







パソピアらしく、アトリビュートキャラクター使いまくりの説明。

ゲームの動画。こんなかんじ

キャラクターベースのシミュレーションゲーム?も、なかなか味わいがあってよろし。

2012年3月12日月曜日

アルデバラン

たまたまかもしれんが、自分が持ってる初代パソピアのゲームは、宇宙モノばかり。
今回は、ハドソンのアルデバラン。

ググってみると、MZ版やJR版もあるようで、意外とメジャーなゲームらしい。
SAPPOROの文字が悲しす。一時期はコンサドーレの胸スポとか、羽振りが良かった時代もあったのに

今回も、テープをデータレコーダーで再生、プチレコでWavファイルに録音。
エミュレータを起動して、一度「CLOAD」してWavファイルからプログラム読み込み、RAMPACに保存
CLOAD"ALD"
SAVE"ALD"
RAMPACに保存したあとは「RUN "ALD"」で起動。
オープニングは、なんといったらいいか、、、すんごくいい。。音も。。
ん? part 1? MZにはpart 2がある様子

ストーリーは目がチカチカして読みにくいが、、
要は、制限時間内に出来るだけ多くの研究員を助けて、防御壁を敷設すればよいらしい。
ゲーム中の画面は、こんなかんじ
スペードが研究員で、黄色が防御壁ね。

ゲームの動画

プチコンに移植された方がいるのね。DSでアルデバランができるって凄い。

今は無きハドソンもそうだったけど、プチコンとか初音ミクとか、札幌のソフト文化ってちょっと異色だなぁと感じる

2012年3月8日木曜日

コスモトラベラー

武田さんにエミュレータを修正してもらった(多謝)ので、早速コスモトラベラーで動作検証。

まずは、テープをデータレコーダーで再生、プチレコでWavファイルに録音。

せっかくのエミュレータ。毎回CLOADするよりも、RAM PACから高速起動するように。

エミュレータを起動して、一度「CLOAD」と「BLOAD#-1」で、Wavファイルからプログラム読み込み
BASICプログラム中の「BLOAD#-1」を「BLOAD」に変更してRAMPACに保存
SAVE"COSMOB"
BSAVE"COSMO",&HB300,&H1CFF
保存したあとは「RUN "COSMOB"」で起動できる。
CLOADより断然速い。

キー操作は、こんなかんじ

動画も。

2012年3月3日土曜日

パソピア7の分解掃除

まずは、フロントパネルを外す。特殊工具は必要なく、ドライバー1本でOK

電源とキーボード台?を外すと、マザーボードが出てくる

マザーボード裏はこんな感じ

CPUは、SHARP製のLH0080A。ソケット化されてるのね。

キーボードは、キートップを1つずつ外して拭き取り。
外したついでに、キースイッチに接点復活剤を流し込んでおく。

ケースも拭き取り、組み立て。
プラスチックの黄ばみだけはどうしようもない。。。

セブンはこんなに黄ばんでるのに、初代は色あせない。。
キートップもきれい。この差は?