【8bit機】CRTC,VDP,ALU,メモリマップ,MMU 専スレ

1ナイコンさん2008/09/14(日) 15:51:06
64KBの制約の中、各社様々な工夫を凝らした
VRAMのバンク切り替え,MMU管理,I/O空間配置, 専用GPU
高速化のための 直線補完、サイクルスチール、プレーン同時書き込み

当時のマシン(PC,FM,X1,MSX等)のメモリマップのあり方、アクセス方法の技術について語ろう

531ナイコンさん2018/02/16(金) 20:31:02.65
8ビットパソコンでもVRAMを標準で32KB/48KB積んでいる機種(X1,SMC-777等)は
16色パックドピクセル(2ドット1バイト)にする選択肢は無かったんだろうか

532ナイコンさん2018/02/20(火) 14:02:59.47
☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
――――――♪

533ナイコンさん2018/02/21(水) 02:00:45.07
>>518-519
検索するとVRAM 48KBみたいだけど32KBしかなかったって事ですか?

534ナイコンさん2018/02/23(金) 21:24:35.43
標準搭載RAMが96KB(構成としては64KB+16KB+16KB)で、グラフィック表示ONにすると
その内の48KBがVRAMとして用いられるようになっている。

16KBx2は普通にVRAM2プレーンとして扱えばいいので特に問題ではないが、もう1プレーン分
をメインRAM64KBの1部で兼用させたので問題となった。
S1のVRAMアクセスにはウェイトがかかるのだが、メインRAMの一部を共用したため標準搭載の
メインRAM全域のアクセスにまでウェイトがかかる事態となった。
恐らくROMアクセスにはウェイトが掛らないが、標準のDRAMアクセスにはウェイトが掛るという状態。
このため、BASICの実行速度は高速、なのにゲームの動作は鈍足という…なんだかなぁな話。

535ナイコンさん2018/02/28(水) 02:44:48.54
>>534
遅れましたが、ありがとうございます

メインRAMにウェイトがかかるけどBASICが高速なのは
メインRAMのアクセス頻度が少ないからでしょうか?

536ナイコンさん2018/03/01(木) 01:26:11.82
そういうことになっていると思います。

S1活用研究を見て書いてますが、ウェイトが掛るのはI/OとVRAM(とその巻き添えを
食らったメインRAM)の2か所の記載があるのみなので、その他の場所にはそこまでの
ペナルティは無いと考えています。
恐らくROMはノーウェイト、拡張RAMはリフレッシュに要するロスが発生する程度で
アクセスできるのだろうと思っています。

こういう事情なので、命令フェッチやワークエリアのアクセスにウェイトを食らいたくない
ゲームプログラムなんかは「要拡張RAM」として拡張RAM上で実行しているのではない
かと考えています。

537ナイコンさん2018/03/03(土) 10:09:35.35
>>536
ありがとうございます

538ナイコンさん2018/03/05(月) 18:32:10.90
CRTCのWiki見たら
リコーのRP5C16という、ファミコンのRP2C02とはまた違うのがあったみたいで
スペックを見ると
PCG,16色,合成可能,パックドピクセル,スムーススクロールなどなど
これを搭載したPCって出てたのかな

539ナイコンさん2018/05/03(木) 23:34:57.91
このスレでは、コモドールとかアタリのゲームパソコンの話題が出てこんな。かなり変態っぽくて、このスレにピッタリだと思うんだが。

540ナイコンさん2018/05/04(金) 01:04:47.87
どうぞ、お好きなように話題を出して下さいな。

≫コモドール、アタリ

541ナイコンさん2018/05/04(金) 01:53:29.57
>>540
ありがとう、連休明けにはATARI800XLが届くんで、何かネタ仕込んでみるわ

542ナイコンさん2018/05/04(金) 02:23:28.44
AMIGAは4096色使えることにはなっているものの、
任意の座標に4096色を自由に置けるってわけでは
ないみたいだな。

ビデオや静止画からの取り込み画像を表示させるだけ
ならこれでもいいかもしれないけれど、こういう制限を
意識しながら自分で絵を描くのはしんどそう。

少ないVRAMで多色表示を実現するための仕掛けだったらしいけど、
こんな面倒な制限から解放されるなら「増設のためのRAMくらい買うよ!」
と思った人も多かったんじゃないだろうか。

543sage2018/05/04(金) 07:15:05.02
>>542
HAMモードだね
Hold And Modifyの略、名前の通りRGBの一要素を変化させたりして多色表現を可能にした、
一種の簡易的な画像圧縮みたいな考え方だと思う

544sage2018/05/04(金) 07:20:47.72
>>541
ATARI 8bitは、カスタムチップのANTICが後のAmigaのAGNUSの祖先みたいな感じで面白い、なかなかに変態的。
ミサイルオブジェクト(スプライト)の考え方も独特。

個人的には当時、先進的だと感動した!

545ナイコンさん2018/05/04(金) 07:48:26.87
>>542
> 「増設のためのRAMくらい買うよ!」
当時のメモリーの価格を知らない人の言葉やね

546ナイコンさん2018/05/04(金) 13:00:22.36
メモリも高かったけどロジックはそれ以上に高価だったしなあ
特に80年代前半でアナログカラーパレットとかすぐ言い出すアホが居るけど
多色対応のDAC組むだけで厳しかったし
インデックスカラーで同時発色数を増やすとその分レジスタ(パレット)も増える訳で
カラー情報のレジスタなんてそれこそドットクロック毎に参照されまくるから、超高負荷つまり高発熱で…

547ナイコンさん2018/05/04(金) 13:20:09.32
>>546
ファミリーコンピューター…

548ナイコンさん2018/05/04(金) 15:56:42.69
>>547
だからファミコンはすごいよね、って話なんだけど、なんだろう反証とか論破とかのつもりなのかこれ。

549ナイコンさん2018/05/04(金) 15:58:39.02
馬鹿なやつが「メモリ(VRAM)さえ増やせばもっと色数増やせたはず」とか言うんだよな
色情報を格納するためにメモリはもちろん必要だが、それを制御するロジックのコストがわかってない系。

550ナイコンさん2018/05/04(金) 18:14:55.28
>>544
ATARI 8bitパソコンのテクニカルノート見てると、本当にこれが1978年の技術かよ!と驚かされるばかりだよ。うまく動いたら、また書き込むわ。

551ナイコンさん2018/05/04(金) 19:45:11.59
>>543
MSX2+の自然画モードの元ネタ?

552sage2018/05/04(金) 19:55:36.34
>>551
程度モノだけど、センスが似てるのは確か。
でもこれまで元ネタと言っちゃうのは誤解が大きくなる気がするw

553ナイコンさん2018/05/04(金) 21:00:31.91
FM-77AVかなにかにフルカラーモードがあったけど、あれはどうなん?
時期的には、AMIGAより後、MSX2より前だっけ?

554ナイコンさん2018/05/04(金) 21:33:06.46
X68は仕事でしか使ったことないけど、TVRAMなくても良かったとおもうよ。ゲームマシンかオタクのおもちゃなんだし、余計なもの載せずにビットマップでwindow系を動かす方がマニアは嬉しいはず。
あと、9938は時期や日本だということを考えると凄いVDPだった。あれで速度だけでも高速化していってくれればね。
ところで、FM-11より先に6829じゃなく独自のMMU採用したPCは日本に限らずあるのかな?

555ナイコンさん2018/05/04(金) 22:09:37.20
>>553
FM77AVの4096色は勿論のことAV40の26万色モードもMSX2+自然画モードみたいにRGB情報を数ドット単位に簡略化して輝度で色数を水増しした自然画モード等ではなく
1ドット単位にRGB情報を持つ4096色、26万色モードらしい
しかもパックドピクセルではなくビットプレーン方式なので凄まじい枚数のプレーンを操作しないといけないw

556ナイコンさん2018/05/04(金) 22:11:56.57
>>555
その反面
キャラの重ね合わせが他機種より楽になってるけど

557ナイコンさん2018/05/04(金) 22:15:11.52
>>554
X68のTVRAM(PC98のグラフィック画面と同じビットプレーン構造)はゲームでもよくスコア表示やステータス表示に使われてて便利
まぁX68は様々な画面が同時にいっぱい使えてBGもあるからBGでスコア表示してもいいんだけど
パターンRAMを節約したい場合BG使わない方がいいしね

558ナイコンさん2018/05/04(金) 22:40:39.47
MS-DOSならVRAMは640x400@16色で32KBプレーン×4バンク切り替えだと
UMBが広くなっていいな

559ナイコンさん2018/05/04(金) 23:15:06.15
>>554
>ところで、FM-11より先に6829じゃなく独自のMMU採用したPCは日本に限らずあるのかな?

GIMIX社のGMX 6809 CPUV Boardが該当するかと。
正確な時期は不明だがボード上には(C)1982と印字されているので
FM-11(1982年11月)とほぼ同時期か早かったと思われる。

560ナイコンさん2018/05/04(金) 23:19:11.07
85年から86年にかけてRAMの価格がガクっと下がったんだっけ?
AMIGAの時はまだ高価だったようだけど、翌86年秋にはVRAM128K
搭載のMSX2が2万円代で買えるようになったんだよね。

561ナイコンさん2018/05/05(土) 04:45:42.94
ゲルビーも640GBあれば十分って言ってたもんね
今その何倍あるか知ってる?

562ナイコンさん2018/05/05(土) 06:57:23.86
>>554
あの時代にビットマップのみだとプロセッサパワーが足りなさすぎ
日立の2050って言うワークステーションがビットマップのみで68010@16MHzでもスクロールがなみうってた

563ナイコンさん2018/05/05(土) 07:00:05.78
>>560
256kbitとか1MbitとかD-RAMの集積度がガンガン上がってた時代だし

564ナイコンさん2018/05/05(土) 09:39:18.63
>>560
そういえばV9938の設計上MAXの192KBのVRAM搭載したMSX2って発売されたっけ?

565ナイコンさん2018/05/05(土) 09:42:27.43
>>562
X68はグラフィックVRAMだけじゃなくテキストVRAMもビットマップだけどね
ハードウェアスクロールやラスターコピー機能があるから実用的な速度で文字スクロールするけど

566ナイコンさん2018/05/05(土) 12:52:07.09
>>564
聞いたことないなぁ。
もしあれば、screen5が6ページ、scrren7/8が3ページ持てるようになったのかも。
ビデオテロッパとしても使われたビクターのHC-95は、後期出荷版にMSX2なのに
9958が載ってるものがあるらしいけど、これはおそらく部品調達の都合。

それはともかく9958は横スクロールと自然画だけじゃなくて、パレット部分も改良して
VRAMも192Kが標準になっていれば、MSX2+はもっと評価されたかも。
512(640)x212(200) 64色二画面とか、256(320)x212(200) 4096色ニ画面とか
使えるようになっていたら、絶対買い換えたと思う。

567ナイコンさん2018/05/05(土) 12:58:19.01
>>566
V9958はグラフィックよりスプライトのパワーアップを行って欲しかったなぁ
MSX2+登場の1988年にMSX2と同じスプライト 16x16ドット(ライン毎16色中1色) 画面32個/ライン8個ってスペックはちょっと厳しすぎる
せめて倍に改良を加えて欲しかった

568sage2018/05/05(土) 15:56:30.85
>>566
確か、仕様上は表示用のメモリとしては使えなかったはずなので、バッファとして使えるだけ

V9938最大の欠点はCPUとの間のバスの貧弱さなので、出来るだけビデオメモリを増やしてCPUとの
やり取りを減らし、VRAM内だけで完結する機能、
つまりVDPコマンドの拡充が必須だった

ある意味、奇しくも現代PCのグラフィック周りと基本構造が同じなんだよねw

569ナイコンさん2018/05/05(土) 16:50:23.72
>>568
文字表示用にビットパターンのデータをパックドピクセルに変換して描画してくれるVDPコマンドとか欲しかったなぁ

570sage2018/05/05(土) 19:04:27.53
>>569
自分は兎に角スピードが欲しかったかな。
実際z80と同等程度かそれ以下の性能しか無かった。

でも、最近知ったんだけどアレは、VDPがというよりメモリこそが遅かったらしい。
帯域が表示の為のリードで精一杯で、ライトが厳しかったとか。

VRAM64KBの機種は256色表示も出来なかったそうな。本来なら1ページ分の容量があるのに。
何でも、128KB搭載すればRAMチップが倍乗るので、RAMチップAとBを交互にアクセスする事で実質の倍速、やっとで256色表示が出来る。
それくらいメモリアクセス帯域が狭かった。

結局は全て価格なんだよね、 MSXの価格帯で高速なRAMが載せれなかったわけだ。
スプライトも色々と希望はあったけど上記のような事情もあり、夢のまた夢ですよw

571ナイコンさん2018/05/05(土) 23:47:23.68
MSXに比べてPC88は、CPUとかメモリ容量とか外面だけ見ればだいたい同じなのに、価格がはるかに高かったのは、やっぱりそういう細かいスペックがちゃんとしてたせいなんかな。

572sage2018/05/06(日) 00:05:03.11
>>571
そうかもね。

8bit 64KBで可能な、拡張性まで含めたアーキテクチャとしては、スロットシステムを中心に据えた
MSXが極めて優れてたと思うけど。
自分も当時MSXユーザーだったけど、これは先進的だと感心した。

でもハードウェアは良くなく、やっぱ低コスト志向。
低速RAMに対応する為、CPUだってノーウェイトじゃなかったし(88はmk2SR位からノーウェイト
じゃないかな?)、VDPも低コスト向け。
3.58MHzなのにM1サイクルで1ウェイト入ると4クロック命令が5クロックで動く。事実上4/5倍の
速度で動く事になる。

このように色々と制限があった訳だけど、MSXは本当は実用PCになるはずだったのに、
ゲーム機扱いになっていったのが残念だった。

573ナイコンさん2018/05/06(日) 07:59:44.76
>>571
それにしたってPC88のグラフィック性能は酷すぎるけどね
8色で裏画面すらないなんて…

574ナイコンさん2018/05/06(日) 16:04:55.65
仮想VRAMと言う技術があってだな…

575ナイコンさん2018/05/06(日) 16:59:31.71
88ユーザーだった俺は、「カラー画面が1面しかないからティアリングの呪縛からは逃れられない」と悟っていたよ。

576ナイコンさん2018/05/06(日) 17:45:39.98
>>572
あんな解像度で実用PCはムリだろ。
テレビ前提、さらにRF入力さえ認めるようではやはりホビー用途しか。

577ナイコンさん2018/05/07(月) 18:24:32.47
>>576
それよなー
MSX信者はそんな簡単なことすら理解出来てない...当時から

578ナイコンさん2018/05/07(月) 18:31:56.59
>>577
ホビー需要が圧倒的でゲーム遊びたい&ゲーム作りたい需要が強かったのに
アスキーはとんちんかんなバージョンアップばかりでMSXは死滅した
1→2は結構いい感じだったのになぁ

579ナイコンさん2018/05/07(月) 18:47:59.54
やはりゲルビッツは正しかったんだ

580ナイコンさん2018/05/07(月) 19:46:33.59
文字色が1文字単位でなくて1画面単位だからな

581ナイコンさん2018/05/08(火) 04:09:47.71
V9938/9958で残念だったのは、スプライトの拡充よりも9938の段階で横スクロール対応しとけってのと、
ビットプレーン→パックドピクセル展開のVDPコマンド(平たく言えばビットプレーンで格納されているフォントパターンをVDPに食わせるだけで8ドット分描いてくれる機能)の不備。
全体的な遅さや16色BGの不備も残念と言えば残念だけど、
BGに関して言えば8ドット毎2色でもスプライトとBGでカラーパレットを別に持てればだいぶ違ったと思う。

9938の段階で横スクロールとBG/OBJ別パレット(32/512色)が実現していれば、表現力的にはファミコンに十分対抗できたと思うよ。
まあ10〜15万のパソコンでようやくファミコン並みですってどうなの、って話はあるが。
それはそれとして85年に256/512x224x16色と256x224x256色ビットマップというのは、かなり贅沢な仕様だった。
それだけに、本当にあと少しの配慮とトランジスタが足りてなかった>V9938

新着レスの表示
レスを投稿する