JP3680352B2 - Image control device - Google Patents

Image control device Download PDF

Info

Publication number
JP3680352B2
JP3680352B2 JP13727195A JP13727195A JP3680352B2 JP 3680352 B2 JP3680352 B2 JP 3680352B2 JP 13727195 A JP13727195 A JP 13727195A JP 13727195 A JP13727195 A JP 13727195A JP 3680352 B2 JP3680352 B2 JP 3680352B2
Authority
JP
Japan
Prior art keywords
variable
value
character string
determined
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.)
Expired - Fee Related
Application number
JP13727195A
Other languages
Japanese (ja)
Other versions
JPH08305885A (en
Inventor
拓也 鈴木
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP13727195A priority Critical patent/JP3680352B2/en
Priority to US08/639,516 priority patent/US6278451B1/en
Priority to EP96107188A priority patent/EP0742535A3/en
Priority to TW085105492A priority patent/TW417071B/en
Priority to CN96105167A priority patent/CN1102279C/en
Priority to KR1019960015466A priority patent/KR100226077B1/en
Publication of JPH08305885A publication Critical patent/JPH08305885A/en
Priority to HK98100903A priority patent/HK1002086A1/en
Application granted granted Critical
Publication of JP3680352B2 publication Critical patent/JP3680352B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【産業上の利用分野】
本発明は、ユーザが入力した文字列に応じてふきだしを表示するための技術に関する。
【0002】
【従来の技術】
従来、スプライト(オブジェクト)、バックグラウンド等の画像データを制御し、ユーザが指定した画像をテレビ等に表示させる画像表示装置が知られている。このような画像表示装置では、既に用意されているオブジェクトを任意に組み合わせ、ユーザは人物の似顔絵といった所望の画像を得る(作成する)ことができるように画像データを制御する画像制御装置を搭載している。
【0003】
似顔絵等に組み合わせるものとしては、先ず、背景が挙げられるが、この背景の他にふきだしを挙げることができる。ふきだしは、文字列(せりふ)、及びそれを囲むせりふ枠とからなり、一般的に、会話といった伝えたい内容や心のなかで思っている内容等を視覚的に強調し、他の表示されているものと区別させるような目的で用いられる。
【0004】
通常、画像表示装置(画像制御装置)では、せりふはユーザが任意に入力することができるようになっている。一方、せりふ枠においては、せりふが同一であってもその形状によって伝わる印象が大きく異なることが知られている。このため、画像表示装置(画像制御装置)は、ユーザの様々な要求に答えられるように、せりふ枠を複数用意し、これらの中からユーザは所望のせりふ枠を選択するようになっている。
【0005】
【発明が解決しようとする課題】
しかしながら、上記のような画像制御装置(画像表示装置)では、ふきだしの作成において、せりふ枠の種類の選択と合わせ、そのせりふ枠に入るせりふ(文字列)の文字数に応じてそれの大きさを更に選択しなければならず、その作成に要する操作が煩雑であるという問題点があった。
【0006】
また、ユーザが入力したせりふ(文字列)をせりふ枠の形状に応じて部分文字列に分割し、該分割した部分文字列を並べて表示させていたため、ユーザが意図しないところで改行等が行われるという問題点があった。
【0007】
せりふ(文字列)が意図しないところで改行された場合、例えば単語の区切り等が明確でなくなることもあり、そのせりふの意味が理解し難くなったりする。このような問題点は、せいふ枠の形状を考慮してせりふ(文字列)を入力することで回避することは可能であるが、そのためにはせりふ(文字列)の文字数及びその内容、せりふ枠の形状等を把握したうえでせりふ(文字列)を入力しなければならず、実際の操作が非常に面倒になるという問題点が新たに発生することになる。
【0008】
本発明の課題は、ユーザが所望するふきだしの作成に要する操作を容易、且つ簡易化することにある。
【0009】
【課題を解決するための手段】
本発明の第1、及び第2の態様の画像制御装置は共に、文字列該文字列を囲むせりふ枠とからなるふきだしを表示させることを前提とし、それぞれ以下の手段を具備する。
【0010】
第1の態様の画像制御装置は、文字列が配置可能な行数と1行に配置可能な文字列の文字数とが対応付けられたせりふ枠を複数記憶している記憶手段と、この記憶手段に記憶されているせりふ枠内に配置される文字列を入力する文字列入力手段と、この文字列入力手段により入力される文字列を部分文字列に分割させるための分割情報を入力する分割情報入力手段と、文字列入力手段により入力された文字列をこの分割情報入力手段により入力された分割情報に従って部分文字列に分割し、この分割された前記各部分文字列のそれぞれの文字数と1行に配置可能な文字列の文字数とに基づき、記憶手段に記憶された複数のせりふ枠のなかから一つのせりふ枠を選択し、この選択したせりふ枠内に、前記各部分文字列を配置するように制御する表示制御手段と、を具備する。
【0011】
第2の態様の画像制御装置は、文字列が配置可能な行数と1行に配置可能な文字列の文字数とが対応付けられたせりふ枠を複数記憶している記憶手段と、この記憶手段に記憶されているせりふ枠内に配置される文字列を入力する文字列入力手段と、この文字列入力手段により入力される文字列を部分文字列に分割させるための分割情報を入力する分割情報入力手段と、文字列入力手段により入力された文字列をこの分割情報入力手段により入力された分割情報に従って部分文字列に分割し、この分割された各部分文字列のそれぞれの文字数と1行に配置可能な文字列の文字数とに基づき、前記各部分文字列を表示させる第1の表示制御手段と、部分文字列のそれぞれの文字数と1行に配置可能な文字列の文字数とに基づき、該部記憶手段に記憶された複数のせりふ枠のなかから一つのせりふ枠を選択し、この選択したせりふ枠内に第1の表示制御手段により表示される部分文字列が配置されるように表示させる第2の表示制御手段と、を具備する
【0012】
【作用】
本発明の画像制御装置は、せりふ(文字列)の文字数(文字列が配置可能な行数と1行に配置可能な文字列の文字数とが対応付けられることで決定された文字数)に応じて予め複数のせりふ枠用意し、ユーザが入力したせりふ(文字列)の文字数に応じて、これらのなかから入力されたせりふ(文字列)に組み合わせるせりふ枠を決定する。
【0013】
これにより、せりふ(文字列)の文字数に応じて最適と思われるせりふ枠を選択するユーザの手間を省くことが可能となる。なお、複数用意されたせりふ枠は、例えば基本となるせりふ枠の形状を全体的に、或いは縦横の何れか一方の方向にだけ拡大/縮小させたものである。
【0014】
また、本発明の画像制御装置は、せりふ(文字列)とともに分割情報が入力されると、この入力されたせりふ(文字列)を分割情報に従って部分文字列に分割し、該分割した部分文字列をせりふ枠内に割り当てる。
【0015】
これにより、ユーザはせりふ(文字列)を任意の部分文字列に分割してせりふ枠内に配置させることが容易となり、せりふ(文字列)の意味の把握が容易になるといった効果も得られる。
【0016】
上記の各画像制御装置の機能を組み合わせることにより、上述したそれぞれの効果を組み合わせた効果が得られる。
【0017】
【実施例】
以下、図面を参照しながら、本発明の実施例につき詳細に説明する。
<実施例の回路の全体構成>
図1は、本発明の実施例の回路の全体構成図であり、ゲーム機の外観を有する低年齢層向けの似顔絵作成装置として実施され、テレビ111を除いて同一の筐体内に構成される。
【0018】
VDP(ビデオディスプレイプロセッサ)102は、スプライト(オブジェクト)、バックグラウンド、ビットマップ等に関する画像処理を制御する。
SRAM(スタティックRAM)103は、スプライト(オブジェクト)及びバックグラウンドの画像データを格納する。DP−RAM(デュアルポートRAM)104は、ビットマップの画像データを格納する。SRAM103及びDP−RAM104は、VDP102からアクセスされる。
【0019】
音源処理回路105は、画像と共に発音される楽音のサウンドデータを生成する。
サウンドRAM106は、音源処理回路105が処理する楽音波形データ及びそれらの制御データを格納する。
【0020】
プログラム/データROM107は、CPU101が実行するプログラム及びそのプログラムにおいて使用される各種データを格納する。CPU101は、このプログラムに従って、ワークRAM108を使用しながら、VDP102及び音源処理回路105を制御する。
【0021】
エンコーダ109は、VDP102から送られてくるRGBアナログ映像信号をテレビ規格の映像信号(NTSC信号)に変換する。
D/A変換器110は、音源処理回路105から送られてくるデジタルのサウンドデータをアナログのサウンド信号に変換する。
【0022】
テレビ111は、エンコーダ109から図1のビデオ出力端子104を介して出力される映像信号及びD/A変換器110から図1のオーディオ出力端子103を介して出力されるサウンド信号を再生する。
【0023】
コントロールパッド112は、図2に示される外観を有しており、ユーザに、各種操作を行わせる。図2に示されるように、コントロールパッド112上には、SELスイッチ201、ENTERスイッチ202、及び上下左右スイッチ203〜206が備えられている。
<VDP102の構成>
図3は、図1に示されるVDP102の構成図である。
【0024】
このVDP102は、似顔絵作成時に、その表示位置によりキャラクターの表現が行えるスプライト(オブジェクト)と、背景を表現するバックグラウンド及びビットマップの、テレビ111(図1)への画面表示を、制御する。
【0025】
CPUインタフェース部301は、図1のCPU101との間のデータ転送時におけるインタフェースを制御する。
SRAMインタフェース部302は、後述するオブジェクトジェネレータ部304又はバックグラウンドジェネレータ部305が図1のSRAM103に格納されているスプライト(オブジェクト)又はバックグラウンド(背景)の画像データをアクセスする場合のインタフェースを制御する。
【0026】
DP−RAMインタフェース部303は、後述するビットマップジェネレータ部306が図1のDP−RAM104に格納されているビットマップの画像データをアクセスする場合のインタフェースを制御する。
【0027】
オブジェクトジェネレータ部304と、バックグラウンドジェネレータ部305、及びビットマップジェネレータ部306は、各水平期間(後述する図14を参照)毎に、図1のSRAM103又はDP−RAM104から、次の水平表示期間内の各ドット表示タイミングに対応する表示座標に配置されるスプライト(オブジェクト)、バックグラウンド、又はビットマップの色コードを読み込み、それぞれの内部のバッファに格納する。
【0028】
また、オブジェクトアトリビュートメモリ部307は、オブジェクトジェネレータ部304がSRAM103からSRAMインタフェース部302を介してスプライト(オブジェクト)を読み出すときのタイミングに対応する表示座標(制御データ)を格納する。
【0029】
プライオリティコントローラ部308は、各水平表示期間内の各ドット毎に、オブジェクトジェネレータ部304、バックグラウンドジェネレータ部305、又はビットマップジェネレータ部306がそれぞれ読み込んだ色コードのうちの1つを予め定められたプライオリティ(優先順位)に従って選択し出力する。
【0030】
カラールックアップテーブル部309は、プライオリティコントローラ部308から出力された色コードを、R(赤)、G(緑)、B(青)のデジタルデータに変換して出力する。
【0031】
RGB D/A変換部310は、プライオリティコントローラ部308から出力されるRGBデジタルデータをRGBアナログ映像信号に変換し出力する。
オシレータ部311は、VDP102に必要な各種クロックを生成する。
【0032】
水平/垂直同期カウンタ部312は、オシレータ部311が出力するクロックに従って、画像表示に必要な水平同期カウンタ値(水平同期信号)及び垂直同期カウンタ値(垂直同期信号)を生成するためのカウンタ回路である。
【0033】
デコーダ部313は、水平/垂直同期カウンタ部312が出力するカウンタ値から水平同期カウンタ値及び垂直同期カウンタ値をデコードし、VDP102内の各ブロックに供給する。
【0034】
ビデオ信号ジェネレータ部314は、デコーダ部313が出力する水平同期カウンタ値及び垂直同期カウンタ値から、図1のエンコーダ109が必要とするビデオ信号を生成し、エンコーダ109に供給する。
<画像データの構成>
まず、本実施例では、表示画面は、図4に示されるように、6枚の仮想的な表示面が重なったものとして定義される。これらの表示面は、奥から手前に向け、バックグラウンドA面(BG−A面)、ビットマップB面(BM−B面)、オブジェクトA面(OBJ−A面)、ビットマップA面(BM−A面)、オブジェクトB面(OBJ−B面)、及びバックグラウンドB面(BG−B面)の順に配置される。そして、手前の表示面にアサインされる画像ほど表示のプライオリティが高く、それより奥の表示面にアサインされている画像を隠して表示される。
【0035】
図5に、各表示面にアサインされる画像データの種類(部品)と、画面モードとの関係を示す。BG−A面、BG−B面、BM−A面、BM−B面、OBJ−A面、及びOBJ−B面に表示される各種画像データは、図6〜8に示すデータフォーマットで、図1のプログラム/データROM107に記憶される。BG−A面、BG−B面、OBJ−A面、及びOBJ−B面の画像データは、図1に示されるCPU101が、プログラム/データROM107から、ワークRAM108と、図3のCPUインタフェース部301、アドレスバス315、データバス316、及びSRAMインタフェース部302を介して、SRAM103に転送する。同様に、BM−A面及びBM−B面の画像データは、図1に示されるCPU101が、プログラム/データROM107から、ワークRAM108と、図3のCPUインタフェース部301、アドレスバス315、データバス316、及びDP−RAMインタフェース部303を介して、SRAM103に転送する。また、ワークRAM108には、図11に示すように、ユーザのコントロールパッド112に対する操作に応じてプログラム/データROM107から読み出す画像データを指示するデータ等がCPU101によって書き込まれる。
【0036】
本実施例では、データの圧縮効果を念頭におき、小面積画像及びその繰返しからなる画像を再生するために、小面積毎に画像データを区切ってSRAM103又はDP−RAM104に展開し、これを一度或いは任意に繰り返して画像として再生する。この小面積をセルと呼ぶ。
【0037】
BG面においては、このセルが任意にマップ(マトリクス)状に並べられ、目的の大きさの画像が合成される。画像中の一部分のみを変更したい場合は、SRAM103上の該当するセルのデータのみをCPU101により書き換えればよく、そのときに他のセルに影響を及ぼさずに済む。本実施例では、このBG面を2面分出力できる。これらを、BG−A面及びBG−B面と呼ぶ。
【0038】
OBJ面は、データの圧縮のためというよりも、小面積画像の表示位置を他の画像(背景等)に影響を与えず(描き直したりせず)に簡単に変更したり、多数(本実施例では同時表示数は128個)のスプライト(オブジェクト)画像間でプライオリティを持たせたりする目的で使用される。OBJ面上の画像データは小面積でデータ量(ドット数)が少ないため、1枚の画像データに対するメモリアクセス時間が少なくて済み、その分多数の画像データを再生することができる。OBJ面上の画像も、BG面上の画像と同様に、セルによって構成される。また、本実施例では、このOBJ面を2面分出力できる。これらを、OBJ−A面及びOBJ−B面と呼ぶ。
【0039】
BM面は、ある程度の面積を有する画像であるが、繰り返し再生される要素が少ない場合に適した面である。画像をセル形式に構成する必要がなく、更に、マップ情報も必要ない。本実施例では、このBM面を2面分出力できる。これらを、BM−A面及びBM−B面と呼ぶ。
<VDP102及びCPU101の概略動作>
次に、CPU101とVDP102の概略の動作について説明する。
【0040】
図3のオブジェクトジェネレータ部304及びバックグラウンドジェネレータ部305は、各水平期間内の時分割された各タイミングで、SRAMインタフェース部302をアクセスする。このアクセスにおいて、オブジェクトジェネレータ部304は、図1のSRAM103から、次の水平表示期間内の各ドットの表示タイミングに対応するOBJ−A面上の表示座標及びOBJ−B面上の表示座標にそれぞれ配置されるスプライト(オブジェクト)の色コードを読み出し、オブジェクトジェネレータ部304内の上記各表示面に対応するラインバッファにそれぞれ格納する。同様に、バックグラウンドジェネレータ部305は、図1のSRAM103から、次の水平表示期間内の各ドットの表示タイミングに対応するBG−A面上の表示座標及びBG−B面上の表示座標にそれぞれ配置されるバックグラウンドの色コードを読み出し、バックグラウンドジェネレータ部305内の上記各表示面に対応するラインバッファにそれぞれ格納する。
【0041】
上述した動作において、図1のCPU101は、図3のCPUインタフェース部301、アドレスバス315、及びデータバス316を介してオブジェクトアトリビュートメモリ部307に、図1のSRAM103に図9に示されるデータフォーマットで格納されている最大で128個の各スプライト(オブジェクト)がOBJ−A面又はOBJ−B面に配置される場合の配置座標を、図12に示されるデータフォーマットで格納する。そして、オブジェクトジェネレータ部304は、このオブジェクトアトリビュートメモリ部307に格納されている各スプライト(オブジェクト)について、それらの配置座標に対応する読出しタイミングを計算し、それらの計算されたタイミングで、各スプライト(オブジェクト)をSRAM103から読み出してラインバッファに格納する。
【0042】
一方、ビットマップジェネレータ部306は、上述のオブジェクトジェネレータ部304とバックグラウンドジェネレータ部305のアクセス動作からは独立して、各水平期間内の時分割された各タイミングで、DP−RAMインタフェース部303をアクセスする。このアクセスにおいて、バックグラウンドジェネレータ部305は、図10に示すデータフォーマットでそのデータを格納している図1のDP−RAM104から、次の水平表示期間内の各ドットの表示タイミングに対応するBM−A面上の表示座標と、BM−B面上の表示座標とにそれぞれ配置されるビットマップの色コードを読み出し、ビットマップジェネレータ部306内の上記各表示面に対応するラインバッファにそれぞれ格納する。
【0043】
以上のようにして、各水平期間毎に、オブジェクトジェネレータ部304内の2つのラインバッファに、OBJ−A面及びOBJ−B面にそれぞれ配置される次の1ライン分のスプライト(オブジェクト)の色コードが得られ、バックグラウンドジェネレータ部305内の2つのラインバッファにBG−A面及びBG−B面にそれぞれ配置される次の1ライン分のバックグラウンドの色コードが得られ、更にビットマップジェネレータ部306内の4つのラインバッファにBM−A面と、BM−B面にそれぞれ配置される次の1ライン分のビットマップの色コードが得られる。
【0044】
なお、図1のCPU101は、図13に示されるデータフォーマットを有するVDP102内の特には図示しない表示制御レジスタに、図4に示される各表示面が使用されるか否かを設定する。図3のオブジェクトジェネレータ部304、バックグラウンドジェネレータ部305、及びビットマップジェネレータ部306は、この表示制御レジスタの内容を参照することにより、各表示面に対応する画像データ(色コード)をSRAM103又はDP−RAM104から読み出すか否かを決定する。
【0045】
図14は、画面表示タイミングの説明図である。
図3のデコーダ部313から出力される水平同期カウンタ値が000h〜1FFh(“h”は16進数を示す)まで変化する期間が1水平期間であり、そのうち000h〜0FFhの256カウント分の水平同期カウンタ値に対応する期間が256ドットからなる1ライン分の水平表示期間、それ以外の水平同期カウンタ値に対応する期間が水平ブランク期間である。また、デコーダ部313から出力される垂直同期カウンタ値が000h〜1FFhまで変化する期間が1垂直期間であり、これが図1のテレビ111上の1画面分の表示期間となる。そして、000h〜0DFhの224カウント分の垂直同期カウンタ値に対応する期間が垂直方向224ライン分の垂直表示期間、それ以外の垂直同期カウンタ値に対応する期間が垂直ブランク期間である。
【0046】
図3のカラールックアップテーブル部309からRGB D/A変換部310へは、水平同期カウンタ値がカウントアップされる毎に、1組ずつのRGBデータが出力される。
<CPU101の詳細動作>
図3のCPU101の動作について、図15〜図32に示す動作フローチャート、図33〜図48の説明図に沿って、詳細に説明する。なお、各動作フローチャートは、CPU101がプログラム/データROM107に記憶される制御プログラムを実行する動作として実現される。
全体動作フロー
図15は、CPU101が実行する全体動作フローチャートである。
【0047】
システムの電源がオンされると、CPU101はワークRAM108の内容等を初期化し、また、必要に応じて音源処理回路105等の各部の初期設定を行い(ステップ1501)、その後、初期顔画面作成処理を実行する(ステップ1502)。この初期顔画面作成処理により、予め定められた似顔絵が基本システム画面に表示されることになる(図33参照)。以降、この似顔絵が表示される基本システム画面を初期画面と呼ぶことにする。
【0048】
初期顔画面作成処理が終了すると、ユーザが図2のコントロールパッド112の上下左右スイッチ203〜206に対する操作に応じた内容でカーソルSW処理を実行する(ステップ1503)。このカーソルSW処理が終了すると、SELスイッチ201に対する操作に応じたSELSW処理を実行する(ステップ1504)。
【0049】
上記ステップ1504のSELSW処理に続くステップ1505では、ENTERスイッチ202に対する操作に応じたENTERSW処理を実行する。このENTERSW処理が終了した後、ステップ1503の処理に戻る。
【0050】
上記ステップ1503〜1505の処理の繰り返しにより、ユーザが図2のコントロールパッド112上の各種スイッチに対する操作に応じてテレビ111に表示される内容が変化することになる。以降、上記ステップ1502〜1505の各処理について詳細に説明する。
初期顔画面作成処理の動作フロー
図16は、上記ステップ1502の初期顔画面作成処理の動作フローチャートである。
【0051】
初期顔画面作成処理では、先ず、図11においてAD1〜AD1+8で示すワークRAM108の各エリアに初期パーツ番号(NO.)をストアする(ステップ1601)。この初期パーツ番号は、目、鼻、前髪といった似顔絵を構成する各部を指定する番号である。図6〜図8に示すように各パーツ画像を格納しているプログラム/データROM107からこの番号に対応する画像データが読み出される。
【0052】
上記ステップ1601の処理に続くステップ1602の処理では、初期画面に表示するパーツ種の選択アイコンを指示するアイコン番号(NO.)を、図11においてAD2〜AD2+6で示す各エリアに各々ストアする。
【0053】
上記パーツ種の選択アイコンは、背景、後ろ髪、りんかく、首、鼻、目、及び口のなかからパーツ種を選択するためのアイコンである。この選択アイコンでパーツ種を選択すると、後述するように、そのパーツ種のなかから似顔絵に用いるパーツを選択することになる。これらの選択アイコンの画像データは、図8に示すように、プログラム/データROM107に格納されている。ステップ1602でストアされる番号は、例えば、図8において、「(00)」といったように括弧を用いて表した番号である。
【0054】
ステップ1602に続くステップ1603では、初期画面としてBG−M面(システム画面)を構成するコマンドアイコン(戻るアイコン)といった常に表示させておくような画像データを、プログラム/データROM107から読み出して図9のSRAM103のBG−B面用エリアに転送する。このとき、設定によっては、ユーザに行うべき操作内容等を通知する説明ふきだしを表示させる画像データも合わせて転送される。
【0055】
上記ステップ1603の処理が終了すると、続くステップ1604では、ワークRAM108の図11においてAD2〜AD2+6で示す各エリアにストアされているアイコン番号(NO.)に対応するアイコン画像を、SRAM103のBG−B面用エリア(図9参照)に転送する処理を実行する。このステップ1604の処理に続くステップ1605の処理では、図11においてAD1で示すエリアにストアされた番号に対応する背景画像を、SRAM103のBG−A面用のエリアに転送する処理を実行する
【0056】
図34は、上記ステップ1603、1604の処理によってSRAM103に転送された画像データで表示されるBG−B面のレイアウト図の一例である。また、図35は、上記ステップ1605の処理によってSRAM103に転送された画像データで表示されるBG−A面のレイアウト図の一例である。これらステップ1603、1604、及び1605の処理動作は、CPU101が、プログラム/データROM107から読み出した画像データを、VDP102のCPUインターフェイス部301、アドレスバス315、データバス316、SRAMインターフェイス部302を介してSRAM103に転送することで実現される。
【0057】
上記ステップ1605の処理に続くステップ1606では、図11においてAD1+7で示すエリアにストアされた番号に対応するパーツ画像(前髪)を、DP−RAM104のBM−A面用エリアに転送する処理を実行する。この処理に続くステップ1607では、図11においてAD1+1〜AD1+3で示すエリアにストアされた番号に対応するパーツ画像(後ろ髪、りんかく、首)を、DP−RAM104のBM−B面用エリア(図10参照)に転送する。
【0058】
図36は、上記ステップ1606の処理によってDP−RAM104に転送された画像データで表示されるBM−A面のレイアウト図の一例である。図37は、上記ステップ1607の処理によってDP−RAM104に転送された画像データで表示されるBM−B面のレイアウト図の一例である。これらステップ1606、1607の処理動作は、CPU101が、プログラム/データROM107から読み出した画像データを、VDP102のCPUインターフェイス部301、アドレスバス315、データバス316、DP−RAMインターフェイス部303を介してDP−RAM104に転送することで実現される。
【0059】
上記ステップ1607に続くステップ1608では、図11においてAD1+4〜AD1+6で示す各エリアにストアされた番号に対応するパーツ画像(鼻、目、口)を、SRAM103のOBJ−A面用エリア(図9参照)に転送するとともに、該転送した各パーツ画像の表示位置を指定する制御データ(座標データ)をVDP102内のオブジェクトアトリビュートメモリ部307(図12参照)に転送する処理を実行する。これに続くステップ1609では、図11においてAD1+8で示すエリアにストアされた番号に対応するパーツ画像(まゆ)を、SRAM103のOBJ−B面用エリア(図9参照)に転送するとともに、該転送した各パーツ画像の表示位置を指定する制御データ(座標データ)をVDP102内のオブジェクトアトリビュートメモリ部307(図12参照)に転送する処理を実行する。
【0060】
図38は、上記ステップ1608の処理によってSRAM103に転送された画像データ、及びVDP102に転送された制御データで表示されるOBJ−A面のレイアウト図の一例である。図39は、上記ステップ1609の処理によってSRAM103に転送された画像データ、及びVDP102に転送された制御データで表示されるOBJ−B面のレイアウト図の一例である。これらステップ1608、1609の処理において、制御データをオブジェクトアトリビュートメモリ部307に転送する動作は、CPU101が、プログラム/データROM107から読み出した制御データを、VDP102のCPUインターフェイス部301、アドレスバス315、データバス316を介してオブジェクトアトリビュートメモリ部307に転送することで実現される。
【0061】
上記ステップ1609の処理が終了すると、ステップ1610で画像データ等の転送が終了したか否かの判定を行い、転送終了と判定し次第、一連の処理を終了する。
【0062】
このようにして、SRAM103、DP−RAM104に画像データを転送し、VDP102のオブジェクトアトリビュートメモリ部307に制御データを転送し、更に図13に示す表示制御レジスタの各表示面のビットに1をセットすることで、図33の基本システム画面(初期画面)が表示されることになる。
カーソルSW処理の動作フロー
図17〜図19は、図15のステップ1503のカーソルSW処理の動作フローチャートである。
【0063】
カーソルSW処理では、先ず、図2に示すコントロールパッド112上の上下左右のカーソルスイッチ203〜206の何れかが新たにON(操作)されたか否か判定する(ステップ1701)。カーソルスイッチ203〜206が新たにONされていない場合、その判定はNOとなり、ここで一連の処理が終了し、反対にそれらのなかで新たにONされたスイッチがあった場合、その判定はYESとなり、ステップ1702の処理に移行する。
【0064】
ステップ1702では、現在のモードがふきだしに入るせりふを入力する文字入力モードか、或いは似顔絵等の作成が行える基本入力モードであるかを表すモード番号(変数MODE)の値が0か否か、即ち現在基本入力モードが設定されているか否か判定する。モード番号の値が0でない場合、その判定はNOとなり、図19のステップ1731の処理に移行し、反対にそれの値が0の場合、その判定はYESとなってステップ1703の処理に移行する。
【0065】
ステップ1703では、変数SFの値が1か否か判定する。この変数SFは、図2のSELスイッチ201の操作に応じて、1と0とで交互にその値が反転される変数であり、その値が1のときにはコマンドアイコン、その値が0のときには選択アイコンの機能が有効となる(図34等参照)。ステップ1703において、変数SFの値が1ではないと判定すると、図18のステップ1705の処理に移行し、反対にその値が1と判定すると、ステップ1704でコマンドアイコンを強調表示した後、一連の処理を終了する。
【0066】
図18のステップ1705では、上スイッチ203がONしたか否か判定する。上スイッチ203がONされていないと判定すると、ステップ1710の処理に移行し、反対にそれがONしたと判定すると、ステップ1706の処理に移行する。
【0067】
ステップ1706では、変数KFの値が1か否か判定する。上述したように、似顔絵のパーツ種は全部で10あり、1画面で表示させる選択アイコン数は最大で7つとしている。このため、本実施例では、パーツ種の選択アイコンは2画面に分けて表示しており、何れかの画面であるかは変数KF、何れの選択アイコンが現在選択されているかは変数Nで判定するようにしている。
【0068】
ステップ1706において、変数KFの値が1ではないと判定すると、ステップ1710の処理に移行し、反対にその値が1と判定すると、ステップ1707の処理に移行する。ステップ1707では、変数KF、及び変数Nに各々0を代入する。
【0069】
ステップ1707に続くステップ1708では、ワークRAM108の図11においてAD2〜AD2+6で示す各エリアに、プログラム/データROM107の図8において(00)〜(60)で示すパーツ種(背景、後ろ髪、りんかく、首、鼻、目、口)の選択アイコンを指定するアイコン番号(NO.)をストアする。続くステップ1709では、アイコンといったシステム画面の画像データの転送を行うか否かを指示する変数ICFに転送を指示する1を代入し、その後、ステップ1710の処理に移行する。
【0070】
ステップ1710では、下スイッチ204がONしたか否か判定する。下スイッチ204がONされていないと判定すると、ステップ1715の処理に移行し、反対にそれがONしたと判定すると、ステップ1711の処理に移行する。
【0071】
ステップ1711では、変数KFの値が0か否か判定する。変数KFの値が0ではないと判定すると、ステップ1715の処理に移行し、反対にその値が0と判定すると、ステップ1712の処理に移行する。ステップ1712では、変数KFに1、変数Nに7を各々代入する。
【0072】
ステップ1712に続くステップ1713では、ワークRAM108の図11においてAD2〜AD2+2で示す各エリアに、プログラム/データROM107の図8において(70)〜(90)で示すパーツ種(前髪、まゆ、せりふ枠)の選択アイコンを指定する番号(NO.)を各々ストアするとともに、AD2+3〜AD2+6に示す各エリアにはNUL値をストアする。続くステップ1714では、変数ICFにアイコンの表示を指示する1を代入し、その後、ステップ1715の処理に移行する。
【0073】
このように、上スイッチ203、下スイッチ204の操作に応じて、選択アイコンが表示される2つの画面が切り換わることになる。図40、及び図41は、これらの画面のレイアウト図である。なお、これらの画面が表示されているときに図2に示すSELスイッチ201をONすると、変数SFに1が代入され、コマンドアイコンが強調表示されることになる。
【0074】
ステップ1715では、左スイッチ205がONされたか否か判定する。ステップ1716では、変数Nの値が0でないか否か判定し、ステップ1717では、変数Nの値が7でないか否か判定する。左スイッチ205がONされたと判定し、更に変数Nの値が0、又は7ではないと判定した場合、ステップ1718で変数Nの値をデクリメントした後、ステップ1719の処理に移行する。上記した以外の場合、即ち変数Nの値が0、又は7であった場合、ステップ1718の処理を実行することなく、ステップ1719の処理に移行する。
【0075】
ステップ1719では、右スイッチ206がONされたか否か判定する。ステップ1720では、変数Nの値が6でないか否か判定し、ステップ1721では、変数Nの値が9でないか否か判定する。右スイッチ206がONされたと判定し、更に変数Nの値が6、又は9ではないと判定した場合、ステップ1722で変数Nの値をインクリメントした後、ステップ1723の処理に移行する。上記した以外の場合、即ち変数Nの値が6、又は9であった場合、ステップ1722の処理を実行することなく、ステップ1723の処理に移行する。
【0076】
ステップ1723では、変数Nの値は6以下か否か判定する。変数Nの値は6以下と判定すると、次にステップ1724において、変数Nに1を加算した値の選択アイコンを強調表示し、その後、一連の処理を終了する。このステップ1723において、変数Nの値は6よりも大きいと判定すると、ステップ1725の処理に移行する。
【0077】
ステップ1725では、変数Nの値が7か否か判定する。変数Nの値が7と判定すると、ステップ1726で画面の左端に表示されている選択アイコンを強調表示した後、ステップ1727の処理に移行し、変数Nの値が7ではないと判定すると、次にステップ1727の処理を実行する。
【0078】
ステップ1727では、変数Nの値が8か否か判定する。変数Nの値が8と判定すると、ステップ1728で画面の左から2番目の位置に表示されている選択アイコンを強調表示した後、ステップ1729の処理に移行し、変数Nの値が8ではないと判定すると、次にステップ1729の処理を実行する。
【0079】
ステップ1729では、変数Nの値が9か否か判定する。変数Nの値が9と判定すると、ステップ1730で画面の左から3番目の位置に表示されている選択アイコンを強調表示した後、一連の処理を終了し、変数Nの値が9ではないと判定すると、ここで一連の処理を終了する。
【0080】
図19のステップ1731〜1743の処理は、図17のステップ1702において、モード番号(変数MODEの値)が0でないと判定、即ち文字入力モードが設定されていると判定した場合に実行される。これらの一連の処理により、上下左右のカーソルスイッ203〜206の操作に応じて文字入力画面上の文字表示部分(図43等参照)内をカーソルが移動する。文字表示部分内の文字は、XYの座標データでその表示位置が制御されており、文字表示部分は座標データXYの値がともに0〜10で示される間の領域である。なお、文字入力モード、基本入力モードは、後述するように、似顔絵の作成の進行に応じて設定されるようになっている。
【0081】
ステップ1731では、上スイッチ203がONされたか否か判定する。上スイッチ203がONされたと判定すると、次にステップ1732において、文字表示部のカーソル表示位置(ユーザが指定した文字)を表す座標データ(X,Y)のうちYの値が0ではないか否か判定する。Yの値が0でないと判定すると、ステップ1733でYの値をデクリメントした後、ステップ1734の処理に移行する。ステップ1731において、上スイッチ203がONされていないと判定した場合や、ステップ1732において、座標データYの値が0と判定した場合、ステップ1734の処理に移行する。
【0082】
ステップ1734では、下スイッチ204がONされたか否か判定する。下スイッチ204がONされたと判定すると、次にステップ1735において、文字表示部の指定された文字の表示位置を表す座標データ(X,Y)のうちYの値が10ではないか否か判定する。Yの値が10でないと判定すると、ステップ1736でYの値をインクリメントした後、ステップ1737の処理に移行する。ステップ1734において、下スイッチ204がONされていないと判定した場合や、ステップ1735において、座標データYの値が10と判定した場合、ステップ1737の処理に移行する。
【0083】
ステップ1737では、左スイッチ205がONされたか否か判定する。左スイッチ205がONされたと判定すると、次にステップ1738において、文字表示部の指定された文字の表示位置を表す座標データ(X,Y)のうちXの値が0ではないか否か判定する。Xの値が0でないと判定すると、ステップ1739でXの値をデクリメントした後、ステップ1740の処理に移行する。ステップ1737において、左スイッチ205がONされていないと判定した場合や、ステップ1738において、座標データXの値が0と判定した場合、ステップ1740の処理に移行する。
【0084】
ステップ1740では、右スイッチ206がONされたか否か判定する。右スイッチ206がONされたと判定すると、次にステップ1741において、文字表示部の指定された文字の表示位置を表す座標データ(X,Y)のうちXの値が10ではないか否か判定する。Xの値が10でないと判定すると、ステップ1742でXの値をインクリメントした後、ステップ1743の処理に移行する。ステップ1740において、左スイッチ205がONされていないと判定した場合や、ステップ1741において、座標データXの値が10と判定した場合、ステップ1743の処理に移行する。
【0085】
ステップ1743では、上述したステップ1731〜1742の処理が実行された後の座標データXYに従って文字表示部分内の文字を強調表示する。この強調表示が終了すると、一連の処理が終了する。このように、カーソルスイッチ203〜206に対する操作によって指定されている文字表示部分内の文字が強調表示され、図2のENTERスイッチ202をONすることで、強調表示されている文字がせりふとして入力される。
SELSW処理の動作フロー
このSELSW処理は、図2に示すコントロールパッド112上に設けられたSELスイッチ201の操作に応じた内容で行われる処理である。図20は、その一連の処理を示す動作フローチャートである。
【0086】
先ず、ステップ2001では、SELスイッチ201がONされたか否か判定する。SELスイッチ201がONされたと判定すると、次にステップ2002の処理を実行し、反対にSELスイッチ201がONされていないと判定すると、ここで一連の処理が終了する。
【0087】
ステップ2002では、モード番号(変数MODEの値)が0か否か、即ち文字入力モードが設定されているか否か判定する。モード番号(変数MODEの値)が0、即ち基本入力モード(似顔絵作成モード)が設定されていると判定すると、次にステップ2003の処理を実行し、反対にモード番号(変数MODEの値)が0でないと判定すると、ここで一連の処理が終了する。
【0088】
ステップ2003では、その値が1であれば0に、或いはその値が0であれば1に変数SFの値を反転させる。その後、ステップ2004において、該変数SFの値が0か否か判定する。
【0089】
ステップ2004で変数SFの値が0と判定すると、続くステップ2005で変数Nに0を代入する。これに続くステップ2006では、該変数Nの値に対応する選択アイコンを強調表示し、その後、一連の処理を終了する。
【0090】
ステップ2006の処理が実行された場合、その後、画面の左端に表示されている選択アイコンが強調表示されることになる。
一方、ステップ2004において、変数SFの値が0ではないと判定すると、続くステップ2007において、コマンドアイコンを強調表示させた後、一連の処理を終了する。
ENTERSW処理の動作フロー
図21〜図25は、図15に示すステップ1505のENTERSW処理の動作フローチャートである。このENTERSW処理は、図2に示すコントロールパッド112に設けられたENTERスイッチ202に対する操作に応じた内容で行われる。
【0091】
先ず、ステップ2101では、図2のENTERスイッチ202がONされたか否か判定する。ENTERスイッチ202がONされていないと判定すると、ここで一連の処理が終了し、反対にENTERスイッチ202がONされたと判定すると、ステップ2102の処理に移行する。
【0092】
ステップ2102では、モード番号(変数MODEの値)が0か否か、即ち基本入力モード(似顔絵作成モード)が設定されているか否か判定する。モード番号(変数MODEの値)が0と判定すると、ステップ2103の処理に移行し、反対にモード番号(変数MODEの値)が0ではないと判定すると、図24のステップ2128の処理に移行する。
【0093】
ステップ2103では、変数SFの値が1か否か、即ち選択アイコンの機能を有効としているか否か判定する。変数SFの値が1と判定すると、ステップ2104の処理に移行し、反対に変数SFの値が1ではないと判定すると、図22のステップ2106の処理に移行する。
【0094】
ステップ2104では、ワークRAM108の図11においてAD2〜AD2+6で示す各エリアに、プログラム/データROM107の図8において(00)〜(60)で示す選択アイコンの番号を夫々ストアする。その後、ステップ2105で変数ICFに1、変数Mに0を各々代入し、一連の処理を終了する。この変数Mは、基本入力モード(似顔絵作成モード)における似顔絵の作成の進行を制御するために、階層番号の値が代入される変数である。
【0095】
上記ステップ2105の処理が実行された後、基本システム画面にはパーツ種の選択アイコンが表示される。即ちコマンドアイコンが強調表示されているときにENTERスイッチ202をONすると、基本システム画面にはパーツ種の選択アイコンが表示される。
【0096】
図22のステップ2106では、上記変数Mの値が0か否か判定する。変数Mの値が0と判定すると、プログラム/データROM107の図6、又は図7において(N(変数Nの値),1)〜(N,7)で示すアイコン番号(NO.)を、ワークRAM108の図11においてAD2〜AD2+6で示す各エリアにストアする(ステップ2107)。その後、ステップ2108で変数ICFに1を代入し、続くステップ2109で変数N1に変数Nの値を代入し、更にステップ2110において、変数Mの値をインクリメントし、また、変数C及びDに0を各々代入した後、一連の処理を終了する。
【0097】
選択アイコンの何れかが強調表示されている場合(図40、図41参照)にENTERスイッチ202をONすると、このときの変数Mの値は0であることから、該強調表示の選択アイコンのパーツ種に用意されているパーツを選択するためのアイコンを表示した後、変数M(階層番号)がインクリメントされる。これにより、似顔絵の作成(階層)が進行することになる。また、変数N1に変数Nの値を代入させることで、ユーザが指定したパーツ種を表す番号が変数N1に保持される。また、上記変数C及びDは、文字入力モードにおいて、せりふとして入力された文字数のカウント等に用いられる変数である。なお、文字入力モードは、後述するように、せりふ枠が選択された後、自動的に設定されるモードである。
【0098】
ステップ2106において、変数Mの値が0ではないと判定すると、続くステップ2111では、変数Mの値は1か否か判定する。変数Mの値が1と判定すると、次にステップ2112において、変数N1の値が9ではないか否か、即ち選択アイコンで指定されたパーツ種がせりふ枠でないか否か判定する。ステップ2112で変数N1の値が9でないと判定すると、続くステップ2113では、ワークRAM108の図11においてAD1+N1(変数N1の値)で示すエリアに、プログラム/データROM107の図7、又は図8において(N1,N)で示すパーツ番号(NO.)をストアする。これにより、変数N1の値に対応するパーツ種に使用されるパーツが確定する。
【0099】
ステップ2113の処理が終了すると、次にステップ2114で変数N1の値が0か否か、即ちパーツ種として背景が選択されたか否か判定する。変数N1の値が0と判定すると、ステップ2115で変数BGFに1を代入した後、ステップ2116の処理に移行し、反対に変数N1の値が0ではないと判定すると、そのままステップ2116の処理に移行する。上記変数BGFは、BG−B面、及びBG−A面の画像データの転送を行うか否かを指示するフラグであり、その値が1となっている場合、プログラム/データROM107からSRAM103への対応する画像データの転送が行われることになる。
【0100】
ステップ2116では、変数N1の値が1〜3、又は7であるか否か判定する。変数N1の値がこれらの数値であると判定すると、ステップ2117で変数BMFに1を代入した後、ステップ2118の処理に移行し、反対に変数N1の値がこれらの数値でないと判定すると、そのままステップ2118の処理に移行する。上記変数BMFは、変数BGFと同様に、BM−A面、及びBM−B面の画像データの転送を行うか否かを指示するフラグであり、その値が1となっている場合、プログラム/データROM107からDP−RAM104に対応する画像データが転送されることになる。
【0101】
ステップ2118では、変数N1の値が4〜6、又は8であるか否か判定する。変数N1の値がこれらの数値であると判定すると、ステップ2119で変数OBFに1を代入した後、一連の処理を終了し、反対に変数N1の値がこれらの数値でないと判定すると、ここで一連の処理を終了する。上記変数OBFは、変数BGF等と同様に、OBJ−A面、及びOBJ−B面の画像データの転送を行うか否かを指示するフラグであり、その値が1となっている場合、プログラム/データROM107からSRAM103に対応する画像データが転送される。
【0102】
一方、ステップ2112で変数N1の値が9と判定すると、続く図23のステップ2120において、ワークRAM108の図11においてAD2〜AD2+6で示す各エリアに、プログラム/データROM107の図8において(91)〜(97)で示すアイコン番号(NO.)を夫々ストアする。その後、ステップ2121で変数ICFに1を代入し、更にステップ2122で変数Mの値をインクリメントした後、一連の処理を終了する。ステップ2122でインクリメントした後の変数Mの値は2であり、このENTERSW処理が終了した後、図42に示す画面が表示されることになる。
【0103】
ステップ2111で変数Mの値が1ではないと判定すると、次に図23のステップ2123において、変数Mの値が2か否か判定する。変数Mの値が2ではないと判定すると、ここで一連の処理を終了し、反対に変数Mの値が2と判定すると、ステップ2124の処理に移行する。
【0104】
ステップ2124では、ワークRAM108の図11においてAD4で示すエリアに変数Nの値をストアする。その後、ステップ2125でモード番号(変数MODEの値)を1にし、ステップ2126で表示画面をクリアし、更にステップ2127で変数BGFに1を代入した後、一連の処理が終了する。モード番号(変数MODEの値)を1とすることで、表示画面は図42から図43に切り換わり、文字入力画面が新たに表示される。
【0105】
図21のステップ2102において、モード番号(変数モードの値)が0ではないと判定、即ち文字入力モードが設定されていると判定すると、次に図24のステップ2128の処理に移行する。
【0106】
ステップ2128では、上下左右のカーソルスイッチ203〜206の操作に応じてカーソルSW処理で変更される座標データ(X,Y)から現在強調表示されている文字が「改行」(図43参照)であるか否か判定する。「改行」が強調表示されていると判定すると、即ち「改行」がせりふとして入力されたと判定すると、次にステップ2129において、変数Cの値が0以上4未満であるか否か判定する。ステップ2129で変数Cの値が0以上4未満であると判定すると、ステップ2130で変数Cに4を代入した後、一連の処理を終了する。
【0107】
本実施例では、図43の説明ふきだしのように、せりふ枠に表示するせりふは1行当たり4文字としている。このため、例えば図44の文字入力エリアに示すせりふをユーザが入力した場合(左から3番目が改行を示す記号である)、実際に表示されるふきだしは、図47に示すように表示される。
【0108】
変数Cの値が4以上であれば、ステップ2129の判定はYESとなり、次にステップ2131において、変数Cの値が4以上7未満であるか否か、即ちせりふの2行目に改行が入力されたか否か判定する。変数Cの値が4以上7未満と判定すると、ステップ2132で変数Cに8を代入した後、一連の処理を終了する。変数Cの値が7以上の場合、ステップ2131の判定はNOとなり、ここで一連の処理を終了する。
【0109】
このように、「改行」を入力することで、ユーザは任意の位置でふきだし内のせりふを改行させることができる。このため、ユーザは所望のふきだしを作成するためにせりふ枠の形状等を把握する必要がなく、操作性を向上させることができるとともに、その作成を簡易、且つ容易にすることができる。
【0110】
ステップ2128において、座標データ(X,Y)から「改行」が強調表示されていないと判定すると、ステップ2133の処理に移行する。ステップ2133では、座標データ(X,Y)から文字表示部分の「終り」が入力されたか否か判定する。「終り」が入力されたと判定すると、ステップ2134において、変数Cの値とワークRAM108のAD4のエリアにストアされているせりふ枠の種類を示す番号(NO.)に基づいて、ワークRAM108のAD1+9で示すエリアに実際に表示させるせりふ枠の番号(NO.)をストアする。
【0111】
図45は、ふきだしの表示例を示す図である。図45に示すように、せりふの内容(文字)が同一であっても改行の有無により、せりふ枠の大きさ、及びせりふの文字の並びが異なることになる。
【0112】
上記せりふ枠の大きさは、せりふ枠の種類毎に文字数に応じて4種類用意している。図46は、文字数に応じて表示される選択されるせりふ枠の大きさの違いを示している。図46(a)に示すように、せりふとして入力できる最大文字数は12文字である。最大12文字のせりふが表示できるせりふ枠の他、図46(b)、(c)、及び(d)に示すように、表示できる最大文字数が8文字、4文字、2文字であるせりふ枠が用意されている。プログラム/データROM107の図7において(J−N−1)〜(J−N−4)で示す各エリアには、同一の種類でその大きさが異なるせりふ枠の画像データが格納されている。ワークRAM108のAD4にはNに対応する値がストアされており、上記ステップ2134において、変数Cの文字数に応じてそのNの値に対応する4つの種類から表示させるせりふ枠を決定する処理が行われる。
【0113】
このように、せりふの文字数に応じて、その文字数に適当なせりふ枠が自動的に決定される。このため、大きなせりふ枠に少ない文字数が表示されるといった不自然なふきだしが表示されることがなくなり、ユーザは所望するふきだしを短時間で簡易、且つ容易に作成することが可能となる。
【0114】
上記ステップ2134の処理が終了すると、ステップ2135でモード番号(変数MODEの値)、及び変数Mの値を各々0とし、ステップ2136で表示をクリアし、更に作成した似顔絵を画面に表示させるステップ2137のふきだし付顔画像転送処理を実行した後、一連の処理を終了する。上記ふきだし付顔画像転送処理により、例えば図47に示す画像が表示されることになる。
【0115】
ステップ2133において、「終り」が入力されていないと判定すると、図25のステップ2138の処理に移行する。このステップ2138では、変数Cの値が12か否か、即ちせりふとして入力できる最大文字数である12文字が入力されたか否か判定する(変数Cは0に初期設定するので、12文字入力した後の値は12となる)。変数Cの値が12と判定すると、ここで一連の処理を終了し、反対に変数Cの値が12未満と判定すると、ステップ2139の処理に移行する。
【0116】
ステップ2139では、文字表示部分の座標データ(X,Y)から指定された文字を判別し、該判別した文字のコードをワークRAM108の図8においてAD1+10+C(変数Cの値)で示すエリアにストアする。この処理が終了すると、ステップ2140において、該文字コードをワークRAM108の図8においてAD3+10+D(変数Dの値)で示すエリアにストアする。その後、ステップ2141で変数ICFに1を代入し、更にステップ2142で変数C及びDの値をインクリメントした後、一連の処理を終了する。
ふきだし付顔画像転送処理の動作フロー
図26〜図28は、図24のステップ2137のふきだし付顔画像転送処理の動作フローチャートである。この一連の処理では、似顔絵を表示させるために必要となるデータを各部に転送するための処理が行われる。実際のデータの転送は、図14の垂直方向のブランク期間に実行されるインタラプト処理が行うが、このインタラプト処理については後述する。
【0117】
先ず、ステップ2601では、ワークRAM108の図11においてAD2〜AD2+6で示す各エリアに、プログラム/データROM107の図8において(00)〜(60)で示すパーツ種選択アイコンの番号(NO.)をストアする。これら番号のストアが終了すると、ステップ2602において、コマンドアイコンといったシステム画面の表示用画像データを、プログラム/データROM107からSRAM103のBG−B面用エリア(図9参照)に転送する処理を行う。
【0118】
ステップ2602に続くステップ2603では、ワークRAM108のAD2〜AD2+6の各エリア(図11参照)にストアされたアイコン番号(NO.)に対応するパーツ種選択アイコンの画像データを、プログラム/データROM107からSRAM103のBG−B面用エリア(図9参照)に転送する処理を更に行う。この処理が終了すると、続くステップ2604では、ワークRAM108のAD1のエリア(図11参照)にストアされた番号(NO.)に対応する背景の画像データを、プログラム/データROM107からSRAM103のBG−A面用エリア(図9参照)に転送する処理を行う。
【0119】
ステップ2604の処理が終了すると、続くステップ2605では、DP−RAM104のBM−A面用エリア(図10参照)に、ワークRAM108のAD1+7のエリアにストアされている番号(NO.)に対応する前髪のパーツ画像データを転送する。このステップ2605の動作は、CPU101が、VDP102を介してDP−RAM104のBM−A面用エリアに、プログラム/データROM107から読み出した前髪の画像データを転送することで実現される。この処理が終了すると、図27のステップ2606の処理に移行する。
【0120】
ステップ2606では、DP−RAM104のBM−B面用エリア(図10参照)に、ワークRAM108のAD1+1〜AD1+3の各エリアにストアされている番号(NO.)に対応する後ろ髪、りんかく、首の各パーツ画像データを転送する。このステップ2606の動作は、CPU101が、VDP102を介してDP−RAM104のBM−B面用エリアに、プログラム/データROM107から読み出した後ろ髪、りんかく、首の各画像データを転送することで実現される。
【0121】
上記ステップ2606の処理が終了すると、次のステップ2607では、SRAM103のOBJ−A面用エリア(図9参照)に、ワークRAM108のAD1+4〜AD1+6の各エリア(図11参照)にストアされている番号(NO.)に対応する鼻、目、口の各パーツ画像データを転送するとともに、これらパーツの表示位置を指定する制御データをVDP102内のオブジェクトアトリビュートメモリ部307に転送する。この制御データの転送は、CPU101が、プログラム/データROM107から読み出した制御データをVDP102に転送することで実現される。
【0122】
ステップ2607に続いて実行するステップ2608では、SRAM103のOBJ−B面用エリア(図9参照)に、ワークRAM108のAD1+8のエリア(図11参照)にストアされている番号(NO.)に対応するまゆの画像データを転送するとともに、このパーツの表示位置を指定する制御データをVDP102内のオブジェクトアトリビュートメモリ部307に転送する。
【0123】
ステップ2608に続いて実行するステップ2609では、SRAM103のOBJ−B面用エリア(図9参照)に、ワークRAM108のAD1+9のエリア(図11参照)にストアされている番号(NO.)に対応するせりふ枠の画像データを転送するとともに、このパーツの表示位置を指定する制御データをVDP102内のオブジェクトアトリビュートメモリ部307に転送する。
【0124】
ステップ2609に続いて実行する図28のステップ2610では、変数Eに0を代入する。この変数Eは、せりふとして入力された文字数だけ文字コードデータをSRAM103に転送するために用いられる変数である。
【0125】
ステップ2610に続くステップ2611では、ワークRAM108のAD1+10+E(変数Eの値)のエリア(図11参照)にストアされている文字の番号(NO.)の読み出しを行う。その読み出しが終了した後、ステップ2612において、そのエリアにはデータ(NO.)がストアされていたか否か判定する。エリアにデータがストアされていないと判定すると、ステップ2615の処理に移行し、反対にデータがストアされていたと判定すると、ステップ2613の処理に移行する。
【0126】
ステップ2613では、ステップ2611でワークRAM108から読み出した番号(NO.)に対応する文字の画像データ(コードデータ)を、プログラム/データROM107から読み出し、SRAM103のOBJ−B面用エリア(図9参照)に転送する処理を実行する。この処理に続くステップ2614では、該転送した文字の画像データの表示位置を指定する制御データを、VDP102のオブジェクトアトリビュートメモリ部307(図12参照)に転送する処理を実行する。
【0127】
上記制御データの転送が終了すると、ステップ2614で変数Eの値をインクリメントし、その後、ステップ2616で変数Eの値が変数Cの値よりも大きいか否か判定する。変数Eの値が変数Cの値以下と判定すると、文字の画像データの転送が完了していないとしてステップ2611の処理に戻り、反対に変数Eの値が変数Cの値よりも大きいと判定すると、文字の画像データの転送が完了したとして、一連の処理を終了する。
インタラプト処理の動作フロー
ここでは、画像データ等の転送を実行するVブランクインタラプト処理について、図29〜図32に示すその動作フローチャートを参照しながら詳細に説明する。このVブランクインタラプト処理は、画面の表示に不具合が発生しないように、画面表示における垂直ブランク期間(図14参照)に実行される。
【0128】
先ず、ステップ2901では、モード番号(変数MODEの値)が1か否か、即ち文字入力モードが設定されているか否か判定する。文字入力モードが設定されていると判定した場合、ステップ2902〜2909の処理が実行され、反対に文字入力モードが設定されていない、即ち基本入力モード(似顔絵作成モード)が設定されていると判定した場合、図30のステップ2910〜図32のステップ2951の処理が実行される。
【0129】
ステップ2902では、変数BGFの値が1か否か判定する。変数BGFの値が1ではないと判定すると、ステップ2906の処理に移行し、反対に変数BGFの値が1と判定すると、SRAM103のBG−A面、及びBG−B面用エリアにストアさせる画像データの転送が完了していないとして、ステップ2903の処理に移行する。
【0130】
ステップ2903では、プログラム/データROM107内の文字入力画面(図43参照)用の画像データを、SRAM103内のBG−A面用エリア、BG−B面用エリア(図9参照)に転送する処理を実行する。その後、ステップ2904において、画像データの転送が終了したか否か判定する。画像データの転送が終了したと判定すると、ステップ2905で変数BGFに0を代入した後、ステップ2906の処理を実行し、反対に画像データの転送が終了していないと判定すると、次にステップ2906の処理を実行する。
【0131】
画像データの転送が終了していない場合、次に実行するVブランクインタラプト処理では、転送が未完となっている画像データの転送が行われる。即ち、Vブランクインタラプト処理の繰り返しにより、SRAM103、DP−RAM104、VDP102のオブジェクトアトリビュートメモリ部307へのデータの転送が逐次行われる。上記ステップ2902〜2905の処理はBG−A面、BG−B面の画像データの転送に係わる部分であり、これら表示面の画像データの転送は、変数BGFに0が代入されるまで繰り返し行われる。これは、他の表示面の画像データ等においても同様である。
【0132】
ステップ2906では、変数ICFの値が1か否か判定する。変数ICFの値が1ではないと判定すると、ここで一連の処理を終了し、反対に変数ICFの値が1と判定すると、ユーザが入力した文字を表示させるコードデータの転送が完了していないとして、ステップ2907の処理に移行する。
【0133】
ステップ2907では、BG−B面において入力済の文字が表示される文字入力エリア内に表示させる文字のコードデータを、SRAM103のBG−B面用エリア(図9参照)内の個々の文字に対応させて設けたエリアセル(図示せず)に転送する処理を実行する。その後、ステップ2908において、コードデータの転送が終了したか否か判定する。コードデータの転送が終了したと判定すると、ステップ2909で変数ICFに0を代入した後、一連の処理を終了し、反対にコードデータの転送が終了していないと判定すると、このまま一連の処理を終了する。
【0134】
ステップ2901でモード番号(変数MODEの値)が1ではないと判定すると、上述したように、図30のステップ2910〜図32のステップ2951の処理が行われる。
【0135】
ステップ2910では、変数ICFの値が1か否か判定する。変数ICFの値が1ではないと判定すると、ステップ2914の処理に移行し、反対に変数ICFの値が1と判定すると、コード種選択アイコンの画像データの転送が完了していないとして、ステップ2911の処理に移行する。
【0136】
ステップ2911では、ワークRAM108のAD2〜AD2+6の各エリア(図11参照)にストアされているアイコン番号(NO.)に対応する画像データを、SRAM103のBG−B面用エリア(図9参照)に転送する処理を実行する。その後、ステップ2912において、その画像データの転送が終了したか否か判定する。画像データの転送が終了したと判定すると、ステップ2913で変数ICFに0を代入した後、ステップ2914の処理に移行し、反対に画像データの転送が終了していないと判定すると、このままステップ2914の処理に移行する。なお、上記ステップ2911の処理動作は、CPU101が、プログラム/データROM107の該当する画像データを、図3のCPUインターフェイス部301、アドレスバス315、データバス316、及びSRAMインターフェイス部302を介してSRAM103に転送することで実現される。
【0137】
ステップ2913で変数ICFに0が代入されるまで、Vブランクインタラプト処理が繰り返される度に、SRAM103のBG−B面用エリアに選択アイコンの画像データの転送が逐次行われることになる。
【0138】
ステップ2914では、変数BGFの値が1か否か判定する。変数BGFの値が1ではないと判定すると、図31のステップ2918の処理に移行し、反対に変数BGFの値が1と判定すると、背景の画像データの転送が完了していないとして、ステップ2915の処理に移行する。
【0139】
ステップ2915では、ワークRAM108のAD1のエリア(図11参照)にストアされている番号(NO.)に対応する背景の画像データを、SRAM103内のBG−A面用エリア(図9参照)に転送する処理を実行する。その後、ステップ2916において、その画像データの転送が終了したか否か判定する。画像データの転送が終了したと判定すると、ステップ2917で変数BGFに0を代入した後、図31のステップ2918の処理に移行し、反対に画像データの転送が終了していないと判定すると、このままステップ2918の処理に移行する。なお、上記ステップ2915の処理動作は、CPU101が、プログラム/データROM107の該当する画像データをSRAM103に、図3のCPUインターフェイス部301、アドレスバス315、データバス316、及びSRAMインターフェイス部302を介して転送することで実現される。
【0140】
Vブランクインタラプト処理の繰り返しにより、SRAM103のBG−A面用エリアに選択アイコンの画像データの転送が、ステップ2917で変数BGFに0が代入されるまで逐次行われることになる。
【0141】
図31のステップ2918〜2934の処理は、変数BMFの値に応じて行われる一連の処理である。この変数BMFの値が1のとき、DP−RAM104に転送するパーツ種に応じてその画像データのDP−RAM104への転送が行われる。
【0142】
先ず、ステップ2918では、変数BMFの値が1か否か、即ち後ろ髪、りんかく、首、前髪といったビットマップの画像データの転送を行うか否か判定する。変数BMFの値が1ではないと判定すると、図32のステップ2935の処理に移行し、反対に変数BMFの値が1と判定すると、ステップ2919において、上述したように画像データを転送するパーツ種を表す値が代入されている変数N1の値が7か否か、即ち画像データを転送するパーツ種は前髪か否か判定する。変数N1の値が7ではないと判定すると、ステップ2923の処理に移行し、反対にその値が7と判定すると、ステップ2920の処理に移行する。
【0143】
ステップ2920では、ワークRAM108のAD1+7のエリア(図11参照)にストアされている番号(NO.)に対応する前髪の画像データを、プログラム/データROM107からDP−RAM104のBM−A面用エリア(図10参照)に転送する処理を実行する。その後、ステップ2921において、その画像データの転送が終了したか否か判定する。画像データの転送が終了したと判定すると、ステップ2922で変数BMFに0を代入した後、ステップ2923の処理に移行し、反対に画像データの転送が終了していないと判定すると、このままステップ2923の処理に移行する。
【0144】
ステップ2922で変数BMFに0が代入されるまで,Vブランクインタラプト処理の繰り返しに応じて、プログラム/データROM107から読み出された前髪の画像データが逐次DP−RAM104のBM−A面用エリアに転送され、そこにストアされる。
【0145】
ステップ2923では、変数N1の値が1か否か、即ち画像データを転送するパーツ種は後ろ髪か否か判定する。変数N1の値が1ではないと判定すると、ステップ2927の処理に移行し、反対にその値が1と判定すると、ステップ2924の処理に移行する。
【0146】
ステップ2924では、ワークRAM108のAD1+1のエリア(図11参照)にストアされている番号(NO.)に対応する後ろ髪の画像データを、プログラム/データROM107からDP−RAM104のBM−B面用エリア(図10参照)に転送する処理を実行する。その後、ステップ2925において、その画像データの転送が終了したか否か判定する。画像データの転送が終了したと判定すると、ステップ2926で変数BMFに0を代入した後、ステップ2927の処理に移行し、反対に画像データの転送が終了していないと判定すると、このままステップ2927の処理に移行する。
【0147】
ステップ2926で変数BMFに0が代入されるまで,Vブランクインタラプト処理の繰り返しに応じて、プログラム/データROM107から読み出された後ろ髪の画像データが逐次DP−RAM104のBM−B面用エリアに転送され、そこにストアされる。
【0148】
ステップ2927では、変数N1の値が2か否か、即ち画像データを転送するパーツ種はりんかくか否か判定する。変数N1の値が2ではないと判定すると、ステップ2931の処理に移行し、反対にその値が2と判定すると、ステップ2928の処理に移行する。
【0149】
ステップ2928では、ワークRAM108のAD1+2のエリア(図11参照)にストアされている番号(NO.)に対応するりんかくの画像データを、プログラム/データROM107からDP−RAM104のBM−B面用エリア(図10参照)に転送する処理を実行する。その後、ステップ2929において、その画像データの転送が終了したか否か判定する。画像データの転送が終了したと判定すると、ステップ2930で変数BMFに0を代入した後、ステップ2931の処理に移行し、反対に画像データの転送が終了していないと判定すると、このままステップ2931の処理に移行する。
【0150】
ステップ2930で変数BMFに0が代入されるまで,Vブランクインタラプト処理の繰り返しに応じて、プログラム/データROM107から読み出されたりんかくの画像データが逐次DP−RAM104のBM−B面用エリアに転送され、そこにストアされる。
【0151】
ステップ2931では、変数N1の値が3か否か、即ち画像データを転送するパーツ種は首か否か判定する。変数N1の値が3ではないと判定すると、図32のステップ2935の処理に移行し、反対にその値が3と判定すると、ステップ2932の処理に移行する。
【0152】
ステップ2932では、ワークRAM108のAD1+3のエリア(図11参照)にストアされている番号(NO.)に対応する首の画像データを、プログラム/データROM107からDP−RAM104のBM−B面用エリア(図10参照)に転送する処理を実行する。その後、ステップ2933において、その画像データの転送が終了したか否か判定する。画像データの転送が終了したと判定すると、ステップ2934で変数BMFに0を代入した後、図32のステップ2935の処理に移行し、反対に画像データの転送が終了していないと判定すると、このままステップ2935の処理に移行する。
【0153】
ステップ2934で変数BMFに0が代入されるまで,Vブランクインタラプト処理の繰り返しに応じて、プログラム/データROM107から読み出された首の画像データが逐次DP−RAM104のBM−B面用エリアに転送され、そこにストアされる。
【0154】
図32のステップ2935では、変数OBFの値が1か否か、即ち鼻、目、口、まゆといったオブジェクト(スプライト)に分類されているパーツ種の画像データの転送を行うか否か判定する。変数OBFの値が1ではないと判定すると、ここで一連の処理を終了し、反対に変数OBFの値が1と判定すると、ステップ2936の処理に移行する。ステップ2936〜2951では、オブジェクト(スプライト)の種類に応じた画像データの転送が行われる。
【0155】
先ず、ステップ2936では、変数N1の値が4か否か、即ち画像データを転送するパーツ種は鼻か否か判定する。変数N1の値が4ではないと判定すると、ステップ2940の処理に移行し、反対にその値が4と判定すると、ステップ2937の処理に移行する。
【0156】
ステップ2937では、ワークRAM108のAD1+4のエリア(図11参照)にストアされている番号(NO.)に対応する首の画像データを、プログラム/データROM107からSRAM103のOBJ−A面用エリア(図9参照)に転送し、また、その画像データの表示位置を指示する制御データをプログラム/データROM107からVDP102のオブジェクトアトリビュートメモリ部307(図12参照)に転送する処理を実行する。その後、ステップ2938において、これらのデータの転送が終了したか否か判定する。データの転送が終了したと判定すると、ステップ2939で変数OBFに0を代入した後、ステップ2940の処理に移行し、反対にデータの転送が終了していないと判定すると、このままステップ2940の処理に移行する。
【0157】
ステップ2939で変数OBFに0が代入されるまで,Vブランクインタラプト処理の繰り返しに応じて、プログラム/データROM107から読み出された首の画像データ、或いは制御データが逐次SRAM103のOBJ−A面用エリア、或いはVDP102のオブジェクトアトリビュートメモリ部307に転送される。
【0158】
ステップ2940では、変数N1の値が5か否か、即ち画像データを転送するパーツ種は目か否か判定する。変数N1の値が5ではないと判定すると、ステップ2944の処理に移行し、反対にその値が5と判定すると、ステップ2941の処理に移行する。
【0159】
ステップ2941では、ワークRAM108のAD1+5のエリア(図11参照)にストアされている番号(NO.)に対応する目の画像データを、プログラム/データROM107からSRAM103のOBJ−A面用エリア(図9参照)に転送し、また、その画像データの表示位置を指示する制御データをプログラム/データROM107からVDP102のオブジェクトアトリビュートメモリ部307(図12参照)に転送する処理を実行する。その後、ステップ2942において、これらのデータの転送が終了したか否か判定する。データの転送が終了したと判定すると、ステップ2943で変数OBFに0を代入した後、ステップ2944の処理に移行し、反対にデータの転送が終了していないと判定すると、このままステップ2944の処理に移行する。
【0160】
ステップ2943で変数OBFに0が代入されるまで,Vブランクインタラプト処理の繰り返しに応じて、プログラム/データROM107から読み出された目の画像データ、或いは制御データが逐次SRAM103のOBJ−A面用エリア、或いはVDP102のオブジェクトアトリビュートメモリ部307に転送される。
【0161】
ステップ2944では、変数N1の値が6か否か、即ち画像データを転送するパーツ種は口か否か判定する。変数N1の値が6ではないと判定すると、ステップ2948の処理に移行し、反対にその値が6と判定すると、ステップ2945の処理に移行する。
【0162】
ステップ2945では、ワークRAM108のAD1+6のエリア(図11参照)にストアされている番号(NO.)に対応する口の画像データを、プログラム/データROM107からSRAM103のOBJ−A面用エリア(図9参照)に転送し、また、その画像データの表示位置を指示する制御データをプログラム/データROM107からVDP102のオブジェクトアトリビュートメモリ部307(図12参照)に転送する処理を実行する。その後、ステップ2946において、これらのデータの転送が終了したか否か判定する。データの転送が終了したと判定すると、ステップ2947で変数OBFに0を代入した後、ステップ2948の処理に移行し、反対にデータの転送が終了していないと判定すると、このままステップ2948の処理に移行する。
【0163】
ステップ2947で変数OBFに0が代入されるまで,Vブランクインタラプト処理の繰り返しに応じて、プログラム/データROM107から読み出された口の画像データ、或いは制御データが逐次SRAM103のOBJ−A面用エリア、或いはVDP102のオブジェクトアトリビュートメモリ部307に転送される。
【0164】
ステップ2948では、変数N1の値が8か否か、即ち画像データを転送するパーツ種はまゆか否か判定する。変数N1の値が8ではないと判定すると、ここで一連の処理が終了し、反対にその値が8と判定すると、ステップ2949の処理に移行する。
【0165】
ステップ2949では、ワークRAM108のAD1+8のエリア(図11参照)にストアされている番号(NO.)に対応するまゆの画像データを、プログラム/データROM107からSRAM103のOBJ−B面用エリア(図9参照)に転送し、また、その画像データの表示位置を指示する制御データをプログラム/データROM107からVDP102のオブジェクトアトリビュートメモリ部307(図12参照)に転送する処理を実行する。その後、ステップ2950において、これらのデータの転送が終了したか否か判定する。データの転送が終了したと判定すると、ステップ2951で変数OBFに0を代入した後、一連の処理を終了し、反対にデータの転送が終了していないと判定すると、ここで一連の処理を終了する。
【0166】
ステップ2951で変数OBFに0が代入されるまで,Vブランクインタラプト処理の繰り返しに応じて、プログラム/データROM107から読み出されたまゆの画像データ、或いは制御データが逐次SRAM103のOBJ−B面用エリア、或いはVDP102のオブジェクトアトリビュートメモリ部307に転送される。
【0167】
上述したようにしてSRAM103、DP−RAM104、VDP102のオブジェクトアトリビュートメモリ部307にデータが転送されると、VDP102はこれら転送されたデータを用いて、例えば図47に示すような画像をテレビ111の画面上に表示することになる。図48は、ユーザが作成した似顔絵(基本システム画面)のその他の表示例である。
【0168】
なお、本実施例において、せりふの改行位置はせりふ内に挿入した改行記号により指定しているが、これに限定するものではなく、例えばせりふ枠内の各行毎に表示させる文字数を指定させることでこれを行わせるようにしてもよい。
【0169】
また、本実施例では、3文字以上のせりふに対応するせりふ枠の形状は行数に応じて縦方向の長さだけを変更したものであるが、改行記号により行の文字数を指定することから、例えば行の文字数に応じてせりふ枠の横方向の長さを変更したせりふ枠も用意し、せりふの行当たりの最大文字数、及び行数に応じてせりふ枠を選択するようにしてもよい。
【0170】
【発明の効果】
以上、説明したように本発明の画像制御装置によれば、文字列が配置可能な行数と1行に配置可能な文字列の文字数とが対応付けられたせりふ枠を記憶しておき、ユーザにより入力された文字列を、入力された分割情報に従って部分文字列に分割し、この分割された各部分文字列のそれぞれの文字数と1行に配置可能な文字列の文字数とに基づき、前記記憶された複数のせりふ枠のなかから一つのせりふ枠を選択し、この選択したせりふ枠内に各部分文字列を配置することができる。このため、せりふ(文字列)の文字数に応じて最適と思われるせりふ枠を選択するユーザの手間を省くことができ、ふきだしの作成に要する操作を容易、且つ簡易化することができる。
【0171】
また、本発明の画像制御装置は、せりふ(文字列)とともに分割情報が入力されると、この入力されたせりふ(文字列)を分割情報に従って部分文字列に分割し、該分割した部分文字列をせりふ枠内に割り当てるため、ユーザはせりふ(文字列)を任意の部分文字列に分割してせりふ枠内に配置させることが容易となり、せりふ(文字列)の意味を容易に相手に把握させることもできる。このことから、ユーザが所望するふきだしの作成は容易、且つ簡易化される。
【図面の簡単な説明】
【図1】本発明の実施例の回路の全体構成図である。
【図2】コントロールパッドの外観図である。
【図3】VDPの構成図である。
【図4】表示画面の階層構造の説明図である。
【図5】画面アサインを示した図である。
【図6】プログラム/データROMに記憶される各種画像データのフォーマットを示す図である(その1)。
【図7】プログラム/データROMに記憶される各種画像データのフォーマットを示す図である(その2)。
【図8】プログラム/データROMに記憶される各種画像データのフォーマットを示す図である(その3)。
【図9】SRAMに記憶される各種画像データのフォーマットを示す図である。
【図10】DP−RAMに記憶される各種画像データのフォーマットを示す図である。
【図11】ワークRAMに記憶される各種データのフォーマットを示す図である。
【図12】オブジェクトアトリビュートメモリ部のデータ構成図である。
【図13】表示制御レジスタのデータ構成図である。
【図14】画面表示タイミングの説明図である。
【図15】全体動作フローチャートである。
【図16】初期顔画面作成処理の動作フローチャートである。
【図17】カーソルSW処理の動作フローチャート(その1)である。
【図18】カーソルSW処理の動作フローチャート(その2)である。
【図19】カーソルSW処理の動作フローチャート(その3)である。
【図20】SELSW処理の動作フローチャートである。
【図21】ENTERSW処理の動作フローチャート(その1)である。
【図22】ENTERSW処理の動作フローチャート(その2)である。
【図23】ENTERSW処理の動作フローチャート(その3)である。
【図24】ENTERSW処理の動作フローチャート(その4)である。
【図25】ENTERSW処理の動作フローチャート(その5)である。
【図26】ふきだし付顔画像処理の動作フローチャート(その1)である。
【図27】ふきだし付顔画像処理の動作フローチャート(その2)である。
【図28】ふきだし付顔画像処理の動作フローチャート(その3)である。
【図29】Vブランクインタラプト処理の動作フローチャート(その1)である。
【図30】Vブランクインタラプト処理の動作フローチャート(その2)である。
【図31】Vブランクインタラプト処理の動作フローチャート(その3)である。
【図32】Vブランクインタラプト処理の動作フローチャート(その4)である。
【図33】基本システム画面(初期画面)のレイアウト図である。
【図34】基本システム画面におけるBG−B面のレイアウト図である。
【図35】基本システム画面におけるBG−A面のレイアウト図である。
【図36】基本システム画面におけるBM−A面のレイアウト図である。
【図37】基本システム画面におけるBM−B面のレイアウト図である。
【図38】基本システム画面におけるOBJ−A面のレイアウト図である。
【図39】基本システム画面におけるOBJ−B面のレイアウト図である。
【図40】基本システム画面(画面作成時)のレイアウト図(その1)である。
【図41】基本システム画面(画面作成時)のレイアウト図(その2)である。
【図42】基本システム画面(画面作成時)のレイアウト図(その3)である。
【図43】文字入力画面のレイアウト図(その1)である。
【図44】文字入力画面のレイアウト図(その2)である。
【図45】ふきだしの表示例を示す図(その1)である。
【図46】ふきだしの表示例を示す図(その2)である。
【図47】画面作成後の基本システム画面のレイアウト図である。
【図48】その他の基本システム画面のレイアウト図である。
【符号の説明】
101 CPU
102 VDP
103 SRAM
104 DP−RAM
107 プログラム/データRAM
108 ワークRAM
109 エンコーダ
111 テレビ
112 コントロールパッド
[0001]
[Industrial application fields]
The present invention relates to a technique for displaying a speech bubble in accordance with a character string input by a user.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, an image display apparatus that controls image data such as a sprite (object) and background and displays an image designated by a user on a television or the like is known. Such an image display device is equipped with an image control device that controls image data so that a user can obtain (create) a desired image such as a portrait of a person by arbitrarily combining prepared objects. ing.
[0003]
As a combination with a caricature or the like, a background is first given, but a speech bubble can be given in addition to this background. A speech bubble consists of a character string and a frame surrounding it. Generally, the speech bubble highlights the content that you want to convey, such as conversation, or the content that you think in your heart, and other displays. It is used for the purpose of distinguishing it from what it is.
[0004]
Usually, in an image display device (image control device), a dialog can be arbitrarily input by a user. On the other hand, it is known that in the case of a dialogue frame, even if the dialogue is the same, the transmitted impression varies greatly depending on its shape. For this reason, the image display device (image control device) prepares a plurality of dialog frames so that various requests of the user can be answered, and the user selects a desired dialog frame from these.
[0005]
[Problems to be solved by the invention]
However, in the image control device (image display device) as described above, the size of the speech bubble is selected according to the number of characters (character string) that fits in the speech frame, together with the selection of the type of speech frame. In addition, there is a problem that the operation required for making the selection is complicated.
[0006]
In addition, a dialog (character string) input by the user is divided into partial character strings according to the shape of the dialog frame, and the divided partial character strings are displayed side by side, so that a line break or the like is performed where the user does not intend. There was a problem.
[0007]
If a line (character string) is broken at an unintended location, for example, word breaks may not be clear, and the meaning of the line may be difficult to understand. Such a problem can be avoided by inputting a dialogue (character string) in consideration of the shape of the dialogue frame, but for this purpose, the number of characters in the dialogue (character string) and its contents, dialogue A dialog (character string) must be input after grasping the shape of the frame, and a new problem arises that the actual operation becomes very troublesome.
[0008]
An object of the present invention is to easily and simplify an operation required for creating a speech bubble desired by a user.
[0009]
[Means for Solving the Problems]
  Of the present inventionOf the first and second aspectsImage control deviceboth, StringWhenAssuming that a speech bubble consisting of a speech frame surrounding the character string is displayed,The following meansIt comprises.
[0010]
  First aspectThe image control device ofStorage means storing a plurality of speech frames in which the number of lines in which a character string can be arranged and the number of characters in a character string that can be arranged in one line are stored, and the arrangement in the speech frame stored in the storage means Be doneEnter a stringStringInput means and thisA division information input means for inputting division information for dividing the character string input by the character string input means into partial character strings, and a character stringCharacter string input by input meansIs divided into partial character strings according to the division information input by the division information input means, and the storage means is based on the number of characters of each of the divided partial character strings and the number of characters of the character string that can be arranged in one line. A display that selects one dialog frame from among a plurality of dialog frames stored in and controls to arrange each of the partial character strings in the selected dialog frame.Control means.
[0011]
  The image control apparatus according to the second aspect includes a storage unit that stores a plurality of dialogue frames in which the number of lines in which a character string can be arranged and the number of characters in the character string that can be arranged in one line are associated, and the storage unit The character string input means for inputting the character string arranged in the speech frame stored in the screen, and the division information for inputting the division information for dividing the character string input by the character string input means into partial character strings The character string input by the input means and the character string input means is divided into partial character strings according to the division information input by the division information input means, and the number of characters of each of the divided partial character strings and one line are divided. Based on the number of characters of the character string that can be arranged, the first display control means for displaying each partial character string, the number of characters of the partial character string and the number of characters of the character string that can be arranged in one line, Recorded in the section storage means A second display control for selecting one of the plurality of dialog frames and displaying the partial character string displayed by the first display control means within the selected dialog frame. Means.
[0012]
[Action]
  The image control apparatus of the present invention, SetDepending on the number of characters of the word (character string) (the number of characters determined by associating the number of lines in which the character string can be arranged and the number of characters in the character string that can be arranged in one line)ThePreparationAndDepending on the number of characters (character string) input by the user, a frame to be combined with the input message (character string) is determined from these.
[0013]
  Thereby, it is possible to save the user's trouble of selecting a speech frame that seems to be optimal according to the number of characters in the speech (character string). In addition, DoubleSeveral prepared speech frames are obtained by, for example, enlarging / reducing the shape of a basic speech frame as a whole or only in one of vertical and horizontal directions.
[0014]
In addition, when division information is input together with a dialogue (character string), the image control apparatus of the present invention divides the inputted dialogue (character string) into partial character strings according to the division information, and the divided partial character strings. Allocate in the dialogue frame.
[0015]
Accordingly, the user can easily divide the dialog (character string) into arbitrary partial character strings and arrange it in the dialog frame, and the effect of facilitating understanding of the meaning of the dialog (character string) can be obtained.
[0016]
  Combining the functions of the above image control devicesByThe effect which combined each effect mentioned above is acquired.
[0017]
【Example】
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
<Overall Configuration of Circuit of Example>
FIG. 1 is an overall configuration diagram of a circuit according to an embodiment of the present invention, which is implemented as a portrait creation device for a low-age group having the appearance of a game machine, and is configured in the same casing except for a television 111.
[0018]
A VDP (video display processor) 102 controls image processing related to sprites (objects), backgrounds, bitmaps, and the like.
An SRAM (static RAM) 103 stores sprites (objects) and background image data. A DP-RAM (dual port RAM) 104 stores bitmap image data. The SRAM 103 and the DP-RAM 104 are accessed from the VDP 102.
[0019]
The sound source processing circuit 105 generates sound data of a musical sound that is pronounced together with an image.
The sound RAM 106 stores musical sound waveform data processed by the sound source processing circuit 105 and their control data.
[0020]
The program / data ROM 107 stores a program executed by the CPU 101 and various data used in the program. In accordance with this program, the CPU 101 controls the VDP 102 and the sound source processing circuit 105 while using the work RAM 108.
[0021]
The encoder 109 converts the RGB analog video signal sent from the VDP 102 into a television standard video signal (NTSC signal).
The D / A converter 110 converts the digital sound data sent from the sound source processing circuit 105 into an analog sound signal.
[0022]
The television 111 reproduces the video signal output from the encoder 109 via the video output terminal 104 in FIG. 1 and the sound signal output from the D / A converter 110 via the audio output terminal 103 in FIG.
[0023]
The control pad 112 has the appearance shown in FIG. 2, and allows the user to perform various operations. As shown in FIG. 2, a SEL switch 201, an ENTER switch 202, and up / down / left / right switches 203 to 206 are provided on the control pad 112.
<Configuration of VDP 102>
FIG. 3 is a configuration diagram of the VDP 102 shown in FIG.
[0024]
The VDP 102 controls the screen display on the television 111 (FIG. 1) of sprites (objects) that can represent characters according to their display positions and the background and bitmap that represent the background when the portrait is created.
[0025]
The CPU interface unit 301 controls an interface at the time of data transfer with the CPU 101 in FIG.
The SRAM interface unit 302 controls an interface when an object generator unit 304 or a background generator unit 305 described later accesses sprite (object) or background (background) image data stored in the SRAM 103 of FIG. .
[0026]
The DP-RAM interface unit 303 controls an interface when a bitmap generator unit 306 described later accesses bitmap image data stored in the DP-RAM 104 of FIG.
[0027]
The object generator unit 304, the background generator unit 305, and the bitmap generator unit 306 are transferred from the SRAM 103 or DP-RAM 104 in FIG. 1 within the next horizontal display period for each horizontal period (see FIG. 14 described later). A color code of a sprite (object), background, or bitmap arranged at display coordinates corresponding to each dot display timing is read and stored in an internal buffer.
[0028]
The object attribute memory unit 307 stores display coordinates (control data) corresponding to the timing when the object generator unit 304 reads the sprite (object) from the SRAM 103 via the SRAM interface unit 302.
[0029]
The priority controller unit 308 previously determines one of the color codes read by the object generator unit 304, the background generator unit 305, or the bitmap generator unit 306 for each dot in each horizontal display period. Select and output according to priority.
[0030]
The color lookup table unit 309 converts the color code output from the priority controller unit 308 into R (red), G (green), and B (blue) digital data and outputs the digital data.
[0031]
The RGB D / A converter 310 converts the RGB digital data output from the priority controller 308 into an RGB analog video signal and outputs it.
The oscillator unit 311 generates various clocks necessary for the VDP 102.
[0032]
The horizontal / vertical synchronization counter unit 312 is a counter circuit for generating a horizontal synchronization counter value (horizontal synchronization signal) and a vertical synchronization counter value (vertical synchronization signal) necessary for image display according to a clock output from the oscillator unit 311. is there.
[0033]
The decoder unit 313 decodes the horizontal synchronization counter value and the vertical synchronization counter value from the counter value output from the horizontal / vertical synchronization counter unit 312 and supplies the decoded value to each block in the VDP 102.
[0034]
The video signal generator unit 314 generates a video signal required by the encoder 109 in FIG. 1 from the horizontal synchronization counter value and the vertical synchronization counter value output from the decoder unit 313, and supplies the video signal to the encoder 109.
<Configuration of image data>
First, in the present embodiment, the display screen is defined as a stack of six virtual display surfaces as shown in FIG. These display surfaces are directed from the back to the front, background A surface (BG-A surface), bitmap B surface (BM-B surface), object A surface (OBJ-A surface), and bitmap A surface (BM). -A plane), object B plane (OBJ-B plane), and background B plane (BG-B plane). Then, the image assigned to the front display surface has a higher display priority, and the image assigned to the back display surface is hidden and displayed.
[0035]
FIG. 5 shows the relationship between the image data type (parts) assigned to each display surface and the screen mode. Various image data displayed on the BG-A surface, BG-B surface, BM-A surface, BM-B surface, OBJ-A surface, and OBJ-B surface are in the data formats shown in FIGS. 1 program / data ROM 107. The image data on the BG-A surface, BG-B surface, OBJ-A surface, and OBJ-B surface is stored in the CPU 101 shown in FIG. 1 from the program / data ROM 107, the work RAM 108, and the CPU interface unit 301 shown in FIG. The data is transferred to the SRAM 103 via the address bus 315, the data bus 316, and the SRAM interface unit 302. Similarly, the image data on the BM-A surface and the BM-B surface is obtained by the CPU 101 shown in FIG. 1 from the program / data ROM 107, the work RAM 108, the CPU interface unit 301, the address bus 315, and the data bus 316 in FIG. , And the DP-RAM interface unit 303 to transfer to the SRAM 103. Further, as shown in FIG. 11, the CPU 101 writes data indicating image data to be read from the program / data ROM 107 in accordance with the user's operation on the control pad 112.
[0036]
In this embodiment, in consideration of the data compression effect, in order to reproduce a small area image and an image formed by repeating the small area image, the image data is divided for each small area and developed into the SRAM 103 or the DP-RAM 104, and this is once extracted. Or it repeats arbitrarily and reproduces | regenerates as an image. This small area is called a cell.
[0037]
On the BG plane, the cells are arbitrarily arranged in a map (matrix) shape, and an image of a desired size is synthesized. If it is desired to change only a part of the image, only the data of the corresponding cell on the SRAM 103 needs to be rewritten by the CPU 101, and other cells are not affected at that time. In this embodiment, two BG planes can be output. These are called the BG-A plane and the BG-B plane.
[0038]
In the OBJ plane, rather than for data compression, the display position of a small area image can be easily changed without affecting (not redrawing) other images (background, etc.) Then, it is used for the purpose of giving priority among the sprite (object) images of 128 simultaneous display. Since the image data on the OBJ plane has a small area and a small amount of data (number of dots), the memory access time for one piece of image data can be reduced, and a larger amount of image data can be reproduced. Similar to the image on the BG surface, the image on the OBJ surface is also composed of cells. In this embodiment, two OBJ planes can be output. These are called the OBJ-A plane and the OBJ-B plane.
[0039]
The BM surface is an image having a certain area, but is a surface suitable when there are few elements that are repeatedly reproduced. There is no need to configure the image in cell format, and no map information is required. In this embodiment, two BM surfaces can be output. These are called the BM-A plane and the BM-B plane.
<Schematic operation of VDP 102 and CPU 101>
Next, schematic operations of the CPU 101 and the VDP 102 will be described.
[0040]
The object generator unit 304 and the background generator unit 305 in FIG. 3 access the SRAM interface unit 302 at each timing divided in each horizontal period. In this access, the object generator unit 304 converts the display coordinates on the OBJ-A plane and the display coordinates on the OBJ-B plane corresponding to the display timing of each dot within the next horizontal display period from the SRAM 103 of FIG. The color code of the arranged sprite (object) is read out and stored in the line buffer corresponding to each display surface in the object generator unit 304. Similarly, the background generator unit 305 converts the display coordinates on the BG-A plane and the display coordinates on the BG-B plane corresponding to the display timing of each dot within the next horizontal display period from the SRAM 103 of FIG. The background color code to be arranged is read out and stored in the line buffer corresponding to each display surface in the background generator 305.
[0041]
In the above-described operation, the CPU 101 in FIG. 1 has the data format shown in FIG. 9 in the object attribute memory unit 307 via the CPU interface unit 301, the address bus 315, and the data bus 316 in FIG. The arrangement coordinates when the stored 128 sprites (objects) are arranged on the OBJ-A plane or the OBJ-B plane are stored in the data format shown in FIG. Then, the object generator unit 304 calculates the read timing corresponding to the arrangement coordinates of each sprite (object) stored in the object attribute memory unit 307, and at each calculated sprite ( Object) is read from the SRAM 103 and stored in the line buffer.
[0042]
On the other hand, the bitmap generator unit 306 controls the DP-RAM interface unit 303 at each time-divided timing within each horizontal period independently of the access operations of the object generator unit 304 and the background generator unit 305 described above. to access. In this access, the background generator unit 305 receives the BM- corresponding to the display timing of each dot within the next horizontal display period from the DP-RAM 104 of FIG. 1 storing the data in the data format shown in FIG. The color codes of the bitmaps arranged at the display coordinates on the A plane and the display coordinates on the BM-B plane are read out and stored in the line buffers corresponding to the display planes in the bitmap generator unit 306, respectively. .
[0043]
As described above, for each horizontal period, the colors of the next one line of sprites (objects) arranged in the two line buffers in the object generator unit 304 on the OBJ-A plane and the OBJ-B plane, respectively. The code is obtained, and the background color code for the next one line arranged on each of the BG-A plane and the BG-B plane is obtained in the two line buffers in the background generator unit 305, and further the bitmap generator. Bit map color codes for the next one line respectively arranged on the BM-A plane and the BM-B plane are obtained in the four line buffers in the unit 306.
[0044]
1 sets whether or not each display surface shown in FIG. 4 is used in a display control register (not shown) in the VDP 102 having the data format shown in FIG. The object generator unit 304, the background generator unit 305, and the bitmap generator unit 306 in FIG. 3 refer to the contents of the display control register to obtain image data (color code) corresponding to each display surface in the SRAM 103 or DP. Determine whether to read from RAM 104
[0045]
FIG. 14 is an explanatory diagram of screen display timing.
The horizontal synchronization counter value output from the decoder unit 313 in FIG. 3 changes from 000h to 1FFh (where “h” indicates a hexadecimal number) is one horizontal period, of which the horizontal synchronization for 256 counts from 000h to 0FFh. A period corresponding to the counter value is a horizontal display period for one line of 256 dots, and a period corresponding to the other horizontal synchronization counter values is a horizontal blank period. Further, a period in which the vertical synchronization counter value output from the decoder unit 313 changes from 000h to 1FFh is one vertical period, and this is a display period for one screen on the television 111 in FIG. A period corresponding to 224 counts of vertical synchronization counter values from 000h to 0DFh is a vertical display period of 224 lines in the vertical direction, and a period corresponding to other vertical synchronization counter values is a vertical blank period.
[0046]
Each time the horizontal synchronization counter value is counted up, one set of RGB data is output from the color lookup table unit 309 in FIG. 3 to the RGB D / A conversion unit 310.
<Detailed Operation of CPU 101>
The operation of the CPU 101 in FIG. 3 will be described in detail with reference to the operation flowcharts shown in FIGS. 15 to 32 and the explanatory diagrams in FIGS. Each operation flowchart is realized as an operation in which the CPU 101 executes a control program stored in the program / data ROM 107.
Overall operation flow
FIG. 15 is a flowchart illustrating the entire operation executed by the CPU 101.
[0047]
When the system power is turned on, the CPU 101 initializes the contents of the work RAM 108, etc., and performs initial setting of each part such as the sound source processing circuit 105 as necessary (step 1501), and then an initial face screen creation process Is executed (step 1502). By this initial face screen creation process, a predetermined portrait is displayed on the basic system screen (see FIG. 33). Hereinafter, the basic system screen on which the portrait is displayed is referred to as an initial screen.
[0048]
When the initial face screen creation process is completed, the user executes the cursor SW process with the contents corresponding to the operation on the up / down / left / right switches 203 to 206 of the control pad 112 in FIG. 2 (step 1503). When the cursor SW process ends, the SELSW process corresponding to the operation on the SEL switch 201 is executed (step 1504).
[0049]
In step 1505 following the SELSW process in step 1504, an ENTERSW process corresponding to the operation on the ENTER switch 202 is executed. After the ENTERSW process is completed, the process returns to step 1503.
[0050]
By repeating the processes in steps 1503 to 1505, the content displayed on the television 111 changes according to the user's operation on various switches on the control pad 112 in FIG. Hereinafter, each processing in steps 1502 to 1505 will be described in detail.
Operation flow of initial face screen creation processing
FIG. 16 is an operation flowchart of the initial face screen creation process in step 1502.
[0051]
In the initial face screen creation process, first, an initial part number (NO.) Is stored in each area of the work RAM 108 indicated by AD1 to AD1 + 8 in FIG. 11 (step 1601). This initial part number is a number that designates each part constituting a portrait such as eyes, nose, and bangs. As shown in FIGS. 6 to 8, image data corresponding to this number is read from the program / data ROM 107 storing each part image.
[0052]
In the process of step 1602 following the process of step 1601, the icon numbers (NO.) Indicating the part type selection icons to be displayed on the initial screen are stored in the respective areas indicated by AD2 to AD2 + 6 in FIG.
[0053]
The part type selection icon is an icon for selecting a part type from among the background, back hair, phosphorus, neck, nose, eyes, and mouth. When a part type is selected with this selection icon, as will be described later, a part to be used for a portrait is selected from the part type. The image data of these selection icons is stored in the program / data ROM 107 as shown in FIG. The number stored in step 1602 is, for example, a number expressed in parentheses such as “(00)” in FIG.
[0054]
In step 1603 following step 1602, image data such as a command icon (return icon) that constitutes the BG-M screen (system screen) as an initial screen is read from the program / data ROM 107 and read as shown in FIG. Transfer to the BG-B surface area of the SRAM 103. At this time, depending on the setting, image data for displaying an explanation balloon for notifying the user of the operation content to be performed is also transferred.
[0055]
  When the processing of step 1603 is completed, in the subsequent step 1604, icon images corresponding to the icon numbers (NO.) Stored in the areas indicated by AD2 to AD2 + 6 in FIG. A process of transferring to the surface area (see FIG. 9) is executed. In the process of step 1605 following the process of step 1604, a process of transferring the background image corresponding to the number stored in the area indicated by AD1 in FIG. 11 to the area for the BG-A plane of the SRAM 103 is executed..
[0056]
FIG. 34 is an example of a layout diagram of the BG-B plane displayed as image data transferred to the SRAM 103 by the processing in steps 1603 and 1604 described above. FIG. 35 is an example of a layout diagram of the BG-A plane displayed with the image data transferred to the SRAM 103 by the processing in step 1605. In the processing operations of these steps 1603, 1604, and 1605, the image data read out from the program / data ROM 107 by the CPU 101 is transferred to the SRAM 103 via the CPU interface unit 301, address bus 315, data bus 316, and SRAM interface unit 302 of the VDP 102. This is realized by transferring to.
[0057]
In step 1606 following the processing of step 1605, a process of transferring the part image (bangs) corresponding to the number stored in the area indicated by AD1 + 7 in FIG. 11 to the BM-A surface area of the DP-RAM 104 is executed. . In step 1607 following this processing, the part images (back hair, phosphorus, neck) corresponding to the numbers stored in the areas indicated by AD1 + 1 to AD1 + 3 in FIG. 11 are displayed on the BM-B surface area (FIG. 10). Forward to Browse).
[0058]
FIG. 36 is an example of a layout diagram of the BM-A plane displayed as image data transferred to the DP-RAM 104 by the processing in step 1606 described above. FIG. 37 is an example of a layout diagram of the BM-B surface displayed with the image data transferred to the DP-RAM 104 by the processing in step 1607 described above. In the processing operations in these steps 1606 and 1607, the CPU 101 reads out the image data read from the program / data ROM 107 via the CPU interface unit 301, the address bus 315, the data bus 316, and the DP-RAM interface unit 303 of the VDP 102. This is realized by transferring to the RAM 104.
[0059]
In step 1608 following step 1607, the part images (nose, eyes, mouth) corresponding to the numbers stored in the areas indicated by AD1 + 4 to AD1 + 6 in FIG. 11 are displayed on the OBJ-A plane area of the SRAM 103 (see FIG. 9). ) And control data (coordinate data) specifying the display position of each transferred part image is transferred to the object attribute memory unit 307 (see FIG. 12) in the VDP 102. In subsequent step 1609, the part image (eyebrows) corresponding to the number stored in the area indicated by AD1 + 8 in FIG. 11 is transferred to the OBJ-B surface area (see FIG. 9) of the SRAM 103 and transferred. A process of transferring control data (coordinate data) specifying the display position of each part image to the object attribute memory unit 307 (see FIG. 12) in the VDP 102 is executed.
[0060]
FIG. 38 is an example of a layout diagram of the OBJ-A plane displayed with the image data transferred to the SRAM 103 by the processing of step 1608 and the control data transferred to the VDP 102. FIG. 39 is an example of a layout diagram of the OBJ-B plane displayed with the image data transferred to the SRAM 103 by the processing of step 1609 and the control data transferred to the VDP 102. In the processing of these steps 1608 and 1609, the operation of transferring the control data to the object attribute memory unit 307 is performed by the CPU 101 reading the control data read from the program / data ROM 107, the CPU interface unit 301 of the VDP 102, the address bus 315, and the data bus. This is realized by transferring to the object attribute memory unit 307 via 316.
[0061]
When the processing in step 1609 is completed, it is determined in step 1610 whether or not the transfer of image data or the like has been completed. When it is determined that the transfer has been completed, the series of processing is terminated.
[0062]
In this way, the image data is transferred to the SRAM 103 and the DP-RAM 104, the control data is transferred to the object attribute memory unit 307 of the VDP 102, and 1 is set to the bit of each display surface of the display control register shown in FIG. As a result, the basic system screen (initial screen) of FIG. 33 is displayed.
Operation flow of cursor SW processing
17 to 19 are operation flowcharts of the cursor SW process in step 1503 of FIG.
[0063]
In the cursor SW process, first, it is determined whether any of the up / down / left / right cursor switches 203 to 206 on the control pad 112 shown in FIG. 2 is newly turned on (operated) (step 1701). When the cursor switches 203 to 206 are not newly turned on, the determination is NO. When the series of processing ends here, and there is a switch that is newly turned on among them, the determination is YES. Thus, the process proceeds to step 1702.
[0064]
In step 1702, whether or not the value of the mode number (variable MODE) indicating whether the current mode is a character input mode for inputting a speech to enter a speech bubble or a basic input mode capable of creating a portrait is 0. It is determined whether or not the basic input mode is currently set. If the value of the mode number is not 0, the determination is NO and the process proceeds to step 1731 in FIG. 19. If the value is 0, the determination is YES and the process proceeds to step 1703. .
[0065]
In step 1703, it is determined whether or not the value of the variable SF is 1. This variable SF is a variable whose value is alternately inverted between 1 and 0 in accordance with the operation of the SEL switch 201 in FIG. 2. When the value is 1, the command icon is selected. When the value is 0, the variable SF is selected. The icon function is enabled (see FIG. 34, etc.). If it is determined in step 1703 that the value of the variable SF is not 1, the process proceeds to step 1705 in FIG. 18. If it is determined that the value is 1 in contrast, the command icon is highlighted in step 1704, and then The process ends.
[0066]
In step 1705 of FIG. 18, it is determined whether or not the upper switch 203 is turned on. If it is determined that the upper switch 203 is not turned on, the process proceeds to step 1710. If it is determined that the upper switch 203 is turned on, the process proceeds to step 1706.
[0067]
In step 1706, it is determined whether or not the value of the variable KF is 1. As described above, there are 10 caricature part types in total, and the maximum number of selected icons displayed on one screen is seven. For this reason, in this embodiment, the part type selection icons are displayed in two screens, which one of the screens is determined by the variable KF, and which selection icon is currently selected is determined by the variable N. Like to do.
[0068]
If it is determined in step 1706 that the value of the variable KF is not 1, the process proceeds to step 1710. If the value is determined to be 1, on the other hand, the process proceeds to step 1707. In step 1707, 0 is substituted for variable KF and variable N, respectively.
[0069]
In step 1708 following step 1707, in the areas indicated by AD2 to AD2 + 6 in FIG. 11 of the work RAM 108, the part types (background, back hair, phosphorus, etc.) indicated by (00) to (60) in FIG. Stores an icon number (NO.) For designating a selection icon of (neck, nose, eyes, mouth). In the subsequent step 1709, 1 for instructing the transfer is substituted into a variable ICF for instructing whether or not to transfer the image data of the system screen such as an icon, and thereafter, the process proceeds to step 1710.
[0070]
In step 1710, it is determined whether or not the lower switch 204 is turned on. If it is determined that the lower switch 204 is not turned on, the process proceeds to step 1715. If it is determined that the lower switch 204 is turned on, the process proceeds to step 1711.
[0071]
In step 1711, it is determined whether or not the value of the variable KF is zero. If it is determined that the value of the variable KF is not 0, the process proceeds to step 1715. If it is determined that the value is 0, the process proceeds to step 1712. In step 1712, 1 is substituted for variable KF and 7 is substituted for variable N.
[0072]
In step 1713 subsequent to step 1712, each of the areas indicated by AD2 to AD2 + 2 in FIG. 11 of the work RAM 108 is assigned to the part types indicated by (70) to (90) in FIG. 8 of the program / data ROM 107 (bangs, eyebrows, and dialogue frames). Each number (NO.) Designating the selected icon is stored, and a NUL value is stored in each area indicated by AD2 + 3 to AD2 + 6. In the subsequent step 1714, 1 for instructing display of the icon is substituted into the variable ICF, and then the process proceeds to step 1715.
[0073]
In this way, the two screens on which the selection icons are displayed are switched according to the operation of the upper switch 203 and the lower switch 204. 40 and 41 are layout diagrams of these screens. When these screens are displayed and the SEL switch 201 shown in FIG. 2 is turned on, 1 is substituted into the variable SF and the command icon is highlighted.
[0074]
In step 1715, it is determined whether or not the left switch 205 is turned on. In step 1716, it is determined whether the value of the variable N is not 0, and in step 1717, it is determined whether the value of the variable N is not 7. If it is determined that the left switch 205 has been turned ON and it is determined that the value of the variable N is not 0 or 7, the value of the variable N is decremented in step 1718, and then the process proceeds to step 1719. In cases other than the above, that is, when the value of the variable N is 0 or 7, the process proceeds to step 1719 without executing the process in step 1718.
[0075]
In step 1719, it is determined whether or not the right switch 206 is turned on. In step 1720, it is determined whether the value of the variable N is not 6, and in step 1721, it is determined whether the value of the variable N is not 9. If it is determined that the right switch 206 is turned on and the value of the variable N is determined not to be 6 or 9, the value of the variable N is incremented in step 1722, and then the process proceeds to step 1723. In cases other than those described above, that is, when the value of the variable N is 6 or 9, the process proceeds to step 1723 without executing the process in step 1722.
[0076]
In step 1723, it is determined whether the value of the variable N is 6 or less. If it is determined that the value of the variable N is 6 or less, next, in step 1724, a selection icon of a value obtained by adding 1 to the variable N is highlighted, and then a series of processing ends. If it is determined in step 1723 that the value of the variable N is greater than 6, the process proceeds to step 1725.
[0077]
In step 1725, it is determined whether or not the value of the variable N is 7. If the value of the variable N is determined to be 7, the selection icon displayed at the left end of the screen is highlighted in step 1726, and then the process proceeds to step 1727. If the value of the variable N is determined not to be 7, the next Step 1727 is executed.
[0078]
In step 1727, it is determined whether or not the value of the variable N is 8. If it is determined that the value of the variable N is 8, the selection icon displayed at the second position from the left of the screen is highlighted in step 1728, and then the process proceeds to step 1729, where the value of the variable N is not 8. Then, the process of step 1729 is executed.
[0079]
In step 1729, it is determined whether or not the value of the variable N is 9. If it is determined that the value of the variable N is 9, the selection icon displayed at the third position from the left of the screen is highlighted in step 1730, and then a series of processing ends. If the value of the variable N is not 9, If it is determined, a series of processing ends here.
[0080]
  The processing in steps 1731 to 1743 in FIG. 19 is executed when it is determined in step 1702 in FIG. 17 that the mode number (value of variable MODE) is not 0, that is, the character input mode is set. Through this series of processing, the cursor switchHThe cursor moves in the character display portion (see FIG. 43 and the like) on the character input screen in accordance with operations 203-206. The display position of the characters in the character display portion is controlled by XY coordinate data, and the character display portion is a region between the values of coordinate data XY indicated by 0 to 10. Note that the character input mode and the basic input mode are set according to the progress of the portrait creation, as will be described later.
[0081]
In step 1731, it is determined whether or not the upper switch 203 is turned on. If it is determined that the upper switch 203 is turned on, then in step 1732, whether or not the value of Y is 0 in the coordinate data (X, Y) representing the cursor display position (character specified by the user) of the character display unit. To determine. If it is determined that the value of Y is not 0, the value of Y is decremented in step 1733, and then the process proceeds to step 1734. If it is determined in step 1731 that the upper switch 203 is not turned on, or if the value of the coordinate data Y is determined to be 0 in step 1732, the process proceeds to step 1734.
[0082]
In step 1734, it is determined whether or not the lower switch 204 is turned on. If it is determined that the lower switch 204 is turned on, then in step 1735, it is determined whether or not the Y value is 10 in the coordinate data (X, Y) representing the display position of the designated character on the character display portion. . If it is determined that the value of Y is not 10, the value of Y is incremented in step 1736 and then the process proceeds to step 1737. If it is determined in step 1734 that the lower switch 204 is not turned ON, or if it is determined in step 1735 that the value of the coordinate data Y is 10, the process proceeds to step 1737.
[0083]
In step 1737, it is determined whether or not the left switch 205 is turned on. If it is determined that the left switch 205 has been turned on, then in step 1738, it is determined whether or not the value of X in the coordinate data (X, Y) representing the display position of the designated character on the character display unit is not zero. . If it is determined that the value of X is not 0, the value of X is decremented in step 1739, and then the process proceeds to step 1740. If it is determined in step 1737 that the left switch 205 is not turned on, or if the value of the coordinate data X is determined to be 0 in step 1738, the process proceeds to step 1740.
[0084]
In step 1740, it is determined whether or not the right switch 206 is turned on. If it is determined that the right switch 206 is turned on, then in step 1741, it is determined whether or not the value of X is 10 in the coordinate data (X, Y) representing the display position of the designated character on the character display portion. . If it is determined that the value of X is not 10, the value of X is incremented in step 1742, and then the process proceeds to step 1743. If it is determined in step 1740 that the left switch 205 is not turned on, or if it is determined in step 1741 that the value of the coordinate data X is 10, the process proceeds to step 1743.
[0085]
In step 1743, the characters in the character display portion are highlighted according to the coordinate data XY after the processing in steps 1731 to 1742 described above is executed. When this highlighting is finished, a series of processing is finished. In this way, the characters in the character display portion designated by the operation on the cursor switches 203 to 206 are highlighted, and the highlighted character is input as a dialogue by turning on the ENTER switch 202 in FIG. The
SELSW processing operation flow
This SELSW process is a process that is performed according to the operation of the SEL switch 201 provided on the control pad 112 shown in FIG. FIG. 20 is an operation flowchart showing the series of processing.
[0086]
First, in step 2001, it is determined whether or not the SEL switch 201 is turned on. If it is determined that the SEL switch 201 is turned on, the process of step 2002 is executed next. If it is determined that the SEL switch 201 is not turned on, the series of processes ends here.
[0087]
In step 2002, it is determined whether or not the mode number (value of variable MODE) is 0, that is, whether or not the character input mode is set. If it is determined that the mode number (value of variable MODE) is 0, that is, the basic input mode (caricature creation mode) is set, then the process of step 2003 is executed, and the mode number (value of variable MODE) is reversed. If it is determined that it is not 0, a series of processing ends here.
[0088]
In step 2003, the value of the variable SF is inverted to 0 if the value is 1, or to 1 if the value is 0. Thereafter, in step 2004, it is determined whether or not the value of the variable SF is zero.
[0089]
If it is determined in step 2004 that the value of variable SF is 0, then in step 2005, 0 is substituted for variable N. In subsequent step 2006, the selection icon corresponding to the value of the variable N is highlighted, and then the series of processing ends.
[0090]
When the process of step 2006 is executed, the selection icon displayed at the left end of the screen is highlighted.
On the other hand, if it is determined in step 2004 that the value of the variable SF is not 0, in the subsequent step 2007, the command icon is highlighted, and the series of processes is terminated.
Enterflow processing flow
21 to 25 are operation flowcharts of the ENTERSW process in step 1505 shown in FIG. This ENTERSW process is performed in accordance with the operation on the ENTER switch 202 provided on the control pad 112 shown in FIG.
[0091]
First, in Step 2101, it is determined whether or not the ENTER switch 202 in FIG. If it is determined that the ENTER switch 202 is not turned on, the series of processes ends here. If it is determined that the ENTER switch 202 is turned on, the process proceeds to step 2102.
[0092]
In step 2102, it is determined whether the mode number (value of variable MODE) is 0, that is, whether the basic input mode (caricature creation mode) is set. If the mode number (value of variable MODE) is determined to be 0, the process proceeds to step 2103. If the mode number (value of variable MODE) is determined not to be 0, the process proceeds to step 2128 in FIG. .
[0093]
In step 2103, it is determined whether or not the value of the variable SF is 1, that is, whether or not the function of the selected icon is enabled. If it is determined that the value of the variable SF is 1, the process proceeds to step 2104. Conversely, if it is determined that the value of the variable SF is not 1, the process proceeds to step 2106 in FIG.
[0094]
In step 2104, the numbers of selection icons indicated by (00) to (60) in FIG. 8 of the program / data ROM 107 are stored in the areas indicated by AD2 to AD2 + 6 in FIG. Thereafter, in step 2105, 1 is assigned to the variable ICF and 0 is assigned to the variable M, and the series of processing ends. This variable M is a variable to which the value of the layer number is substituted in order to control the progress of the portrait creation in the basic input mode (the portrait creation mode).
[0095]
After the process of step 2105 is executed, a part type selection icon is displayed on the basic system screen. That is, when the ENTER switch 202 is turned on while the command icon is highlighted, a part type selection icon is displayed on the basic system screen.
[0096]
In step 2106 in FIG. 22, it is determined whether or not the value of the variable M is zero. If the value of the variable M is determined to be 0, the icon number (NO.) Indicated by (N (value of variable N), 1) to (N, 7) in FIG. 6 or FIG. Stored in the areas indicated by AD2 to AD2 + 6 in FIG. 11 of the RAM 108 (step 2107). Thereafter, 1 is substituted into the variable ICF at step 2108, the value of the variable N is substituted into the variable N1 at the subsequent step 2109, and further, the value of the variable M is incremented at step 2110, and 0 is set to the variables C and D. After each substitution, a series of processing is terminated.
[0097]
When one of the selection icons is highlighted (see FIGS. 40 and 41), when the ENTER switch 202 is turned on, the value of the variable M at this time is 0, so the part of the highlighted selection icon After displaying an icon for selecting a part prepared for the seed, the variable M (hierarchical number) is incremented. Thereby, the creation (hierarchy) of the caricature proceeds. Further, by assigning the value of the variable N to the variable N1, a number representing the part type designated by the user is held in the variable N1. The variables C and D are variables used for counting the number of characters input as dialogues in the character input mode. Note that the character input mode is a mode that is automatically set after a dialog frame is selected, as will be described later.
[0098]
If it is determined in step 2106 that the value of the variable M is not 0, in the subsequent step 2111, it is determined whether or not the value of the variable M is 1. If it is determined that the value of the variable M is 1, then in step 2112 it is determined whether or not the value of the variable N1 is 9, that is, whether or not the part type specified by the selection icon is not a frame. If it is determined in step 2112 that the value of the variable N1 is not 9, in the following step 2113, the area indicated by AD1 + N1 (value of the variable N1) in FIG. The part number (NO.) Indicated by N1, N) is stored. Thereby, the parts used for the part type corresponding to the value of the variable N1 are determined.
[0099]
  When the processing of step 2113 is completed,In step 2114It is determined whether the value of the variable N1 is 0, that is, whether the background is selected as the part type. If it is determined that the value of the variable N1 is 0, after substituting 1 for the variable BGF in step 2115, the process proceeds to step 2116. If it is determined that the value of the variable N1 is not 0, the process proceeds to step 2116 as it is. Transition. The variable BGF is a flag for instructing whether or not to transfer image data on the BG-B surface and the BG-A surface. When the value is 1, the program / data ROM 107 transfers to the SRAM 103. Corresponding image data is transferred.
[0100]
In step 2116, it is determined whether or not the value of the variable N1 is 1 to 3. If it is determined that the value of the variable N1 is such a numerical value, 1 is substituted into the variable BMF in step 2117, and then the process proceeds to step 2118. On the other hand, if it is determined that the value of the variable N1 is not these numerical values, The process proceeds to step 2118. The variable BMF is a flag for instructing whether or not to transfer image data on the BM-A plane and the BM-B plane, similarly to the variable BGF. Image data corresponding to the DP-RAM 104 is transferred from the data ROM 107.
[0101]
In step 2118, it is determined whether or not the value of the variable N1 is 4-6 or 8. If it is determined that the value of the variable N1 is such a numerical value, after substituting 1 for the variable OBF in step 2119, the series of processes is terminated, and conversely, if it is determined that the value of the variable N1 is not these numerical values, A series of processing ends. The variable OBF is a flag for instructing whether or not to transfer image data on the OBJ-A surface and the OBJ-B surface, as in the case of the variable BGF and the like. / Image data corresponding to the SRAM 103 is transferred from the data ROM 107.
[0102]
On the other hand, if it is determined in step 2112 that the value of the variable N1 is 9, in the subsequent step 2120 of FIG. 23, each area indicated by AD2 to AD2 + 6 in FIG. Each icon number (NO.) Indicated by (97) is stored. Thereafter, 1 is substituted into the variable ICF at step 2121 and the value of the variable M is incremented at step 2122, and then a series of processing is terminated. The value of the variable M after incrementing in Step 2122 is 2, and after this ENTERSW process is completed, the screen shown in FIG. 42 is displayed.
[0103]
If it is determined in step 2111 that the value of variable M is not 1, it is next determined in step 2123 of FIG. 23 whether the value of variable M is 2. If it is determined that the value of the variable M is not 2, the series of processes ends here. If the value of the variable M is determined to be 2, the process proceeds to step 2124.
[0104]
In step 2124, the value of the variable N is stored in the area indicated by AD4 in FIG. Thereafter, the mode number (value of variable MODE) is set to 1 in step 2125, the display screen is cleared in step 2126, and 1 is substituted into variable BGF in step 2127, and then a series of processing ends. By setting the mode number (value of variable MODE) to 1, the display screen is switched from FIG. 42 to FIG. 43, and a character input screen is newly displayed.
[0105]
If it is determined in step 2102 in FIG. 21 that the mode number (variable mode value) is not 0, that is, it is determined that the character input mode is set, then the process proceeds to step 2128 in FIG.
[0106]
In step 2128, the character currently highlighted from the coordinate data (X, Y) changed by the cursor SW process according to the operation of the up / down / left / right cursor switches 203 to 206 is “line feed” (see FIG. 43). It is determined whether or not. If it is determined that “new line” is highlighted, that is, if it is determined that “new line” has been input as a dialog, then in step 2129, it is determined whether or not the value of variable C is 0 or more and less than 4. If it is determined in step 2129 that the value of the variable C is greater than or equal to 0 and less than 4, a series of processing is terminated after substituting 4 for the variable C in step 2130.
[0107]
In this embodiment, as shown in the explanation balloon of FIG. 43, the lines displayed in the line frame are 4 characters per line. For this reason, for example, when the user inputs the dialog shown in the character input area of FIG. 44 (the third from the left is a symbol indicating a line feed), the balloon that is actually displayed is displayed as shown in FIG. .
[0108]
If the value of variable C is 4 or more, the determination in step 2129 is YES, and then in step 2131, whether or not the value of variable C is 4 or more and less than 7, that is, a line feed is input in the second line of the dialogue. It is determined whether it has been done. If it is determined that the value of the variable C is 4 or more and less than 7, in step 2132, 8 is substituted for the variable C, and then the series of processes is terminated. If the value of the variable C is 7 or more, the determination in step 2131 is NO, and the series of processing ends here.
[0109]
In this way, by inputting “new line”, the user can make a line break in the dialogue in the speech bubble at an arbitrary position. For this reason, it is not necessary for the user to grasp the shape or the like of the speech frame in order to create a desired speech bubble, and the operability can be improved and the creation can be simplified and facilitated.
[0110]
If it is determined in step 2128 that “new line” is not highlighted from the coordinate data (X, Y), the process proceeds to step 2133. In step 2133, it is determined whether or not “end” of the character display portion has been input from the coordinate data (X, Y). If it is determined that “end” has been input, in step 2134, AD1 + 9 in the work RAM 108 is used based on the value of the variable C and the number (NO.) Indicating the type of the dialogue frame stored in the AD4 area of the work RAM 108. The number (NO.) Of the display frame that is actually displayed is stored in the indicated area.
[0111]
FIG. 45 is a diagram illustrating a display example of a speech bubble. As shown in FIG. 45, even if the contents (characters) of the dialogue are the same, the size of the dialogue frame and the arrangement of the characters of the dialogue differ depending on the presence or absence of a line feed.
[0112]
There are four types of the size of the above-mentioned dialogue frame depending on the number of characters for each type of dialogue frame. FIG. 46 shows the difference in the size of the selected dialog box displayed according to the number of characters. As shown in FIG. 46A, the maximum number of characters that can be input as a dialogue is 12 characters. In addition to a dialogue frame capable of displaying a maximum of 12 characters, as shown in FIGS. 46 (b), (c), and (d), a dialogue frame having a maximum number of characters that can be displayed is 8, 4, or 2 characters. It is prepared. In each area indicated by (JN-1) to (JN-4) in FIG. 7 of the program / data ROM 107, the image data of the same type and the size of the dialogue frame is stored. A value corresponding to N is stored in AD4 of the work RAM 108, and in step 2134, processing for determining a display frame to be displayed from four types corresponding to the value of N is performed according to the number of characters of the variable C. Is called.
[0113]
In this way, depending on the number of characters in the line, a suitable line frame for the number of characters is automatically determined. For this reason, an unnatural speech bubble that displays a small number of characters in a large dialogue frame is not displayed, and the user can easily and easily create a desired speech bubble in a short time.
[0114]
When the processing of step 2134 is completed, the mode number (value of variable MODE) and the value of variable M are each set to 0 in step 2135, the display is cleared in step 2136, and the created portrait is displayed on the screen 2137. After executing the speech image transfer process with the speech bubble, the series of processes is terminated. For example, the image shown in FIG. 47 is displayed by the face image transfer process with a speech bubble.
[0115]
If it is determined in step 2133 that “END” has not been input, the process proceeds to step 2138 in FIG. 25. In this step 2138, it is determined whether or not the value of the variable C is 12, that is, whether or not 12 characters, which is the maximum number of characters that can be input as a dialogue, have been input (the variable C is initially set to 0. Is 12). If it is determined that the value of the variable C is 12, a series of processing ends here. If it is determined that the value of the variable C is less than 12, the process proceeds to step 2139.
[0116]
In step 2139, the designated character is discriminated from the coordinate data (X, Y) of the character display portion, and the code of the discriminated character is stored in the area indicated by AD1 + 10 + C (value of variable C) in FIG. . When this process ends, in step 2140, the character code is stored in an area indicated by AD3 + 10 + D (value of variable D) in FIG. Thereafter, 1 is substituted into the variable ICF in step 2141, and further, the values of the variables C and D are incremented in step 2142, and then the series of processing ends.
Operation flow of face image transfer processing with speech bubble
26 to 28 are operation flowcharts of the face image transfer process with a speech bubble in step 2137 of FIG. In this series of processing, processing for transferring data necessary for displaying a portrait to each unit is performed. The actual data transfer is performed by an interrupt process executed in the blank period in the vertical direction of FIG. 14, and this interrupt process will be described later.
[0117]
First, in step 2601, the part type selection icon numbers (NO.) Indicated by (00) to (60) in FIG. 8 of the program / data ROM 107 are stored in the areas indicated by AD2 to AD2 + 6 in FIG. To do. When the storage of these numbers is completed, in step 2602, processing for transferring display screen image data such as command icons from the program / data ROM 107 to the BG-B plane area of the SRAM 103 (see FIG. 9) is performed.
[0118]
In step 2603 following step 2602, image data of the part type selection icon corresponding to the icon number (NO.) Stored in each of the areas AD <b> 2 to AD <b> 2 + 6 (see FIG. 11) of the work RAM 108 is transferred from the program / data ROM 107 to the SRAM 103. The process of transferring to the BG-B surface area (see FIG. 9) is further performed. When this processing is completed, in subsequent step 2604, the background image data corresponding to the number (NO.) Stored in the area AD1 (see FIG. 11) of the work RAM 108 is transferred from the program / data ROM 107 to the BG-A of the SRAM 103. Transfer processing to the surface area (see FIG. 9) is performed.
[0119]
When the processing of step 2604 is completed, in the subsequent step 2605, the bangs corresponding to the number (NO.) Stored in the area of AD1 + 7 of the work RAM 108 in the BM-A surface area (see FIG. 10) of the DP-RAM 104. The part image data of is transferred. The operation in step 2605 is realized by the CPU 101 transferring the bangs image data read from the program / data ROM 107 to the BM-A surface area of the DP-RAM 104 via the VDP 102. When this process ends, the process proceeds to step 2606 in FIG.
[0120]
In step 2606, the back hair, the rind, and the neck corresponding to the numbers (NO.) Stored in the areas AD1 + 1 to AD1 + 3 of the work RAM 108 are stored in the BM-B surface area of the DP-RAM 104 (see FIG. 10). Transfer each part image data. The operation of this step 2606 is realized by the CPU 101 transferring the back hair, phosphorus, and neck image data read from the program / data ROM 107 to the BM-B surface area of the DP-RAM 104 via the VDP 102. The
[0121]
When the processing of step 2606 is completed, in the next step 2607, the numbers stored in the areas of AD1 + 4 to AD1 + 6 (see FIG. 11) of the work RAM 108 in the area for the OBJ-A surface of the SRAM 103 (see FIG. 9). Each part image data of the nose, eyes, and mouth corresponding to (NO.) Is transferred, and control data for designating the display position of these parts is transferred to the object attribute memory unit 307 in the VDP 102. This transfer of control data is realized by the CPU 101 transferring the control data read from the program / data ROM 107 to the VDP 102.
[0122]
In step 2608 to be executed following step 2607, the number (NO.) Stored in the area for AD1 + 8 (see FIG. 11) of the work RAM 108 in the area for the OBJ-B surface of the SRAM 103 (see FIG. 9) corresponds. The eyebrow image data is transferred, and control data for designating the display position of the parts is transferred to the object attribute memory unit 307 in the VDP 102.
[0123]
In step 2609 executed following step 2608, the number (NO.) Stored in the area OBJ-B of the SRAM 103 (see FIG. 9) is stored in the area AD1 + 9 of the work RAM 108 (see FIG. 11). The image data of the dialogue frame is transferred, and control data for designating the display position of the part is transferred to the object attribute memory unit 307 in the VDP 102.
[0124]
In step 2610 of FIG. 28 executed after step 2609, 0 is substituted for variable E. This variable E is a variable used to transfer character code data to the SRAM 103 by the number of characters input as a dialogue.
[0125]
In step 2611 following step 2610, the character number (NO.) Stored in the area of AD1 + 10 + E (value of variable E) (see FIG. 11) of the work RAM 108 is read. After the reading is completed, in step 2612, it is determined whether or not data (NO.) Is stored in the area. If it is determined that no data is stored in the area, the process proceeds to step 2615. If it is determined that data is stored, the process proceeds to step 2613.
[0126]
  In step 2613, character image data (code data) corresponding to the number (NO.) Read from the work RAM 108 in step 2611 is stored in the program / data ROM 10.7Is read out and transferred to the area for the OBJ-B surface of the SRAM 103 (see FIG. 9). In step 2614 following this process, a process of transferring control data for designating the display position of the transferred character image data to the object attribute memory unit 307 (see FIG. 12) of the VDP 102 is executed.
[0127]
When the transfer of the control data is completed, the value of variable E is incremented in step 2614, and then it is determined in step 2616 whether or not the value of variable E is larger than the value of variable C. If it is determined that the value of the variable E is equal to or less than the value of the variable C, it is determined that the transfer of the character image data has not been completed, and the process returns to step 2611. Assuming that the transfer of the character image data has been completed, the series of processing ends.
Interrupt processing operation flow
Here, the V blank interrupt processing for transferring image data and the like will be described in detail with reference to the operation flowcharts shown in FIGS. The V blank interrupt process is executed during a vertical blank period (see FIG. 14) in the screen display so that no trouble occurs in the screen display.
[0128]
First, in step 2901, it is determined whether or not the mode number (value of variable MODE) is 1, that is, whether or not the character input mode is set. If it is determined that the character input mode is set, the processing of steps 2902 to 2909 is executed. Conversely, it is determined that the character input mode is not set, that is, the basic input mode (caricature creation mode) is set. In such a case, the processing from step 2910 in FIG. 30 to step 2951 in FIG. 32 is executed.
[0129]
In step 2902, it is determined whether or not the value of the variable BGF is 1. If it is determined that the value of the variable BGF is not 1, the process proceeds to step 2906. On the other hand, if the value of the variable BGF is determined to be 1, the image to be stored in the BG-A surface and the BG-B surface area of the SRAM 103. Assuming that the data transfer has not been completed, the process proceeds to step 2903.
[0130]
In step 2903, the image data for the character input screen (see FIG. 43) in the program / data ROM 107 is transferred to the BG-A plane area and BG-B plane area (see FIG. 9) in the SRAM 103. Execute. Thereafter, in step 2904, it is determined whether or not the transfer of the image data has been completed. If it is determined that the transfer of the image data has been completed, after substituting 0 for the variable BGF in step 2905, the process of step 2906 is executed. On the other hand, if it is determined that the transfer of the image data has not ended, then step 2906 is performed. Execute the process.
[0131]
If the transfer of the image data has not been completed, the image data that has not been transferred is transferred in the V blank interrupt process to be executed next. That is, by repeating the V blank interrupt process, data transfer to the object attribute memory unit 307 of the SRAM 103, DP-RAM 104, and VDP 102 is sequentially performed. The processing in steps 2902 to 2905 is a part related to the transfer of image data on the BG-A plane and the BG-B plane, and the transfer of the image data on the display plane is repeated until 0 is assigned to the variable BGF. . The same applies to image data on other display surfaces.
[0132]
In step 2906, it is determined whether or not the value of the variable ICF is 1. If it is determined that the value of the variable ICF is not 1, the series of processing ends here. Conversely, if it is determined that the value of the variable ICF is 1, the transfer of the code data for displaying the character input by the user is not completed. Then, the process proceeds to step 2907.
[0133]
In step 2907, the character code data to be displayed in the character input area where the input characters are displayed on the BG-B surface corresponds to the individual characters in the BG-B surface area (see FIG. 9) of the SRAM 103. The process of transferring to the area cell (not shown) provided is executed. Thereafter, in step 2908, it is determined whether or not the transfer of the code data has been completed. If it is determined that the transfer of the code data has been completed, 0 is substituted for the variable ICF in step 2909, and then the series of processes is terminated. Conversely, if it is determined that the transfer of the code data has not been completed, the series of processes is performed as it is. finish.
[0134]
If it is determined in step 2901 that the mode number (value of variable MODE) is not 1, the processing of step 2910 in FIG. 30 to step 2951 in FIG. 32 is performed as described above.
[0135]
In step 2910, it is determined whether or not the value of the variable ICF is 1. If it is determined that the value of the variable ICF is not 1, the process proceeds to step 2914. On the other hand, if it is determined that the value of the variable ICF is 1, it is determined that the transfer of the image data of the code type selection icon is not completed, and step 2911 is performed. Move on to processing.
[0136]
In step 2911, image data corresponding to the icon numbers (NO.) Stored in the areas AD 2 to AD 2 +6 (see FIG. 11) of the work RAM 108 are stored in the BG-B plane area (see FIG. 9) of the SRAM 103. Execute the transfer process. Thereafter, in step 2912, it is determined whether or not the transfer of the image data has been completed. If it is determined that the transfer of the image data is completed, 0 is substituted for the variable ICF in step 2913, and then the process proceeds to step 2914. If it is determined that the transfer of the image data is not completed, the process proceeds to step 2914. Transition to processing. Note that in the processing operation of the above step 2911, the CPU 101 transfers the corresponding image data in the program / data ROM 107 to the SRAM 103 via the CPU interface unit 301, the address bus 315, the data bus 316, and the SRAM interface unit 302 of FIG. Realized by transferring.
[0137]
The image data of the selected icon is sequentially transferred to the BG-B surface area of the SRAM 103 every time the V blank interrupt process is repeated until 0 is substituted for the variable ICF in step 2913.
[0138]
In step 2914, it is determined whether or not the value of the variable BGF is 1. If it is determined that the value of the variable BGF is not 1, the process proceeds to step 2918 in FIG. 31. On the other hand, if the value of the variable BGF is determined to be 1, it is determined that the transfer of the background image data is not completed, and step 2915 is performed. Move on to processing.
[0139]
In step 2915, the background image data corresponding to the number (NO.) Stored in the AD1 area (see FIG. 11) of the work RAM 108 is transferred to the BG-A plane area (see FIG. 9) in the SRAM 103. Execute the process. Thereafter, in step 2916, it is determined whether or not the transfer of the image data has been completed. If it is determined that the transfer of the image data has been completed, 0 is substituted for the variable BGF in step 2917, and then the process proceeds to step 2918 in FIG. The process proceeds to step 2918. Note that the processing operation of the above step 2915 is performed by the CPU 101 via the CPU interface unit 301, the address bus 315, the data bus 316, and the SRAM interface unit 302 shown in FIG. Realized by transferring.
[0140]
By repeating the V blank interrupt process, the image data of the selected icon is sequentially transferred to the BG-A plane area of the SRAM 103 until 0 is substituted into the variable BGF in step 2917.
[0141]
The processing in steps 2918 to 2934 in FIG. 31 is a series of processing performed according to the value of the variable BMF. When the value of the variable BMF is 1, the image data is transferred to the DP-RAM 104 according to the part type to be transferred to the DP-RAM 104.
[0142]
First, in step 2918, it is determined whether or not the value of the variable BMF is 1, that is, whether or not to transfer bitmap image data such as back hair, phosphorus, neck, and front hair. If it is determined that the value of the variable BMF is not 1, the process proceeds to step 2935 in FIG. 32. Conversely, if the value of the variable BMF is determined to be 1, the part type for transferring the image data as described above in step 2919. It is determined whether or not the value of the variable N1 to which the value indicating is substituted is 7, that is, whether or not the part type to which image data is transferred is bangs. If it is determined that the value of the variable N1 is not 7, the process proceeds to step 2923, whereas if it is determined that the value is 7, the process proceeds to step 2920.
[0143]
In step 2920, the bangs image data corresponding to the number (NO.) Stored in the AD1 + 7 area (see FIG. 11) of the work RAM 108 is transferred from the program / data ROM 107 to the BM-A plane area (DP-RAM 104 area). (See FIG. 10). Thereafter, in step 2921, it is determined whether or not the transfer of the image data has been completed. If it is determined that the transfer of the image data has been completed, 0 is substituted into the variable BMF in step 2922, and then the process proceeds to step 2923. If it is determined that the transfer of the image data has not been completed, the process proceeds to step 2923. Transition to processing.
[0144]
Until the variable BMF is substituted with 0 in step 2922, the bangs image data read from the program / data ROM 107 is sequentially transferred to the BM-A surface area of the DP-RAM 104 according to the repetition of the V blank interrupt process. And store there.
[0145]
In step 2923, it is determined whether or not the value of the variable N1 is 1, that is, whether or not the part type to which image data is transferred is back hair. If it is determined that the value of the variable N1 is not 1, the process proceeds to step 2927. On the contrary, if the value is determined to be 1, the process proceeds to step 2924.
[0146]
In step 2924, the back hair image data corresponding to the number (NO.) Stored in the AD1 + 1 area (see FIG. 11) of the work RAM 108 is transferred from the program / data ROM 107 to the BM-B surface area (DP-RAM 104 area). (See FIG. 10). Thereafter, in step 2925, it is determined whether or not the transfer of the image data has been completed. If it is determined that the transfer of the image data is completed, 0 is substituted for the variable BMF in step 2926, and then the process proceeds to step 2927. If it is determined that the transfer of the image data is not completed, the process proceeds to step 2927. Transition to processing.
[0147]
The back hair image data read from the program / data ROM 107 is sequentially transferred to the BM-B surface area of the DP-RAM 104 in accordance with repetition of the V blank interrupt process until 0 is substituted for the variable BMF in step 2926. And store there.
[0148]
In step 2927, it is determined whether or not the value of the variable N1 is 2, that is, whether or not the part type to which the image data is transferred is phosphorus. If it is determined that the value of the variable N1 is not 2, the process proceeds to step 2931. On the other hand, if the value is determined to be 2, the process proceeds to step 2928.
[0149]
In step 2928, the link image data corresponding to the number (NO.) Stored in the AD1 + 2 area (see FIG. 11) of the work RAM 108 is transferred from the program / data ROM 107 to the BM-B surface area of the DP-RAM 104. The process of transferring to (see FIG. 10) is executed. Thereafter, in step 2929, it is determined whether or not the transfer of the image data has been completed. If it is determined that the transfer of the image data has been completed, 0 is substituted for the variable BMF in step 2930, and then the process proceeds to step 2931. If it is determined that the transfer of the image data has not been completed, the process proceeds to step 2931. Transition to processing.
[0150]
Until the variable BMF is substituted with 0 in step 2930, the phosphorus image data read from the program / data ROM 107 is sequentially stored in the BM-B surface area of the DP-RAM 104 in accordance with the repetition of the V blank interrupt process. Forwarded and stored there.
[0151]
In step 2931, it is determined whether or not the value of the variable N1 is 3, that is, whether or not the part type to which image data is transferred is the neck. If it is determined that the value of the variable N1 is not 3, the process proceeds to step 2935 in FIG. 32, whereas if it is determined that the value is 3, the process proceeds to step 2932.
[0152]
In step 2932, the neck image data corresponding to the number (NO.) Stored in the AD1 + 3 area (see FIG. 11) of the work RAM 108 is transferred from the program / data ROM 107 to the BM-B plane area (DP-RAM 104 area). (See FIG. 10). Thereafter, in step 2933, it is determined whether or not the transfer of the image data has been completed. If it is determined that the transfer of the image data has been completed, 0 is substituted into the variable BMF in step 2934, and then the process proceeds to the process of step 2935 in FIG. The process proceeds to step 2935.
[0153]
The neck image data read from the program / data ROM 107 is sequentially transferred to the BM-B surface area of the DP-RAM 104 in accordance with repetition of the V blank interrupt process until 0 is substituted for the variable BMF in step 2934. And store there.
[0154]
In step 2935 of FIG. 32, it is determined whether or not the value of the variable OBF is 1, that is, whether or not to transfer the image data of the part types classified into objects (sprites) such as nose, eyes, mouth, and eyebrows. If it is determined that the value of the variable OBF is not 1, the series of processing ends here. If it is determined that the value of the variable OBF is 1, the process proceeds to step 2936. In steps 2936 to 2951, image data is transferred according to the type of object (sprite).
[0155]
First, in step 2936, it is determined whether or not the value of the variable N1 is 4, that is, whether or not the part type to which image data is transferred is the nose. If it is determined that the value of the variable N1 is not 4, the process proceeds to step 2940. On the contrary, if the value is determined to be 4, the process proceeds to step 2937.
[0156]
In step 2937, the neck image data corresponding to the number (NO.) Stored in the AD1 + 4 area (see FIG. 11) of the work RAM 108 is transferred from the program / data ROM 107 to the OBJ-A plane area of the SRAM 103 (FIG. 9). Further, a process of transferring the control data indicating the display position of the image data from the program / data ROM 107 to the object attribute memory unit 307 (see FIG. 12) of the VDP 102 is executed. Thereafter, in step 2938, it is determined whether or not the transfer of these data has been completed. If it is determined that the data transfer is completed, 0 is substituted for the variable OBF in step 2939, and then the process proceeds to step 2940. If it is determined that the data transfer is not completed, the process proceeds to step 2940 as it is. Transition.
[0157]
Until the variable OBF is substituted with 0 in step 2939, the neck image data or control data read from the program / data ROM 107 is sequentially stored in the OBJ-A plane area of the SRAM 103 in accordance with the repetition of the V blank interrupt process. Alternatively, it is transferred to the object attribute memory unit 307 of the VDP 102.
[0158]
In step 2940, it is determined whether or not the value of the variable N1 is 5, that is, whether or not the part type to which image data is transferred is an eye. If it is determined that the value of the variable N1 is not 5, the process proceeds to step 2944. Conversely, if the value is determined to be 5, the process proceeds to step 2941.
[0159]
In step 2941, the image data of the eye corresponding to the number (NO.) Stored in the area AD1 + 5 (see FIG. 11) of the work RAM 108 is obtained from the program / data ROM 107 to the OBJ-A plane area of the SRAM 103 (FIG. 9). Further, a process of transferring the control data indicating the display position of the image data from the program / data ROM 107 to the object attribute memory unit 307 (see FIG. 12) of the VDP 102 is executed. Thereafter, in step 2942, it is determined whether or not the transfer of these data has been completed. If it is determined that the data transfer has been completed, 0 is substituted into the variable OBF in step 2943, and then the process proceeds to step 2944. If it is determined that the data transfer has not been completed, the process proceeds to step 2944 as it is. Transition.
[0160]
Until the variable OBF is substituted with 0 in step 2943, the image data or control data of the eye read from the program / data ROM 107 is sequentially stored in the OBJ-A plane area of the SRAM 103 according to the repetition of the V blank interrupt process. Alternatively, it is transferred to the object attribute memory unit 307 of the VDP 102.
[0161]
In step 2944, it is determined whether or not the value of the variable N1 is 6, that is, whether or not the part type to which image data is transferred is a mouth. If it is determined that the value of the variable N1 is not 6, the process proceeds to step 2948. If it is determined that the value is 6, the process proceeds to step 2945.
[0162]
In step 2945, the mouth image data corresponding to the number (NO.) Stored in the AD1 + 6 area (see FIG. 11) of the work RAM 108 is transferred from the program / data ROM 107 to the OBJ-A plane area of the SRAM 103 (FIG. 9). Further, a process of transferring the control data indicating the display position of the image data from the program / data ROM 107 to the object attribute memory unit 307 (see FIG. 12) of the VDP 102 is executed. Thereafter, in step 2946, it is determined whether or not the transfer of these data has been completed. If it is determined that the data transfer is completed, 0 is substituted for the variable OBF in step 2947, and then the process proceeds to step 2948. If it is determined that the data transfer is not completed, the process proceeds to step 2948. Transition.
[0163]
Until the variable OBF is substituted with 0 in step 2947, the mouth image data or control data read from the program / data ROM 107 is sequentially stored in the area for the OBJ-A plane of the SRAM 103 according to the repetition of the V blank interrupt process. Alternatively, it is transferred to the object attribute memory unit 307 of the VDP 102.
[0164]
In step 2948, it is determined whether or not the value of the variable N1 is 8, that is, whether or not the part type to which image data is transferred is eyebrows. If it is determined that the value of the variable N1 is not 8, the series of processes ends here. If it is determined that the value is 8 on the contrary, the process proceeds to step 2949.
[0165]
In step 2949, image data of eyebrows corresponding to the number (NO.) Stored in the AD1 + 8 area (see FIG. 11) of the work RAM 108 is transferred from the program / data ROM 107 to the OBJ-B plane area (FIG. 9). In addition, a process of transferring control data indicating the display position of the image data from the program / data ROM 107 to the object attribute memory unit 307 (see FIG. 12) of the VDP 102 is executed. Thereafter, in step 2950, it is determined whether or not the transfer of these data has been completed. If it is determined that the data transfer has been completed, 0 is substituted into the variable OBF in step 2951, and then the series of processes is terminated. To do.
[0166]
Until the variable OBF is substituted with 0 in step 2951, the eyebrows image data or control data read from the program / data ROM 107 is sequentially stored in the area for the OBJ-B plane of the SRAM 103 according to the repetition of the V blank interrupt process. Alternatively, it is transferred to the object attribute memory unit 307 of the VDP 102.
[0167]
When data is transferred to the object attribute memory unit 307 of the SRAM 103, the DP-RAM 104, and the VDP 102 as described above, the VDP 102 uses the transferred data to display, for example, an image as shown in FIG. Will be displayed above. FIG. 48 is another display example of the portrait (basic system screen) created by the user.
[0168]
In this embodiment, the line feed position of the line is specified by the line feed symbol inserted in the line, but it is not limited to this. For example, by specifying the number of characters to be displayed for each line in the line frame You may make it perform this.
[0169]
Also, in this embodiment, the shape of the dialogue frame corresponding to a dialogue line of 3 characters or more is obtained by changing only the length in the vertical direction according to the number of rows. For example, a dialog frame in which the horizontal length of the dialog frame is changed according to the number of characters in the line may be prepared, and the dialog frame may be selected according to the maximum number of characters per line and the number of lines.
[0170]
【The invention's effect】
  As described above, according to the image control apparatus of the present invention,, Storing a dialogue frame in which the number of lines in which a character string can be arranged and the number of characters in a character string that can be arranged in one line are stored,The input stringAre divided into partial character strings according to the inputted division information, and the plurality of stored dialogue frames are based on the number of characters of each of the divided partial character strings and the number of characters of the character string that can be arranged in one line. One dialogue frame can be selected from the list, and each partial character string can be arranged in the selected dialogue frame. thisTherefore, it is possible to save the user's trouble of selecting a speech frame that seems to be optimal according to the number of characters in the speech (character string), and it is possible to easily and simplify the operation required for creating speech bubbles.
[0171]
In addition, when division information is input together with a dialogue (character string), the image control apparatus of the present invention divides the inputted dialogue (character string) into partial character strings according to the division information, and the divided partial character strings. Since it is assigned within the dialogue frame, the user can easily divide the dialogue (character string) into arbitrary partial character strings and place it in the dialogue frame, and let the other party easily understand the meaning of the dialogue (character string). You can also. Therefore, the creation of the speech bubble desired by the user is easy and simplified.
[Brief description of the drawings]
FIG. 1 is an overall configuration diagram of a circuit according to an embodiment of the present invention.
FIG. 2 is an external view of a control pad.
FIG. 3 is a configuration diagram of a VDP.
FIG. 4 is an explanatory diagram of a hierarchical structure of a display screen.
FIG. 5 is a diagram showing a screen assignment.
FIG. 6 is a diagram showing a format of various image data stored in a program / data ROM (No. 1).
FIG. 7 is a diagram showing a format of various image data stored in a program / data ROM (part 2);
FIG. 8 is a view showing the format of various image data stored in a program / data ROM (part 3);
FIG. 9 is a diagram illustrating a format of various image data stored in an SRAM.
FIG. 10 is a diagram illustrating a format of various image data stored in a DP-RAM.
FIG. 11 is a diagram illustrating a format of various data stored in a work RAM.
FIG. 12 is a data configuration diagram of an object attribute memory unit.
FIG. 13 is a data configuration diagram of a display control register.
FIG. 14 is an explanatory diagram of screen display timing.
FIG. 15 is an overall operation flowchart.
FIG. 16 is an operation flowchart of initial face screen creation processing;
FIG. 17 is an operation flowchart (part 1) of cursor SW processing;
FIG. 18 is an operation flowchart (part 2) of the cursor SW process;
FIG. 19 is an operation flowchart (part 3) of the cursor SW process;
FIG. 20 is an operation flowchart of SELSW processing.
FIG. 21 is an operation flowchart (part 1) of the ENTERSW process;
FIG. 22 is an operation flowchart (part 2) of the ENTERSW process;
FIG. 23 is an operation flowchart (No. 3) of the ENTERSW process;
FIG. 24 is a flowchart (part 4) of the operation of the ENTERSW process.
FIG. 25 is an operation flowchart (No. 5) of the ENTERSW process;
FIG. 26 is an operational flowchart (part 1) of speech image processing with a speech bubble;
FIG. 27 is an operation flowchart (part 2) of speech image processing with a speech bubble;
FIG. 28 is an operation flowchart (part 3) of speech image processing with a speech bubble;
FIG. 29 is an operation flowchart (No. 1) of a V blank interrupt process;
FIG. 30 is an operation flowchart (part 2) of the V blank interrupt process;
FIG. 31 is an operation flowchart (part 3) of the V blank interrupt process;
FIG. 32 is an operation flowchart (part 4) of the V blank interrupt process;
FIG. 33 is a layout diagram of a basic system screen (initial screen).
FIG. 34 is a layout diagram of the BG-B plane on the basic system screen.
FIG. 35 is a layout diagram of the BG-A plane on the basic system screen.
FIG. 36 is a layout diagram of the BM-A plane on the basic system screen.
FIG. 37 is a layout diagram of the BM-B surface on the basic system screen.
FIG. 38 is a layout diagram of the OBJ-A plane on the basic system screen.
FIG. 39 is a layout diagram of the OBJ-B plane on the basic system screen.
FIG. 40 is a layout diagram (part 1) of a basic system screen (when creating a screen);
FIG. 41 is a layout diagram (No. 2) of a basic system screen (when creating a screen);
42 is a layout diagram (No. 3) of a basic system screen (when creating a screen); FIG.
FIG. 43 is a layout diagram (part 1) of a character input screen;
FIG. 44 is a layout diagram (part 2) of the character input screen.
FIG. 45 is a first diagram illustrating a display example of speech bubbles;
FIG. 46 is a second diagram illustrating a speech bubble display example;
47 is a layout diagram of a basic system screen after screen creation. FIG.
FIG. 48 is a layout diagram of another basic system screen.
[Explanation of symbols]
101 CPU
102 VDP
103 SRAM
104 DP-RAM
107 Program / data RAM
108 Work RAM
109 Encoder
111 TV
112 Control pad

Claims (2)

文字列該文字列を囲むせりふ枠とからなるふきだしを表示させる画像制御装置において、
文字列が配置可能な行数と1行に配置可能な文字列の文字数とが対応付けられたせりふ枠を複数記憶している記憶手段と、
この記憶手段に記憶されているせりふ枠内に配置される文字列を入力する文字列入力手段と、
この文字列入力手段により入力される文字列を部分文字列に分割させるための分割情報を入力する分割情報入力手段と、
文字列入力手段により入力された文字列を前記分割情報入力手段により入力された分割情報に従って部分文字列に分割し、この分割された各部分文字列のそれぞれの文字数と前記1行に配置可能な文字列の文字数とに基づき、前記記憶手段に記憶された複数のせりふ枠のなかから一つのせりふ枠を選択し、この選択したせりふ枠内に、前記各部分文字列を配置するように制御する表示制御手段と、
を具備したことを特徴とする画像制御装置。
Consisting of a character string and the speech frame surrounding the string balloon Te image control apparatus odor to display a,
Storage means for storing a plurality of dialogue frames in which the number of lines in which a character string can be arranged and the number of characters in the character string that can be arranged in one line are associated;
A character string input means for inputting a character string to be arranged in the dialogue frame stored in the storage means ;
Division information input means for inputting division information for dividing the character string input by the character string input means into partial character strings;
Dividing a character string input by pre Symbol character string input means substring accordance division information input by said division information inputting means, the arrangement in a row and each character of the divided each partial string is Based on the number of characters in the possible character string, one dialog frame is selected from a plurality of dialog frames stored in the storage means, and the partial character strings are arranged in the selected dialog frame. Display control means for controlling;
An image control apparatus comprising:
文字列該文字列を囲むせりふ枠とからなるふきだしを表示させる画像制御装置において、
文字列が配置可能な行数と1行に配置可能な文字列の文字数とが対応付けられたせりふ枠を複数記憶している記憶手段と、
この記憶手段に記憶されているせりふ枠内に配置される文字列を入力する文字列入力手段と、
この文字列入力手段により入力され文字列を部分文字列に分割させるための分割情報を入力する分割情報入力手段と、
前記文字列入力手段により入力された文字列をこの分割情報入力手段により入力された分割情報に従って部分文字列に分割し、この分割された核部分文字列のそれぞれの文字数と前記1行に配置可能な文字列の文字数とに基づき、前記各部分文字列を表示させる第1の表示制御手段と、
前記部分文字列のそれぞれの文字数と前記1行に配置可能な文字列の文字数とに基づき、該部前記記憶手段に記憶された複数のせりふ枠のなかから一つのせりふ枠を選択し、この選択したせりふ枠内に前記第1の表示制御手段により表示される前記部分文字列が配置されるように表示させる第2の表示制御手段と、
を具備したことを特徴とする画像制御装置。
Consisting of a character string and the speech frame surrounding the string balloon Te image control apparatus odor to display a,
Storage means for storing a plurality of dialogue frames in which the number of lines in which a character string can be arranged and the number of characters in the character string that can be arranged in one line are associated;
A character string input means for inputting a character string to be arranged in the dialogue frame stored in the storage means ;
Division information input means for inputting a division information for dividing the character string that will be entered by the character string input unit to the partial string,
The character string input by the character string input unit is divided into partial strings according division information input by the division information input means, can be arranged in the first line and each of the characters of the divided core substring First display control means for displaying each of the partial character strings based on the number of characters in the character string ;
Based on the number of characters of each of the partial character strings and the number of characters of the character string that can be arranged in one line, one dialogue frame is selected from a plurality of dialogue frames stored in the storage unit, and this selection is performed. Second display control means for displaying the partial character string displayed by the first display control means in a dialog box;
An image control apparatus comprising:
JP13727195A 1995-05-10 1995-05-10 Image control device Expired - Fee Related JP3680352B2 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP13727195A JP3680352B2 (en) 1995-05-10 1995-05-10 Image control device
US08/639,516 US6278451B1 (en) 1995-05-10 1996-04-29 Image processor
EP96107188A EP0742535A3 (en) 1995-05-10 1996-05-07 Image control device for displaying a ballon
TW085105492A TW417071B (en) 1995-05-10 1996-05-09 Image processing system
CN96105167A CN1102279C (en) 1995-05-10 1996-05-10 Image processor
KR1019960015466A KR100226077B1 (en) 1995-05-10 1996-05-10 Image processing device
HK98100903A HK1002086A1 (en) 1995-05-10 1998-02-06 Image controlling device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13727195A JP3680352B2 (en) 1995-05-10 1995-05-10 Image control device

Publications (2)

Publication Number Publication Date
JPH08305885A JPH08305885A (en) 1996-11-22
JP3680352B2 true JP3680352B2 (en) 2005-08-10

Family

ID=15194780

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13727195A Expired - Fee Related JP3680352B2 (en) 1995-05-10 1995-05-10 Image control device

Country Status (1)

Country Link
JP (1) JP3680352B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7473909B2 (en) * 2020-03-27 2024-04-24 グリー株式会社 Video application program, video object drawing method, video management program, video management method, server, and video distribution system

Also Published As

Publication number Publication date
JPH08305885A (en) 1996-11-22

Similar Documents

Publication Publication Date Title
JP4399910B2 (en) Image processing apparatus and method including blending processing
JP3656857B2 (en) Full-motion video NTSC display device and method
JPH0587849B2 (en)
JPS62288984A (en) Video display unit
JP7027023B2 (en) Image processing equipment, image processing programs, image processing methods and image processing systems
JP3707096B2 (en) Image control apparatus and image control method
JP3680352B2 (en) Image control device
JP3680351B2 (en) Image control device
US6278451B1 (en) Image processor
JP3068590B1 (en) Two-dimensional image processing device
JP3829341B2 (en) Image processing device
JP3738328B2 (en) Image processing device
JPH08305340A (en) Image processor
JP3750171B2 (en) Drawing color changing method and image creating apparatus
JPH08305883A (en) Image processor
US20010015727A1 (en) Image data display control method and an image display device thereof
JP3543157B2 (en) Image control device with printer
JPH08305881A (en) Image generating device
JPH08293038A (en) Montage prepairing device
JPH08305872A (en) Character image device
JP2006318484A (en) Image processor and image processing control method
JP3674105B2 (en) Image printing device
JPH09185699A (en) Plotting color changing method and dynamic image reproducing device
JPH08186708A (en) Picture magnification device
JPH09182872A (en) Plotting device and plotting method

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050111

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050314

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050509

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080527

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090527

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090527

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100527

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110527

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110527

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120527

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120527

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130527

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130527

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees