JP2008259248A - Electronic device - Google Patents
Electronic device Download PDFInfo
- Publication number
- JP2008259248A JP2008259248A JP2008194194A JP2008194194A JP2008259248A JP 2008259248 A JP2008259248 A JP 2008259248A JP 2008194194 A JP2008194194 A JP 2008194194A JP 2008194194 A JP2008194194 A JP 2008194194A JP 2008259248 A JP2008259248 A JP 2008259248A
- Authority
- JP
- Japan
- Prior art keywords
- game
- key
- register
- image data
- data
- 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.)
- Pending
Links
Images
Abstract
Description
この発明は、ゲーム機能および電話機能を有し、電話の着信があったときにゲームを中断する、電子装置に関する。 The present invention relates to an electronic device that has a game function and a telephone function, and interrupts the game when an incoming call is received.
従来のこの種の電子装置の一例が、平成8年3月26日に出願公開された特開平8−84172号[H04M1/00]に開示されている。この従来技術は、電話機能とラジオ放送の受信機能とを備え、ラジオ放送の受信中に着信があると、通話・フックスイッチの操作に応答して、ラジオ放送の受信を終了するとともに、発呼元との接続処理を行なおうとするものである。 An example of a conventional electronic device of this type is disclosed in Japanese Patent Application Laid-Open No. 8-84172 [H04M1 / 00] filed on March 26, 1996. This prior art has a telephone function and a radio broadcast reception function. When an incoming call is received during reception of the radio broadcast, the radio broadcast is terminated in response to the call / hook switch operation. The connection process with the original is to be performed.
しかし、従来技術は、ラジオ放送の受信を終了しようとするものであるため、電話機能とゲーム機能とを備える電子装置にこの従来技術を適用すると、着信操作に応答してゲームが終了してしまう。そうすると、ゲームは、通話終了後、最初からやり直さなければならなくなる。 However, since the prior art is intended to end reception of radio broadcasts, if this prior art is applied to an electronic device having a telephone function and a game function, the game ends in response to an incoming call operation. . Then, the game must be restarted from the beginning after the call ends.
それゆえに、この発明の主たる目的は、通話終了後にゲームを途中から再開できる、電子装置を提供することである。 Therefore, a main object of the present invention is to provide an electronic device capable of resuming a game from the middle after the end of a call.
この発明は、ゲーム機能および電話機能を有する電子装置において、実行中のゲームの中断を指示する中断キー、中断キーの操作に応答して第1所定値が設定される第1レジスタ、第1レジスタの設定値が第1所定値を示すときゲームを中断する中断手段、電話の着信を検出する検出手段、および着信の検出に応答して第1所定値を第1レジスタに設定する設定手段を備えることを特徴とする、電子装置である。 According to the present invention, in an electronic device having a game function and a telephone function, an interrupt key for instructing to interrupt a game being executed, a first register in which a first predetermined value is set in response to an operation of the interrupt key, and a first register Interruption means for interrupting the game when the set value indicates a first predetermined value, detecting means for detecting an incoming call, and setting means for setting the first predetermined value in the first register in response to detection of the incoming call This is an electronic device.
実行中のゲームの中断を指示する中断キーが操作されると、第1所定値が第1レジスタに設定される。すると、中断手段によってゲームが中断される。一方、電話の着信は検出手段によって検出され、着信があると第1所定値が設定手段によって第1レジスタに設定される。このため、着信があったときは、中断キーを操作することなくゲームが中断される。 When the interruption key for instructing interruption of the game being executed is operated, a first predetermined value is set in the first register. Then, the game is interrupted by the interrupting means. On the other hand, the incoming call is detected by the detecting means, and when there is an incoming call, the first predetermined value is set in the first register by the setting means. For this reason, when there is an incoming call, the game is interrupted without operating the interrupt key.
この発明のある局面では、第1レジスタが第1所定値を示すと、現時点のゲームデータが保存手段によってメモリに保存される。 In one aspect of the present invention, when the first register indicates the first predetermined value, the current game data is stored in the memory by the storing means.
この発明の他の局面では、ゲームが実行中であるかどうかが判別手段によって判別される。設定手段は、ゲームが実行中のときに、第1所定値を第1レジスタに設定する。つまり、ゲーム実行中に着信があったときに第1所定値が第1レジスタに設定され、これによってゲームが中断される。 In another aspect of the present invention, it is determined by the determining means whether or not the game is being executed. The setting means sets the first predetermined value in the first register when the game is being executed. That is, when there is an incoming call while the game is running, the first predetermined value is set in the first register, thereby interrupting the game.
この発明のその他の局面では、ゲームの再開を指示する再開キーが操作されると、第2所定値が第2レジスタに設定される。すると、再開手段によってゲームが再開される。 In another aspect of the present invention, when a restart key for instructing restart of the game is operated, a second predetermined value is set in the second register. Then, the game is restarted by the restarting means.
この発明のさらにその他の局面では、着信があると、表示手段に表示されているゲーム画面の階調が、変更手段によって変更される。 In still another aspect of the present invention, when there is an incoming call, the gradation of the game screen displayed on the display means is changed by the changing means.
この発明の他の局面では、ゲームは、電話機能によって外部からダウンロードされたゲームプログラムに従って実行される。 In another aspect of the present invention, the game is executed according to a game program downloaded from the outside by a telephone function.
この発明によれば、着信があると、中断キーを操作することなくゲームが中断される。つまり、ゲームは、終了ではなく中断される。このため、通話が終了した後にゲームを途中から再開することができる。 According to the present invention, when there is an incoming call, the game is interrupted without operating the interrupt key. That is, the game is interrupted rather than ended. For this reason, the game can be resumed from the middle after the call ends.
また、レジスタには、中断キーが操作されたときだけでなく、電話の着信があったときも、第1所定値が設定される。このため、従来からあるゲームプログラム(レジスタに第1所定値が設定されたときにゲームを中断するプログラム)をそのままこの実施例の電子装置に用いたとしても、着信時にゲームを中断させることができる。つまり、従来のゲームプログラムが元々備えているゲームポーズ機能を変更することなく、電話着信時にゲームにポーズをかけることができる。 The first predetermined value is set in the register not only when the interruption key is operated but also when a call is received. For this reason, even if a conventional game program (a program for interrupting the game when the first predetermined value is set in the register) is used as it is in the electronic apparatus of this embodiment, the game can be interrupted when an incoming call is received. . In other words, the game can be paused when a call is received without changing the game pause function originally provided in the conventional game program.
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。 The above object, other objects, features and advantages of the present invention will become more apparent from the following detailed description of embodiments with reference to the drawings.
図1を参照して、この実施例のゲーム機能付携帯通信端末10は、細長の直方体状に形成された本体12を含む。本体12の上面にはアンテナ14が突出し、本体12の前面には、スピーカ16,カラーLCD18,ゲーム起動キー20,ゲームキー22,電話キー24およびマイク26が配置される。
Referring to FIG. 1, a mobile communication terminal with
ゲームキー22としては、ゲームを展開する主人公に所定方向への移動(たとえば前進,後退,方向転換,ジャンプなど)を指示する十字キー22aと、主人公に所定の振る舞い(たとえばアイテムの獲得や標的への攻撃)を指示するAボタン22bおよびBボタン22cとが存在する。また、電話キー24としては、フックキー24a,ホールドキー24b,“0”〜“9”を示す数字キー24c,*キー24dおよび#キー24eが存在する。
The
着信待ち状態では、LCD18に図2に示すような着信待ち画面が表示される。図2によれば、今日の日付および現在時刻と本件出願人の制作に係るゲームキャラクタとが画面中央に表示され、受信状態およびバッテリ残量を示すキャラクタが画面上方に表示される。着信待ち状態でオペレータがフックキー24aおよび数字キー24cを用いてダイヤル操作をすると、ダイヤルされた電話番号がLCD18に表示されるとともに、相手方に対する発呼処理が行われる。この発呼に対して相手方が着信操作をすると、プロトコルが確立され、通話が可能となる。一方、相手方から着信があると、着信メッセージおよび発信元の電話番号がLCD18に表示されるとともに、着信音が本体12の背面に設けられたスピーカ48(図7参照)から出力される。ここでオペレータがフックキー24aを操作すると、着信音の出力が中止されるとともに発信元との間でプロトコルが確立され、通話可能状態となる。
In the incoming call waiting state, an incoming call waiting screen as shown in FIG. According to FIG. 2, today's date and current time and the game character related to the production of the applicant are displayed at the center of the screen, and a character indicating the reception state and the remaining battery level is displayed at the top of the screen. When the operator performs a dial operation using the hook key 24a and the numeric key 24c while waiting for an incoming call, the dialed telephone number is displayed on the
着信待ち状態のときにオペレータがゲーム起動キー20を操作すると、電話モードからゲームモードに移行する。まず図3に示すようなメニュー画面が表示され、オペレータがこのメニュー画面から所望のゲーム(たとえばスーパーマリオDX)を選択すると、選択されたゲームが開始される。LCD18の表示は図4に示すようなゲーム画面に更新され、背面のスピーカ48からはBGMが出力される。ゲームは上述のゲームキー22の操作に応答して進行し、必要に応じて効果音がスピーカ48から出力される。
When the operator operates the
この実施例では、ゲームモードにおいて、*キー24dがスタートキーとして機能し、#キー24eがセレクトキーとして機能する(他の電話キーをスタートキーやセレクトキーとして機能させるようにしてもよい)。このため、進行中のゲームは、*キー24dの操作に応じて中断/再開される。つまり、ゲームの進行中に*キー24dが押されると、ポーズ状態に移行し、ゲーム画面の動きが止まるとともにBGMの出力が中断される。*キー24dが再度押されると、ポーズ状態が解除され、ゲーム画面が動き出すとともにBGMの出力が再開される。また、上述のメニュー画面やプレイヤの選択を促す画面などでは、#キー24eを操作することで画面上のカーソルが移動する。
In this embodiment, in the game mode, the *
ゲームの進行中でも着信検出は常時行われており、着信があると、ゲーム画面の動きが停止するとともに、BGMの出力が中止される。つまり、着信に応答してゲームにポーズがかけられる。さらに、スピーカ48からはBGMに代えて着信音が出力され、LCD18の表示は図5に示すような着信画面に更新される。図5によれば、ゲーム画面の階調(トーン)が変更され、“着信中”との着信メッセージと発信元の電話番号とがゲーム画面上に表示される。このときも、フックキー24aの操作によって着信音の出力が中止されるとともにプロトコルが確立され、通話可能状態となる。通話が終了すると、トーンが元に戻され、図4に示すゲーム画面が再度表示される。
While the game is in progress, incoming call detection is always performed. When there is an incoming call, the movement of the game screen stops and the output of BGM is stopped. That is, the game is paused in response to the incoming call. Further, a ringtone is output from the
ただし、通話終了後もポーズ状態は継続し、このポーズ状態は*キー24dの操作に応じて解除される。つまり、着信時は*キー24dを操作することなくゲームにポーズがかけられるが、ポーズ状態は*キー24dの操作によって解除される。*キー24dの操作によるポーズ状態の解除によって、上述のように、ゲーム画面が動き出し、BGMの出力が再開される。
However, the pause state continues even after the call ends, and the pause state is canceled in response to the operation of the *
ゲームの途中または開始時点でプレイヤの名前を登録する必要が生じると、図6(A)および図6(B)に示すようなプレイヤ名入力画面がLCD18に表示される。このとき、プレイヤ名は、数字キー24cの操作によって画面上の名前入力枠内に表示される。つまり、数字キー24cの各々には50音のひらがな,まる「゜」,てん「゛」などが割り当てられており、この数字キー24cの操作によって所望の名前の入力処理が行われる。
When it becomes necessary to register the player's name in the middle or at the start of the game, a player name input screen as shown in FIGS. 6A and 6B is displayed on the
本体12の内部は、具体的には図7に示すように構成される。ゲーム起動キー20および電話キー24は、電話処理用のCPU(電話CPU)28と直接接続される。また、アンテナ14は、送受信回路32を介して電話CPU28と接続され、スピーカ16およびマイク26は、音声コーデック30を介して電話CPU28と接続される。スピーカ48は、加算器46を介して電話CPU28と接続される。SRAM34およびフラッシュメモリ36は、8ビットバス38を介して電話CPU28に接続される。フラッシュメモリ36には電話処理のためのプログラム(電話プログラム)や電話帳データが格納され、SRAM34は電話プログラムの処理時にワークRAMとして用いられる。
Specifically, the inside of the
一方、ゲーム処理用のCPU(ゲームCPU)40には、ゲームキー22,LCD18,SRAM42および外部端子Sが直接接続され、スピーカ48が加算器46およびアンプ44を介して接続される。SRAM42は、ゲーム処理のためのプログラム(ゲームプログラム)を処理するときに外部ワークRAMとして用いられる。
On the other hand, the
なお、電話CPU28とゲームCPU40との間では、8ビットバス38を介したデータのやり取りに加えて、割り込み要求および通信データの直接のやり取りが行なわれる。通信データは、外部接続用端子Sを通して接続される外部機器(図示せず)との間でもやり取りされる。
In addition to the exchange of data via the 8-
ゲームCPU40は、図8に示すように構成される。プロセサとしては、ゲームCPUコア50,音声処理ユニット(SPU)64,画像処理ユニット(PPU)78およびLCDコントローラ84が存在する。また、内部メモリとしては、システムROM52,フラッシュメモリ54,ワークRAM56,カラーパレットRAM68,レジスタ70および80,VRAM72および74,OAM(Object Attribute Memory)76,フレームメモリ86および88ならびにキーコントローラ82に設けられたゲームキーレジスタ1(図9参照)が存在する。かかるプロセサおよび内部メモリのほか、上述の通信データを電話CPU28または外部機器とやり取りするためにUART58およびUARTセレクタ60が設けられ、図7に示すSRAM42にアクセスするために外部SRAMI/F62が設けられる。
The
ゲームCPUコア50がアクセスできるメモリは、システムROM52,フラッシュメモリ54,ワークRAM56,SRAM42,カラーパレットRAM68,レジスタ70,VRAM72および74,OAM76,レジスタ80に設けられたゲームCPU制御レジスタ80d,FIFOレジスタ80eおよび割り込みレジスタ80g(図13参照),ならびにキーコントローラ82に設けられたゲームキーレジスタ1(図9参照)である。
The memory that the
PPU78がアクセスできるメモリは、カラーパレットRAM68,レジスタ70,VRAM72および74,ならびにOAM76である。
The memory accessible by the
LCDコントローラ84がアクセスできるメモリは、フレームメモリ86および88,ならびにレジスタ80に設けられたフレームメモリレジスタ80a,出力制御レジスタ80bおよびパレット制御レジスタ80c(図13参照)である。
The memories that can be accessed by the
なお、SPU64は図示しないサウンドROMにアクセスできるが、音声処理に関する詳しい説明は省略する。 Note that the SPU 64 can access a sound ROM (not shown), but a detailed description of the audio processing is omitted.
ゲームCPUコア50から見たメモリマッピングを図12に示す。図12によれば、“00000000h”〜“01999999h”にシステムROM52が割り当てられ、“02000000h”〜“02999999h”にSRAM42が割り当てられ、“03000000h”〜“03999999h”にワークRAM56が割り当てられる。また、 “04000000h”〜“04999999h”に各種レジスタ(70,80d,80e,80g,ゲームキーレジスタ1)が割り当てられ、 “05000000h”〜“05999999h”にカラーパレットRAM68が割り当てられる。さらに、“06000000h”〜“06999999h” にVRAM72および74が割り当てられ、“07000000h”〜“07999999h”にOAM76が割り当てられ、 “08000000h”〜“08199999h”にゲームプログラム(イメージ)が割り当てられる。
The memory mapping seen from the
また、“10000000h”〜“Xh−1”にフラッシュメモリ54に格納されたブラウザプログラムおよびモニタプログラムが割り当てられ、“Xh”〜“Xh+00199999h”にフラッシュメモリ54に格納されたゲームプログラムが割り当てられ、 “Xh+00200000h”〜“10400000h”にフラッシュメモリ54に格納されたバックアップが割り当てられる。ゲームCPUコア50は、このようなアドレスを利用して各々のメモリにアクセスする。
Also, the browser program and the monitor program stored in the
各々のメモリについて具体的に説明すると、システムROM52は、ゲームCPUコア50のブートプログラムや、フラッシュメモリ54が破壊された場合の復旧プログラムなどを格納する。また、フラッシュメモリ54は、上述のようにバックアップ,ゲームプログラム,ブラウザプログラムおよびモニタプログラムを格納する。ゲームプログラムは、インターネット上に設けられたかつ多数のゲームプログラムを記憶したサーバからダウンロードされる。つまり、電話機能を用いてサーバに接続し、希望のゲームプログラムを選択すれば、選択されたゲームプログラムが電話CPU28を介してフラッシュメモリ54にダウンロードされる。ワークRAM56およびSRAM42には、上述のプログラムの処理時に得られたデータが一時的に格納される。
Specifically describing each memory, the
VRAM72は、静止したキャラクタ(静止キャラクタ)を示す背景画像データを格納し、VRAM74は、動きを伴うキャラクタ(動きキャラクタ)を示すオブジェクト画像データを格納し、そしてOAM(Object Attribute Memory)76は、各々の動きキャラクタのアトリビュートを格納する。たとえば、図4に示すゲーム画面が表示されるとき、VRAM72に格納される背景画像データは、木,山および地面のような静止キャラクタデータを含む。また、VRAM74に格納されるオブジェクト画像データは、空中をジャンプする主人公,地面を動くキノコ,空中に浮かび下から突くと微動するブロックのような動きキャラクタデータを含む。
The
カラーパレットRAM68は、静止キャラクタおよび動きキャラクタを色付けするためのパレットデータを格納し、レジスタ70は、画像モードを指定したり、画面に特殊効果を施すための設定値を保持する。
The
図13を参照して、フレームメモリレジスタ80aは、フレームメモリ86および88のアドレスデータおよび画像データを保持する。具体的には、フレームメモリ86のXアドレス,Yアドレスおよびこのアドレス(X,Y)に書き込む1ドット(=1ビット)分の2値画像データ、ならびにフレームメモリ88のXアドレス,Yアドレスおよびこのアドレス(X,Y)に書き込む1ドット(=8ビット)分のカラー画像データが設定される。フレームメモリレジスタ80aに対する設定は、電話CPU28によって行われる。電話モードではフレームメモリ86および88の両方のアドレスデータおよび画像データが電話CPU28によって設定され、ゲームモードではフレームメモリ86のアドレスデータおよび画像データのみが電話CPU28によって設定される。
Referring to FIG. 13, frame memory register 80a holds address data and image data of
出力制御レジスタ80bは、LCDコントローラ84からLCD18への画像データの出力を制御するためのレジスタであり、これには合成開始ラインデータ,合成終了ラインデータ,画像開始ラインデータおよびLCD制御データが設定される。図16および図17に示すように、表示画面にはエリア1および2が形成され、エリア1にはフレームメモリ86に描画された画像データに基づく画像が表示され、エリア2にはフレームメモリ86および88に描画された各々の画像データに基づく合成画像が表示される。合成開始ライン指定データおよび合成終了ライン指定データはそれぞれ、エリア2の開始位置および終了位置を示す。また、画像開始ラインデータは、フレームメモリ88のどのラインからカラー画像データの読み出しを開始するかを指定するデータである。この画像開始ラインデータを所定ライン数毎に更新することで、カラー画像のスクロール表示が可能となる。
The output control register 80b is a register for controlling the output of image data from the
LCD制御データは、具体的には図14に示すように8ビットで表される。0ビット目(=LCNT0)はモード選択フラグであり、“0”は電話モードを、“1”はゲームモードを示す。1ビット目(=LCNT1)はフレームメモリ86に描画された2値画像データに基づく画像の出力/中止を制御するフラグであり、“0”は中止を、“1”は出力を示す。2ビット目(=LCNT2)は、フレームメモリ88に描画されたカラー画像データに基づく画像を表示するときに、このカラー画像にブレンディングを施すかどうかを制御するフラグであり、“0”はノーマルを、“1”はブレンディングを示す。4ビット目および3ビット目(=LCNT4,3)はフレームメモリ88に描画されたカラー画像データに基づく画像の出力およびトーン(階調)を制御するフラグであり、“00”は出力中止を、“01”はトーンダウンを、 “10”は等倍トーンを、“11”はトーンアップを示す。5ビット目(=LCNT5)はLCD18の表示オン/表示オフを制御するフラグであり、“0”は表示オフを、“1”は表示オンを示す。6ビット目および7ビット目は、この実施例では使用されない。
Specifically, the LCD control data is represented by 8 bits as shown in FIG. The 0th bit (= LCNT0) is a mode selection flag, “0” indicates a telephone mode, and “1” indicates a game mode. The first bit (= LCNT1) is a flag for controlling the output / stop of the image based on the binary image data drawn in the
パレット制御レジスタ80cは、フレームメモリ86に書き込まれた2値画像データに基づく画像の色を指定するためのレジスタである。合成エリアではないエリア1については、背景色を決定するパレットデータ0とキャラクタ色を決定するパレットデータ1が設定される。これに対して、合成エリアである第2エリアについては、キャラクタ色を決定するパレットデータ1のみが設定され、背景は常に透明色とされる。
The palette control register 80 c is a register for designating an image color based on the binary image data written in the
ゲームCPU制御レジスタ80dは、ゲームCPU起動フラグのみを有する。このゲームCPU起動フラグは、ゲーム起動キー20の操作に応答して“1”に設定され、ホールドキー24bの操作に応答して“0”に設定される。“1”はゲームモードを示し、“0”は電話モードを示す。
The game CPU control register 80d has only a game CPU activation flag. The game CPU activation flag is set to “1” in response to the operation of the
FIFOレジスタ80eは、ゲームモードにおいてゲームCPU40と電話CPU28との間でやり取りされるデータを一時的に保持するためのレジスタである。具体的にはFIFOレジスタ1および2の2つからなり、いずれも64×16ビットの容量を持つ。この実施例の電話CPU28は8ビットCPUであるので16ビットの設定データのうち8ビットしか使用されないが、FIFOレジスタ1および2を16ビットとしておくことで、16ビットの電話CPUにも対応できる。
The FIFO register 80e is a register for temporarily holding data exchanged between the
ゲームCPU40から電話CPU28へのデータ転送にはFIFOレジスタ1が用いられ、電話CPU28からゲームCPU40へのデータ転送にはFIFOレジスタ2が用いられる。このため、FIFOレジスタ1への書き込みはゲームCPU40によってのみ行われ、FIFOレジスタ1からの読み出しは電話CPU28によってのみ行われる。また、FIFOレジスタ2への書き込みは電話CPU28によってのみ行われ、FIFOレジスタ2からの読み出しはゲームCPU40によってのみ行われる。このFIFOレジスタ1および2は、*キー24dおよび#キー24eへのスタート機能およびセレクト機能の割り当て処理、ならびにプレイヤ名入力処理において利用される。
The
ゲームキーレジスタ80fは、ゲーム操作に関連するデータを保持するレジスタであり、ゲームキーレジスタ2および3からなる。ゲームキーレジスタ1は上述のようにキーコントローラ80に設けられ、ゲームキーレジスタ1〜3のいずれも、図15に示すように8ビットで形成される。0ビット目(=K0,KI0,KO0)にはAボタン22bが割り当てられ、1ビット目(=K1,KI1,KO1)にはBボタン22cが割り当てられ、2ビット目〜5ビット目(=K2〜K5,KI2〜KI5,KO2〜KO5)には十字キー22aの上方向,下方向,左方向,右方向が割り当てられる。また、6ビット目(=K6,KI6,KO6)にはスタートキー(*キー24d)が割り当てられ、7ビット目にはセレクトキー(#キー24e)が割り当てられる。
The game key register 80 f is a register that holds data related to game operations, and includes game
Aボタン22bが操作されると0ビット目が“0”から“1”に更新され、Bボタン22cが操作されると1ビット目が“0”から “1”に更新される。2ビット目は十字キー22aが上向きに操作されたとき“0”から“1”に更新され、3ビット目は十字キー22aが下向きに操作されたとき“0”から“1”に更新される。また、4ビット目は十字キー22aが左向きに操作されたとき“0”から“1”に更新され、5ビット目は十字キー22aが右向きに操作されたとき“0”から“1”に更新される。さらに、*キー24dが操作されると6ビット目が“0”から“1”に更新され、#キー24eが押されると7ビット目が“0”から“1”に更新される。
When the
割り込みレジスタ80gは、ゲームCPU40と電話CPU28との間でやり取りされる割り込み要求を一時的に保持するレジスタである。割り込みレジスタ1にはゲームCPU40から電話CPU28に発された割り込み要求が設定され、割り込みレジスタ2には電話CPU28からゲームCPU40に発された割り込み要求が設定される。なお、電話CPU28からゲームCPU40への割り込み、およびゲームCPU40から電話CPU28への割り込みのいずれも、*キー24dおよび#キー24eへのスタート機能およびセレクト機能の割り当て処理、ならびにプレイヤ名入力処理において利用される。
The interrupt
キーコントローラ82およびその周辺は図9に示すように構成される。ゲームモードでは、上述のように、*キー24dがスタートキーとして機能し、#キー24eがセレクトキーとして機能する。オペレータが、*キー24dまたは#キー24eを操作すると、電話キーレジスタ28bの所定ビットが“1”に更新される。電話CPUコア28aは、電話キーレジスタ28bの設定値からいずれのキーが操作されたかを判別し、*キー24dが操作されたときはゲームキーレジスタ3の6ビット目を、#キー24eが操作されたときはゲームキーレジスタ3の7ビット目を“1”に更新する。
The
ゲームキーレジスタ1には、ゲームキー22の操作に応じた数値とゲームキーレジスタ3から出力された数値の論理和が設定される。ゲームCPUコア50は、ゲームキーレジスタ1の設定値を入力し、入力した設定値に応じたゲーム処理を行なう。このため、ゲーム処理には、ゲームキー22の操作だけでなく、*キー24dおよび#キー24eの操作も反映される。
In the game
ゲームキーレジスタ1の設定値はゲームキーレジスタ2にも与えられ、ゲームキーレジスタ1および2の設定値は常に一致することとなる。したがって、ゲームキーレジスタ2の設定値は、ゲームキー22の操作に応じて変化する。電話CPUコア28aは、プレイヤ名入力時にゲームキーレジスタ2の設定値からAボタン22bの操作の有無を判別し、判別結果に応じた処理を行なう。
The set value of the game
図8に戻って、PPU78は、VRAM72および74に格納された画像データに対して、パレットRAM68のパレットデータならびにレジスタ70の設定値に従う処理を施し、かかる処理が施された8ビットのカラー画像データをアドレスデータとともにLCDコントローラ84に出力する。ただし、VRAM72および74に背景画像データおよびオブジェクト画像データが描画されるのはゲームモードのみであり、PPU78は、ゲームモードにおいてのみカラー画像データおよびアドレスデータをLCDコントローラ84に転送する。
Returning to FIG. 8, the
LCDコントローラ84は、具体的には図10に示すように構成される。出力制御レジスタ80bに設定されたLCD制御データのLCNT0はセレクタ84bに与えられ、LCNT1は読み出しコントローラ84fに与えられ、LCNT4および3はトーン制御回路84gに与えられ、そしてLCNT2および5は画像合成回路84hに与えられる。また、出力制御レジスタ80bに設定された合成開始ラインデータおよび合成終了ラインデータは画像合成回路84hに与えられ、画像開始ラインデータは読み出しコントローラ84cに与えられる。
The
さらに、パレット制御レジスタ80cに設定されたエリア1用パレットデータ0,エリア1用パレットデータ1およびエリア2用パレットデータ1は画像合成回路84hに与えられ、フレームメモリレジスタ80aに設定されたフレームメモリ86用Xアドレス,フレームメモリ86用Yアドレス,1ドット分2値画像データ,フレームメモリ88用Xアドレス,フレームメモリ88用Yアドレスおよび1ドット分カラー画像データは、フレームメモリ転送コントローラ84aに与えられる。
Further, the
上述のように、電話モードでは、2値画像データおよびそのアドレスデータとカラー画像データおよびそのアドレスデータとがフレームメモリレジスタ80aに設定される。このとき、フレームメモリ転送コントローラ84aは、2値画像データおよびそのアドレスデータを書き込みコントローラ84eに与え、カラー画像データおよびそのアドレスデータをセレクタ84bに与える。セレクタ84bは、LCNT0が“0”つまり電話モードを示すときフレームメモリ転送コントローラ84aの出力を選択する。フレームメモリ転送コントローラ84aから出力されたカラー画像データおよびアドレスデータは、セレクタ84bを介して書き込みコントローラ84dに与えられる。
As described above, in the telephone mode, binary image data, its address data, color image data, and its address data are set in the frame memory register 80a. At this time, the frame memory transfer controller 84a gives the binary image data and its address data to the write controller 84e, and gives the color image data and its address data to the
一方、ゲームモードでは、2値画像データおよびそのアドレスデータのみがフレームメモリレジスタ80aに設定され、フレームメモリ転送コントローラ84aは、この2値画像データおよびアドレスデータを書き込みコントローラ84eに与える。カラー画像データおよびアドレスデータは、PPU78からセレクタ84dに与えられる。LCD制御データのLCNT0はゲームモードにおいて“1”を示し、このときセレクタ84dはPPU78からの出力を選択する。このため、ゲームモードでは、PPU78からの出力がセレクタ84bを介して書き込みコントローラ84dに与えられる。
On the other hand, in the game mode, only binary image data and its address data are set in the frame memory register 80a, and the frame memory transfer controller 84a gives the binary image data and address data to the write controller 84e. The color image data and the address data are given from the
後段で詳述するが、2値画像データおよびカラー画像データのいずれについても、アドレスデータは書き込み開始アドレスのみを示す。このため、書き込みコントローラ84eおよび84dはいずれも、与えられたアドレスデータを基準として書き込みアドレスを1ドットずつ更新し、順次与えられる1ドット分の2値画像データおよびカラー画像データを更新されたアドレスに書き込む。これによって、所定ドット数分の2値画像データおよびカラー画像データが、フレームメモリ86および88の各々に格納される。
As will be described in detail later, for both binary image data and color image data, the address data indicates only the write start address. For this reason, both the
なお、フレームメモリ86および88はいずれも160×160ドットの画像データを格納できる容量を持つが、フレームメモリ86の各ドットには1ビットが割り当てられ、フレームメモリ88の各ドットには8ビットが割り当てられる。このため、フレームメモリ86の各アドレスには1ドット分の2値画像データが書き込まれ、フレームメモリ88の各アドレスには1ドット分のカラー画像データが書き込まれる。
Each of the
読み出しコントローラ84fは、LCD制御データのLCNT1が“1”を示すとき、フレームメモリ86から2値画像データを読み出し、読み出した2値画像データを画像合成回路84hに与える。一方、LCNT1が“0”を示すときは、フレームメモリ86からの2値画像データの読み出しを中止する。読み出しコントローラ84cは、画像開始ラインデータによってフレームメモリ88の読み出し開始ラインを特定し、特定した読み出し開始ラインからカラー画像データの読み出しを開始する。読み出されたカラー画像データは、トーン制御回路84gを経て画像合成回路84hに与えられる。
When the LCD control data LCNT1 indicates “1”, the read controller 84f reads binary image data from the
トーン制御回路84gは、LCNT4および3が示す数値に応答して、次のようなトーン制御または出力制御を行なう。つまり、LCNT4,3が“01”を示せば、カラー画像データのRGBレベルが低下され(トーンダウン)、トーンがダウンされたカラー画像データが画像合成回路84hに与えられる。また、LCNT4および3が“11”を示せばカラー画像データのRGBレベルが上昇され(トーンアップ)、トーンがアップされたカラー画像データが画像合成回路84hに与えられる。さらに、LCNT4および3が“10”を示せばカラー画像データはそのまま画像合成回路84hに与えられ、LCNT4および3が“00”を示せばカラー画像データの画像合成回路84hへの出力が中止される。
The
画像合成回路84hは、図11に示すように構成される。ラインカウンタ8402hは、1フレームを形成するライン数をカウントし、カウント値を比較器8403hに与える。比較器8403hにはまた、出力制御レジスタ80bに設定された合成開始ラインデータおよび合成終了ラインデータが与えられる。比較器8403hは、ラインカウンタ8402hのカウント値が合成開始ラインデータのデータ値と一致したとき出力をハイレベルに変更し、ラインカウンタ8402hのカウント値が合成終了ラインデータのデータ値+1と一致したとき出力をハイレベルからローレベルに戻す。このため、比較器8403hの出力は、図16に示すエリア1の開始位置から終了位置にわたってローレベルとなり、図16に示すエリア2の開始位置から終了位置にわたってハイレベルとなる。
The
セレクタ8401hは、比較器8403hの出力がローレベルのときパレット制御レジスタ80cに設定されたエリア1用パレットデータ0を選択し、比較器8403hの出力がハイレベルのときトーン制御回路84gから出力されたカラー画像データを選択する。セレクタ8401hの出力は、セレクタ8407hに与えられる。
The
ブレンディング回路8404hは、パレット制御レジスタ80cに設定されたエリア2用パレットデータ1とトーン制御回路84gから出力されたカラー画像データとにブレンディング処理を施す。セレクタ8405hは、LCD制御データのLCNT2が“0”を示すときエリア2用パレットデータ1を選択し、LCNT2は“1”を示すときブレンディング回路8404hの出力を選択する。セレクタ8405hの出力は、セレクタ8406hに与えられる。比較器8403hの出力は、セレクタ8406hにも与えられる。セレクタ8406hは、比較器8403hの出力がローレベルのときパレット制御レジスタ80cに設定されたエリア1用パレットデータ1を選択し、比較器8403hの出力がハイレベルのときセレクタ8405hの出力を選択する。
The blending
セレクタ8407hは、読み出しコントローラ84hによって読み出された2値画像データを受け、この2値画像データを形成する各ドットのデータ値(ビット値)に応じて、セレクタ8401hおよび8406hのいずれか一方を選択する。具体的には、ビット値が“0”を示すときはセレクタ8401hの出力を選択し、ビット値が“1”を示すときはセレクタ8406hの出力を選択する。
The
スイッチ8408hは、LCD制御データのLCNT5が“0”を示すときオフ状態となり、LCNT5が“1”を示すときオン状態となる。このため、セレクタ8407hの出力は、LCNT5が“1”を示すときだけ、スイッチ8408hを介してLCD18に出力される。
The
エリア1では、セレクタ8401hはエリア1用パレットデータ0を選択し、セレクタ8406hはエリア1用パレットデータ1を選択する。セレクタ8407hは、2値画像データの各ビット値が“0”のときエリア1用パレットデータ0を選択し、各ビット値が“1”を示すときエリア1用パレットデータ1を選択する。この結果、受信状態およびバッテリ残量を示すキャラクタが、図17に示す要領でエリア1に表示される。
In
エリア2では、セレクタ8401hはカラー画像データを選択し、セレクタ8406hはセレクタ8405hの出力を選択する。ブレンディング処理を行なわないとき、セレクタ8405hからセレクタ8406hへはエリア2用パレットデータ1が与えられる。セレクタ8407hは、2値画像データの各ビット値が“0”のときカラー画像データを選択し、各ビット値が“1”を示すときエリア2用パレットデータ1を選択する。この結果、たとえば日付および現在時刻を示すキャラクタとカラー画像とが、図17に示す要領でエリア2に表示される。
In
図2に示す着信待ち画面は、図18に示すような受信状態,バッテリ残量,日付および現在時刻を示す2値画像データと、図19に示すようなゲームキャラクタを示すカラー画像データとからなる。図7に示す電話CPU28は、まずエリア1の先頭に対応するアドレスデータをフレームメモリレジスタ80aに設定し、受信状態およびバッテリ残量を示す2値画像データ(エリア1に表示)を1ドットずつフレームメモリレジスタ80aに設定する。電話CPU28は続いて、エリア2の先頭に対応するアドレスデータをフレームメモリレジスタ80aに設定し、日付および現在時刻を示す2値画像データ(エリア2に表示)を1ドットずつフレームメモリレジスタ80aに設定する。LCDコントローラ84は、1ドット毎に更新される2値画像データをフレームメモリレジスタ80aから繰り返し読み出し、読み出された各ドットの2値画像データをアドレスデータに基づいてフレームメモリ86に書き込む。これによって、図18に示す2値画像データがフレームメモリ86内に得られる。
The incoming call waiting screen shown in FIG. 2 includes binary image data indicating the reception state, remaining battery level, date and current time as shown in FIG. 18, and color image data indicating a game character as shown in FIG. . The
電話CPU28は、2値画像データの設定に続いて、エリア2の先頭に対応するアドレスデータおよびゲームキャラクタを示す各ドットのカラー画像データをフレームメモリレジスタ80aに設定する。LCDコントローラ84は、1ドット毎に更新されるカラー画像データをフレームメモリレジスタ80aから繰り返し読み出し、読み出したカラー画像データをアドレスデータに基づいてフレームメモリ88に書き込む。これによって、図19に示すカラー画像データがフレームメモリ88内に得られる。
Following the setting of the binary image data, the
LCDコントローラ84は、フレームメモリ86および88からの2値画像データおよびカラー画像データの読み出し,カラー画像データのトーン制御,2値画像データに基づく色付け,2値画像データおよびカラー画像データの合成,ならびに合成画像データの出力を、出力制御レジスタ80bおよびパレット制御レジスタ80cの設定値に従って行なう。この結果、図2に示す待ち受け画面がLCD18に表示される。
オペレータがダイヤル操作をすると、電話CPU28は、エリア2の先頭に対応するアドレスデータと相手方の電話番号を示す2値画像データとをフレームメモリレジスタ80aに設定する。LCDコントローラ84は、上述と同じ要領でこの2値画像データをフレームメモリ86に書き込む。このため、日付および現在時刻を示す2値画像データは、相手方の電話番号を示す2値画像データによって更新される。この結果、LCD18に表示された日付および現在時刻も、相手方の電話番号に切り換わる。
When the operator performs a dial operation, the
電話CPU28はまた、送受信回路32およびアンテナ14を通して相手方との接続を確立する。接続が確立されると、相手方の音声データが受信され、受信された音声データは音声コーデック30を介してスピーカ16から出力される。また、マイク26によって取り込まれたオペレータの音声データは、音声コーデック30および送受信回路32を介してアンテナ12から出力される。
The
一方、アンテナ14および送受信回路32を通して着信があると、電話CPU28は、エリア2の先頭に対応するアドレスデータと着信メッセージおよび発信元の電話番号を示す2値画像データとをフレームメモリレジスタ80aに設定する。LCDコントローラ84はこの2値画像データをフレームメモリ86に書き込み、日付および現在時刻を示す2値画像データは着信メッセージおよび発信元の電話番号を示す2値画像データによって更新される。これによって、LCD18に表示された日付および現在時刻も、着信メッセージおよび発信元の電話番号に更新される。電話CPU28はまた、着信音データを加算器46を介してスピーカ48に与える。スピーカ48からは、着信音が出力される。
On the other hand, when there is an incoming call through the
ここでオペレータが着信操作をすると、電話CPU28は着信音データの出力を中止し、発信元との接続を確立する。接続の確立後は、上述と同様に、相手方の音声データが音声コーデック30を介してスピーカ16から出力され、マイク26によって取り込まれたオペレータの音声データが音声コーデック30および送受信回路32を介してアンテナ12から出力される。
Here, when the operator performs an incoming call operation, the
着信待ち状態のときにオペレータがゲーム起動キー20を操作すると、電話CPU28はゲーム起動フラグをセットする。電話CPU28はまた、エリア2の先頭に対応するアドレスデータと全ドットが“0”を示す2値画像データとをフレームメモリレジスタ80aに設定し、LCD制御データのLCNT0に“1”を設定する。LCDコントローラ84は、全ドットが“0”を示す2値画像データをアドレスデータに基づいてフレームメモリ86に書き込み、かつカラー画像データの入力先としてPPU78を選択する。
When the operator operates the
一方、ゲームCPUコア50は、ゲーム画面(カラー画像)を形成する背景画像データおよびオブジェクト画像データをVRAM72および74に描画し、静止キャラクタおよび動きキャラクタのパレットデータをカラーパレットRAM68にセットする。さらに、動きキャラクタのアトリビュートをOAM76にセットし、背景およびオブジェクトの出力に関する設定値をレジスタ70にセットする。この結果、たとえば図21に示すカラー画像データがPPU78によって作成され、LCDコントローラ84に出力される。LCDコントローラ84は、PPU78から出力されたカラー画像データをフレームメモリ88に書き込む。フレームメモリ86および88の各々には、図20に示す2値画像データおよび図21に示すカラー画像データが得られる。
On the other hand, the
LCDコントローラ84は、上述と同じ要領で、フレームメモリ86および88から2値画像データおよびカラー画像データを読み出し、カラー画像データにLCD制御データのLCNT4,3の値に従うトーン制御を施し、2値画像データ,合成開始ラインデータおよび合成終了ラインデータに基づいてパレットデータおよびカラー画像データを合成する。この結果、図4に示すゲーム画面がLCD18に表示される。
The
ゲームCPUコア50はまた、図9に示すFIFOレジスタ1を通して、*キー24dおよび#キー24eを示すキーコードと*キー24dおよび#キー24eに割り当てる機能情報とを電話CPU28に与える。ここで、*キー24dに割り当てられた機能情報は“スタート”を示し、#キー24eに割り当てられた機能情報は“セレクト”を示す。このため、電話CPU28は、*キー24dが操作されたときゲームキーレジスタ3のスタートキービットKO6に“1”をセットし、#キー24eが操作されたときゲームキーレジスタ3のセレクトキービットKO7に“1”をセットする。ゲームキーレジスタ1の各ビットにはゲームキー22の操作に応じた数値とゲームキーレジスタ3から出力された数値の論理和がセットされるため、ゲームCPUコア50は、ゲームキーレジスタ1の設定値に応じたゲーム処理を行なう。
The
ゲームが開始された後は、ゲームキー22の操作に応答して、背景画像データ,オブジェクト画像データおよびオブジェクトのアトリビュートが更新され、さらにカラーパレットレジスタ68およびレジスタ70の設定値が更新される。この結果、画像処理ユニット78から出力されるカラー画像データも変化し、ゲーム画面に動きが生じる。一方、SPU64からは、必要に応じて効果音データが出力され、スピーカ48から効果音が生じる。
After the game is started, in response to the operation of the
ゲーム進行中に*キー24dが操作されると、ゲームCPU50は、ポーズ状態に移行すべく、SPU64およびPPU78に対してBGMデータおよびカラー画像データの出力を停止させる。これによって、BGMの出力およびゲーム画面の動きが停止する。*キー24dが再度操作されると、ゲームCPU50は、ポーズ状態を解除すべく、SPU64およびPPU78を起動し、BGMデータおよびカラー画像データの出力を再開させる。スピーカ48からは再びBGMが出力され、LCD18上のゲーム画面も再び動き出す。
When the * key 24d is operated while the game is in progress, the
なお、ゲームの進行中にメニュー画面が表示された場合、ゲームCPUコア50は、#キー24eの操作に応答してレジスタ70の設定値を変更する。変更する設定値はメニュー画面上に表示されたカーソルに関連する設定値であり、この変更によってカーソルの表示位置が変更される。
When the menu screen is displayed while the game is in progress, the
ゲーム進行中に着信があると、電話CPU28は、上述の処理に加えてゲームキーレジスタ3のスタートキービットKO6を“1”にセットし、LCD制御データのLCNT4,3に“11”をセットする。電話CPU28はまた、着信メッセージおよび発信元の電話番号を示す2値画像データとエリア2の先頭に対応するアドレスデータとをフレームメモリレジスタ80aに設定し、着信音データを加算器46を介してスピーカ48に与える。一方、ゲームCPUコア50は、ゲームにポーズをかけるべく、SPU64にBGMデータの出力を停止させるとともに、自らの処理を停止させる。
When there is an incoming call while the game is in progress, the
LCDコントローラ84は、フレームメモリレジスタ80aに設定された2値画像データをフレームメモリ86に格納する。LCDコントローラ84はまた、フレームメモリ86および88から2値画像データおよびカラー画像データを読み出し、カラー画像データにトーンアップを施し、2値画像データ,合成開始ラインデータおよび合成終了ラインデータに基づいてパレットデータおよびカラー画像データを合成する。この結果、図5に示す着信案内画面がLCD18に表示され、スピーカ48の出力がBGMから着信音に切り換わる。
The
オペレータが着信操作をすると、電話CPU28は、上述と同様に、着信音データの出力を中止し、発信元との接続を確立する。接続の確立後は、相手方の音声データが音声コーデック30を介してスピーカ16から出力され、マイク26によって取り込まれたオペレータの音声データが音声コーデック30および送受信回路32を介してアンテナ14から出力される。
When the operator performs an incoming call operation, the
通話が終了すると、電話CPU28はLCD制御データのLCNT4,3を“10”に戻すとともに、エリア2の先頭に対応するアドレスデータと全ドットが“0”を示す2値画像データをフレームメモリレジスタ80aに設定する。この結果、LCD18の表示が図4に示すゲーム画面に戻る。ただし、ゲーム画面の動きは停止したままであり、かつBGMの出力も停止している。つまり、ゲームはポーズ状態を維持している。このポーズ状態は、オペレータによる*キー24dの操作に応答して解除される。
When the call is finished, the
電話CPUコア28aは、具体的には図22〜図31および図34に示すフロー図を処理する。まずステップS1でLCDコントローラ制御レジスタ80cに設定されるLCD制御データを初期値“110010”に設定する。つまり、図14に示すLCD表示オン/オフフラグを“1”にセットし、カラー画像トーン制御フラグを“10”にセットし、2値画像トーン制御フラグを“0”にセットし、2値画像出力制御フラグを“1”にセットし、そしてモード選択フラグを“0”にセットする。
Specifically, the
続くステップS3では、図2に示す着信待ち画面をLCD18に表示すべく、図25および図26に示すサブルーチンを処理する。まず、図25に示すステップS81でLCD制御データのLCNT5を“0”に更新する。これによって、LCD18の表示がオフ状態とされる。次に、ステップS83でカウント値Nを“1”に設定し、ステップS85,S87およびS89の各々で、フレームメモリレジスタ80aにフレームメモリ86用Xアドレス,フレームメモリ86用Yアドレスおよび1ドット分の2値画像データをセットする。具体的には、フレームメモリ86に形成されたエリアN(表示画面のエリアNに対応)の先頭アドレスおよびこの先頭アドレスに書き込む1ドット分の2値画像データをフレームメモリレジスタ80aにセットする。続くステップS91では、エリアNへの2値画像データの書き込みが完了したかどうか判断し、NOであればステップS89の処理を繰り返すが、YESであればステップS93に進む。
In the subsequent step S3, the subroutine shown in FIGS. 25 and 26 is processed to display the incoming call waiting screen shown in FIG. First, LCNT5 of the LCD control data is updated to “0” in step S81 shown in FIG. Thereby, the display of the
LCDコントローラ84は、まずフレームメモリレジスタ80aにセットされた先頭アドレスデータおよび2値画像データを読み出し、先頭アドレスデータが示すフレームメモリ86上のアドレスに2値画像データを書き込む。1ドット分の2値画像データの書き込みが完了すると、LCDコントローラ84は自ら書き込み先のアドレスを更新する。このため、電話CPU28側で書き込みアドレスを更新する必要はなく、ステップS89における2値画像データのセット処理を繰り返すだけで、フレームメモリ86の所望のアドレスに2値画像データが書き込まれていく。
The
ステップS93ではカウント値Nが“2”に達したかどうか判断し、NOであればステップS95でカウント値NをインクリメントしてからステップS85に戻るが、YESであればステップS97に進む。これによって、受信状態およびバッテリ残量のキャラクタを示す2値画像データがフレームメモリ86のエリア1に描画され、日時および現在時刻を示す2値画像データがフレームメモリ86のエリア2に描画される。なお、この実施例では、画面全体の画像データを書き換えるような処理としたが、変更が必要な領域のみ画像データを書き換えるようにしてもよい(後述のエリア2に関するステップS97〜S103についても同様)。
In step S93, it is determined whether the count value N has reached “2”. If NO, the count value N is incremented in step S95 and the process returns to step S85. If YES, the process proceeds to step S97. As a result, the binary image data indicating the reception state and the remaining battery capacity character is drawn in the
続くステップS97〜S101では、フレームメモリ88用Xアドレス,フレームメモリ88用Yアドレスおよび1ドット分のカラー画像データをフレームメモリレジスタ80aにセットする。ステップS97およびS99でセットするXアドレスおよびYアドレスはフレームメモリ88における先頭アドレスを示し、ステップS101でセットされた1ドット分のカラー画像データはこの先頭アドレスに書き込むべき画像データである。ステップS103では、エリア2へのカラー画像データの書き込みが完了したかどうか判断し、書き込みが完了していなければステップS101に戻るが、書き込みが完了すればステップS105に進む。これによって、図2に示すゲームキャラクタのカラー画像データがフレームメモリ88に描画される。
In subsequent steps S97 to S101, the X address for the frame memory 88, the Y address for the frame memory 88, and the color image data for one dot are set in the frame memory register 80a. The X address and Y address set in steps S97 and S99 indicate the head address in the frame memory 88, and the color image data for one dot set in step S101 is image data to be written to this head address. In step S103, it is determined whether or not the writing of color image data to
ステップS105〜S109の各々では、エリア1用パレットデータ0,エリア1用パレットデータ1およびエリア2用パレットデータ1をパレット制御レジスタ80cにセットする。これによって、LCD18のエリア1に表示される2値画像の背景色および文字色(キャラクタ色)と、エリア2に表示される2値画像の文字色が決定される。なお、エリア2の2値画像の背景色は、上述のように透明である。
In each of steps S105 to S109,
ステップS111〜S115の各々では、合成開始ラインデータ,合成終了ラインデータおよび画像開始ラインデータを出力制御レジスタ80cにセットする。合成開始ラインデータは2値画像のどのラインからカラー画像の合成を開始するかを示し、合成終了ラインデータは2値画像のどのラインでカラー画像の合成を終了するかを示し、画像開始ラインデータは、フレームメモリ88のどのラインから読み出しを開始するかを示す。 In each of steps S111 to S115, the composition start line data, composition end line data, and image start line data are set in the output control register 80c. The composition start line data indicates from which line of the binary image the composition of the color image starts, the composition end line data indicates which line of the binary image the composition of the color image ends, and the image start line data Indicates from which line of the frame memory 88 the reading is to be started.
ステップS115の処理が完了するとステップS117に進み、LCD18の表示をオン状態とすべく、LCD制御データのLCNT5を“1”にセットする。これによって、図2に示す着信待ち画面がLCD18に表示される。
When the process of step S115 is completed, the process proceeds to step S117, and LCNT5 of the LCD control data is set to “1” in order to turn on the display of the
図22に戻って、ステップS5,S13,S21およびS35の各々では、ゲーム起動キー20の操作の有無,ホールドキー24bの操作の有無,ダイヤル操作の有無および電話着信の有無を判別する。ステップS5でゲーム起動キー20の操作ありと判別されると、ステップS7で図13に示すゲームCPU起動フラグをセットするとともに、ステップS9でLCD制御データのLCNT0に“1”をセットする。これによって、ゲームモードが開始される。ステップS9の処理が完了すると、ステップS11で図27に示すサブルーチンを処理する。
Returning to FIG. 22, in each of steps S5, S13, S21 and S35, it is determined whether or not the
まずステップS121でLCD制御データのLCNT5を“0”に更新して、LCD18の表示をオフ状態とする。次に、ステップS122およびS123の各々で、フレームメモリ86用Xアドレスおよびフレームメモリ86用Yアドレスをフレームメモリレジスタ80aに設定する。ここで設定されたアドレスは、形成されたエリア2の先頭アドレスを示す。ステップS124では1ドット分の2値画像データを同じフレームメモリレジスタ80aに設定し、続くステップS125ではエリア2に対する2値画像データの書き込みが完了したかどうか判断する。そして、NOであればステップS124の処理を繰り返し、YESであればステップS126でエリア2用パレットデータ1をパレット制御レジスタ80cに設定するとともに、ステップS127でLCD制御データのLCNT5を“1”に戻してLCD18の表示をオン状態とする。ステップS11におけるこのサブルーチンの処理によって、全てのドットが“0” を示す2値画像データがフレームメモリ86のエリア2に描画される。この結果、着信待ち画面で表示されていた日付および現在時刻が消去される。
First, in step S121, LCNT5 of the LCD control data is updated to “0”, and the display on the
ステップS13でホールドキー24bの操作ありと判別されると、ステップS15でゲームCPU起動フラグをリセットするとともに、ステップS17でLCD制御データのLCNT0に“0”をセットする。これによって、電話モードが開始される。ステップS17の処理が完了すると、着信待ち画面をLCD18に表示すべく、ステップS19で図28および図29に示すサブルーチンを処理する。
If it is determined in step S13 that the hold key 24b is operated, the game CPU activation flag is reset in step S15, and “0” is set to LCNT0 of the LCD control data in step S17. Thereby, the telephone mode is started. When the process of step S17 is completed, the subroutine shown in FIGS. 28 and 29 is processed in step S19 to display an incoming call waiting screen on the
まず、図28に示すステップS131でLCD制御データのLCNT5を“0”に更新して、LCD18の表示をオフ状態とする。次に、ステップS133,S135およびS137の各々で、フレームメモリレジスタ80aにフレームメモリ86用Xアドレス,フレームメモリ86用Yアドレスおよび1ドット分の2値画像データをセットする。ステップS133およびS135で設定されるアドレスデータはフレームメモリ86に形成されたエリア2の先頭アドレスを示し、ステップS137で設定される2値画像データはこの先頭アドレスに書き込むデータである。ステップS139ではエリア2への2値画像データの書き込みが完了したかどうか判断し、YESとの判断結果が得られるまでステップS137の処理を繰り返す。これによって、着信待ち画面を形成する日付および現在時刻の2値画像データがフレームメモリ86のエリア2に書き込まれていく。
First, in step S131 shown in FIG. 28, LCNT5 of the LCD control data is updated to “0”, and the display of the
続くステップS141〜S147の各々では、フレームメモリ88用Xアドレス,フレームメモリ88用Yアドレスおよび1ドット分のカラー画像データをフレームメモリレジスタ80aにセットする。ステップS141およびS143でセットするXアドレスおよびYアドレスはフレームメモリ88に形成されたエリア2の先頭アドレスを示し、ステップS145でセットされた1ドット分のカラー画像データはこの先頭アドレスに書き込むべき画像データである。ステップS147では、エリア2へのカラー画像データの書き込みが完了したかどうか判断し、書き込みが完了していなければステップS145に戻るが、書き込みが完了すればステップS149に進む。これによって、着信待ち画面を形成するゲームキャラクタのカラー画像データがフレームメモリ88に描画される。
In subsequent steps S141 to S147, the X address for the frame memory 88, the Y address for the frame memory 88, and the color image data for one dot are set in the frame memory register 80a. The X address and Y address set in steps S141 and S143 indicate the head address of
続いて、ステップS149でエリア2用パレットデータ1をパレット制御レジスタ80cにセットし、ステップS151〜S155の各々で合成開始ラインデータ,合成終了ラインデータおよび画像開始ラインデータを出力制御レジスタ80bにセットし、その後ステップS157でLCD制御データのLCNT5を“1”に戻す。これによって、図2に示す着信待ち画面がLCD18に表示される。
Subsequently, in step S149, the
ステップS21でダイヤル操作ありと判別されると、まずステップS23で図27に示すサブルーチンを処理する。ただし、このときフレームメモリ86に描画される2値画像データは、相手方の電話番号を示す画像データである。このため、LCD18には、日付および現在時刻に代えて相手方の電話番号が表示される。ステップS23の処理が完了すると、ステップS25で通話処理を行なうとともに、ステップS27でホールドキー24bの操作の有無を判別する。そして、ホールドキー24bが操作されない限りステップS25の処理を繰り返し、ホールドキー24bが操作されたときステップS29で図27に示すサブルーチンを再度処理する。このとき、フレームメモリ86には日付および現在時刻を示す2値画像データが描画され、この結果、LCD18の表示は、相手方の電話番号から日付および現在時刻に更新される。
If it is determined in step S21 that there is a dial operation, the subroutine shown in FIG. 27 is first processed in step S23. However, the binary image data drawn in the
ステップS35で電話着信ありと判別されると、ステップS37でゲームCPU起動フラグの状態を判別する。ここでゲームCPU起動フラグがリセット状態であれば、そのままステップS43に進む。一方、ゲームCPU起動フラグがセット状態であれば、ステップS39で図15に示すゲームキーレジスタ3のスタートキービットKO6を“1”にセットするとともに、ステップS41で図14に示すLCD制御データのLCNT4および3を“11”にセットしてからステップS43に進む。ステップS39の処理によって、*キー24d(スタートキーとして機能)の操作に関係なくスタートキービットKO6がセットされ、ゲームはポーズ状態に移行する。また、ステップS41の処理によって、ゲーム画面のトーンがアップされる。
If it is determined in step S35 that there is an incoming call, the state of the game CPU activation flag is determined in step S37. Here, if the game CPU activation flag is in the reset state, the process directly proceeds to step S43. On the other hand, if the game CPU activation flag is in the set state, the start key bit KO6 of the game
ステップS43では、図27に示すサブルーチンを処理する。このとき、フレームメモリ86には“着信中”との着信メッセージおよび発信元の電話番号を示す2値画像データが描画される。続いて、ステップS45でスピーカ48から着信音を発生し、ステップS47でフックキー24aの操作の有無を判別する。そして、フックキー24aが操作されれば、ステップS49で着信音の出力を停止し、ステップS51で通話処理を行なう。ステップS53ではホールドキー24bの操作の有無を判別し、ホールドキー24bが操作されない限りステップS51の通話処理を繰り返す。
In step S43, the subroutine shown in FIG. 27 is processed. At this time, in the
ホールドキー24bが操作されると、ステップS53からステップS55に進み、ゲームCPU起動フラグの状態を判別する。ここでゲーム起動フラグがリセット状態であればそのままステップS59に進むが、ゲーム起動フラグがセット状態であれば、ステップS57でLCD制御データのLCNT4および3を“10”にセットしてから、つまりゲーム画面のトーンを元に戻してから、ステップS59に進む。ステップS59では図27に示すサブルーチンを処理し、これによって全ドットが“0”を示す2値画像データがフレームメモリ86に書き込まれる。LCD18に表示された着信メッセージおよび発信元の電話番号は、ステップS59の処理によって消去される。ステップS59の処理が完了すると、ステップS31に進む。
When the hold key 24b is operated, the process proceeds from step S53 to step S55, and the state of the game CPU activation flag is determined. If the game activation flag is in the reset state, the process proceeds to step S59. If the game activation flag is in the set state, the LCD control data LCNT4 and 3 are set to “10” in step S57, that is, the game. After restoring the tone of the screen, the process proceeds to step S59. In step S59, the subroutine shown in FIG. 27 is processed, whereby binary image data in which all dots are “0” is written into the
ステップS5,S13,S21およびS35のいずれにおいてもNOと判断されたときは、まずステップS61およびS63でバッテリ残量および受信状態を検出し、ステップS65で今日の日付および現在時刻を検出する。続いてステップS67で図30に示すサブルーチンを処理し、ステップS67の処理が完了すると、ステップS31に進む。 If NO is determined in any of steps S5, S13, S21 and S35, first, the remaining battery level and the reception state are detected in steps S61 and S63, and today's date and current time are detected in step S65. Subsequently, the subroutine shown in FIG. 30 is processed in step S67, and when the process of step S67 is completed, the process proceeds to step S31.
図30を参照して、まずステップS161でカウント値Nを“1”にセットし、次にステップS163およびS165の各々でフレームメモリ86用Xアドレスおよびフレームメモリ86用Yアドレスをフレームメモリレジスタ80aにセットする。さらに、ステップS167で1ドット分の2値画像データを同じフレームメモリレジスタ80aにセットする。ステップS163およびS165でセットされるアドレスデータはフレームメモリ86に形成されたエリアNの先頭アドレスであり、ステップS167でセットされる2値画像データはこの先頭アドレスに書き込むデータである。ステップS169ではエリアNへの2値画像データの書き込みが完了したかどうか判断し、NOであればステップS167の処理を繰り返す。ステップS169でYESと判断されるとステップS171でカウント値Nが “2”であるかどうか判断し、NOであればステップS173でカウント値NをインクリメントしてからステップS163に戻る。
Referring to FIG. 30, first, count value N is set to "1" in step S161, and then in steps S163 and S165, the X address for
この結果、ステップS163〜S171の処理が2回繰り返され、フレームメモリ86に形成されたエリア1および2の各々に2値画像データが書き込まれる。エリア1には受信状態およびバッテリ残量のキャラクタを示す2値画像データが格納され、エリア2には今日の日付および現在時刻のキャラクタを示す2値画像データが格納される。各々のキャラクタには、ステップS61〜S67で検出された受信状態,バッテリ残量,日付およびバッテリ残量が反映される。
As a result, the processing of steps S163 to S171 is repeated twice, and binary image data is written in each of
ステップS171でYESと判断されると、ステップS175,S177およびS179でエリア1用パレットデータ0,エリア1用パレットデータ1およびエリア2用パレットデータをパレット制御レジスタ80cにセットする。フレームメモリ86に格納された2値画像データは、セットされたエリア1用パレットデータ0,エリア1用パレットデータおよびエリア2用パレットデータ1による色付け処理を経て、LCD18に出力される。LCD18のエリア1には、現時点の受信状態,現時点のバッテリ残量が表示され、エリア2には今日の日付および現在時刻を示すキャラクタが表示される。
If YES is determined in the step S171, the
図22に戻って、ステップS31ではゲームCPU起動フラグの状態を判別し、リセット状態であればそのままステップS5に戻る。一方、ゲームCPU起動フラグがセット状態であれば、割り込み要求が割り込みレジスタ1にセットされているかどうかをステップS33で判別する。そして、割り込み要求がセットされていなければ、上述のリセット状態と同様、そのままステップS5に戻る。したがって、電話モードが設定されているとき、ならびにゲームモードが設定されているが割り込み要求が与えられないときは、図24に示すステップS69以降の処理を行なうことなく、ステップS5〜S67の処理を繰り返す。
Returning to FIG. 22, in step S31, the state of the game CPU activation flag is determined. If it is in the reset state, the process directly returns to step S5. On the other hand, if the game CPU activation flag is set, it is determined in step S33 whether an interrupt request is set in the interrupt
割り込みレジスタ1に割り込み要求がセットされていれば、ステップS69でFIFOレジスタ1の設定値を検出するとともに、検出された設定値の内容をステップS71およびS75の各々で判別する。検出された設定値の内容がキー転送依頼であるときはステップS73でキー転送処理を行ない、検出された設定値の内容がFEP(Front End Processing)転送依頼であればステップS77でFEP転送処理を行ない、そして検出された設定値の内容が他の依頼であればステップS79で対応する処理を行なう。ステップS73,S77またはS79の処理を終えると、ステップS3に戻る。なお、キー転送処理は、*キー24dおよび#キー24eへのスタート機能およびセレクト機能の割り当てのために電話CPUコア28a側で行なわれる処理であり、FEP転送処理は、プレイヤ名の入力のために電話CPUコア28a側で行なわれる処理である。
If an interrupt request is set in the interrupt
ステップS73におけるキー転送処理は、図31に示すサブルーチンに従う。まずステップS181でFIFOレジスタ1から設定値を検出し、検出した設定値がエンドコードであるかどうかをステップS183で判別する。図32を参照して、FIFOレジスタ1にキー転送依頼が設定されている場合、このキー転送依頼の次には電話キー24のいずれかを示すキーコードが設定され、さらにこのキーコードに割り当てたい機能を示す機能情報が、キーコードの次に設定される。エンドコードは、このようなキーコードおよび機能情報の繰り返しの後に設定される。
The key transfer process in step S73 follows a subroutine shown in FIG. First, in step S181, a setting value is detected from the
したがって、ステップS181ではキーコードが検出され、最初のステップS183ではNOと判断される。ステップS185では、検出された設定値つまりキーコードと一致するキー項目を図33に示す機能割り当てテーブル34a(SRAM34に形成)の中から特定する。たとえば、キーコードの下位4桁が“1010”であれば“#キー”が特定され、キーコードの下位4桁が“1011”であれば“*キー”が特定される。ステップS187ではFIFOレジスタ1の設定値を再度検出する。上述のように、キーコードに続く設定値は機能情報であり、ステップS187では機能情報が検出される。ステップS189では、検出された機能情報をステップS185で特定されたキー項目に割り当てる。ステップS189の処理が完了すると、ステップS191でゲームキーレジスタ3の対応するビットに“0”を設定してからステップS181に戻る。
Therefore, the key code is detected in step S181, and NO is determined in the first step S183. In step S185, the key item that matches the detected setting value, that is, the key code is specified from the function assignment table 34a (formed in the SRAM 34) shown in FIG. For example, if the lower 4 digits of the key code are “1010”, “# key” is specified, and if the lower 4 digits of the key code is “1011”, “* key” is specified. In step S187, the set value of the
たとえば、“#キー”を示すキーコードに続いて“セレクト”を示す機能情報(下位8ビットが“10000000”)が検出されたときは、機能割り当てテーブル34aの“#キー”の項目にセレクト機能が割り当てられ、図15に示すゲームキーレジスタ3のKO7に“0”が設定される。また、“*キー”を示すキーコードに続いて“スタート”を示す機能情報(下位8ビットが “01000000”)が検出されたときは、機能割り当てテーブル34aの“*キー”の項目にスタート機能が割り当てられ、ゲームキーレジスタ3のKO6に“0”が設定される。
For example, when function information indicating “select” (lower 8 bits is “10000000”) is detected following the key code indicating “# key”, the function of selecting “# key” in the function assignment table 34a is selected. Is assigned, and “0” is set in KO7 of the game
ステップS181で検出された設定値がエンドコードを示すときは、ステップS183を経てステップS193に進み、図9に示す電話キーレジスタ28bを参照して電話キー24のいずれが操作されたかを判別する。ステップS195では、判別された操作キーに割り当てられた機能情報を機能割り当てテーブル34aから検索し、ステップS197では、機能情報が機能割り当てテーブル34aから発見されたかどうかを判別する。
When the set value detected in step S181 indicates an end code, the process proceeds to step S193 through step S183, and it is determined which of the
図33によれば、“#キー”および“*キー”以外に、数字キー24cを示すキー項目も機能割り当てテーブル34aに設けられており、キー項目の中には機能情報が割り当てられていない項目も存在しうる。このため、機能情報を発見できたかどうかをステップS197で判断するようにしている。そして、機能情報を発見できなければそのまま図24に示すルーチンに復帰するが、機能情報を発見できたときはステップS199でゲームキーレジスタ3の対応するビットを“1”にセットしてから図24に示すルーチンに復帰する。
According to FIG. 33, in addition to the “# key” and “* key”, a key item indicating the numeric key 24c is also provided in the function assignment table 34a, and no item of function information is assigned to the key item. Can also exist. Therefore, it is determined in step S197 whether function information has been found. If the function information cannot be found, the routine returns to the routine shown in FIG. 24 as it is. However, if the function information is found, the corresponding bit of the game
たとえば、オペレータによって“1”を示す数字キーが押されたときは、ゲームキーレジスタ3のいずれのビットも“1”にセットされないが、オペレータによって*キー24dが押されたときは、ゲームキーレジスタ3のKO6が“1”にセットされる。
For example, when the numeric key indicating “1” is pressed by the operator, no bit of the game
図24のステップS77におけるFEP転送処理は、図34に示すサブルーチンに従う。まずステップS201でFIFOレジスタ1からカーソル表示位置データを検出し、次にステップS203で図27に示すサブルーチンを処理する。このときフレームメモリ86にエリア2に描画される2値画像データはカーソルを示す画像データである。カーソルの描画位置はカーソル表示位置データに基づいて決定され、2値画像データは図35(A)に示す要領でフレームメモリ86に格納される。
The FEP transfer process in step S77 in FIG. 24 follows a subroutine shown in FIG. First, the cursor display position data is detected from the
一方、図35(B)に示す“名前を入力してください”の案内メッセージおよび名前入力枠を示すカラー画像データは、ゲームCPU40によってフレームメモリ88に描画される。この結果、図35(C)に示すプレイヤ名入力画面がLCD18に表示される。
On the other hand, the “Please input name” guidance message and the color image data indicating the name input frame shown in FIG. 35B are drawn in the frame memory 88 by the
ステップS203の処理を終えると、ステップS205で電話キーレジスタ28bおよびゲームキーレジスタ2の設定値を検出し、続くステップS207でAボタン22bの操作の有無を判別する。ここでNOであれば、電話キー24が操作されたとみなしてステップS209に進み、FEP処理を行なう。FEP処理を終えると、ステップS203に戻る。FEP処理によって電話キー24の操作に対応する文字列が生成され、生成された文字列は続くステップS203の処理によってLCD18に表示される。
When the processing in step S203 is completed, the set values of the telephone key register 28b and the game
たとえば、電話キー24を操作して“やまだ”と入力してカナ漢字変換を行ない、さらに“たろう”と入力すると、フレームメモリ86には図36(A)に要領で2値画像データが描画され、LCD18上の名前入力枠には図36(C)に示すように“山田たろう”の文字が表示される。カーソルは、“たろう”を指向する。
For example, when the
名前入力の完了後、オペレータによってAボタン22bが操作されると、ステップS207でYESと判断し、ステップS211およびS213の各々で“FEP結果送付”および作成された文字列に対応するJISコードをFIFOレジスタ2にセットする。ステップS215では割り込みレジスタ2に割り込み要求をセットし、ステップS217では図27に示すサブルーチンを処理する。ステップS217の処理を終えると、図24に示すルーチンに復帰する。
When the
ステップS217では全ビットが“0”を示す2値画像データがフレームメモリ86のエリア2に描画され、フレームメモリ86には受信状態およびバッテリ残量を示すキャラクタの2値画像データのみが残る。ただし、後述するゲームCPU40の処理によって、“山田太郎”を示すカラー画像データが図37(B)に示す要領でフレームメモリ88に描画され、LCD18には図37(C)に示すプレイヤ名入力画面が表示されることとなる。
In step S217, binary image data in which all bits are “0” is drawn in
ゲームCPUコア50は、図38〜図41に示すフロー図を処理する。まずステップS221でゲームCPU起動フラグの状態を判別し、セット状態になったときにステップS223でゲームCPU表示処理を行なう。このゲームCPU表示処理は、図40に示すサブルーチンに従う。
The
図40を参照して、まずステップS271で背景画像データを形成する静止キャラクタデータをVRAM72にセットし、ステップS273で静止キャラクタのパレットデータをカラーパレットRAM68にセットする。続いて、今回表示すべき画面がオブジェクト画像データを出力すべき画面であるかどうかをステップS275で判別し、NOであればそのままステップS283に進むが、YESであればステップS277〜S281の処理を経てステップS283に進む。たとえば図4に示すゲーム画面についてはオブジェクト画像(動きキャラクタ)を表示する必要があり、このときは、ステップS277に進む。一方、図3に示すメニュー画面や図6(A)および図6(B)に示すプレイヤ名入力画面では背景画像のみを表示すればよく、このときはステップS283に進む。
Referring to FIG. 40, first, in step S271, still character data for forming background image data is set in
オブジェクト画像を表示する場合は、まずステップS277で動きキャラクタデータをVRAM74にセットし、ステップS279で動きキャラクタのパレットデータをカラーパレットRAM68にセットする。さらにステップS281で動きキャラクタのアトリビュートをOAM76にセットし、ステップS281の処理が完了するとステップS283に進む。
When displaying an object image, first, the moving character data is set in the
ステップS283では背景画像およびオブジェクト画像の出力に関する設定値をレジスタ70にセットし、続くステップS285では1フレーム分の処理が完了したかどうか判断する。ここでNOであればステップS271に戻り上述の処理を繰り返すが、YESであれば上階層のルーチンに復帰する。
In step S283, setting values relating to the output of the background image and the object image are set in the
PPU78は、レジスタ70の設定値に応じて、静止キャラクタデータにカラーパレットRAM68のパレットデータに従う色付けを施し、さらに必要に応じて動きキャラクタデータにもカラーパレットRAM68のパレットデータに従う色付けを施す。色付けを施されたカラー画像データはLCDコントローラ84によってフレームメモリ88に書き込まれ、その後同じLCDコントローラ84によってLCD18に出力される。この結果、カラー画像がLCD18に表示される。
The
図38に示すステップS223におけるゲームCPU表示処理では、図3に示すようなメニュー画面がLCD18に表示される。このメニュー画面は、静止キャラクタによって形成される。LCD18に表示されたメニュー画面の中から所望のゲームが選択されると、ステップS225からステップS227に進む。ステップS227〜S237の各々では、キー転送依頼,“#キー”を示すキーコード,“セレクト”を示す機能情報,“*キー”を示すキーコード,“スタート”を示す機能情報およびエンドコードをFIFOレジスタ1にセットする。エンドコードの設定が完了すると、ステップS239で割り込み要求を図13に示す割り込みレジスタ1に設定する。この結果、電話CPUコア28aによって上述のキー転送処理が実行され、#キー24eにセレクト機能が割り当てられるとともに、*キー24dにスタート機能が割り当てられる。
In the game CPU display process in step S223 shown in FIG. 38, a menu screen as shown in FIG. This menu screen is formed by stationary characters. When a desired game is selected from the menu screen displayed on the
ステップS241では、選択されたゲームに関連するBGMデータの出力をSPU64に命令する。スピーカ48からは、このBGMデータに基づくBGMが出力される。続くステップS243では、ゲームキーレジスタ1の設定値を検出する。そして、図15に示すK0〜K7のいずれのビットが“1”にセットされているかを、ステップS245,S251およびS261の各々で判別する。
In step S241, the SPU 64 is instructed to output BGM data related to the selected game. BGM based on the BGM data is output from the
セレクトキーに対応するK7が“1”にセットされているときはステップS245でYESと判断し、ステップS247でLCD18の表示がメニュー画面であるかどうか判別する。LCD18の表示がメニュー画面でなければ、そのままステップS243に戻り、この結果、#キー24dの操作は無効とされる。一方、LCD18の表示がメニュー画面であれば、ステップS249におけるセレクト処理を経てステップS243に戻る。
When K7 corresponding to the select key is set to “1”, YES is determined in a step S245, and it is determined whether or not the display of the
スタートキーに対応するK6が“1”にセットされているときはステップS251でYESと判断し、ステップS253でゲームにポーズをかける。具体的には、K6ビットを“0”に戻し、SPU64に対してサウンド出力を停止させ、そして現時点のゲームデータをフラッシュメモリ54に格納する。ステップS255ではゲームキーレジスタ1の設定値を検出し、ステップS257ではスタートキーに対応するK6が“1”を示すかどうか判別する。ここで、YESと判断されない限りステップS255およびS257の処理が繰り返され、この間ゲーム画面の停止状態が続く。ステップS257でYESと判断されると、ステップS259でポーズ状態を解除し、ステップS243に戻る。この結果、ゲーム画面の動きおよびBGMの出力が再開される。
When K6 corresponding to the start key is set to “1”, “YES” is determined in the step S251, and the game is paused in a step S253. Specifically, the K6 bit is returned to “0”, the sound output to the SPU 64 is stopped, and the current game data is stored in the
なお、ステップS253でゲームデータを格納することによって、電話終了後に何らかの原因(たとえば電池の消耗)でポーズ状態から復帰できないときでも、別の操作(たとえば再起動)によって中断時点からゲームを再開することができる。 By storing the game data in step S253, the game can be resumed from the point of interruption by another operation (for example, restart) even if the pause state cannot be recovered for some reason (for example, battery exhaustion) after the call ends. Can do.
図15に示すK6およびK7以外のビットが“1”にセットされているときはステップS261でYESと判断し、ステップS263,S265およびS267の各々でゲーム処理,ゲームCPU表示処理および効果音出力処理を行なう。ステップS263におけるゲーム処理では、カラーパレットRAM68,レジスタ70,VRAM72および74ならびにOAM76の設定が、必要に応じて更新される。ステップS265におけるゲームCPU表示処理では、図4に示すようなスクリーン,静止オブジェクトおよび動きキャラクタからなるゲーム画面がLCD18に表示される。ステップS267の効果音出力処理では、効果音データがSPU64から出力される。
When bits other than K6 and K7 shown in FIG. 15 are set to “1”, YES is determined in step S261, and game processing, game CPU display processing, and sound effect output processing are performed in steps S263, S265, and S267, respectively. To do. In the game process in step S263, the settings of the
なお、図15に示すK0〜K7のいずれも“0”であれば、ステップS261でNOと判断し、そのままステップS243に戻る。 If any of K0 to K7 shown in FIG. 15 is “0”, NO is determined in step S261, and the process directly returns to step S243.
ステップS263におけるゲーム処理の途中でプレイヤの名前を入力する場面が生じると、ゲームCPUコア50は図41に示すサブルーチンを処理する。まず、ステップS291で図40に示すゲームCPU表示処理を行なう。これによって、図35(B)に示すような“名前を入力してください”のメッセージおよび名前入力枠のカラー画像データがフレームメモリ88に書き込まれ、LCD18には図35(C)に示す名前入力画面が表示される。ただし、ステップS291が完了した時点ではカーソルはまだ表示されない。
If a scene occurs in which the player's name is input during the game process in step S263, the
ステップS293ではFEP転送依頼をFIFOレジスタ1にセットし、ステップS295ではカーソル表示位置データをFIFOレジスタ1にセットし、ステップS295の処理が完了すると、ステップS297で割り込み要求を割り込みレジスタ1にセットする。これによって、電話CPUコア28a側でFEP転送処理が行なわれ、カーソルが図35(C)に示す要領で名前入力枠内に表示される。
In step S293, the FEP transfer request is set in the
ステップS299では、割り込み要求が割り込みレジスタ2にセットされているかどうか判別する。ここでYESと判断されると、FIFOレジスタ2の設定値(FEP結果送付)をステップS301で検出し、ステップS303でFIFOレジスタ2の設定値(JISコード)を検出する。さらに、検出されたJISコードに基づいて名前表示枠内に名前を表示すべく、ステップS305でゲームCPU表示処理を行なう。これによって、図37(B)に示すようなメッセージ,名前表示枠および名前のカラー画像データがフレームメモリ88に描画され、LCD18には図37(C)に示すような名前入力画面が表示される。名前を示すカラー画像データの描画位置は、上述のカーソル表示位置データに基づいて決定する。ステップS305の処理が完了すると、上階層のルーチンに復帰する。
In step S299, it is determined whether or not an interrupt request is set in the interrupt
以上の説明から分かるように、実行中のゲームを中断させるべく(ポーズ状態に移行すべく)、オペレータが*キー24dを操作すると、電話CPUコア28aは、このキー操作に応答してゲームキーレジスタ3のKO6ビットに“1”を設定する(これに伴って、ゲームキーレジスタ1のK6ビットに “1”が設定される)。電話CPUコア28aは、ゲームの実行中に電話の着信があったときも、上述のKO6ビットに“1”を設定する。ゲームCPUコア50は、ゲームキーレジスタ1のK6ビットが“1”に更新されたとき、実行中のゲームにポーズをかけ、現時点のゲームデータをフラッシュメモリ54に保存し、そしてK6ビットを“0”に戻す。なお、ゲーム実行中に電話の着信があったときは、ポーズ状態の移行に加えて、ゲーム画面の階調が変更される。ゲームが中断している状態で*キー24dが操作されると、K6ビットの設定値が再度“1”に設定される。すると、ゲームCPUコア50は、ゲームを再開する。
As can be understood from the above description, when the operator operates the * key 24d to interrupt the game being executed (to shift to the pause state), the
このように、電話の着信があったときは、ゲームは終了ではなく中断される。このため、通話が終了した後にゲームを途中から再開することができる。また、ゲームキーレジスタ1のK6ビットには、*キー24dが操作されたときだけでなく、電話の着信があったときも、“1”が設定される。このため、従来からあるゲームプログラムが元々備えているゲームポーズ機能を変更することなく、電話着信時にゲームにポーズをかけることができる。
In this way, when an incoming call is received, the game is interrupted rather than finished. For this reason, the game can be resumed from the middle after the call ends. The K6 bit of the game
なお、この実施例では、図16に示すようにエリア1および2を形成し、図17に示す要領でエリア1に受信状態およびバッテリ残量を示すキャラクタを表示するようにした。しかし、エリア1および2を図42に示すように形成するようにしてもよい。
In this embodiment,
また、この実施例では、ゲーム中に着信があったとき、ゲーム画面のトーンをアップさせるようにしているが、ゲーム画面のトーンはダウンさせるようにしてもよい。 In this embodiment, when an incoming call is received during the game, the tone of the game screen is raised. However, the tone of the game screen may be lowered.
また、この実施例では、ゲームのスタートキー機能およびセレクトキー機能を電話キー(#および*)に割り当てるようにしたが、ゲームの他の機能を電話キーに割り当てるようにしてもよい。 In this embodiment, the game start key function and select key function are assigned to the telephone keys (# and *), but other functions of the game may be assigned to the telephone keys.
10…ゲーム機能付携帯通信端末
18…LCD
20…ゲーム起動キー
22…ゲームキー
24…電話キー
28…電話CPU
40…ゲームCPU
50…ゲームCPUコア
64…音声処理ユニット
68…カラーパレットRAM
70,80…レジスタ
72,74…VRAM
76…OAM
78…画像処理ユニット
82…キーコントローラ
84…LCDコントローラ
86,88…フレームメモリ
10 ... Mobile communication terminal with
20 ... Game start key 22 ... Game key 24 ... Telephone key 28 ... Telephone CPU
40 ... Game CPU
50 ... Game CPU core 64 ...
70, 80 ...
76 ... OAM
78 ...
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008194194A JP2008259248A (en) | 2008-07-28 | 2008-07-28 | Electronic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008194194A JP2008259248A (en) | 2008-07-28 | 2008-07-28 | Electronic device |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000263555A Division JP2002077329A (en) | 2000-08-31 | 2000-08-31 | Electronic device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008259248A true JP2008259248A (en) | 2008-10-23 |
Family
ID=39982285
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008194194A Pending JP2008259248A (en) | 2008-07-28 | 2008-07-28 | Electronic device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008259248A (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01119272A (en) * | 1987-10-30 | 1989-05-11 | Shimadzu Corp | Automatic board for playing game of go or shogi |
JPH1023115A (en) * | 1996-07-02 | 1998-01-23 | Kyocera Corp | Portable telephone system |
JPH1094070A (en) * | 1996-09-11 | 1998-04-10 | Toshiba Corp | Composite mobile communication terminal and remote controller |
JPH10136064A (en) * | 1996-10-31 | 1998-05-22 | Aiwa Co Ltd | Portable terminal equipment |
JPH11137851A (en) * | 1997-11-07 | 1999-05-25 | Aikomu International:Kk | Portable game system |
JP2001333153A (en) * | 2000-05-23 | 2001-11-30 | Yamaha Corp | Method of processing incoming call in mobile phone with game function |
-
2008
- 2008-07-28 JP JP2008194194A patent/JP2008259248A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01119272A (en) * | 1987-10-30 | 1989-05-11 | Shimadzu Corp | Automatic board for playing game of go or shogi |
JPH1023115A (en) * | 1996-07-02 | 1998-01-23 | Kyocera Corp | Portable telephone system |
JPH1094070A (en) * | 1996-09-11 | 1998-04-10 | Toshiba Corp | Composite mobile communication terminal and remote controller |
JPH10136064A (en) * | 1996-10-31 | 1998-05-22 | Aiwa Co Ltd | Portable terminal equipment |
JPH11137851A (en) * | 1997-11-07 | 1999-05-25 | Aikomu International:Kk | Portable game system |
JP2001333153A (en) * | 2000-05-23 | 2001-11-30 | Yamaha Corp | Method of processing incoming call in mobile phone with game function |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002077329A (en) | Electronic device | |
JP4922513B2 (en) | GAME MANAGEMENT DEVICE, GAME PROGRAM, AND GAME SYSTEM | |
KR100740752B1 (en) | Game system having message exchanging function, game device using the same, message exchanging system, and computer readable memory media | |
US6533663B1 (en) | Method of assisting selection of action and program product and game system using same | |
JP4134008B2 (en) | Image processing apparatus and image processing program | |
JP2011251168A (en) | Game system, communication terminal, and program | |
JP2007275472A (en) | Communication game system | |
WO2006011343A1 (en) | Competition solving device | |
JP4757984B2 (en) | Image display device | |
JP4754259B2 (en) | GAME PROGRAM, GAME DEVICE, COMMUNICATION GAME SYSTEM, AND GAME CONTROL METHOD | |
US20220043564A1 (en) | Method for inputting content and terminal device | |
US20080125179A1 (en) | Mobile Communication Device and Application Execution Environment Software For Mobile Communication Device | |
JP4555446B2 (en) | Electronic equipment | |
JP4324487B2 (en) | Wireless communication game system and wireless communication game program | |
JP5001390B2 (en) | Electronic equipment | |
JP2008259248A (en) | Electronic device | |
JP2008271607A (en) | Electronic device | |
JP5480944B2 (en) | Video game processing apparatus and video game processing program | |
CN112905096B (en) | Display control method, device, terminal equipment and storage medium | |
JP4621589B2 (en) | Character input method, character input device, and mobile communication terminal device | |
JP4920838B2 (en) | How to manage network games | |
KR100701041B1 (en) | Mobile communication method using avatar and terminal used therefor | |
JP2007128534A (en) | Selection system of option using a plurality of information processors | |
JP2002229705A (en) | Mobile communication equipment | |
JP4947356B2 (en) | Application execution control apparatus and application execution control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080729 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080729 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090511 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090924 |