アカウント名:
パスワード:
あれは、6809を2つでメインと入出力でやってた。
FM7/8で6809二個にしたのは、ビデオ回路の関係と、アドレス領域の問題から。
6809はダイナミックデバイスなんで、命令実行中のDMAは16クロックに一回CPUがバス権を強制的に取り戻す仕様。だから、VRAMリフレッシュ中はCPUを完全に停止させる必要が有った(HALT信号はCPUが現命令を完了するまでバスを開放しない)。VRAMアクセスフラグを有効にすると平均CPU速度が1/3に低下。これじゃ、メインには使えないよね。
ベーシックマスターレベル3は、VRAMをページモードで二回連続読み出しする事でCPUの空きサイクルを利用したけど、これはクロックが1MHzだから出来た話で、1.5MHzのサイクルスチールに耐えられるDRAMは当時無かった。(サイクルタイムが250nsになったのは256kbitからかな?)あと、ページモードで読んだデータを保持するラッチも良いのが無かったね。
しかも、UMAなレベル3は、16KBものVRAM領域のせいでディスクBASICのフリーエリアが7KBなんて情け無い状態になってたから、VRAMをメインCPUから追い出す事を選んだんだろう。ちなみに、FM7/8は、キーボードスキャンに4bitマイコンを使ってたりする。多分端末で実績のある方法なんだろう。画面内での一括更新も富士通端末の標準機能なんで、グラフィック端末にメインCPUをくっつけたのがFM8の実態かも知れない。
FM7/8系のぬるぬるしたキー入力の感じはやっぱ石カマしてたかー
# シューティングの発射がスペースじゃなくBreakキーだったりしたなあ(ほわわ~ん
キー入力周りに別CPUを使ってる8bitパソコンは、PC-6001(8049)とか、X1(8048)とか、結構いろいろありましたけど、だからといって特に問題はなかったですね。FM7/8のキー入力の問題は「キー入力をサブCPUが処理している」点ではなく、「キーアップ情報をメインCPUに返していない」(メインCPUからキーアップを検知できない)点でしょう。だから、2/4/6/8で移動操作のあと、5を押して止める、というUIになってしまうという…
だから、2/4/6/8で移動操作のあと、5を押して止める、というUIになってしまうという…
これが嫌で当時FM系でプログラミングするのは避けてたなあww MZ系、PC60,88,98系、そしてJR系に手を出したところでオシマイ _(:3 」∠)_
YAMAUCHIとか豆腐に指を突っ込む感触のキーボードとか懐かしいおもひで
PC-8001は画面表示のためのDMA止めたら倍ぐらいの速さになってたような。
MZ-80K/CはVRAMアクセスしてもちらつかないタイミングをソフトウェアでチェックしてたので、CPUの速度低下は無かった。V-SYNC無視して書き込むと画面がチラチラと…。
MZ-80B以降とかX1にはそんな問題は無かった。
PC-8001でのCRTCへのDMAは、確か30%程度しか喰ってなかった筈。でも、ソフトウェアタイマを使うには十分弊害で、結果、カセットI/Fはハードウェア復号のUART経由だったし、フロッピーはインテリジェント方式を使う以外の選択肢が無かった。(御陰で後にFDアクセスを並列化出来たのだが)
DMAで劇遅になったのはPC-6001。表示期間中全部CPUを停止してたから、1/3位の速度になってた。同じCRTCを使ったタンディCoCoは、当然の様にサイクルスチールで速度低下は無し。ま、その為のCPU変更だし、専用アドレスジェネレータ込みのDRAMコントローラを作って貰ってたりしてたが。実は、サイクルタイムをチョイ無視すれば、ウェイトを足すだけでZ-80でもサイクルスチール出来たんだけど、これを採用した機種は無かったかな?
ちなみに、FM7/8ではVRAMアクセスフラグをOFFにしても、画面リフレッシュが優先されるんで、チラつかない代わりに画面データがドンドン消える素敵仕様だったりする。
Z-80はスタティックデバイスだから、水平表示期間丸ごとウェイトを掛けても正常に動作するんだよね。DRAMリフレッシュは、4MHz駆動だと倍以上過剰だから、半分止めても問題無いし。でも、表示期間中にVRAMアクセスするとCPUがガッツリ止まるから、帰線期間中にバーストで書き込むと表示をぐっと高速化出来た。当時のゲーム高速化のコツだったね。
なぜFM-8と言わない(怒)
グラフィックで横640縦200各点8色出すには48Kバイト必要だけどCPUのメモリ空間が64Kバイトしかない。グラフィックに48Kバイトもとったら16Kバイトしか残らない、少なすぎる、ということでいろいろ考えた結果、CPUが1個だけだから64Kバイトなんだ、2個にすれば128Kバイトになるじゃないかという結論になり、2個載せることになったとか。
Z80のI/O空間は公称では256バイトとなってたけど実際には64Kバイトあったのでメモリ空間の足しに使っちゃったらしい。
今さっきザイログからダウンロードしたZ80のマニュアルにはI/O命令の上位アドレスの出力がちゃんと明記されていますよ
灰皿が嫌いだから
バブルメモリがもっと普及すれば…
富士通マイクロ8でしょう。
Fujitsu Micro-8ですよねー
昔富士通マイコンのカタログをいっぱい集めてたけどいつの間にか捨てられてた。初期はタモリ、そのうち南野陽子
たしか家にまだ南野陽子のトランプがあったな。(TOWNSのやつ)
伊藤麻衣子、タモリ、南野陽子、宮沢りえ、だっけ?
PC-88でも、フロッピードライブにZ80(相当?)が載ってたので、疎結合マルチプロセッサとして使ったりしたっけ。
μPD780。NECのセカンドソース。2ポートでPIO転送だから、データ転送はびっくりするぐらい遅い。
μPD780。NECのセカンドソース。
ザイログと裁判になってたしデッドコピーでしょ。
2ポートでPIO転送だから、データ転送はびっくりするぐらい遅い。
2Dフロッピーの250Kb/秒程度の読み出し速度には間に合ってたから仕様として十分だったよ。
間に合うもなにも、FDCにコマンド叩いてサブシステム上のメモリに読み出し、完了後に1バイトずつハンドシェイクだから、転送時間はまるまるオーバーヘッドだよ。
読み出し完了するまでメーンが待つようなマヌケなコード書いてりゃそういう理解にしかならないかも。
完了後に1バイトずつハンドシェイクだから、
サブシステムの機能でも2バイト単位の高速転送あったぞ
8031はPC-8001の時代からあった。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
私は悩みをリストアップし始めたが、そのあまりの長さにいやけがさし、何も考えないことにした。-- Robert C. Pike
FM7 (スコア:2)
あれは、6809を2つでメインと入出力でやってた。
Re:FM7 (スコア:2)
FM7/8で6809二個にしたのは、ビデオ回路の関係と、アドレス領域の問題から。
6809はダイナミックデバイスなんで、命令実行中のDMAは16クロックに一回CPUがバス権を強制的に取り戻す仕様。だから、VRAMリフレッシュ中はCPUを完全に停止させる必要が有った(HALT信号はCPUが現命令を完了するまでバスを開放しない)。VRAMアクセスフラグを有効にすると平均CPU速度が1/3に低下。これじゃ、メインには使えないよね。
ベーシックマスターレベル3は、VRAMをページモードで二回連続読み出しする事でCPUの空きサイクルを利用したけど、これはクロックが1MHzだから出来た話で、1.5MHzのサイクルスチールに耐えられるDRAMは当時無かった。(サイクルタイムが250nsになったのは256kbitからかな?)あと、ページモードで読んだデータを保持するラッチも良いのが無かったね。
しかも、UMAなレベル3は、16KBものVRAM領域のせいでディスクBASICのフリーエリアが7KBなんて情け無い状態になってたから、VRAMをメインCPUから追い出す事を選んだんだろう。
ちなみに、FM7/8は、キーボードスキャンに4bitマイコンを使ってたりする。多分端末で実績のある方法なんだろう。画面内での一括更新も富士通端末の標準機能なんで、グラフィック端末にメインCPUをくっつけたのがFM8の実態かも知れない。
-- Buy It When You Found It --
Re:FM7 (スコア:1)
FM7/8系のぬるぬるしたキー入力の感じはやっぱ石カマしてたかー
# シューティングの発射がスペースじゃなくBreakキーだったりしたなあ(ほわわ~ん
Re:FM7 (スコア:1)
キー入力周りに別CPUを使ってる8bitパソコンは、PC-6001(8049)とか、X1(8048)とか、結構いろいろありましたけど、だからといって特に問題はなかったですね。
FM7/8のキー入力の問題は「キー入力をサブCPUが処理している」点ではなく、「キーアップ情報をメインCPUに返していない」(メインCPUからキーアップを検知できない)点でしょう。
だから、2/4/6/8で移動操作のあと、5を押して止める、というUIになってしまうという…
Re:FM7 (スコア:1)
だから、2/4/6/8で移動操作のあと、5を押して止める、というUIになってしまうという…
これが嫌で当時FM系でプログラミングするのは避けてたなあww MZ系、PC60,88,98系、
そしてJR系に手を出したところでオシマイ _(:3 」∠)_
Re: (スコア:0)
YAMAUCHIとか
豆腐に指を突っ込む感触のキーボードとか
懐かしいおもひで
Re: (スコア:0)
PC-8001は画面表示のためのDMA止めたら倍ぐらいの速さになってたような。
MZ-80K/CはVRAMアクセスしてもちらつかないタイミングをソフトウェアでチェックしてたので、
CPUの速度低下は無かった。
V-SYNC無視して書き込むと画面がチラチラと…。
MZ-80B以降とかX1にはそんな問題は無かった。
Re:FM7 (スコア:1)
PC-8001でのCRTCへのDMAは、確か30%程度しか喰ってなかった筈。
でも、ソフトウェアタイマを使うには十分弊害で、結果、カセットI/Fはハードウェア復号のUART経由だったし、フロッピーはインテリジェント方式を使う以外の選択肢が無かった。(御陰で後にFDアクセスを並列化出来たのだが)
DMAで劇遅になったのはPC-6001。表示期間中全部CPUを停止してたから、1/3位の速度になってた。同じCRTCを使ったタンディCoCoは、当然の様にサイクルスチールで速度低下は無し。ま、その為のCPU変更だし、専用アドレスジェネレータ込みのDRAMコントローラを作って貰ってたりしてたが。
実は、サイクルタイムをチョイ無視すれば、ウェイトを足すだけでZ-80でもサイクルスチール出来たんだけど、これを採用した機種は無かったかな?
ちなみに、FM7/8ではVRAMアクセスフラグをOFFにしても、画面リフレッシュが優先されるんで、チラつかない代わりに画面データがドンドン消える素敵仕様だったりする。
Z-80はスタティックデバイスだから、水平表示期間丸ごとウェイトを掛けても正常に動作するんだよね。DRAMリフレッシュは、4MHz駆動だと倍以上過剰だから、半分止めても問題無いし。
でも、表示期間中にVRAMアクセスするとCPUがガッツリ止まるから、帰線期間中にバーストで書き込むと表示をぐっと高速化出来た。当時のゲーム高速化のコツだったね。
-- Buy It When You Found It --
Re: (スコア:0)
なぜFM-8と言わない(怒)
Re: (スコア:0)
グラフィックで横640縦200各点8色出すには48Kバイト必要だけど
CPUのメモリ空間が64Kバイトしかない。
グラフィックに48Kバイトもとったら16Kバイトしか残らない、少なすぎる、
ということでいろいろ考えた結果、CPUが1個だけだから64Kバイトなんだ、
2個にすれば128Kバイトになるじゃないかという結論になり、2個載せることになったとか。
Re:FM7 (スコア:1)
Re: (スコア:0)
Z80のI/O空間は公称では256バイトとなってたけど
実際には64Kバイトあったのでメモリ空間の足しに使っちゃったらしい。
Re: (スコア:0)
今さっきザイログからダウンロードしたZ80のマニュアルにはI/O命令の上位アドレスの出力がちゃんと明記されていますよ
Re: (スコア:0)
灰皿が嫌いだから
Re: (スコア:0)
バブルメモリがもっと普及すれば…
Re: (スコア:0)
富士通マイクロ8でしょう。
Re: (スコア:0)
Fujitsu Micro-8ですよねー
昔富士通マイコンのカタログをいっぱい集めてたけどいつの間にか捨てられてた。
初期はタモリ、そのうち南野陽子
Re:FM7 (スコア:1)
たしか家にまだ南野陽子のトランプがあったな。
(TOWNSのやつ)
らじゃったのだ
Re: (スコア:0)
伊藤麻衣子、タモリ、南野陽子、宮沢りえ、だっけ?
Re: (スコア:0)
PC-88でも、フロッピードライブにZ80(相当?)が載ってたので、疎結合マルチプロセッサとして使ったりしたっけ。
Re: (スコア:0)
μPD780。NECのセカンドソース。
2ポートでPIO転送だから、データ転送はびっくりするぐらい遅い。
Re: (スコア:0)
μPD780。NECのセカンドソース。
ザイログと裁判になってたしデッドコピーでしょ。
2ポートでPIO転送だから、データ転送はびっくりするぐらい遅い。
2Dフロッピーの250Kb/秒程度の読み出し速度には間に合ってたから仕様として十分だったよ。
Re: (スコア:0)
間に合うもなにも、FDCにコマンド叩いてサブシステム上のメモリに読み出し、完了後に
1バイトずつハンドシェイクだから、転送時間はまるまるオーバーヘッドだよ。
Re: (スコア:0)
読み出し完了するまでメーンが待つようなマヌケなコード書いてりゃそういう理解にしかならないかも。
Re: (スコア:0)
完了後に1バイトずつハンドシェイクだから、
サブシステムの機能でも2バイト単位の高速転送あったぞ
Re: (スコア:0)
8031はPC-8001の時代からあった。