パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

Macは今後Intel CPU+ARM CPUという構成になる?」記事へのコメント

  • by manmos (29892) on 2017年02月06日 13時35分 (#3156498) 日記

    あれは、6809を2つでメインと入出力でやってた。

    • by BIWYFI (11941) on 2017年02月06日 15時38分 (#3156571) 日記

      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 --
      親コメント
      • by qem_morioka (30932) on 2017年02月06日 17時22分 (#3156645) 日記

        FM7/8系のぬるぬるしたキー入力の感じはやっぱ石カマしてたかー

        # シューティングの発射がスペースじゃなくBreakキーだったりしたなあ(ほわわ~ん

        親コメント
        • by taka2 (14791) on 2017年02月06日 20時37分 (#3156763) ホームページ 日記

          キー入力周りに別CPUを使ってる8bitパソコンは、PC-6001(8049)とか、X1(8048)とか、結構いろいろありましたけど、だからといって特に問題はなかったですね。
          FM7/8のキー入力の問題は「キー入力をサブCPUが処理している」点ではなく、「キーアップ情報をメインCPUに返していない」(メインCPUからキーアップを検知できない)点でしょう。
          だから、2/4/6/8で移動操作のあと、5を押して止める、というUIになってしまうという…

          親コメント
          • by qem_morioka (30932) on 2017年02月07日 11時34分 (#3157054) 日記

            だから、2/4/6/8で移動操作のあと、5を押して止める、というUIになってしまうという…

            これが嫌で当時FM系でプログラミングするのは避けてたなあww MZ系、PC60,88,98系、
            そしてJR系に手を出したところでオシマイ _(:3 」∠)_

            親コメント
      • by Anonymous Coward

        YAMAUCHIとか
        豆腐に指を突っ込む感触のキーボードとか
        懐かしいおもひで

      • by Anonymous Coward

        PC-8001は画面表示のためのDMA止めたら倍ぐらいの速さになってたような。

        MZ-80K/CはVRAMアクセスしてもちらつかないタイミングをソフトウェアでチェックしてたので、
        CPUの速度低下は無かった。
        V-SYNC無視して書き込むと画面がチラチラと…。

        MZ-80B以降とかX1にはそんな問題は無かった。

        • by BIWYFI (11941) on 2017年02月06日 19時20分 (#3156710) 日記

          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 --
          親コメント
    • by Anonymous Coward

      なぜFM-8と言わない(怒)

      • by Anonymous Coward

        グラフィックで横640縦200各点8色出すには48Kバイト必要だけど
        CPUのメモリ空間が64Kバイトしかない。
        グラフィックに48Kバイトもとったら16Kバイトしか残らない、少なすぎる、
        ということでいろいろ考えた結果、CPUが1個だけだから64Kバイトなんだ、
        2個にすれば128Kバイトになるじゃないかという結論になり、2個載せることになったとか。

        • by nekopon (1483) on 2017年02月06日 15時34分 (#3156567) 日記
          X1「おかしいな、空間なら128kあるはずなんじゃが」
          親コメント
          • by Anonymous Coward

            Z80のI/O空間は公称では256バイトとなってたけど
            実際には64Kバイトあったのでメモリ空間の足しに使っちゃったらしい。

            • by Anonymous Coward

              今さっきザイログからダウンロードしたZ80のマニュアルにはI/O命令の上位アドレスの出力がちゃんと明記されていますよ

      • by Anonymous Coward

        灰皿が嫌いだから

        • by Anonymous Coward

          バブルメモリがもっと普及すれば…

      • by Anonymous Coward

        富士通マイクロ8でしょう。

      • by Anonymous Coward

        Fujitsu Micro-8ですよねー

        昔富士通マイコンのカタログをいっぱい集めてたけどいつの間にか捨てられてた。
        初期はタモリ、そのうち南野陽子

    • by Anonymous Coward

      PC-88でも、フロッピードライブにZ80(相当?)が載ってたので、疎結合マルチプロセッサとして使ったりしたっけ。

      • by Anonymous Coward

        μPD780。NECのセカンドソース。
        2ポートでPIO転送だから、データ転送はびっくりするぐらい遅い。

        • by Anonymous Coward

          μPD780。NECのセカンドソース。

          ザイログと裁判になってたしデッドコピーでしょ。

          2ポートでPIO転送だから、データ転送はびっくりするぐらい遅い。

          2Dフロッピーの250Kb/秒程度の読み出し速度には間に合ってたから仕様として十分だったよ。

          • by Anonymous Coward

            間に合うもなにも、FDCにコマンド叩いてサブシステム上のメモリに読み出し、完了後に
            1バイトずつハンドシェイクだから、転送時間はまるまるオーバーヘッドだよ。

            • by Anonymous Coward

              読み出し完了するまでメーンが待つようなマヌケなコード書いてりゃそういう理解にしかならないかも。

            • by Anonymous Coward

              完了後に1バイトずつハンドシェイクだから、

              サブシステムの機能でも2バイト単位の高速転送あったぞ

      • by Anonymous Coward

        8031はPC-8001の時代からあった。

皆さんもソースを読むときに、行と行の間を読むような気持ちで見てほしい -- あるハッカー

処理中...