JPH0736701A - プログラム実行装置 - Google Patents

プログラム実行装置

Info

Publication number
JPH0736701A
JPH0736701A JP19786093A JP19786093A JPH0736701A JP H0736701 A JPH0736701 A JP H0736701A JP 19786093 A JP19786093 A JP 19786093A JP 19786093 A JP19786093 A JP 19786093A JP H0736701 A JPH0736701 A JP H0736701A
Authority
JP
Japan
Prior art keywords
program
data
transfer
transferred
cpu
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP19786093A
Other languages
English (en)
Inventor
Atsushi Yuhara
敦 湯原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Namco Ltd
Original Assignee
Namco Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Namco Ltd filed Critical Namco Ltd
Priority to JP19786093A priority Critical patent/JPH0736701A/ja
Publication of JPH0736701A publication Critical patent/JPH0736701A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 複数のソフトウエアを切り替える際の繁雑さ
を防止するとともに、回路の無駄をなくして装置全体の
コストを低減するようにしたプログラム実行装置を提供
すること。 【構成】 本実施例のプログラム実行装置は、プログラ
ム実行部10,転送プログラム・データ特定部11,転
送元格納部12,転送先格納部18,検索プログラム格
納部23を含んで構成される。検索プログラム格納部2
3に格納された検索プログラムを実行したプログラム実
行部10は、複数の被転送プログラムあるいはデータの
中から転送プログラム・データ特定部11によって特定
されたプログラムあるいはデータのみを転送元格納部1
2から検索し、この検索したプログラムあるいはデータ
を転送用プログラムを実行することにより、転送先格納
部18に転送する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ゲーム装置等におい
て、複数のプログラムやデータを適宜選択して実行する
ようにしたプログラム実行装置に関する。
【0002】
【従来の技術】従来、家庭用ゲーム機は、プロセッサや
このプロセッサが使用する作業領域を形成するRAM等
のハードウエアからなるゲーム機本体と、このゲーム機
本体と電気的に接続されるROMカセットから構成され
ている。ROMカセットには、1種類のゲーム用ソフト
ウエアがゲーム用プログラムおよびこれに使用されるゲ
ーム用データとしてROMに格納されている。したがっ
て、利用者が複数種類のゲームを行いたい場合には、各
ゲーム用ソフトウエアが搭載されたROMカセットを用
意し、遊びたいゲームのROMカセットをゲーム機本体
のコネクタに差し込んで所望のゲーム用ソフトウエアを
実行すればよい。
【0003】図15は、上述した家庭用ゲーム機で複数
種類のゲームを行う場合の概念図である。上述したよう
に、利用者が任意のROMカセットをゲーム機本体のコ
ネクタに挿入することにより、ゲーム機本体内のプロセ
ッサがROMカセット内のゲーム用プログラムおよびデ
ータを実行する。これにより、利用者は任意のゲームを
楽しむことができる。
【0004】また、従来の業務用ビデオゲーム機や飛行
機および各種乗り物の操縦シミュレータ等は、プログラ
ムやデータを格納するROMやRAM、および操縦桿や
操作レバーといった機構部分を含めたハードウエアと、
このハードウエアを使用するソフトウエアとが1対1に
対応していた。したがって、ソフトウエアを変更する場
合は、プログラムやデータといったソフトウエアが格納
されているROMを基板ごと取り替える必要があった。
【0005】さらに、従来の業務用ビデオゲーム機の一
部には、1つの筐体内に別々に動作可能な複数のプログ
ラム基板を備えておいて、いずれかのプログラム基板を
選択して使用するものがあった。このような業務用ビデ
オゲーム機においては、プログラム基板以外の構成、す
なわち表示装置や操作パネル等の入出力回路のみが共用
化されている。したがって、利用者によって1つのゲー
ムが選択されると、該当するプログラム基板と入出力回
路とが電気的に接続されて、このプログラム基板による
ゲーム処理が実施されるようになっている。
【0006】
【発明が解決しようとする課題】ところで、上述したR
OMカセットを用いた家庭用ゲーム機においては、複数
のゲームのソフトウエアを利用しようとするとソフトウ
エア毎にROMカセットを用意して取り替えなければな
らず、操作が煩雑であるとともに装置全体のコストがか
かるという問題点があった。
【0007】また、上述したハードウエアとソフトウエ
アとが1対1に対応した業務用ゲーム機等においては、
ソフトウエアの交換を行うためには装置全体の改造に相
当する手間がかかるため、複数のソフトウエアを実行す
ることがほとんど不可能であった。
【0008】さらに、複数のプログラム基板を備えるこ
とにより複数のソフトウエアが実行可能な業務用のゲー
ム機においては、入出力装置以外の部分を各ソフトウエ
ア毎に備えていたため、重複した構成部分が多く、回路
に無駄があるという問題点があった。特に、3次元映像
のシミュレータ等では、その画像処理の複雑さや要求さ
れる処理速度から、かなり高価なハードウエアを必要と
するものである。
【0009】そこで、本発明はこのような点に鑑みて創
作されたものであり、その目的は、複数のソフトウエア
を切り替える際の繁雑さを防止するとともに、回路の無
駄をなくして装置全体のコストを低減するようにしたプ
ログラム実行装置を提供することにある。
【0010】
【課題を解決するための手段】上述した課題を解決する
ために、本発明のプログラム実行装置は、複数の被転送
プログラムあるいはデータと、転送処理を行うための転
送用プログラムとを格納する転送元格納手段と、前記被
転送プログラムあるいはデータが転送されて転送プログ
ラムあるいはデータとして格納される転送先格納手段
と、前記転送元格納手段に格納された複数の被転送プロ
グラムあるいはデータの中から転送の対象となる1つあ
るいは複数のプログラムあるいはデータを特定する転送
プログラム・データ特定手段と、前記転送プログラム・
データ特定手段によって特定された転送すべき1つある
いは複数のプログラムあるいはデータを前記転送元格納
手段の格納領域を調べて検索する検索プログラムを格納
する検索プログラム格納手段と、前記検索プログラム格
納手段に格納された検索プログラムを実行することによ
り、前記転送プログラム・データ特定手段によって特定
された転送すべき1つあるいは複数のプログラムあるい
はデータを検索するとともに、前記転送元格納手段に格
納された転送用プログラムを実行することにより、検索
した1つあるいは複数のプログラムあるいはデータを前
記転送先格納手段に転送するプログラム実行手段と、を
備え、前記転送先格納手段に格納された転送後のプログ
ラムあるいはデータを用いて所定の処理を行うことを特
徴とする。
【0011】
【作用】転送元格納手段には、複数の被転送データある
いはプログラムの少なくとも一方と転送用プログラムが
格納されており、転送プログラム・データ特定手段によ
って特定された1つあるいは複数のプログラムあるいは
データのみ(特定されるプログラムあるいはデータは、
プログラムとデータのいずれか一方のみの場合の他、プ
ログラムとデータの両方を同時に特定してもよい)が転
送先格納手段に転送される。
【0012】転送元格納手段から転送先格納手段に対し
てプログラムあるいはデータの転送を行う場合、プログ
ラム実行手段は、検索プログラム格納手段に格納された
検索プログラムを実行することにより、特定された1つ
あるいは複数のプログラムあるいはデータを検索する。
【0013】次に、プログラム実行手段は、転送元格納
手段に格納された転送用プログラムを実行する。そし
て、上述した検索動作によって検索された転送元格納手
段内の被転送プログラムあるいはデータを転送先格納手
段に転送する。
【0014】このように、転送元格納手段に被転送プロ
グラムあるいはデータとともに転送用プログラムを格納
しておいて、転送すべきプログラムあるいはデータを検
索した後にこの転送用プログラムを実行して、転送先格
納手段へのプログラムあるいはデータの転送を行う。し
たがって、転送元格納手段に複数のソフトウエアに対応
するプログラムあるいはデータを格納しておいて、実行
したいもののみ転送先格納手段に転送し、この転送後の
プログラムあるいはデータを用いて処理を行うことによ
り、複数のソフトウエアに共通する転送先格納手段を用
いて複数のソフトウエアの実行が可能となる。
【0015】本発明においては、複数のソフトウエアに
対応するデータあるいはプログラムを必要に応じて転送
先格納手段に転送した後にソフトウエアの実行が行われ
るため、複数のソフトウエアを切り替える際のハードウ
エアの取り換え等が不要となり、操作の繁雑さを回避す
ることができる。また、複数のソフトウエアを実行する
際に、共通した転送先格納手段を用いるため、ハードウ
エアの重複部分をなくして回路の無駄を省くことができ
る。さらに、転送先格納手段を用いてソフトウエアが実
行されるため、回路が必要以上に複雑化することがな
い。また、プログラムやデータ変更にROM変更を行う
場合でも、集約して行えるので便利である。
【0016】
【実施例】以下、図面に基づいて本発明の実施例につい
て詳細に説明する。
【0017】(1)実施例の全体構成及び動作 図1は、本発明を適用した一実施例のプログラム実行装
置の概略構成を示す図である。同図には、家庭用・業務
用ビデオゲーム機あるいは飛行機および各種乗り物の操
縦シミュレータ等の部分的構成が示されている。
【0018】同図に示すプログラム実行装置は、プログ
ラム実行部10,転送プログラム・データ特定部11,
転送元格納部12,転送先格納部18,検索プログラム
格納部23を含んで構成される。
【0019】プログラム実行部10は、中央処理装置
(CPU)で構成されるものであり、例えばゲーム用プ
ログラムあるいはデータを実行することにより所定のゲ
ーム演算を行う。
【0020】転送元格納部12は、転送用プログラム1
4,被転送プログラム15,被転送データ16を格納す
る。被転送プログラム15及び被転送データ16は、複
数種類のソフトウエアのそれぞれに対応したプログラム
及びデータであり、ゲームやシミュレーション動作の種
類に対応した個数分設けられている。転送用プログラム
14は、この被転送プログラム15あるいは被転送デー
タ16の少なくとも一方を転送先格納部18内に転送す
るためのプログラムであり、複数の被転送プログラム1
5,被転送データ16のそれぞれに対応して複数個設け
られている。
【0021】転送先格納部18は、上述した転送元格納
部12に格納されている被転送プログラム15及び被転
送データ16を転送後に格納するためのものである。転
送元格納部12から転送された被転送プログラム15及
び被転送データ16は、転送プログラム21及び転送デ
ータ22として転送先格納部18に格納される。また、
プログラムを転送する際には、これらに対応して転送用
プログラム14も転送されて転送先格納部18に転送用
プログラム20として格納される。
【0022】検索プログラム格納部23には、転送元格
納部12内に格納された複数の被転送プログラム15,
被転送データ16の中から転送対象となるプログラムあ
るいはデータを検索するための検索プログラムを格納す
るものである。この検索プログラムは、プログラム実行
部10によって読み出され実行される。
【0023】転送プログラム・データ特定部11は、転
送元格納部12から転送先格納部18に転送すべき被転
送プログラム15,被転送データ16を特定する。特定
する方法としては、例えば、各プログラムやデータに数
字やアルファベット等からなる識別符号(ID)を割り
当てておいて、この識別符号を指定することにより行
う。また、特定するプログラムやデータは、1つあるい
は複数であってもよく、転送すべきプログラムとデータ
を同時に特定してもよい。
【0024】次に、このような構成を有する本実施例の
プログラム実行装置において、プログラムあるいはデー
タの転送を行う動作について説明する。なお、転送元格
納部12には予め複数のソフトウエアに対応した複数の
被転送プログラム15及び複数の被転送データ16が格
納されており、例えばプレーヤからの指示に応じて任意
のソフトウエアが選択されて、対応するプログラム及び
データのみが実行される場合を考える。
【0025】まず、プログラム実行部10は、検索プロ
グラム格納部23に格納された検索プログラムを読出し
て実行することにより、転送プログラム・データ特定部
11によって特定された被転送プログラム15あるいは
被転送データ16を転送元格納部12から検索する。な
お、転送プログラム・データ特定部11によって特定さ
れる被転送プログラム15あるいは被転送データ16
は、1つであっても複数であってもよく、被転送プログ
ラム15と被転送データ16を同時に特定して検索する
ようにしてもよい。
【0026】次に、プログラム実行部10は、転送元格
納部12に格納されている転送用プログラム14を実行
することにより、上述した検索動作によって検索された
被転送プログラム15あるいは被転送データ16を転送
先格納部18内に転送プログラム21あるいは転送デー
タ22として格納する転送動作を行う。
【0027】その後、プログラム実行部10は、転送先
格納部18に転送して格納された転送プログラム21を
実行することにより、あるいは転送データ22を用いて
所定のプログラムを実行することにより、プレーヤが特
定したソフトウエアを実行する。
【0028】なお、上述した転送用プログラム14は、
転送元格納部12に格納されているものを用いる場合の
他、転送するプログラムあるいはデータに対応させて転
送用プログラム14を用意しておいて、これら転送する
プログラムあるいはデータとともに対応する転送用プロ
グラム14も転送し、この転送用プログラム14の転送
が終了した後は、転送先格納部18に格納されたプログ
ラム(転送用プログラム20)を実行することにより残
りのプログラムあるいはデータを転送するようにしても
よい。
【0029】このように本実施例においては、転送元格
納部12に複数のソフトウエアに対応する複数の被転送
プログラム15あるいは被転送データ16を格納してお
いて、実行したいもののみを検索して転送先格納部18
に転送している。従って、プログラム実行部10は、転
送後に転送先格納部18に格納された転送プログラム2
1あるいは転送データ22を実行することにより所定の
ゲーム演算あるいはシミュレーション処理等を実行する
ことができる。
【0030】このため、複数のソフトウエアを選択的に
実行する場合であっても、転送元格納部12から転送先
格納部18に転送するプログラムあるいはデータのみを
再転送するだけでよく、ソフトウエアを切り替える際の
繁雑さを防止することができる。また、プログラム実行
部10は共通する転送先格納部18に格納された転送プ
ログラム・データのみを実行すればよいため、重複する
回路構成を最少限に抑えることができ、回路の無駄をな
くすることができる。
【0031】(2)ドライビングシミュレータに適用し
た場合の具体的構成 図2は、図1に示したプログラム実行装置をドライビン
グシミュレータに適用した場合の当該シミュレータの具
体的構成を示す図である。同図に示すシミュレータは、
CPUボード24,ROMボード26,CPUボード2
8,DSPボード30,PGN(ポリゴン)ボード3
2,OBJ(オブジェクト)ボード34,CRT(陰極
線管)36,I/O CPUボード38を含んで構成さ
れる。
【0032】CPUボード24は、本シミュレータにお
いてキャラクタの座標計算や行動パターンの設定等の演
算を行うものである。例えば、対向車として複数の車両
が登場する教習用のドライビングシミュレータにおいて
は、このCPUボード24によって、ハンドルデー
タ,アクセル,ブレーキ等の実際にプレーヤの車両を走
らせる処理及びこの車両の絶対座標空間上の座標計算、
対向車の制御及び対向車の絶対座標空間上の座標計算
等を行う。
【0033】図3は、このCPUボード24の詳細な構
成を示す図である。同図に示すCPUボード24は、C
PU40,リセット回路42,I/Oポート44,BO
OTROM46,WORK RAM47,PROG R
AM48,バックアップRAM49,共有RAM50,
通信IC52を含んで構成される。
【0034】CPU40は、例えば16ビットCPUで
あり、BOOT ROM46あるいはPROG RAM
48に格納されているプログラムを読み出して実行する
ことにより所定の処理を行う。
【0035】このBOOT ROM46は、CPU40
がPROG RAM48に所定のシミュレーションデー
タおよびプログラムをきちんと転送するために、その動
作環境を整えるためのさしあたってのプログラムを転送
するプログラムのROM62上のアドレスを検索する検
索プログラムを格納する。上述したように、この検索プ
ログラムはCPU40によって読み出され実行される。
【0036】WORK RAM47は、ROMボード2
6内のROM62に格納された複数のシミュレーション
用ソフトウエアの番号と、各ソフトウエアが格納された
ROM62のアドレスとの対応を表す対照表を格納す
る。
【0037】PROG RAM48は、検索プログラム
を実行することにより検索されたプログラム(シミュレ
ーションプログラム)を転送して格納するためのメモリ
であり、このPROG RAM48に格納されたプログ
ラムを読み出してCPU40が実行することにより、所
定のシミュレーション演算が行われる。なお、このシミ
ュレーションプログラムは、マスターとして機能するC
PU40を動作させるためのものであり、教習用ドライ
ビングシミュレータの場合には、走行場面や走行条件の
設定の他、教習のストーリー全体を制御する機能を含ん
でいる。
【0038】バックアップRAM49は、このシミュレ
ータが以前に動作したときの最後のソフトウエア番号を
格納しておくためのものであり、不揮発性メモリ(EE
PROM等)で構成される。即ち、使用するソフトウエ
アを変更するごとにそのソフトウエア番号がこのバック
アップRAM49に格納され、電源切断時にはその内容
が保持される。従って、次にバックアップRAM49の
内容を読み出すことにより、以前に動作していたソフト
ウエアを知ることができる。
【0039】共有RAM50は、CPU40とCPUボ
ード28内の後述するCPU54との間で相互に演算結
果等のデータのやりとりを行うためのものであり、例え
ばデュアルポートRAMで構成されている。
【0040】リセット回路42は、本シミュレータ装置
の起動時にCPU40に対してリセット信号を入力す
る。このリセット信号がCPU40に入力されると,C
PU40はBOOT ROM46に格納された検索プロ
グラムの読み出しおよび実行を行うようになっている。
【0041】I/Oポート44は、CPU28内の後述
するCPU54に対してリセット信号を出力するための
ものある。CPU40からI/Oポート44に対して所
定のデータあるいはアドレスが入力されると、I/Oポ
ート44からはリセット信号が出力されるようになって
いる。
【0042】通信IC52は、I/O CPUボード3
8との間で所定の通信データの入出力を行うためのもの
である。このやりとりされる通信データの詳細について
は後述する。
【0043】上述したCPU40は、I/Oポート4
4,BOOT ROM46,WORKRAM47,PR
OG RAM48,バックアップRAM49,共有RA
M50,通信IC52とアドレスバス40aおよびデー
タバス40dを介して接続されている。また、共有RA
M50は、CPUボード28内の後述するCPU54と
アドレバス54aおよびデータバス54dを介して接続
されている。
【0044】また、図2に示すCPUボード28は、主
にDSPボード30,PGNボード32,OBJボード
34を制御することによりCRT36に対する映像出力
の制御を行うためのものであり、CPUボード24内の
I/Oポート44から出力されるリセット信号が解除さ
れたときに動作を開始するようになっている。
【0045】図4は、このCPUボード28の詳細な構
成を示す図である。同図に示すCPUボード28は、C
PU54,I/Oポート56,BOOT ROM58,
WORK RAM59,PROG RAM60を含んで
構成される。
【0046】CPU54は、例えば32ビットCPUで
構成されている。一般には画像処理用に膨大なデータ処
理が必要となるため、このCPU54は上述したCPU
ボード24内のCPU40に比べて高性能なものが使用
される。このCPU54は、それ以外の構成、すなわち
I/Oポート56,BOOT ROM58,WORKR
AM59,PROG RAM60とアドレスバス54a
およびデータバス54dを介して接続されており、デー
タやアドレスの入出力が可能となっている。また、CP
U54にはCPUボード24内のI/Oポート44から
出力されるリセット信号が入力される。したがって、こ
のリセット信号が入力されている間はCPU54は動作
せず、このリセット信号が解除されたときに初めてCP
U54は動作を開始する。
【0047】BOOT ROM58は、上述したCPU
ボード24内のBOOT ROM46に対応するもので
あり、ROMボード26内の後述するROM62に格納
されている所定のシミュレーション用プログラムおよび
データをきちんと転送するためにその動作環境を整える
ためのさしあたってのプログラムを転送するためのプロ
グラムを検索する検索プログラムを格納する。
【0048】WORK RAM59は、ROMボード2
6内のROM62に格納された複数のシミュレーション
用ソフトウエアの番号と、各ソフトウエアが格納された
ROM62のアドレスとの対応を表す対照表を格納す
る。
【0049】PROG RAM60は、CPU54がB
OOT ROM58内の検索プログラムを実行すること
により検索した所定のシミュレーション用プログラムを
転送する際にその格納先となるものである。シミュレー
ション用プログラムをPROG RAM60に格納した
後は、CPU54はこの格納されたプログラムを読み出
して所定のシミュレーション処理を行う際の映像出力の
制御を行う。なお、このシミュレーションプログラム
は、CPU54をCPU40のスレーブ側CPUとして
動作させるためのものであり、教習用ドライビングシミ
ュレータの場合には、登場する自動車、人間の行動パタ
ーン等個々の動きを制御する機能を含んでいる。
【0050】I/Oポート56は、CPU54から所定
のアドレスあるいはデータが入力された際にDSPボー
ド30内の後述するDSP(デジタル信号処理装置)6
4に対してリセット信号を出力する。
【0051】また、図2に示すROMボード26は、複
数のゲームに対応した全てのソフトウエアを格納するた
めのものであり、上述したCPUボード24およびCP
Uボード28のどちらからもアクセス可能となってい
る。
【0052】図5は、このROMボード26の詳細な構
成を示す図である。同図に示すROMボード26は、2
系統の入出力端子を有するデュアルポート構成のROM
62を含んで構成される。
【0053】ROM62は、CPUボード24内のCP
U40に接続されたアドレスバス40aおよびデータバ
ス40dにバス接続されているとともに、CPUボード
28内のCPU54に接続されたアドレスバス54aお
よびデータバス54dにバス接続されている。例えば、
このROM62は、それぞれが6画面分の表示データを
含む複数種類のシミュレーション用ソフトウエアを格納
するためのものであり、32Mバイトの容量を有する。
このように大容量を有するROM62は、一般には複数
の素子を用いて構成される。
【0054】図6は、ROM62を複数の素子を用いて
構成した場合の具体例を示す図である。同図において、
ROM62−1L〜62−16Lおよび62−1U〜6
2−16Uのそれぞれは、1Mビット,2Mビットある
いは4MビットのROMであり、それぞれが8ビットの
データ構成を有している。したがって、本実施例のよう
に16ビットのCPU40,54によって16ビットの
データを扱う場合には、これらのROMを2つずつ組み
合わせて同時にアクセスするようにしている。
【0055】図6に示した構成においては、「L」が付
されたROMに16ビットデータ中の下位8ビットを格
納し、「U」が付されたROMには16ビットデータ中
の上位8ビットを格納する。具体的には、ROM62−
1を例にとると、ROM62−1Lに16ビットデータ
中の下位8ビットを格納し、ROM62−1Uにそれ以
外の上位8ビットを格納する。そして、CPU40ある
いは54によってROM62をアクセスする場合には、
これら2つのROM62−1L,62−1Uを同時にア
クセスすることにより、16ビットデータの読み書きを
行う。
【0056】また、図2に示すDSPボード30は、表
示画面毎の3次元表示物体の透視変換等の座標変換等の
データ処理を行うものであり、CPUボード28内のI
/Oポート56から出力されるリセット信号が解除され
たときに動作を開始するようになっている。
【0057】図7は、このDSPボード30の詳細な構
成を示す図である。同図に示すDSPボード30は、D
SP64,BOOT ROM66,PROG RAM6
8,共有RAM70,ポイントRAM72を含んで構成
される。なお、本実施例のシミュレータにおいては、1
つのシミュレーションソフトウエアにおいて6つの表示
画面が使われており、このDSPボード30も表示画面
の数に対応させて各表示画面毎に6枚備わっているもの
とする。この点についてはPGNボード32,OBJボ
ード34およびCRT36についても同様である。例え
ば、プレーヤが自己の車両を操作するシミュレーション
ソフトウエアにおいては、車両の前面(フロントガラ
ス),左右側面,左右サイドミラー内,バックミラー内
の合計6画面の表示を行う場合が考えられる。
【0058】DSP64は、例えば16ビットで構成さ
れる画像データを処理するためのものである。また、D
SP64にはCPUボード28内のI/Oポート56か
ら出力されるリセット信号が入力される。したがって、
このリセット信号が入力されている間はDSP64は動
作せず、このリセット信号が解除されたときに初めてD
SP64は動作を開始する。
【0059】BOOT ROM66は、DSP64がD
SPボード30を初期化するためのプログラムが格納さ
れており、本発明の趣旨とは関係ないので、詳細な説明
は省略する。
【0060】PROG RAM68は、各表示画面の3
次元表示物体の頂点座標等を演算するプログラム(ポイ
ントRAM72に転送される初期データを含む)を格納
するためのものであり、デュアルポートRAMによって
構成されている。このプログラムは、CPUボード28
内のCPU54によってROMボード26内のROM6
2から転送されるものである。
【0061】共有RAM70は、DSP64とCPUボ
ード28内のCPU54とが別々にアクセス可能なデュ
アルポートRAMで構成されており、これらのプロセッ
サ間のデータのやりとりに使用される。
【0062】ポイントRAM72は、ポリゴン処理に必
要な3次元表示物体の透視変換される前のX,Y,Z座
標を格納するためのものである。このポイントRAM7
2には、シミュレータ起動時あるいはリセット時にはP
ROG RAM68に転送された初期データが転送され
る。
【0063】上述したDSP64は、それ以外の構成、
すなわちBOOT ROM66,PROG RAM6
8,共有RAM70,ポイントRAM72とアドレスバ
ス64aおよびデータバス64dを介して接続されてお
り、データやアドレスの入出力が可能となっている。ま
た、PROG RAM68および共有RAM70は、上
述したCPU54に接続されたアドレスバス54a,デ
ータバス54bに接続されており、データやアドレスの
入出力が可能になっている。
【0064】また、図2に示すPGNボード32は、上
述したDSPボード30によって計算された3次元表示
物体の透視変換されたX,Y,Z座標をもとにポリゴン
処理を行うためのものである。
【0065】図8は、このPGNボード32の詳細な構
成を示す図である。同図に示すPGNボード32は、ポ
リゴン処理回路74,ラインRAM76,ポイントRA
M78,ラインバッファ80を含んで構成される。
【0066】ポリゴン処理回路74は、DSPボード3
0から供給されるポリゴンの各頂点座標及び付随データ
に基づいて輪郭線の演算やこの輪郭線と表示用走査線の
交点座標の演算を行い、演算した交点間を所定の色デー
タで塗りつぶす処理を行う。
【0067】ラインRAM76は、シミュレーション動
作の開始時に各表示画面に表示される3次元表示物体の
ポリゴン毎の輪郭線データを格納するためのものであ
る。また、ポリゴン処理回路74によってポリゴンの新
たな輪郭線が演算された後は、この演算された輪郭線デ
ータがラインRAM76に格納される。
【0068】ポイントRAM78は、ポリゴン毎の輪郭
線演算に必要な座標データを格納し、ポリゴン処理回路
74のワークエリアとして働く。
【0069】ラインバッファ80は、ポリゴン処理回路
74によって演算された交点間の色データを走査線単位
で格納するためのものである。このラインバッファ80
に格納されたデータは、表示データとしてOBJボード
34内の後述するパレットコントローラ94に向け出力
される。
【0070】また、図2に示すOBJボード34は、実
際にCRT36に表示する表示物体のデータを画素単位
で作成するためのものである。
【0071】図9は、このOBJボード34の詳細な構
成を示す図である。同図に示すOBJボード34は、描
画コントローラ82,OBJ RAM84,CG RA
M86,CG ROM88,フレームバッファ90,表
示コントローラ92,パレットコントローラ94,パレ
ットRAM96,ラッチ98,D/Aコンバータ100
を含んで構成される。
【0072】描画コントローラ82は、OBJ RAM
84に格納されたデータを読み出し、この読み出したデ
ータに基づいてCG RAM86あるいはCG ROM
88のアドレス指定を行う。OBJ RAM84には2
次元表示物体の座標データおよびこの表示物体に対応し
たCG(キャラクタ・ジェネレータ)コードが格納され
ており、描画コントローラ82によって標示画面内の所
定位置のCGコードが読み出されるようになっている。
そして、このCGコードはCG RAM86あるいはC
G ROM88にアドレスとして入力されており、これ
らCG RAM86あるいはCG ROM88からは対
応するCGデータが出力される。
【0073】フレームバッファ90は、表示画面全体の
画像データをドット単位で格納するためのものである。
フレームバッファ90に表示データを格納する場合に
は、上述した描画コントローラ82から出力される描画
アドレスによってアドレス指定を行い、表示コントロー
ラ92から出力される描画データを当該アドレスに格納
する。また、フレームバッファ90からデータの読み出
しを行う場合には、表示コントローラ92から出力され
る表示アドレスによってアドレス指定を行い、当該アド
レスに格納されたデータを表示データとして読み出す。
【0074】パレットコントローラ94は、フレームバ
ッファ90から読み出した2次元表示物体の表示データ
とPGNボード32内のラインバッファ80から入力さ
れる3次元表示物体の表示データの中で優先度の高いも
のを選択的に出力する。パレットRAM96は、パレッ
トコントローラ94から出力される表示データがアドレ
スとして入力されており、この入力される表示データに
対応する実際の色データを出力する。
【0075】ラッチ98は、パレットRAM96から出
力される色データを一時保持した後D/Aコンバータ1
00に向けてこの保持したデータを入力する。D/Aコ
ンバータ100は入力された色データをRGB信号に変
換するためのものであり、変換後のRGB信号は、表示
コントローラ92から出力される同期信号とともに図2
に示すCRT36に向け出力される。従って、OBJボ
ード34に接続されたCRT36からは、シミュレーシ
ョン動作の進行に応じた2次元及び3次元表示物体が表
示される。
【0076】また、図2に示すI/O CPUボード3
8は、プレーヤからの操作指示に関するデータ処理を行
うためのものであり、プレーヤの操作に応じたデータを
CPUボード24に送るようになっている。
【0077】図10は、このI/O CPUボード38
の詳細な構成を示す図である。同図に示すI/O CP
Uボード38は、CPU102,リセット回路104,
PROG ROM106,RAM108,I/Oポート
110,通信IC112,操作パネル114を含んで構
成される。
【0078】CPU102は、16ビットCPUで構成
されている。このCPU102は、入力データを処理す
るためにのみ用いられるものであるため比較的内容は単
純であり、上述したCPU40,54に比べて比較的低
速のものが用いられる。このCPU102は、PROG
ROM106,PROG RAM108,I/Oポー
ト110,通信IC112とアドレスバス102aおよ
びデータバス102dを介して接続されており、データ
やアドレスの入出力が可能となっている。また、CPU
102には、リセット回路104から出力されるリセッ
ト信号が入力されており、動作開始時にこのリセット信
号によってリセットされる。
【0079】PROG ROM106は、CPU102
が動作するためのプログラムおよびデータを予め記憶し
ている。また、PROG RAM108は、CPU10
2が動作するための作業領域となるものである。
【0080】I/Oポート110は、操作パネル114
との間でデータの入出力を行うためのものである。この
I/Oポート110は、アドレスバス102aを介して
所定のアドレスが入力されたときに、データバス102
dを介して入力されるデータを取り込んで操作パネル1
14側に出力する。あるいは、このI/Oポート110
は、アドレスバス102a介して所定のアドレスが入力
されたときに、操作パネル114側から入力されるデー
タを取り込んでデータバス102dにこの取り込んだデ
ータを出力する。
【0081】操作パネル114は、テンキースイッチお
よび7セグメントのLEDを含んで構成されており、テ
ンキースイッチによってプレーヤからの指示を受け付け
ることができるとともに、LEDによってプレーヤに対
して現在の操作状況を表示することができることになっ
ている。
【0082】通信IC112は、I/O CPUボード
38とCPUボード24との間でデータの入出力を行う
インタフェースとなるものである。CPU102は、操
作パネル114のテンキースイッチの操作状況を読み取
った後、通信IC112を介してCPUボード24にこ
の操作状況に応じたデータを送る。また、CPU102
は、CPUボード24から送られてくる操作指示等に関
するデータを通信IC112を介して受け取った後、I
/Oポート110を介して操作パネル114内のLED
に所定の表示を行う。
【0083】(3)ドライビングシミュレータに適用し
た場合の具体的動作 次に、上述した構成を有するドライビングシミュレータ
において、その動作開始に先だって、直前に実施されて
いたソフトウエアに対応するプログラム及びデータを自
動的にROMボード26内のROM62から各種ボード
内のRAMに対して転送する本実施例の具体的動作を説
明する。
【0084】本実施例において、起動時にプログラムあ
るいはデータの設定が必要なRAMとしては以下のもの
がある。
【0085】PROG RAM48(CPUボード2
4) PROG RAM60(CPUボード28) PROG RAM68(DSPボード30) ポイントRAM72(DSPボード30) ラインRAM76(PGNボード32) CG RAM86(OBJボード34) パレットRAM96(OBJボード34) なお、上述した〜のそれぞれの( )内は、それぞ
れのRAMが搭載されたボードの種類を示している。
【0086】上述した〜の各RAMに転送するプロ
グラムあるいはデータは、ROMボード26内のROM
62に格納されており、シミュレーション処理の実施に
先だって転送が行われるようになっている。また、直前
に実施されていたソフトウエア番号がCPUボード24
内のバックアップRAM49に格納されており、起動時
にこの格納されたソフトウエア番号が読み出されるよう
になっている。
【0087】図11は、ROM62に格納されるプログ
ラムあるいはデータの格納状態を示す図である。同図
(a)は、CPU40が転送するプログラムの格納状態
を示す。同図に示すように、このプログラム領域として
は、$040000($は16進数を表わす)バイトの
容量が用意されており、先頭の$40までのアドレスに
は転送すべきプログラムあるいはデータを識別するため
のIDコードと、実施したいソフトウエアの種類を特定
するためのソフトウエア番号とが含まれる。そして、$
000040以降のアドレスにPROG RAM48
に転送すべきプログラムが格納されている。
【0088】同様に、同図(b)はCPU54が転送す
るプログラムの格納状態を示す。この格納領域として$
040000バイトが用意されている点および先頭の$
40までのアドレスにはIDコードとソフトウエア番号
が含まれる点は同図(a)の場合と同様である。なお、
このプログラムにはPROG RAM60及びPR
OG RAM68に転送されるプログラムが含まれる。
【0089】また、同図(c)は、ポリゴン処理に必要
なデータの格納状態を示す。この場合には同図に示すよ
うに全体として$100000バイトの容量が用意され
ており、先頭の$40までのアドレスにはポリゴン処理
関連のデータに対応したIDコードとソフトウエア番号
が含まれる。なお、ポリゴン処理に関連したデータに
は、上述したポイントRAM72およびラインRA
M76に転送される各種データが含まれる。
【0090】また、同図(d)は、オブジェクト関連の
各種データの格納状態を示す。この場合の格納領域とし
ては、$080000バイトの容量が用意されており、
先頭の$40までのアドレスにはオブジェクト関連のデ
ータに対応したIDコードとソフトウエア番号とが含ま
れる。このオブジェクト関連のデータとしては、上述し
たCG RAM86およびパレットRAM96に転
送する各種データが含まれる。
【0091】図12は、図11に示した各種プログラム
およびデータをROM62に格納する場合の具体的なア
ドレスマップを示す図であり、説明を簡単にするため4
個のシミュレーション用ソフトウエアに対応したプログ
ラムおよびデータを格納する場合が示されている。
【0092】図12(a),(b)に示すように先頭ア
ドレスから順にソフトウエア番号1,2,3,4のそれ
ぞれに対応したプログラムおよびデータが格納されてい
る。
【0093】なお、図11(a)〜(d)のそれぞれを
2個のROM(16ビットデータのの下位および上位の
それぞれに1個のROMを対応させる)に格納するもの
とすれば、1つのシミュレーション用ソフトウエアを格
納するために合計8個のROMが必要となる。従って、
図12(a),(b)の全体は合計32個のROMに格
納することができる。このように、プログラムあるいは
データの種類毎にこれらを格納するROMを別個に設け
ることにより、いずれかのプログラムあるいはデータに
変更が生じた場合であっても、対応するROMのみを交
換すればよいため、プログラム等の変更作業が容易とな
る。また、シミュレーション用ソフトウエアの開発,設
計が終了して最終的なプログラムあるいはデータが決定
された後は、大容量のROMを上位ビット、下位ビット
の2個1組だけ用いて図12(a),(b)の全体をま
とめて格納するようにしてもよい。
【0094】次に、上述した格納内容を有するROM6
2から各RAMに対してプログラムあるいはデータ転送
を行う場合の具体的な動作について説明する。
【0095】本実施例においては、シミュレータ装置を
起動した際に、直前に実施されていたソフトウエア(例
えば市街地走行用(その1)、市街地走行用(その
2)、高速走行用、教習所コース走行用の4つのシ
ミュレーション用ソフトウエアがROM62に用意され
ている)を、以下に示す手順にしたがって自動的に読み
出して各RAMに転送する。
【0096】(3a)PROG RAM48に対するプ
ログラムの転送動作 起動時にPROG RAM48に対してプログラムの
予備転送(後述3a−1)を行う場合には、CPU40
が図1に示すプログラム実行部10に、BOOT RO
M46が転送プログラム・データ特定部11および検索
プログラム格納部23に、ROM62が転送元格納部1
2に、PROG RAM48が転送先格納部18にそれ
ぞれ対応する。
【0097】また、復帰動作時(後述3a−3)にP
ROG RAM48に対してプログラムの転送を行う場
合には、CPU40が図1に示すプログラム実行部10
に、バックアップRAM49が転送プログラム・データ
特定部11に、ROM62が転送元格納部12に、PR
OG RAM48が転送先格納部18および検索プログ
ラム格納部23にそれぞれ対応する。
【0098】図13〜図15は、CPU40がプログラ
ムの転送を行う場合の動作手順を示す図である。図13
には転送に必要なプログラムを転送する動作(予備転送
動作)手順が、図14にはソフトウエア番号とこのソフ
トウエアのプログラムが格納されているアドレスとを対
応づける動作(対照表作成動作)手順が、図15には直
前に実施していたソフトウエアのプログラムを実際に転
送する動作(復帰動作)手順がそれぞれ示されている。
【0099】以下、これらの図を参照しながらPROG
RAM48に対してプログラム転送を行う場合の詳細
を説明する。
【0100】(3a−1)予備転送動作 まず、図13を参照しながら予備転送動作について説明
する。
【0101】CPU40はBOOT ROM46に格納
されている検索用プログラムを実行することにより、P
ROG RAM48に転送すべきプログラムのROM6
2内での格納アドレスを検索する。なお、この予備転送
動作において転送するプログラムは、後述する以後の復
帰動作で実際にプログラムを転送するための対照表を作
成するためのプログラムを最小限含んでいればよい。従
って、この場合にはソフトウエア番号は何でもよく、C
PU40が実行するプログラムを指し示すIDコードを
検索する。
【0102】具体的には、検索用プログラムを実行した
CPU40は、サーチアドレスをROM62の先頭ブロ
ックに設定する(ステップ100)。なお、図12に示
すように各プログラムあるいはデータは$040000
の整数倍の格納領域を単位として格納されているため、
この$040000を1つのブロックとし、各ブロック
の先頭付近に格納されたデータのみを見ていけば、そこ
には必ず図11に示したIDコードが含まれていること
になり、全てのアドレスを順に検索していく場合に比べ
て大幅な検索時間の短縮が可能となる。
【0103】次に、CPU40は、設定されたサーチア
ドレスが先頭アドレスとなっているブロックの先頭部分
を調べることにより、転送したいプログラムのIDコー
ドがあるか否かを判断する(ステップ101)。設定さ
れたサーチアドレス付近に転送したいプログラムのID
コードがある場合には、CPU40は肯定判断を行い、
後述するステップ104以降の処理に移る。
【0104】IDコードがない場合には、CPU40は
否定判断を行って、サーチアドレスを次のブロックの先
頭アドレスに設定する(ステップ102)。そして、C
PU40は、全てのブロックをサーチしたか否かを判断
する(ステップ103)。全てのブロックをサーチして
いない場合には否定判断を行い、ステップ101以降の
処理を繰り返す。また、全てのブロックに対してステッ
プ101の処理(サーチ)が終了した場合には、ステッ
プ103で肯定判断を行い、ステップ100に戻って処
理を繰り返す。
【0105】また、ステップ101において肯定判断を
行った場合(CPU40のIDコードがあった場合)に
は、次にCPU40は、検索したブロック中の特定アド
レスPa1にジャンプして、この特定アドレス以降に格
納されたプログラムを実行する(ステップ104)。例
えば、図11(a)に示すアドレス$000040にジ
ャンプして、ROM62に格納されたこの特定アドレス
以降のプログラムを実行する。
【0106】次に、CPU40は検索したブロックの内
容をPROG RAM48に転送する(ステップ10
5)。なお、ROM62の特定アドレス以降に格納され
ているプログラムの先頭部分には、このプログラム自身
をPROG RAM48に転送する転送用プログラムが
含まれており、図11(a)に示すアドレス$0000
40以降のプログラムを実行することにより、プログラ
ムの全体がPROG RAM48に転送されるようにな
っている。
【0107】次に、CPU40は、プログラムの転送が
終了したPROG RAM48の特定アドレスPa2に
ジャンプして(ステップ106)、転送が終了してPR
OGRAM48に格納されたプログラムの実行を開始す
る(ステップ107)。このようにして、PROG R
AM48に対するプログラム転送が行われることにより
予備転送動作が終了する。
【0108】(3a−2)対照表作成動作 次に、図14を参照しながら対照表作成動作について説
明する。
【0109】上述した107においてPROG RAM
48に転送されたプログラムの実行を開始したCPU4
0は、再びサーチアドレスをROM62の先頭ブロック
に設定する(ステップ200)。
【0110】次に、CPU40は、設定されたサーチア
ドレスが先頭アドレスとなっているブロックの先頭部分
を調べることにより、CPU40自身のIDコードがあ
るか否かを判断する(ステップ201)。該当するID
コードがある場合にはCPU40は肯定判断を行い、W
ORK RAM47にステップ200で設定したサーチ
アドレスを書き込む(ステップ202)。なお、WOR
K RAM47の格納領域はソフトウエア番号ごとに分
けられており、ソフトウエア番号とサーチアドレスとが
対応づけられて格納される。
【0111】ステップ201において否定判断を行った
場合(CPU40自身のIDコードがブロックに含まれ
ていない場合)、あるいはステップ202においてサー
チアドレスの書き込みが終了した場合には、次にCPU
40はサーチアドレスを次のブロックの先頭アドレスに
設定する(ステップ203)。そして、CPU40は、
全てのブロックをサーチしたか否かを判断する(ステッ
プ204)。全てのブロックをサーチしていない場合に
は否定判断を行い、ステップ201以降の処理を繰り返
す。また、全てのブロックに対してステップ201の処
理(サーチ)が終了した場合には、ステップ204で肯
定判断を行い、次の復帰動作に移行する。 (3a−
3)復帰動作 次に、図15を参照しながら復帰動作について説明す
る。
【0112】まず、CPU40は、バックアップRAM
49に格納されているソフトウエア番号を読み出して照
会する(ステップ300)。上述したように、このバッ
クアップRAM49に格納されているソフトウエア番号
は、直前に実施していたソフトウエア番号であり、この
番号を知ることにより復帰動作が可能になる。
【0113】次に、CPU40は、照会したソフトウエ
ア番号に対応するROM62のアドレスPa3をWOR
K RAM47を検索して読み出す(ステップ30
1)。そして、この読み出したアドレスPa3にジャン
プして(ステップ302)、ROM62に格納されてい
る該当ソフトウエアのプログラム(直前に実施されてい
たソフトウエアのプログラム)を実行する(ステップ3
03)。これにより、ROM62に格納されている該当
ソフトウエアのプログラムがPROG RAM48に転
送される。
【0114】PROG RAM48に対するプログラム
の転送が終了すると、次にCPU40は、PROG R
AM48の特定アドレスPa4にジャンプして、転送が
終了したプログラムを実行する(ステップ304)。
【0115】次に、CPU40は、共有RAM50にス
テップ300で照会したソフトウエア番号を書き込み
(ステップ305)、その後CPU54に向けてI/O
ポート44から出力されているリセット信号を解除する
(ステップ306)。
【0116】その後、CPU54によるプログラム及び
データの転送が行われ(詳細は後述する)、CPU40
はCPU54による転送終了信号を待って(ステップ3
07)、シミュレーション動作を開始する。
【0117】(3b)PROG RAM60及びPRO
G RAM68に対するプログラムの転送動作 上述したCPU40による転送動作が終了して、図15
のステップ306においてリセット信号が解除される
と、CPU54が起動されてプログラム及びデータの転
送が開始される。
【0118】CPU54の起動時にPROG RAM
60に対してプログラムの予備転送(後述3b−1)を
行う場合には、CPU54が図1に示すプログラム実行
部10に、BOOT ROM58が転送プログラム・デ
ータ特定部11および検索プログラム格納部23に、R
OM62が転送元格納部12に、PROG RAM60
が転送先格納部18にそれぞれ対応する。
【0119】また、復帰動作時(後述3b−2)にP
ROG RAM60に対してプログラムの転送を行う場
合には、CPU54が図1に示すプログラム実行部10
に、共有RAM50が転送プログラム・データ特定部1
1に、ROM62が転送元格納部12に、PROG R
AM60が転送先格納部18および検索プログラム格納
部23にそれぞれ対応する。
【0120】図16及び図17は、CPU54がプログ
ラムの転送を行う場合の動作手順を示す図である。図1
6には転送に必要なプログラムを転送するとともに、該
当するプログラムとアドレスとを対応づける動作(予備
転送動作及び対照表作成動作)手順が、図17には直前
に実施していたプログラムを実際に転送する動作(復帰
動作)手順がそれぞれ示されている。
【0121】(3b−1)予備転送動作及び対照表作成
動作 まず、図16を参照しながら予備転送動作及び対照表作
成動作について説明する。
【0122】リセット信号が解除されたCPU54は、
BOOT ROM58に格納されている検索用プログラ
ムを実行することにより、PROG RAM60に転送
すべきプログラムのROM62内での格納アドレスを検
索する。
【0123】具体的には、検索用プログラムを実行した
CPU54は、サーチアドレスをROM62の先頭ブロ
ックに設定し(ステップ400)、この設定したサーチ
アドレスが先頭アドレスとなっているブロックの先頭部
分を調べることにより、転送したいプログラムのIDコ
ードがあるか否かを判断する(ステップ401)。設定
されたサーチアドレス付近に転送したいプログラムのI
Dコードがある場合には、CPU54は肯定判断を行
い、後述するステップ404以降の処理に移る。
【0124】IDコードがない場合には、CPU54は
否定判断を行って、サーチアドレスを次のブロックの先
頭アドレスに設定する(ステップ402)。そして、C
PU54は、全てのブロックをサーチしたか否かを判断
する(ステップ403)。全てのブロックをサーチして
いない場合には否定判断を行い、ステップ401以降の
処理を繰り返す。また、全てのブロックに対してステッ
プ401の処理(サーチ)が終了した場合には、ステッ
プ403で肯定判断を行い、ステップ400に戻って処
理を繰り返す。
【0125】また、ステップ401において肯定判断を
行った場合(CPU54のIDコードがあった場合)に
は、次にCPU54は、検索したブロック中の特定アド
レスPb1にジャンプして、この特定アドレス以降に格
納されたプログラムを実行する(ステップ404)。
【0126】次に、CPU54は検索したブロックの内
容をPROG RAM60に転送し(ステップ40
5)、転送が終了するとPROG RAM60の特定ア
ドレスPb2にジャンプして(ステップ406)、PR
OG RAM60に転送されたプログラムの実行を開始
する。このようにして予備転送動作が終了する。
【0127】次に、PROG RAM60に転送された
プログラムの実行を開始したCPU54は、WORK
RAM59の所定アドレスに対照表作成済みフラグが立
っているか調べる(ステップ407)。ここでは、まだ
フラグを立てていないので否定判断を行い、次に、再び
サーチアドレスをROM62の先頭ブロックに設定し
(ステップ408)、この設定したサーチアドレスが先
頭アドレスとなっているブロックの先頭部分を調べるこ
とにより、CPU54自身のIDコードがあるか否かを
判断する(ステップ409)。該当するIDコードがあ
る場合にはCPU54は肯定判断を行い、WORK R
AM59にステップ408で設定したサーチアドレスを
書き込む(ステップ410)。なお、WORK RAM
59は、CPUボード24内のWORK RAM47に
対応するものであり、格納領域がソフトウエア番号ごと
に分けられており、ソフトウエア番号とサーチアドレス
とが対応づけられて格納される。
【0128】ステップ409において否定判断を行った
場合(CPU54自身のIDコードがブロックに含まれ
ていない場合)、あるいはステップ410においてサー
チアドレスの書き込みが終了した場合には、次にCPU
54はサーチアドレスを次のブロックの先頭アドレスに
設定する(ステップ411)。そして、CPU54は、
全てのブロックをサーチしたか否かを判断する(ステッ
プ412)。全てのブロックをサーチしていない場合に
は否定判断を行い、ステップ409以降の処理を繰り返
す。また、全てのブロックに対してステップ401の処
理が終了した場合には、ステップ412で肯定判断を行
い、WORK RAM59の所定アドレスに対照表作成
済みフラグを立てる(ステップ413)。このようにし
て対照表作成動作が終了し、次の復帰動作に移行する。
【0129】(3b−2)復帰動作 次に、図17を参照しながら復帰動作について説明す
る。
【0130】まず、CPU54は、共有RAM50に格
納されているソフトウエア番号を読み出して照会する
(ステップ500)。上述したように、共有RAM50
に格納されているソフトウエア番号は、直前に実施して
いたソフトウエア番号であり、この番号を知ることによ
り復帰動作が可能になる。
【0131】次に、CPU54は、照会したソフトウエ
ア番号に対応するROM62のアドレスPb3をWOR
K RAM59を検索して読み出す(ステップ50
1)。そして、この読み出したアドレスPb3にジャン
プして(ステップ502)、ROM62に格納されてい
る該当ソフトウエアのプログラム(直前に実施されてい
たソフトウエアのプログラム)を実行する(ステップ5
03)。これにより、ROM62に格納されている該当
ソフトウエアのプログラムがPROG RAM60に転
送される。
【0132】PROG RAM60に対するプログラム
の転送が終了すると、次にCPU54は、PROG R
AM60の特定アドレスPb4にジャンプして、転送が
終了したプログラムの実行を開始する(ステップ50
5)。
【0133】なお、PROG RAM68にはDSP6
4の動作用プログラムが転送格納されるわけであるが、
本実施例ではPROG RAM60に転送されたプログ
ラムの中にそれが含まれており、その部分がそのままP
ROG RAM68に転送されるようになっている。具
体的には後述するステップ800の前に行われるのであ
るが、DSP64はどのソフトウエアにおいても同じよ
うに動作するため、DSP64の動作用プログラムはど
のソフトウエアにおいても同じものが準備されている。
したがってこのPROG RAM68はROMとして、
あらかじめDSP64の動作用プログラムを格納してお
くこともできる。
【0134】(3c)CG RAM86,パレットRA
M96,ポイントRAM72,ラインRAM76に対す
るデータの転送動作 CPU54によるプログラムの転送動作が終了すると、
次にCPU54による各RAMに対するデータ転送が行
われる。
【0135】CG RAM86,パレットRAM9
6,ポイントRAM72,ラインRAM76に対す
るデータの転送を行う場合においては、CPU54が図
1に示すプログラム実行部10に、共有RAM50が転
送プログラム・データ特定部11に、ROM62が転送
元格納部12に、CG RAM86,パレットRAM9
6,ポイントRAM72,ラインRAM76のそれぞれ
が転送先格納部18に、PROG RAM60が検索プ
ログラム格納部23及び転送用プログラム14を格納す
る転送元格納部12にそれぞれ対応する。
【0136】図18〜図20は、CPU54がデータの
転送を行う場合の動作手順を示す図である。図18には
転送すべきオブジェクト関連のデータ(CG RAM8
6及びパレットRAM96に転送されるデータ)のソフ
トウエア番号とこれらのデータが格納されているアドレ
スとを対応づける動作(対照表作成動作1)手順が、図
19には転送すべきポリゴン関連のデータ(ポイントR
AM72及びラインRAM76に転送されるデータ)の
ソフトウエア番号とこれらのデータが格納されているア
ドレスとを対応づける動作(対照表作成動作2)手順
が、図20には直前に実施していたプログラムのデータ
を実際に転送する動作(復帰動作)手順がそれぞれ示さ
れている。
【0137】(3c−1)対照表作成動作1 まず、図18を参照しながら対照表作成動作1について
説明する。
【0138】PROG RAM60に転送されたプログ
ラムを実行したCPU54は、再びサーチアドレスをR
OM62の先頭ブロックに設定し(ステップ600)、
設定したサーチアドレスが先頭アドレスとなっているブ
ロックの先頭部分を調べることにより、図11(d)に
示したオブジェクトデータのIDコードがあるか否かを
判断する(ステップ601)。該当するIDコードがあ
る場合にはCPU54は肯定判断を行い、WORK R
AM59にステップ600で設定したサーチアドレスを
書き込む(ステップ602)。
【0139】ステップ601において否定判断を行った
場合(オブジェクトデータのIDコードがブロックに含
まれていない場合)、あるいはステップ602において
サーチアドレスの書き込みが終了した場合には、次にC
PU54はサーチアドレスを次のブロックの先頭アドレ
スに設定する(ステップ603)。そして、CPU54
は、全てのブロックをサーチしたか否かを判断する(ス
テップ604)。全てのブロックをサーチしていない場
合には否定判断を行い、ステップ601以降の処理を繰
り返す。また、全てのブロックに対してステップ601
の処理が終了した場合には、ステップ604で肯定判断
を行い、次の対照表作成動作2に移行する。
【0140】(3c−2)対照表作成動作2 次に、図19を参照しながら対照表作成動作1について
説明する。
【0141】まず、CPU54は、再びサーチアドレス
をROM62の先頭ブロックに設定し(ステップ70
0)、設定したサーチアドレスが先頭アドレスとなって
いるブロックの先頭部分を調べることにより、図11
(c)に示したポリゴンデータのIDコードがあるか否
かを判断する(ステップ701)。該当するIDコード
がある場合にはCPU54は肯定判断を行い、WORK
RAM59にステップ700で設定したサーチアドレ
スを書き込む(ステップ702)。
【0142】ステップ701において否定判断を行った
場合(ポリゴンデータのIDコードがブロックに含まれ
ていない場合)、あるいはステップ702においてサー
チアドレスの書き込みが終了した場合には、次にCPU
54はサーチアドレスを次のブロックの先頭アドレスに
設定する(ステップ703)。そして、CPU54は、
全てのブロックをサーチしたか否かを判断する(ステッ
プ704)。全てのブロックをサーチしていない場合に
は否定判断を行い、ステップ701以降の処理を繰り返
す。また、全てのブロックに対してステップ701の処
理が終了した場合には、ステップ704で肯定判断を行
い、次の復帰動作に移行する。
【0143】(3c−3)復帰動作 次に、図20を参照しながら復帰動作について説明す
る。
【0144】まず、CPU54は、共有RAM50に格
納されているソフトウエア番号を読み出して照会する
(ステップ800)。上述したように、共有RAM50
に格納されているソフトウエア番号は、直前に実施して
いたソフトウエア番号であり、この番号を知ることによ
り各種データの復帰動作が可能になる。
【0145】次に、CPU54は、照会したソフトウエ
ア番号に対応するオブジェクト関連データのアドレスを
WORK RAM59を検索して読み出す(ステップ8
01)。そして、この読み出したアドレスで指定される
ブロックに含まれるオブジェクト関連のデータをROM
62から読み出して、CG RAM86及びパレットR
AM96に振り分けて転送する(ステップ802)。な
お、パレットRAM96は、アドレスバス54a及びデ
ータバス54dを介してCPU54に直接接続されては
おらず、パレットコントローラ94を介して接続されて
いる。従って、データ転送時にCPU54は、パレット
コントローラ94を介してパレットRAM96に対して
データの書き込みを行っている。
【0146】次に、CPU54は、照会したソフトウエ
ア番号に対応するポリゴン関連データのアドレスをWO
RK RAM59を検索して読み出す(ステップ80
3)。そして、この読み出したアドレスで指定されるブ
ロックに含まれるポリゴン関連のデータをROM62か
ら読み出して、ポイントRAM72及びラインRAM7
6に振り分けて転送する(ステップ804)。なお、ポ
イントRAM72及びラインRAM76は、アドレスバ
ス54a及びデータバス54dを介してCPU54に直
接接続されてはおらず、それぞれ共有RAM70,ポリ
ゴン処理回路74を介して接続されている。従って、デ
ータ転送時にCPU54は、共有RAM70あるいはポ
リゴン処理回路74を介してポイントRAM72,ライ
ンRAM76に対するデータの書き込みを行っている。
【0147】ステップ804におけるデータ転送が終了
すると、次にCPU54は、共有RAM50に対して転
送終了の信号を送り(ステップ805、図15のステッ
プ307に対応する)、その後シミュレーション動作を
開始する。
【0148】このように、本実施例のシミュレータにお
いては、複数のソフトウエアのプログラム及びデータを
ROM62に格納しておいて、起動時あるいはリセット
時に、実施したいソフトウエアのプログラム及びデータ
をCPUボード24等の各種ボードに転送している。
【0149】(3d)シミュレータのプログラムスター
ト後のソフトウェア変更動作 通信IC52を通して、I/O CPUボード38から
ソフトウェア変更の指示があった場合、CPU40は通
信IC52を通して指定されたソフトウェア番号を受け
とり、I/Oポート44を通してCPU54にリセット
信号を送るとともにステップ301へジャンプする。そ
してそこからフローに示す通りに復帰動作時と同じ動作
を行い、PROG RAM48に対して指定されたプロ
グラムを転送する。
【0150】この場合には、CPU40が図1に示すプ
ログラム実行部10に、I/O CPUボード38およ
び通信IC52が転送プログラム・データ特定部11
に、ROM62が転送元格納部12に、PROG RA
M48が転送先格納部18および検索プログラム格納部
23にそれぞれ対応する。
【0151】また、CPU54は、CPU40による転
送動作が終了して、ステップ306においてリセット信
号が解除されると、再びステップ400からスタート
し、予備転送動作を行うが、ステップ407の対照表作
成済みフラグが立っているかの判断において、前の処理
過程で対照表作成済みフラグを立てたためここでは肯定
判断を行い、対照表の作成は行わずにステップ500へ
ジャンプする。そしてそれ以降は図に示す通り前に行っ
た処理と同様の処理を行い、PROG RAM60、P
ROG RAM68、ポイントRAM72、ラインRA
M76、CG RAM86、パレットRAM96に対し
て指定されたプログラムあるいはデータを転送する。
【0152】このようにして随時I/O CPUボード
38からソフトウェア変更指示を与えて転送先格納部の
プログラム、データを指定したソフトウェアのものに置
き換えることができ、簡単に現在プレイしているものと
異なるシミュレーションソフトをプレイすることができ
るようになる。
【0153】以上、ドライビングシミュレータを例にあ
げて説明したように、ROM62には最初から複数のソ
フトウエアのプログラム及びデータを格納しておくた
め、実施するソフトウエアを変更するたびに装置外部か
らソフトウエアを変更する必要がない。また、各種のソ
フトウエアを別々のROMに格納しておいて、必要に応
じてROMを取り替えるといった手間がかからず、操作
が煩雑になるということもない。さらに、複数のソフト
ウエア毎にハードウエアを備える場合に比べて、ほとん
どのハードウエアを共用化して使用しており、回路の無
駄がない。
【0154】なお、本発明は、上記実施例に限定される
ものではなく、本発明の要旨の範囲内で種々の変形実施
が可能である。
【0155】例えば、図2に全体構成を示したドライビ
ングシミュレータにおいては、転送するプログラムに転
送用プログラムも含ませておいて、この転送用プログラ
ムを転送した後は、転送したプログラムを実行して残り
のプログラム転送を継続するようにしたが、転送用プロ
グラムは常にROM62に格納したものを用いるように
してもよい。
【0156】また、上述した実施例では、直前に実施し
ていたソフトウエアのプログラム及びデータを読み出し
てシミュレーション動作を再開する場合を例にとり説明
したが、I/O CPUボード38内の操作パネル11
4のテンキーを操作してソフトウエアを変更する場合も
同様に考えることができる。この場合にCPU40は、
操作パネル114を操作して入力されたソフトウエア番
号をバックアップRAM49に格納するとともに、図1
5に示した動作手順を実行してプログラム転送を行う。
また、CPU54は、図17及び図20に示した動作手
順を実行してプログラム及びデータの転送を行う。
【0157】また、図2にはドライビングシミュレータ
の具体例を示したが、本発明は当該シミュレータの他、
家庭用あるいは業務用のゲーム機にも適用することでき
る。例えば、家庭用ゲーム機の場合には、ROMカセッ
トに複数のゲーム用ソフトウエアを格納しておいて、プ
レーヤが実施したいゲームのソフトウエアのみをゲーム
機本体のRAMに転送するようにしてもよい。
【0158】
【発明の効果】上述したように、本発明によれば、複数
のソフトウエアに対応するデータあるいはプログラムを
必要に応じて転送先格納手段に転送した後にソフトウエ
アの実行が行われるため、複数のソフトウエアを切り替
える際のハードウエアの操作等が不要となり、操作の繁
雑さを回避することができる。また、複数のソフトウエ
アを実行する際に、共通した転送先格納手段を用いるた
め、ハードウエアの重複部分をなくして回路の無駄を省
くことができる。さらに、転送先格納手段を用いてソフ
トウエアが実行されるため、回路が必要以上に複雑化す
ることがない。また、プログラムやデータ変更にROM
変更を行う場合でも、集約して行えるので便利である。
【図面の簡単な説明】
【図1】本発明を適用した一実施例のプログラム実行装
置の概略を示す図である。
【図2】図1に示したプログラム実行装置をドライビン
グシミュレータに適用した場合の当該装置の具体的構成
を示す図である。
【図3】CPUボードの詳細な構成を示す図である。
【図4】CPUボードの詳細な構成を示す図である。
【図5】ROMボードの詳細な構成を示す図である。
【図6】ROMを複数の素子を用いて構成した場合の具
体例を示す図である。
【図7】DSPボードの詳細な構成を示す図である。
【図8】PGNボードの詳細な構成を示す図である。
【図9】OBJボードの詳細な構成を示す図である。
【図10】I/O CPUボードの詳細な構成を示す図
である。
【図11】ROMに格納されるプログラムあるいはデー
タの格納状態を示す図である。
【図12】図11に示した各種プログラムおよびデータ
をROMに格納する場合の具体的なアドレスマップを示
す図である。
【図13】プログラムの転送を行う場合の動作手順を示
す図である。
【図14】プログラムの転送を行う場合の動作手順を示
す図である。
【図15】プログラムの転送を行う場合の動作手順を示
す図である。
【図16】プログラムの転送を行う場合の動作手順を示
す図である。
【図17】プログラムの転送を行う場合の動作手順を示
す図である。
【図18】データの転送を行う場合の動作手順を示す図
である。
【図19】データの転送を行う場合の動作手順を示す図
である。
【図20】データの転送を行う場合の動作手順を示す図
である。
【図21】家庭用ゲーム機で複数種類のゲームを行う場
合の概念図である。
【符号の説明】
10 プログラム実行部 11 転送プログラム・データ特定部 12 転送元格納部 18 転送先格納部 23 検索プログラム格納部 40,54 CPU 46,58,66 BOOT ROM 48,60,68 PROG RAM 62 ROM 64 DSP 72 ポイントRAM 76 ラインRAM 86 CG RAM 96 パレットRAM

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 複数の被転送プログラムあるいはデータ
    と、転送処理を行うための転送用プログラムとを格納す
    る転送元格納手段と、 前記被転送プログラムあるいはデータが転送されて転送
    プログラムあるいはデータとして格納される転送先格納
    手段と、 前記転送元格納手段に格納された複数の被転送プログラ
    ムあるいはデータの中から転送の対象となる1つあるい
    は複数のプログラムあるいはデータを特定する転送プロ
    グラム・データ特定手段と、 前記転送プログラム・データ特定手段によって特定され
    た転送すべき1つあるいは複数のプログラムあるいはデ
    ータを前記転送元格納手段の格納領域を調べて検索する
    検索プログラムを格納する検索プログラム格納手段と、 前記検索プログラム格納手段に格納された検索プログラ
    ムを実行することにより、前記転送プログラム・データ
    特定手段によって特定された転送すべき1つあるいは複
    数のプログラムあるいはデータを検索するとともに、前
    記転送元格納手段に格納された転送用プログラムを実行
    することにより、検索した1つあるいは複数のプログラ
    ムあるいはデータを前記転送先格納手段に転送するプロ
    グラム実行手段と、 を備え、前記転送先格納手段に格納された転送後のプロ
    グラムあるいはデータを用いて所定の処理を行うことを
    特徴とするプログラム実行装置。
  2. 【請求項2】 請求項1において、 前記転送プログラム・データ特定手段は、転送の対象と
    なる1つあるいは複数のプログラムあるいはデータを、
    これらのプログラムあるいはデータに含まれる所定の識
    別符号に基づいて特定し、 前記プログラム実行手段は、前記検索プログラム格納手
    段に格納された検索プログラムを実行したときに、前記
    転送元格納手段の格納領域を複数の領域に分割して、各
    分割領域の所定位置に前記所定の識別符号が含まれるか
    どうか調べることにより転送すべきプログラムあるいは
    データの検索を行うことを特徴とするプログラム実行装
    置。
  3. 【請求項3】 請求項1において、 前記転送元格納手段は、前記転送プログラム・データ特
    定手段によって特定されて転送される1つあるいは複数
    のプログラムに対応させて前記転送用プログラムを格納
    し、 前記プログラム実行手段は、最初は前記転送元格納手段
    に格納された転送用プログラムを実行することにより、
    前記検索した1つあるいは複数のプログラムとともに前
    記転送用プログラムの転送を行い、前記転送用プログラ
    ムが転送された後は、前記転送先格納手段に転送されて
    格納された前記転送用プログラムを実行することによ
    り、転送が終了していない前記検索した1つあるいは複
    数のプログラムの転送を行うことを特徴とするプログラ
    ム実行装置。
JP19786093A 1993-07-15 1993-07-15 プログラム実行装置 Withdrawn JPH0736701A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19786093A JPH0736701A (ja) 1993-07-15 1993-07-15 プログラム実行装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19786093A JPH0736701A (ja) 1993-07-15 1993-07-15 プログラム実行装置

Publications (1)

Publication Number Publication Date
JPH0736701A true JPH0736701A (ja) 1995-02-07

Family

ID=16381539

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19786093A Withdrawn JPH0736701A (ja) 1993-07-15 1993-07-15 プログラム実行装置

Country Status (1)

Country Link
JP (1) JPH0736701A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008108064A (ja) * 2006-10-25 2008-05-08 Toshiba Corp ディジタルシグナルプロセッサシステム及びディジタルシグナルプロセッサの起動方法
JP5458574B2 (ja) * 2006-06-27 2014-04-02 日本電気株式会社 マルチプロセッサシステム、マルチプロセッサシステムを使用した携帯端末

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5458574B2 (ja) * 2006-06-27 2014-04-02 日本電気株式会社 マルチプロセッサシステム、マルチプロセッサシステムを使用した携帯端末
JP2008108064A (ja) * 2006-10-25 2008-05-08 Toshiba Corp ディジタルシグナルプロセッサシステム及びディジタルシグナルプロセッサの起動方法

Similar Documents

Publication Publication Date Title
JP2763499B2 (ja) 画像合成装置及び画像合成方法
US4296930A (en) TV Game apparatus
WO1996008298A1 (en) Three-dimensional simulator and image synthesis method
US20030040362A1 (en) Image generation method, program, and information storage medium
CN103150699A (zh) 图形指令生成装置和图形指令生成方法
US5946004A (en) Enhanced function board for use in processing image data and image processing apparatus using the same
JPH07116343A (ja) 電子遊戯機器
EP0992267B1 (en) Image creating apparatus, displayed scene switching method for the image creating apparatus, computer-readable recording medium containing displayed scene switching program for the image creating apparatus, and video game machine
EP1255227A1 (en) Vertices index processor
US6172670B1 (en) Method and apparatus for simultaneous shape-dependent access to picture data stored at a plurality of addresses
US6339430B1 (en) Video game machine and method for changing texture of models
JP3797608B2 (ja) ゲーム装置およびゲームプログラム
JP3791728B2 (ja) ゲーム画面の表示制御方法、ゲームシステムおよびコンピュータ読み取り可能な記録媒体
JPH0736701A (ja) プログラム実行装置
CN115131474B (zh) 对象显示方法、装置、设备、介质及程序产品
US6677955B1 (en) Image processing method and image processing apparatus
EP0670560B1 (en) A method for sorting polygon data, a video game machine employing the same and acomputer program performing the method
GB1571291A (en) Tv game apparatus
JPH11347254A (ja) 通信ゲームシステム及びそれにおけるゲーム実行方法
JP3394067B2 (ja) 画像発生装置
JP2990190B2 (ja) 3次元シミュレータ装置及び画像合成方法
JP2001084390A (ja) 画像生成システム及び情報記憶媒体
US6618055B1 (en) Computer readable program product, method of image processing and image processing system
JP2830765B2 (ja) ポリゴンデータのソート方法及びこれを用いたゲーム装置
JP3130496B2 (ja) 擬似3次元ゲーム空間における空間情報の作成方法、擬似3次元画像と可動モデルとの接触判定方法、接触判定装置、並びにかかる接触判定を行うプログラムを記憶した可読記録媒体

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20001003