アカウント名:
パスワード:
昔々、メモリが64KBしかなかったころのお話じゃ。メモリ空間が64KBだったので、ROM-BASICが機能アップして容量が増えるとユーザーの使えるRAMが減って困ったもんじゃった。拡張BASICが載った新機種でフリーエリアが減っちゃったりしてな。だから結構メモリの配分は気にしたものさね。ROM: 16KB なら RAM: 48KBROM: 32KB なら RAM: 32KBZ80でI/Oアドレスが別に64KBあるのを利用して128KBメモリとかいう機種も出てきたりしてな、何もかもが懐かしい。
で、だからSurfaceをどうしろ、という話を用意していたような気もするんじゃが、最近物忘れが激しくてのう・・・。OSをROMにして空きメモリはRAMにして実装するなんてどうかのう? げほっ、げほごほ。
なんていうロートルホイホイ。
I/Oの活用といえばX1ですよね。I/O-mapped VRAMって、確かにVRAMではプログラム実行しないから、なかなかの名案。Z-80はブロックI/O命令もあった。アクセスそのものは少し遅かったはずだけど。MZ-2000はバンク切り替えでC000h以降が見えなくなるけど、それでも64KBフルアクセスだったから、まあまあかと。あの頃のシャープはよかったなあ。プラズマクラスターもなかったし。
今でもPICとかやってるとバンク切り替えしないとSFRアクセスできなくて、しかもこっちはレジスタがWの1個しかないから「なんでZ80の数分の1の機能なんじゃヴぉけ」なんて文句言ってみたり。
で、何のスレッドでしたっけ。
> 確かにVRAMではプログラム実行しないから
くりーんこんぴゅーたなら、んなこたぁない。
ネ木1 ネ木4 → GOTO $D000
FP1100にはVRAMの特定領域にサブCPUのプログラムを描画命令で書き込んで、サブCPUに特定のコマンドを発行すると、テーブルジャンプの範囲外でその領域に飛んでいくというテクニックがありました
その手の話はむしろFMシリーズの方が大ネタが多かったんじゃないか?
スラドにゃPC-80S31(外付けFDD)のZ80に計算やらせてた世代がごろごろいそうだし。
jbeefセンセのだってI/Oに投稿してた口だったはず...
FMシリーズのサブCPUの機能は機種ごとに多少違いがあるので、ノウハウが機種依存となり、ネタが多く見えるだけかも知れない。
サブCPUはグラフィックスやキーボードなどのI/Oを担当していたが、確か、FM-7だと任意のキー入力でメインCPUに割り込みを掛けられるが、FM-11だとbreakキー以外はメインCPUへ割り込みが掛けられないため、ゲームなどには不利だった。(記憶が曖昧なので、間違いがあってもご了承を)
本来のサブCPUの使用方法は、特定のアドレスに専用のコマンドを書き込んだ後、実行コマンドを書き込むという手順だったかと。ベクトル系の描画はコマンドを実行するだけで楽チンだが、イメージの転送や、独自の描画アルゴリズムを用いる場合は不利だ。もちろん、ベクトルとはいっても基本的な2D描画だけだが、FM-11の場合、LINEやCIRCLEには複数のアルゴリズムが用意されていたと思う。
FM系がゲームで不利なのは、PC系と違ってキーを離したときに割込みを発生させないことだと思った。一旦動き出したキャラを止めるために動けない方向のキーなどを押させるゲームがあった。
# 止めるポイントでキーを押させるなんて今のクレーンゲームみたい
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
「科学者は100%安全だと保証できないものは動かしてはならない」、科学者「えっ」、プログラマ「えっ」
ROM-BASIC時代に戻って・・・ (スコア:5, おもしろおかしい)
昔々、メモリが64KBしかなかったころのお話じゃ。
メモリ空間が64KBだったので、ROM-BASICが機能アップして容量が増えるとユーザーの使えるRAMが減って困ったもんじゃった。
拡張BASICが載った新機種でフリーエリアが減っちゃったりしてな。だから結構メモリの配分は気にしたものさね。
ROM: 16KB なら RAM: 48KB
ROM: 32KB なら RAM: 32KB
Z80でI/Oアドレスが別に64KBあるのを利用して128KBメモリとかいう機種も出てきたりしてな、何もかもが懐かしい。
で、だからSurfaceをどうしろ、という話を用意していたような気もするんじゃが、最近物忘れが激しくてのう・・・。
OSをROMにして空きメモリはRAMにして実装するなんてどうかのう? げほっ、げほごほ。
Re: (スコア:0)
なんていうロートルホイホイ。
I/Oの活用といえばX1ですよね。I/O-mapped VRAMって、確かにVRAMではプログラム実行しないから、なかなかの名案。Z-80はブロックI/O命令もあった。アクセスそのものは少し遅かったはずだけど。MZ-2000はバンク切り替えでC000h以降が見えなくなるけど、それでも64KBフルアクセスだったから、まあまあかと。あの頃のシャープはよかったなあ。プラズマクラスターもなかったし。
今でもPICとかやってるとバンク切り替えしないとSFRアクセスできなくて、しかもこっちはレジスタがWの1個しかないから「なんでZ80の数分の1の機能なんじゃヴぉけ」なんて文句言ってみたり。
で、何のスレッドでしたっけ。
Re: (スコア:0)
> 確かにVRAMではプログラム実行しないから
くりーんこんぴゅーたなら、んなこたぁない。
ネ木1 ネ木4 →
GOTO $D000
Re: (スコア:0)
FP1100にはVRAMの特定領域にサブCPUのプログラムを描画命令で書き込んで、
サブCPUに特定のコマンドを発行すると、テーブルジャンプの範囲外でその領域に飛んでいく
というテクニックがありました
Re:ROM-BASIC時代に戻って・・・ (スコア:0)
その手の話はむしろFMシリーズの方が大ネタが多かったんじゃないか?
スラドにゃPC-80S31(外付けFDD)のZ80に計算やらせてた世代がごろごろいそうだし。
jbeefセンセのだってI/Oに投稿してた口だったはず...
Re:ROM-BASIC時代に戻って・・・ (スコア:2)
FMシリーズのサブCPUの機能は機種ごとに多少違いがあるので、ノウハウが機種依存となり、ネタが多く見えるだけかも知れない。
サブCPUはグラフィックスやキーボードなどのI/Oを担当していたが、確か、FM-7だと任意のキー入力でメインCPUに割り込みを掛けられるが、FM-11だとbreakキー以外はメインCPUへ割り込みが掛けられないため、ゲームなどには不利だった。(記憶が曖昧なので、間違いがあってもご了承を)
本来のサブCPUの使用方法は、特定のアドレスに専用のコマンドを書き込んだ後、実行コマンドを書き込むという手順だったかと。ベクトル系の描画はコマンドを実行するだけで楽チンだが、イメージの転送や、独自の描画アルゴリズムを用いる場合は不利だ。もちろん、ベクトルとはいっても基本的な2D描画だけだが、FM-11の場合、LINEやCIRCLEには複数のアルゴリズムが用意されていたと思う。
Re: (スコア:0)
FM系がゲームで不利なのは、PC系と違ってキーを離したときに割込みを発生させないことだと思った。
一旦動き出したキャラを止めるために動けない方向のキーなどを押させるゲームがあった。
# 止めるポイントでキーを押させるなんて今のクレーンゲームみたい