SDカード&ムービー技術情報 投稿者:markn 投稿日:2008/07/26(Sat) 05:53 No.2357 | |
|
| Re: SDカード&ムービー技術情報 markn - 2008/07/26(Sat) 05:54 No.2358 | |
|
| Re: SDカード&ムービー技術情報 bookworm - 2008/07/31(Thu) 16:53 No.2367 | |
|
| Re: SDカード&ムービー技術情報 Hashi - 2008/07/31(Thu) 22:34 No.2368 | |
|
|
bookwormさん: > コメント書こうとしたら弾かれてしまいました(;; 短時間での投稿や連続投稿や、URLがたくさん書かれていたり投稿ページを開いたまま凄く時間が経過した状態で書き込むとスパム扱いになります。 ご注意ください...
> MZ-700がアップを始めたようです。 ったく、また良からぬコトを企んでいるようですな。 けしからん、もっとやれ!
# 先日の「■最強の8bit機は… PC-6001vsMZ-700戦国時代の幕開けか!?」 # で、他のマシンユーザから「ウチを忘れてもらっちゃ困る!」という # コメントを期待していたのですが、無くてちょっと残念。(´・ω・`) |
| Re: SDカード&ムービー技術情報 markn - 2008/07/31(Thu) 23:46 No.2369 | |
|
|
> コメント書こうとしたら弾かれてしまいました(;;
すみません。Captchaの設定が不十分でコメントを受け付けなくなっていました。 直しました。今度は大丈夫だと思います。 コメントお待ちしてます。:-)
兄メカが流行の兆し...?? |
| Re: SDカード&ムービー技術情報 bookworm - 2008/08/01(Fri) 01:23 No.2370 | |
|
|
言葉足らずで申し訳ないです、万事解決しました。>Hashiさん
ストレージデバイスの存在は大きいですね。 ウチの88にも付けたいなぁ…。 |
| Re: SDカード&ムービー技術情報 西田 - 2008/08/01(Fri) 07:27 No.2371 | |
|
|
>ウチの88にも付けたいなぁ…。
多分、移植は簡単ですよ、ね、markn さん? 問題は、SD カードアダプタをとこに付けるかですが、プリンタポートにでも付けますか。出来ればカセットポン環境があれば、フロッピーを使わなくて良いので、より便利でしょうね。 |
| Re: SDカード&ムービー技術情報 Hashi - 2008/08/01(Fri) 22:16 No.2372 | |
|
|
今日は8月1日、PC-8001の日ですね。 そして、今月はP8/PC88月間だと、Hが付くハンドル名の人が言ってました。
兄メカ… |
| Re: SDカード&ムービー技術情報 武田 - 2008/08/02(Sat) 06:08 No.2373 | |
|
| Re: SDカード&ムービー技術情報 markn - 2008/08/02(Sat) 08:46 No.2374 | |
|
|
こんばんは。 別に攻撃したつもりはないのですが...(そもそもMZ vs. otherという構図すら知らなかった)。
.....挑戦と受け取ってよいのですか? そうなのですか? :-)
それにしても、コメントがないので一体設定がうまくいっているのかがわからないのが困ったものだ...(謎)。 |
| Re: SDカード&ムービー技術情報 bookworm - 2008/08/02(Sat) 14:01 No.2375 | |
|
|
SDCC(2)にコメントを付けたつもりなのですが承認待ちっぽいです。 消えていたらまた書きますorz
時分割タイリングはアリだろうなと思っていたのですが、MZ強敵すぎる…。 ソース拝見したらEMMがI/Oポートに付いているんですね。 2バイト転送で41クロックならINI/INDの方が速かったりしないのかなー。 |
| Re: SDカード&ムービー技術情報 markn - 2008/08/02(Sat) 16:57 No.2376 | |
|
|
デバッグにつき合わせてしまってすみません.
> SDCC(2)にコメントを付けたつもりなのですが承認待ちっぽいです。
ログにはポストの形跡がありませんでした. CAPTCHA設定を直したのが7/31 16:00 GMTごろなので、それまでのポストは蹴られてしまったようです. 匿名コメントはCAPTCHA認証(画像認証)さえ通れば承認なしで即時公開なのですが...
|
| Re: SDカード&ムービー技術情報 markn - 2008/08/03(Sun) 06:52 No.2377 | |
|
|
無事コメントが書き込まれているようで安心しました。ありがとうございます。
閑話休題。 bookwormさん: > 時分割タイリング
問題はフレームあたりの転送量ですね。MZはよく知りませんが、PC-6001の場合、アスペクト比が1:1のグラフィックモードは 64x48 semigraphic6 0.5kB 128x96 monochrome 1.5kB 128x96 4-color 3kB 256x192 monochrome 6kB となります。仮に128x96カラーとすると、1画面分のメモリブロック転送だけで約32msecかかります(LDIR、実効速度2MHzの場合)。理想的な場合でも約30fpsです。実際にはループなどのオーバヘッドがあるので、fps値はもっと低くなります。
関係ないですが、実機じゃないとあまり意味がないと思うのは私だけですか? 私はハード素人なので、自作ハードであっても実機で動くことに価値を感じます。
|
| Re: SDカード&ムービー技術情報 けんぞう - 2008/08/04(Mon) 23:44 No.2381 | |
|
|
あんまり技術的な裏づけが十分でないのですが(プログラミング能力がBASICどまりなので)、 mkII以降のmode5でSDカードが利用できるとした場合、 セミグラフィック文字の市松模様(&H25)を全面に敷き詰めて、アトリビュートだけをいじることで、タイリングによる多色表示(KAWさんのページにあるような)が1フレームあたり0.8kBで実現できます。 このときの最大発色数は77色です(背景カラーセットが1のとき)。 解像度が恐ろしく低い(40x20)ことに目をつぶれば、時分割タイリングをする必要はないですし、かえってP6mkIIの特長を生かした表示になるのではないかと思います。 もし、武田さんがMZ-700でやっているような、水平帰線期間中にさらにアトリビュートを操作することがmkIIでも可能なら、縦方向についてはさらに解像度が増やせる可能性もあります。 #そうは言っても、さすがに横方向が40しかないと何がなんだかわからないものになる可能性も高いですが……(^^;
|
| Re: SDカード&ムービー技術情報 武田 - 2008/08/05(Tue) 06:02 No.2382 | |
|
| Re: SDカード&ムービー技術情報 markn - 2008/08/05(Tue) 12:47 No.2383 | |
|
|
なるほどー. この技法は市松模様キャラクタを持たない初代PC-6001では難しいですね. セミグラフィックモードを駆使すれば64x48で近いことが可能なのですが、2x3ドット単位での色付けになるところが厳しいです.
スクリーンモード2についてはbookwormさんのほうがずっと詳しいのでお任せします...:-) |
| Re: SDカード&ムービー技術情報 bookworm - 2008/08/05(Tue) 21:10 No.2384 | |
|
|
キャラクタROMを引っこ抜いて差し替…という冗談はさておき。。。
1)モノクロ画像をディザで画質を上げる(エンコード側負担)ただし圧縮率に影響するかも 2)描画範囲を小さくしてフレームレートを上げる。 3)スクリーン4&コンポジット出力限定でにじみカラー利用
といった所をあれこれ考えていました。 セミグラは色のエンコードが難しそうですね。速度的にはセミグラ4の方がいいのかなぁ。 mkIIは遅そうですが色数は魅力ですね。
MZ…1bitPCMが思ったより聴けることに驚きました。 低レートでの平滑な音声再生は携帯電話会社なんかが技術もってそうな気がしますね。 |
| Re: SDカード&ムービー技術情報 markn - 2008/08/06(Wed) 07:49 No.2385 | |
|
|
すみません、釈迦に説法かとは思いますが...。
> 1)モノクロ画像をディザで画質を上げる(エンコード側負担)ただし圧縮率に影響するかも
RLEに関してはそれほど影響しません。というのは、モノクロ画像の圧縮率に貢献しているのは「全部白」とか「全部黒」とか、そういうデータが大部分だからです。フレーム差分に関しては多少影響ありますが、クリティカルではないと思います。
> 2)描画範囲を小さくしてフレームレートを上げる。
既に128x96という特殊モードを使ってますからねぇ。モノクロでこれ以上小さくするのはどうかと。武田さんのムービーを見て、如何に解像度の低さをカラーで補えるかを思い知らされましたし。 どちらかというと、128x96カラーでやりたいところです。T. MatsushimaさんのTiny Xeviousで有名ですが、私も20年以上前に同じ理由でこのモードでゲーム を作ったことがあるんですよ。悩みはエンコードです。カラーの割り当てが難しいのです。
> 3)スクリーン4&コンポジット出力限定でにじみカラー利用
まず、これは256x192でないと通用しないです(解像度が低いと綺麗に?にじまない)。それと、にじみカラーを計算に入れた上でのエンコードが必要ですね。
> セミグラは色のエンコードが難しそうですね。速度的にはセミグラ4の方がいいのかなぁ。
エンコーダはともかく、VRAMの大きさはセミグラ4も6も変わりありませんよね。4がバイトあたり1ビットだけ未使用ビットがありますが。ただ、セミグラ4のカラー指定は3ビットあるんですよね(セミグラ6は2ビット)。試したことがないのでわかりませんが、アトリビュート(ていうかMC6847)のCSSビットを変える効果があるのかな?
|
| Re: SDカード&ムービー技術情報 bookworm - 2008/08/07(Thu) 07:56 No.2386 | |
|
| Re: SDカード&ムービー技術情報 Hashi - 2008/08/08(Fri) 01:38 No.2387 | |
|
|
bookwormさん: ファイルがダウンロードできないッス。 もう消されました? |
| Re: SDカード&ムービー技術情報 Hashi - 2008/08/08(Fri) 01:43 No.2388 | |
|
|
Firefoxだと、リファラの関係?でジオシティーズのエラー画面に なってしまっていましたが、IEだとダウンロードできました。 …見えたー!! けっこうイケるじゃないですか。 次はKAWさんが何かやらかしてくれるような気がしないでもない気分。 (・∀・)ワクワク |
| Re: SDカード&ムービー技術情報 markn - 2008/08/08(Fri) 04:16 No.2389 | |
|
|
初代機でも動きましたョ。いい感じで動いてます。
ソースを見ましたが、VRAMアドレスとポートB0の値を見ると、8000〜を使ってるみたいですが、いいんですか? ldirで512バイト転送しているだけみたいなので、セミグラ6でも同じスピードでいけそうですね。 Loop2は ld bc, $00b0 ld de, $f2f4 Loop2: out (c), d out (c), e ; 必要に応じてもっと djnz Loop2 とするとより高速に切り替えられると思います。
これを試したときに知ったのですが。 いつの間にかPC-6001VWがアップデートしてたんですね。知らなかった...。 CPUを占有しまくりだったのが解消されたし、メガロムも対応してるし、とても快適です。
確かにこれだとSDカードアダプタのエミュレーションもしたくなるなぁ...。:)
|
| Re: SDカード&ムービー技術情報 markn - 2008/08/08(Fri) 04:18 No.2390 | |
|
|
すみません、説明不足。
> ソースを見ましたが、VRAMアドレスとポートB0の値を見ると、8000〜を使ってるみたいですが、いいんですか?
「つかいかた」にモード1とあったので...。
|
| Re: SDカード&ムービー技術情報 bookworm - 2008/08/08(Fri) 12:48 No.2391 | |
|
|
う、すみません。 Geocitiesの設定を知らず、見られないブラウザがあったとは > Hashiさん
動画を見つつ思ったのですが、ページ切り替えは VDG動作時点のみ反映されるのでしょうか。 だとしたら、しゃかりきに CPU がページ切り替えしていても意味が無いですね。 色が偏って見える道理だ…(^^; 1フレームの表裏を1/30秒間繰り返して次のフレームに移るのが理想なのですが。 うーむ、正確に1フレームを計測する方法は無いものでしょうか。 お知恵を拝借したいところです。
# SDカードからの転送を考慮すると別の問題が浮上するのですが、それはまた別件で。
動画サイトなどに上げた方が手軽で皆さんにも分かりやすいかとも思ったのですが 30fpsで128フレーム、つまり4秒ちょっとしかないのであっと言う間に終わってしまいます。 64x32という解像度もアイコン2個分なんですよね…。
多くのエミュレータ又は実機で試せるように静止画像版も作った方がよかったかも。 これは後でなんとかします。
セミグラ6はCSSを弄らないといけないので容量が倍になると思います。 8000H…そういえばそうでした。どうして動いているんだ(汗 |
| Re: SDカード&ムービー技術情報 markn - 2008/08/08(Fri) 14:43 No.2392 | |
|
|
1/30秒程度なら割り込みでしょうね。
私の場合はタイマ割り込みベクタを書き換えて、より高速に動くカウントルーチンをこんな感じで自作しています。 push hl ld hl, (#_time) inc hl ld (#_time), hl pop hl ei ret 実際にウェイトする場合はdurationに1/512sec単位のウェイトを入れておいて、他の必要な処理後に _wait_loop: ld hl, (#_time) ld de, (#_duration) or a sbc hl, de jr c, _wait_loop ld hl, #0 ld (#_time), hl てな感じです。
このへん、SDカードドライバの次バージョンと一緒にリリースしようと思っているのですが、滞っています。ごめんなさい。
|
| Re: SDカード&ムービー技術情報 KAW - 2008/08/09(Sat) 00:28 No.2393 | |
|
|
すっかり出遅れてしまいました...。
>次はKAWさんが何かやらかしてくれるような気がしないでもない気分。 40x20だったらどうなるだろう、とかやらかせば良いですか(^_^)? 表示プログラムよりむしろデータを作る方が面倒そうだ。
2画面で時分割タイリングをするなら、理論上2フレーム前の画面 との差分をとれば圧縮効率が良いんでしょうね。
|
| Re: SDカード&ムービー技術情報 Bernie - 2008/08/09(Sat) 21:06 No.2394 | |
|
|
> 1フレームの表裏を1/30秒間繰り返して次のフレームに移るのが理想なのですが。 > うーむ、正確に1フレームを計測する方法は無いものでしょうか。 厳密に測定してはいないのですが、確かSUB-CPUにSTICK取得を要求して割り込みが帰ってくるまでのタイミングがキッカリと同じ間隔だったと思います。
なので CALL 1061H を実行するだけで定間隔のウェイトが確保出来ますよ。
問題はその間隔がどれくらいの時間なのかという事ですが、P6VWでは コロニーオデッセイの中に入っているテニスゲーム(=ROMカートリッジ版のテニスゲーム)でラケットスイングが正常に出来る間隔を目安にしてベクタ返却タイミングを実装してあります。 まぁ、ただ単に垂直同期のタイミングに合せているだけなのですが…。
このテニスゲーム、これより短いタイミングでSTICK割込を返してしまうと割込ベクタを取りこぼして、スペースキーを押しっぱなしにも関わらず勝手にキーがリリースされてブンブンとラケットを振り回してしまうんですよね(^^;
P6/P6本の付属エミュレータでもこの辺が上手く動いていませんでした。
|
|