JPH06149621A - Emulator - Google Patents
EmulatorInfo
- Publication number
- JPH06149621A JPH06149621A JP4294628A JP29462892A JPH06149621A JP H06149621 A JPH06149621 A JP H06149621A JP 4294628 A JP4294628 A JP 4294628A JP 29462892 A JP29462892 A JP 29462892A JP H06149621 A JPH06149621 A JP H06149621A
- Authority
- JP
- Japan
- Prior art keywords
- handy terminal
- emulator
- program
- function
- setting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】この発明は、例えば、「ハンディ
ターミナル」と呼ばれる携帯可能なコンピュータ用のア
プリケーションプログラム開発に用いて好適なエミュレ
ータに関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an emulator suitable for use in developing an application program for a portable computer called a "handy terminal".
【0002】[0002]
【従来の技術】近年、「ハンディターミナル」と呼ばれ
る携帯可能なコンピュータが各種実用化されている。こ
の種のコンピュータは、ポータブルに構成されており、
携行先で種々のデータ処理が可能になるため、様々な分
野で使用されている。図9は、このようなハンディター
ミナル1の外観構成を示す平面図である。ハンディター
ミナル1の操作面には、テンキーやファンクション・キ
ー等から成る操作キー1e1 と、透明タッチパネル1e
2 を有するLCD(液晶表示素子)の表示画面TDとが
備えられる。なお、このLCDは、そのコントラストが
調節可能になっており、また、暗い場所でも、表示が識
別できるようにバックライト(図示省略)が備えられ
る。そして、表示画面TDには、例えば図示のように、
各種アプリケーションプログラムの選択メニュー表示が
なされる。2. Description of the Related Art In recent years, various portable computers called "handy terminals" have been put into practical use. This type of computer is portable and
It is used in various fields because it enables various data processing at the carrying destination. FIG. 9 is a plan view showing an external configuration of such a handy terminal 1. On the operation surface of the handy terminal 1, operation keys 1e 1 including a numeric keypad and function keys, and a transparent touch panel 1e
A display screen TD of an LCD (liquid crystal display element) having 2 is provided. The contrast of the LCD is adjustable, and a backlight (not shown) is provided so that the display can be identified even in a dark place. Then, on the display screen TD, for example, as shown in the figure,
A selection menu of various application programs is displayed.
【0003】図10は、ハンディターミナル1の電気的
構成を示すブロック図である。この図において、1aは
ハンディターミナル1の各部を制御するCPUである。
1bは、CPU1aの基本的な動作を制御するオペレー
ティングシステムプログラム(以下、これをOSと略
す)が記憶されるROMである。1cは対応業務用のア
プリケーションプログラムがロードされると共に、該プ
ログラムのワークエリアとして各種レジスタ値が一時記
憶されるRAMである。1dはLCDの表示回路であ
り、内部バスを介してCPU1aから供給される各種デ
ータ等を表示する。1eは、操作キー1e1 および透明
タッチパネル1e2 の操作状態を検出する操作子であ
り、各操作に応じた操作子信号を発生する。FIG. 10 is a block diagram showing an electrical configuration of the handy terminal 1. In this figure, 1a is a CPU that controls each part of the handy terminal 1.
Reference numeral 1b is a ROM that stores an operating system program (hereinafter, abbreviated as OS) that controls basic operations of the CPU 1a. Reference numeral 1c is a RAM in which an application program for the corresponding business is loaded and various register values are temporarily stored as a work area of the program. 1d is a display circuit of the LCD, which displays various data and the like supplied from the CPU 1a via the internal bus. 1e is a operator for detecting the operation state of the operation keys 1e 1 and the transparent touch panel 1e 2, generates operator signals corresponding to each operation.
【0004】1fは、ハンディターミナル1本体の背面
に対し着脱自在に構成されるメモリカードである。この
メモリカード1fには、上述したアプリケーションプロ
グラム、あるいは当該プログラムによって参照される各
種データが記憶される。なお、メモリカード1fに記憶
されるデータは、図示されていない上位コンピュータか
らダウンロードされるものである。1gは、例えば、モ
デム等から構成され、シリアルデータ通信を制御する通
信制御回路である。なお、この図では示されないが、ハ
ンディターミナル1には、携行性が重視されるために、
動作電源として電池が用いられ、この電池は主電池と、
この主電池の交換時におけるバックアップ電源としての
副電池とに分かれている。メモリカード1fにも記憶内
容をバックアップするために、電池が使用されている。Reference numeral 1f is a memory card which is detachably attached to the back surface of the main body of the handy terminal 1. The memory card 1f stores the above-mentioned application program or various data referred to by the program. The data stored in the memory card 1f is downloaded from a host computer (not shown). Reference numeral 1g is a communication control circuit which is composed of, for example, a modem and controls serial data communication. Although not shown in this figure, the handy terminal 1 emphasizes portability,
A battery is used as the operating power source, and this battery is the main battery and
It is divided into a secondary battery as a backup power source when replacing the main battery. A battery is also used to back up the stored contents in the memory card 1f.
【0005】このような構成によるハンディターミナル
1では、リセットによってダウンロードあるいはメモリ
カードからOSが立ち上がる。なお、ハンディターミナ
ル1は、電源をOFFにしてもリセットがかからない構
成となっており、通常は、次回の電源ON時に、電源O
FFした状態からリスタートするようになっている。そ
して、OSが立ち上がった後に、対応業務用のアプリケ
ーションプログラムがデータ処理を実行する。さらに、
表示画面TDに、図9に示すような選択メニュー画面の
表示がなされている場合には、プログラム名が表示され
ている表示画面TD(透明タッチパネル1e2 )の部分
を触れると、該プログラムが実行されるようになってい
る。In the handy terminal 1 having such a configuration, the OS is booted from a download or a memory card by resetting. The handy terminal 1 is configured so that it will not be reset even if the power is turned off. Normally, when the power is turned on next time, the power is turned on.
It is designed to restart from the state of FF. Then, after the OS starts up, the corresponding application program for business executes data processing. further,
When a selection menu screen as shown in FIG. 9 is displayed on the display screen TD, the program is executed by touching the display screen TD (transparent touch panel 1e 2 ) where the program name is displayed. It is supposed to be done.
【0006】ところで、ハンディターミナル1で動作す
るアプリケーションプログラムは、「C言語」と呼ばれ
る構造化プログラミング言語で記述される場合が多い。
図11は、「C言語」によるプログラム開発手順を示す
図である。この図に示すように、プログラム開発は、コ
ーディング、コンパイルおよびリンクの各作業からな
り、実機デバッグを経て当該プログラムの動作が検証さ
れる。なお、このコーディング、コンパイルおよびリン
クの各作業は、通常、開発マシン(例えば、パーソナル
コンピュータ)上で行われる。By the way, an application program operating on the handy terminal 1 is often described in a structured programming language called "C language".
FIG. 11 is a diagram showing a program development procedure in “C language”. As shown in this figure, program development consists of coding, compiling, and linking work, and the operation of the program is verified through actual machine debugging. The coding, compiling, and linking work is usually performed on a development machine (for example, a personal computer).
【0007】コーディングにおいては、予め定められた
システム仕様に基づき、ソースプログラムをC言語で記
述する。このソースプログラムは、ソースファイルsf
として開発マシン上に登録される。ソースファイルsf
は、コンパイラCCの入力ファイルとなる。コンパイラ
CCでは、C言語で記述されたソースプログラムを語彙
解析、構造解析および意味解析し、この結果をリロケー
タブルな中間コードで記述されたオブジェクトプログラ
ムに変換する。このオブジジェクトプログラムは、開発
マシン上でオブジェクトファイルofとして登録され
る。In coding, a source program is described in C language based on a predetermined system specification. This source program is a source file sf
Is registered on the development machine as. Source file sf
Becomes an input file of the compiler CC. The compiler CC performs a lexical analysis, a structural analysis, and a semantic analysis on a source program described in C language, and converts the result into an object program described by relocatable intermediate code. This object program is registered as an object file of on the development machine.
【0008】リンカLKでは、オブジェクトファイルo
fに対し、標準関数ライブラリSLと、ターミナル専用
関数ライブラリTLとを結合させ、マシン語で記述され
た実行ファイルEfを生成する。ここで、標準関数ライ
ブラリSLは、C言語において定義される各種の制御関
数ルーチンプログラムから構成されている。また、ター
ミナル専用関数ライブラリTLは、ハンディターミナル
1のハードウェア環境で動作するように定義された専用
プログラム群から構成されるものである。In the linker LK, the object file o
For f, the standard function library SL and the terminal-specific function library TL are combined to generate an execution file Ef described in machine language. Here, the standard function library SL is composed of various control function routine programs defined in C language. The terminal dedicated function library TL is composed of a dedicated program group defined to operate in the hardware environment of the handy terminal 1.
【0009】すなわち、リンカLKでは、オブジェクト
プログラムにおいてコールされる種々のルーチンプログ
ラムや専用プログラムが、上述した各ライブラリSL,
TLから引用され、これらをオブジェクトプログラムに
結合させる。これにより、リロケータブルな中間コード
で記述されたプログラムが実行形式に変換され、実行フ
ァイルEfとして生成される。このようにして生成され
る実行形式のアプリケーションプログラムは、絶対アド
レス上に展開可能な形態となる。That is, in the linker LK, various routine programs and dedicated programs called in the object program are the above-mentioned libraries SL,
Quoted from TL, these are bound to the object program. As a result, the program described by the relocatable intermediate code is converted into the execution format and is generated as the execution file Ef. The executable application program generated in this manner is in a form that can be expanded on an absolute address.
【0010】次に、実行ファイルEfは、例えば、開発
マシンから通信により、CPU1aにダウンロードDL
される。これにより、ハンディターミナル1上で実機デ
バッグDG1が施される。実機デバッグDG1において
は、予め策定された検査項目に従ってアプリケーション
プログラムの動作を検証する。この実機デバッグDG1
でバグが露見した場合には、ソースプログラムの対応箇
所を修正する。そして、修正されたソースプログラム
は、再びコンパイル、リンク作業を経て実行ファイル化
されて実機デバッグDG1が繰り返される。Next, the execution file Ef is downloaded DL to the CPU 1a by communication from the development machine, for example.
To be done. As a result, the actual machine debug DG1 is performed on the handy terminal 1. In the actual machine debug DG1, the operation of the application program is verified according to the inspection items that have been established in advance. This real machine debug DG1
If a bug is revealed in, correct the corresponding part of the source program. Then, the modified source program is recompiled and linked to become an execution file, and the actual machine debug DG1 is repeated.
【0011】[0011]
【発明が解決しようとする課題】さて、上述したプログ
ラム開発手順においては、ハンディターミナル1上でバ
グが露見する度毎に、当該バグに対応するソースプログ
ラム部分を修正し、これを再度実行ファイル化してハン
ディターミナル1にダウンロードしなければならない。
このため、実機デバッグDG1には多大な工数が費やさ
れ、結果的に開発コスト上昇を招致するという弊害があ
る。In the program development procedure described above, every time a bug is revealed on the handy terminal 1, the source program part corresponding to the bug is corrected and converted into an execution file again. Must be downloaded to Handy Terminal 1.
Therefore, a large number of man-hours are spent on the actual machine debug DG1, resulting in an increase in development cost.
【0012】そこで、こうした弊害を解決するには、上
述したコーディング、コンパイル、リンクおよびデバッ
グからなる一連の作業を全て開発マシン上で行い、か
つ、デバッグ作業時には、特に、開発マシン上でハンデ
ィターミナル1の動作状態を全て把握できるようになる
ことが要求される。これを換言すれば、開発マシン上で
アプリケーションプログラムを実行し、ハンディターミ
ナル1の動作をエミュレートできれば、上述した欠点が
解消され、効率の良いプログラム開発が可能になる訳で
ある。Therefore, in order to solve such an adverse effect, a series of operations including the above-mentioned coding, compiling, linking and debugging are all performed on the development machine, and at the time of debugging, the handy terminal 1 is used especially on the development machine. It is required to be able to comprehend all the operating states of. In other words, if the application program can be executed on the development machine and the operation of the handy terminal 1 can be emulated, the above-mentioned drawbacks can be solved and efficient program development can be performed.
【0013】ところで、ハンディターミナル1と開発マ
シンとでは、当然のことながら、そのハードウェア環境
が全く異なる場合が多い。これには、例えば、表示画面
の能力や、マウスの有無などがある。したがって、エミ
ュレータの起動時には、ハンディのハードウェア環境に
合わせるための、初期化設定を行なう必要がある、とい
う問題があった。By the way, it goes without saying that the handy terminal 1 and the development machine often have completely different hardware environments. This includes, for example, the capabilities of the display screen and the presence or absence of a mouse. Therefore, there is a problem in that when the emulator is started up, it is necessary to perform initialization settings to match the handy hardware environment.
【0014】この発明は上述した問題に鑑みてなされた
もので、その目的とするところは、開発マシン上でも、
ハンディターミナルの初期設定状態に応じた動作をエミ
ュレートすることが可能なエミュレータを提供すること
にある。The present invention has been made in view of the above-mentioned problems, and an object of the present invention is, even on a development machine,
An object of the present invention is to provide an emulator capable of emulating an operation according to an initial setting state of a handy terminal.
【0015】[0015]
【課題を解決するための手段】上記課題を解決するため
にこの発明は、互いにハードウェア構成が異なるコンピ
ュータの内、いずれか一方のコンピュータ用に作成した
プログラムを、他方のコンピュータ上で動作可能にする
エミュレータにおいて、前記プログラムがコールする複
数のルーチンから形成されるライブラリであって、前記
プログラムと同一の引数で定義された各関数ルーチン
が、それぞれ前記他方のコンピュータ側のハードウェア
構成に対応した各機能を模倣する模倣手段と、前記模倣
手段によって模倣される一方のコンピュータのハードウ
ェア構成に関する情報を、前記模倣手段の起動時に設定
する初期設定手段とを有することを特徴としている。In order to solve the above problems, the present invention enables a program created for any one of computers having different hardware configurations to operate on the other computer. In the emulator, a function routine defined by the same argument as the program, which is a library formed by a plurality of routines called by the program, corresponds to the hardware configuration of the other computer side. It is characterized by including imitation means for imitating a function and initial setting means for setting information about the hardware configuration of one computer imitated by the imitation means when the imitation means is activated.
【0016】[0016]
【作用】この発明によれば、初期設定手段は、模倣手段
の起動時に、模倣手段によって模倣される一方のコンピ
ュータのハードウェア構成に関する情報を設定する。模
倣手段は、以後、設定された情報に基づいて、他方のコ
ンピュータ側のハードウェア構成に対応した各機能を模
倣する。According to the present invention, the initial setting means sets the information on the hardware configuration of one computer imitated by the imitating means when the imitating means is activated. After that, the imitation means imitates each function corresponding to the hardware configuration of the other computer based on the set information.
【0017】[0017]
【実施例】以下、図面を参照してこの発明の実施例につ
いて説明する。図1はこの発明の一実施例を適用したプ
ログラム開発手順の概要を示す図である。この図におい
て、図11に示す各部と共通する部分には、同一の符号
を付し、その説明を省略する。図1に示す手順が図11
に示した従来例と異なる点は、ターミナル専用関数ライ
ブラリTL(図11参照)を後述するエミュレータEM
に置き換え、これにより、開発マシン上でハンディター
ミナル1用に作成されたアプリケーションプログラムの
デバッグDG2を行うようにした点にある。すなわち、
この実施例が意図するところは、エミュレータEMを用
いたことにより、従来必要とされていた実行ファイルE
fのダウンロードDL(図11参照)と、これに応じて
なされるハンディターミナル1上の実機デバッグDG1
とを省略した点にある。Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a diagram showing an outline of a program development procedure to which an embodiment of the present invention is applied. In this figure, parts common to the parts shown in FIG. 11 are assigned the same reference numerals and explanations thereof are omitted. The procedure shown in FIG. 1 is shown in FIG.
The difference from the conventional example shown in is that the terminal-dedicated function library TL (see FIG. 11) has an emulator EM described later.
In this way, the application program created for the handy terminal 1 is debugged DG2 on the development machine. That is,
The intention of this embodiment is that the execution file E which has been conventionally required is obtained by using the emulator EM.
Download DL of f (see FIG. 11) and the actual debug DG1 on the handy terminal 1 performed in response to the download DL.
The point is that and are omitted.
【0018】次に、図1のプログラム開発手順を実現す
るエミュレータEMの機能概要について説明する。ま
ず、エミュレータEMは、ハンディターミナル1のハー
ドウェア環境で動作するよう定義された各種関数を、開
発マシンのハードウェア環境で動作するように定義し直
したプログラム群から構成されている。Next, the functional outline of the emulator EM for realizing the program development procedure of FIG. 1 will be described. First, the emulator EM is made up of a group of programs in which various functions defined to operate in the hardware environment of the handy terminal 1 are redefined to operate in the hardware environment of the development machine.
【0019】エミュレータEMの機能は、図2に示すよ
うに、ターミナル専用関数ライブラリTL(図11参
照)と同一である。つまり、このエミュレータEMで
は、ターミナル専用関数ライブラリTLと同様の引数で
各関数の外部仕様を規定し、かつ、各関数内部は、開発
マシン上でハンディターミナル1の動作をエミュレート
するよう定義し直している。As shown in FIG. 2, the function of the emulator EM is the same as that of the terminal-dedicated function library TL (see FIG. 11). In other words, in this emulator EM, the external specifications of each function are specified with the same arguments as the terminal dedicated function library TL, and the inside of each function is redefined to emulate the operation of the handy terminal 1 on the development machine. ing.
【0020】図2において、f1はエミュレータ初期化
機能である。このエミュレータ初期化機能f1は、ソー
スプログラムの先頭に「emu_start()」なる
関数が記述されている場合、エミュレータEMの初期設
定を行うものである。したがって、図1に示すように、
オブジェクトファイルofとエミュレータEMとをリン
クさせる場合には、この「emu_start()」な
る関数が必要になる。なお、この関数は、ターミナル専
用関数ライブラリTLとリンクする際には、何等実行に
影響されないものである。したがって、エミュレータ用
に作成されたソースファイルsfは、そのままハンディ
ターミナル1用の実行ファイルに変換可能になる。この
場合、ハンディターミナル1では、「emu_star
t()」なる関数が記述されていても、無視され、なに
も処理が行われない。In FIG. 2, f1 is an emulator initialization function. The emulator initialization function f1 is for initializing the emulator EM when the function "emu_start ()" is described at the beginning of the source program. Therefore, as shown in FIG.
When linking the object file of and the emulator EM, this function "emu_start ()" is required. Note that this function is not affected by execution when linked with the terminal-specific function library TL. Therefore, the source file sf created for the emulator can be directly converted into the execution file for the handy terminal 1. In this case, in handy terminal 1, "emu_star"
Even if the function "t ()" is described, it is ignored and no processing is performed.
【0021】次に、f2は画面表示制御機能である。こ
の画面表示制御機能f2では、ハンディターミナル1用
に定義された各関数、例えば、表示モードの設定、カー
ソル移動、カーソル形状あるいは表示文字のアトリビュ
ート設定等を行う各種の関数を、それぞれ開発マシンの
ハードウェア環境に対応して動作させる機能である。f
3はキー入力制御機能であり、ハンディターミナル1で
なされるタッチパネル入力やテンキー入力を、開発マシ
ン上におけるマウス入力やキー入力に置き換える機能で
ある。f4はエスケープシーケンス制御機能であり、カ
ーソル位置指定や、スクロールアップ/ダウンあるいは
後述する全画面消去などを指定するコード出力関数を、
開発マシンのハードウェア環境に対応して動作させる機
能である。Next, f2 is a screen display control function. In the screen display control function f2, each function defined for the handy terminal 1, for example, various functions for setting a display mode, moving a cursor, setting an attribute of a cursor shape or a display character, etc., is executed by a hardware of a development machine. This is a function that operates according to the wear environment. f
Reference numeral 3 denotes a key input control function, which replaces the touch panel input and ten-key input made by the handy terminal 1 with mouse input and key input on the development machine. f4 is an escape sequence control function, and a code output function for designating the cursor position, scrolling up / down, or erasing the entire screen described later,
This is a function that operates according to the hardware environment of the development machine.
【0022】f5は、メインメモリ容量、ドライバ登録
情報、外字登録情報等のシステム情報を取得して出力す
る関数を開発マシンに対応させた機能である。f6は主
電源オン制御や、ローバッテリ状態検出などの動作を開
発マシン上で表示させる電源制御機能である。f7は、
ハンディターミナル1用に定義されたシリアルデータ通
信制御を、開発マシン上でエミュレートさせる通信制御
機能である。f8はプリンタ制御機能であり、ハンディ
ターミナル1用に定義された印字フォント、改行ピッチ
などを開発マシン上で制御するものである。f9は、エ
ミュレータ終了機能であり、ソースプログラムの最後、
あるいは途中に「emu_exit(n)」なる関数が
記述されている場合、エミュレータEMを終了させる機
能である。The function f5 corresponds to a development machine with a function for acquiring and outputting system information such as main memory capacity, driver registration information, and external character registration information. f6 is a power control function for displaying operations such as main power-on control and low battery state detection on the development machine. f7 is
This is a communication control function that emulates the serial data communication control defined for the handy terminal 1 on the development machine. f8 is a printer control function for controlling the print font, line feed pitch, etc. defined for the handy terminal 1 on the development machine. f9 is an emulator termination function, which is the end of the source program,
Alternatively, when a function "emu_exit (n)" is described in the middle, the function is to terminate the emulator EM.
【0023】次に、上記エミュレータEMを用いたプロ
グラム開発手順と、この手順に基づき作成されたアプリ
ケーションプログラムのエミュレート動作概要とについ
て説明し、さらに、該エミュレート動作におけるエスケ
ープシーケンス制御について全画面消去処理を例にとっ
て説明する。Next, a program development procedure using the emulator EM and an outline of the emulation operation of the application program created based on this procedure will be described, and further, the escape sequence control in the emulation operation will erase the entire screen. The processing will be described as an example.
【0024】アプリケーションプログラムを開発する際
には、まず、コーディング段階でソースプログラムの先
頭に「emu_start()」なる関数を記述し、か
つ、該プログラムの最後に「emu_exit(n)」
なる関数を記述しておく。そして、図1に示すように、
ソースファイルsfをコンパイルccにかけ、オブジェ
クトファイルofを生成する。When developing an application program, first, at the coding stage, a function "emu_start ()" is described at the beginning of the source program, and "emu_exit (n)" is described at the end of the program.
Describe the function. Then, as shown in FIG.
The source file sf is compiled cc to generate the object file of.
【0025】次に、このオブジェクトファイルofに対
して標準関数ライブラリSLおよびエミュレータEMを
リンクさせる。これにより、ソースプログラムでコール
されるハンディターミナル固有の各種関数が開発マシン
上で動作する形で実行ファイル化される。実行ファイル
化されたアプリケーションプログラムは、開発マシンの
主メモリ上にロードされてハンディターミナル1の動作
をエミュレートする。Next, the standard function library SL and the emulator EM are linked to this object file of. As a result, various functions peculiar to the handy terminal that are called by the source program are converted into an executable file so that they will run on the development machine. The application file in the form of an executable file is loaded on the main memory of the development machine to emulate the operation of the handy terminal 1.
【0026】アプリケーションプログラムのエミュレ
ート動作 上記手順により作成されたアプリケーションプログラム
が起動すると、開発マシンの処理は、図3に示すステッ
プS1に進む。ステップS1では、プログラム先頭に定
義された「emu_start()」なる関数に基づ
き、上述したエミュレータ初期化機能f1が初期設定を
行う。この初期設定とは、ハンディターミナル1のダウ
ンロードの際に設定される初期状態を開発マシン側で設
定するものである。Emulation Operation of Application Program When the application program created by the above procedure is activated, the processing of the development machine proceeds to step S1 shown in FIG. In step S1, the emulator initialization function f1 described above performs initialization based on the function "emu_start ()" defined at the beginning of the program. In this initial setting, the initial state set when downloading the handy terminal 1 is set on the development machine side.
【0027】次に、エミュレータ初期化について説明す
る。まず、初期化の設定内容について図4を参照して説
明する。この設定内容は、ハンディターミナル1にて設
定される内容を、開発マシン側でのエミュレータに設定
するものであり、これらには、バックライトのオン/オ
フ、コントラスト、スピーカの音量、APO/ABO
(オートパワーオフ/オートバックライトオフ)、漢字
外字数、システム表示、キーパターンNo.、スクリー
ンモード、コンソール行数、^Cの有効/無効、および
拡張RS232Cの有無がある。Next, the initialization of the emulator will be described. First, the setting contents of initialization will be described with reference to FIG. This setting is for setting the contents set in the handy terminal 1 in the emulator on the development machine side. These include backlight on / off, contrast, speaker volume, APO / ABO.
(Auto power off / Auto backlight off), Number of non-Kanji characters, System display, Key pattern No. , Screen mode, number of console lines, valid / invalid of ^ C, and presence / absence of extended RS232C.
【0028】この図に示すように、各設定内容には変数
名がそれぞれ対応しており、該変数名にはその設定値
(とり得る値、あるいは範囲)が定められている。ま
た、設定例は、変数名を左辺に、設定値を右辺に、それ
ぞれ記載して等号で結んだ等式である。そして、各設定
内容でエミュレータを初期化設定する場合には、オペレ
ータは予め設定内容の変数名に設定値を定めた等式を箇
条書きにした設定ファイルを作成しておく。ここで、設
定ファイルの一例を図5に示す。この図に示す設定ファ
イルSFでは、漢字外字数が64種類、キーパターンN
o.が「1」に対応するキー表示、スクリーンモードが
「2」に対応するモードに各々対応している。As shown in this figure, each setting content corresponds to a variable name, and the setting value (possible value or range) is defined in the variable name. The setting example is an equation in which a variable name is written on the left side and a setting value is written on the right side and connected by an equal sign. When the emulator is initialized and set with each setting content, the operator creates a setting file in which the equations in which the setting values are set in the variable names of the setting content are itemized. Here, an example of the setting file is shown in FIG. In the setting file SF shown in this figure, the number of non-Kanji characters is 64 and the key pattern N is
o. Corresponds to the key display corresponding to "1", and the screen mode corresponds to the mode corresponding to "2".
【0029】次に、上記ステップS1において行なわれ
るエミュレータ初期化について詳細に説明する。図6お
よび図7は、この初期化動作を示すフローチャートであ
る。開発マシン上で、このエミュレータEMが起動する
と、はじめに図6に示す初期化ルーチンが起動する。ま
ず、ステップSB1において、後述するハンディターミ
ナル1の初期化状態設定が行なわれて、設定ファイルの
内容が読み出される。Next, the emulator initialization performed in step S1 will be described in detail. 6 and 7 are flowcharts showing this initialization operation. When the emulator EM is activated on the development machine, the initialization routine shown in FIG. 6 is activated first. First, in step SB1, the initialization state of the handy terminal 1 described later is set, and the contents of the setting file are read.
【0030】次に、開発マシン上における入力装置のマ
ウス初期化動作が行われる(ステップSB2)。さら
に、表示画面TD(図9参照)の表示態様をエミュレー
トするべく、開発マシンTDにおけるディスプレイDS
Pの表示領域の一部に表示エリアE1(後述する)が割
り当てられ(ステップSB3)、次に、ハンディターミ
ナル1の表示画面TDに表示される透明タッチパネル1
e2 のキー分割設定状態をエミュレートするべく、開発
マシンTDにおけるディスプレイDSPの表示領域の一
部に表示エリアE2(後述する)が割り当てられ(ステ
ップSB4)、ハンディターミナル1における各種フラ
グ等の設定状態を表示するべく、開発マシンTDにおけ
るディスプレイDSPの表示領域の一部に表示エリアE
3(後述する)が割り当てられる(ステップSB5)。
そして、開発マシン側の各種フラグの初期化が行なわれ
る(ステップSB6)。このステップ終了後、このルー
チンは終了して、処理は図3におけるステップS2に進
む。Next, the mouse initialization operation of the input device on the development machine is performed (step SB2). Furthermore, in order to emulate the display mode of the display screen TD (see FIG. 9), the display DS on the development machine TD is displayed.
A display area E1 (described later) is assigned to a part of the display area of P (step SB3), and then the transparent touch panel 1 displayed on the display screen TD of the handy terminal 1 is displayed.
to the key division setting state of e 2 emulating developed display area E2 (described below) on a part of the display area of the display DSP in machine TD is assigned (step SB4), setting of various flags in the handy terminal 1 In order to display the status, a display area E is provided in a part of the display area of the display DSP in the development machine TD.
3 (described later) is assigned (step SB5).
Then, various flags on the development machine side are initialized (step SB6). After this step ends, this routine ends, and the process proceeds to step S2 in FIG.
【0031】次に、図6におけるステップSB1におい
て行なわれるハンディターミナル1の初期化状態設定に
ついて図7を参照して説明する。まず、ステップSC1
では、一旦、図4に示す設定内容がすべてデフォルトの
値に設定される。次のステップSC2では、図5に示す
ような設定ファイルが開発マシン上に設定されているか
否かが検出される。設定ファイルが存在しなければ、判
別結果が「NO」となり、このルーチンは直ちに終了す
る一方、設定ファイルが存在すれば、判別結果が「YE
S」となり、処理が次のステップSC3に進む。Next, the initialization state setting of the handy terminal 1 performed in step SB1 in FIG. 6 will be described with reference to FIG. First, step SC1
Then, all the setting contents shown in FIG. 4 are once set to default values. In the next step SC2, it is detected whether or not the setting file as shown in FIG. 5 is set on the development machine. If the setting file does not exist, the determination result is “NO”, and this routine ends immediately, while if the setting file exists, the determination result is “YE”.
S ”, and the process proceeds to the next step SC3.
【0032】ステップSC3では、設定ファイルのレコ
ード(行)検出が終了したか否かが判別される。終了し
たならば、ここでの判別結果は「YES」となり、この
ルーチンは終了する一方、終了していないならば、判別
結果が「NO」となり、次の1レコードが読み込まれ
(ステップSC4)、該レコードが有効であるか否かが
判別される(ステップSC5)。すなわち、このステッ
プでは、ステップSC4にて読み込まれたレコードが、
図4に示す設定内容の変数であるか否か、設定値内に収
まっているか否かが判別される。該レコードが無効であ
ると判別されたならば、このルーチンは終了する一方、
該ルーチンが有効であると判別されたならば、この判別
結果が「YES」となり、該レコードの記述内容が、初
期状態の設定内容として設定される(ステップSC
6)。そして、次のレコードを読み込むべく、処理は再
びステップSC3に戻る。以後、すべてのレコードが読
み込まれるまで、処理はステップSC3→SC4→SC
5→SC6→SC3と循環し、設定ファイルの全行が読
み込まれて設定されると、処理は図6におけるステップ
SB2に進む。At step SC3, it is judged if the record (row) detection of the setting file is completed. If it is finished, the determination result here is “YES”, and while this routine is finished, if it is not finished, the determination result is “NO”, and the next one record is read (step SC4), It is determined whether or not the record is valid (step SC5). That is, in this step, the record read in step SC4 is
It is determined whether or not it is a variable of the setting content shown in FIG. 4 and whether or not it is within the set value. If it is determined that the record is invalid, this routine ends while
If it is determined that the routine is valid, the result of this determination is "YES", and the description content of the record is set as the setting content of the initial state (step SC
6). Then, the process returns to step SC3 again to read the next record. After that, the process is step SC3 → SC4 → SC until all records are read.
When all the lines of the setting file are read and set in the cycle of 5 → SC6 → SC3, the process proceeds to step SB2 in FIG.
【0033】このように、このルーチンでは、設定内容
が一旦、デフォルト値に設定されるが、設定ファイル
(図5参照)が存在する場合には、この設定ファイルの
内容に書き換えられる。そして、この設定内容が、エミ
ュレータEMの初期状態の内容として設定される。以
後、ステップS2(図3参照)における各関数の実行時
には、この設定内容に基づき実行される。As described above, in this routine, the setting contents are once set to the default values, but if the setting file (see FIG. 5) exists, it is rewritten to the contents of this setting file. Then, the setting contents are set as the contents of the initial state of the emulator EM. After that, when each function is executed in step S2 (see FIG. 3), it is executed based on the set contents.
【0034】こうして開発マシン上でハンディターミナ
ル1の初期状態がエミュレートされると、例えば、図8
に示すように、ディスプレイDSPには、ハンディター
ミナルの各種エミュレート状態が表示される。この図に
示すように、ディスプレイDSPは、表示エリアE1、
E2、E3に3分割されており、この内の表示エリアE
1には表示画面TDと同一の表示がなされる。さらに、
表示エリアE2には、ハンディターミナル1のタッチパ
ネルの分割状態が表示され、表示エリアE3には、ハン
ディターミナル1の動作状態が表示される。Thus, when the initial state of the handy terminal 1 is emulated on the development machine, for example, as shown in FIG.
As shown in, various emulation states of the handy terminal are displayed on the display DSP. As shown in this figure, the display DSP has a display area E1,
The display area E is divided into three parts, E2 and E3.
1 has the same display as the display screen TD. further,
The display area E2 displays the split state of the touch panel of the handy terminal 1, and the display area E3 displays the operating state of the handy terminal 1.
【0035】次いで、このような初期設定がなされる
と、開発マシンの処理はステップS2に進む。ステップ
S2では、与えられたイベントに応じてアプリケーショ
ンプログラムが各関数を実行する。このステップS2に
おいては、ハンディターミナル1のタッチパネル入力を
マウス入力するようにキー入力制御機能f3が動作して
おり、これに対応してマウスカーソルを移動させる割込
処理が実行される。Next, when such initial settings are made, the processing of the development machine proceeds to step S2. In step S2, the application program executes each function according to the given event. In step S2, the key input control function f3 is operated so as to input the touch panel input of the handy terminal 1 with the mouse, and the interrupt process for moving the mouse cursor is executed correspondingly.
【0036】ここで、図8に示すように、実際のタッチ
パネルをエミュレートした表示エリアE1上の所定位置
をクリックしてマウス入力を行なうと、この入力イベン
トに対応したアプリケーションプログラムを実行し、該
プログラム中で定義された関数が実行される。これによ
り、ハンディターミナル1の動作が開発マシンでエミュ
レートされる。例えば、マウスカーソルMCが、図4に
示すように、表示エリアE1上における「印刷」の表示
に置かれ、マウスクリックがなされると、該「印刷」処
理がコンピュータ上でエミュレートされる。Here, as shown in FIG. 8, when a mouse is input by clicking a predetermined position on the display area E1 emulating an actual touch panel, the application program corresponding to this input event is executed, The function defined in the program is executed. As a result, the operation of the handy terminal 1 is emulated on the development machine. For example, as shown in FIG. 4, when the mouse cursor MC is placed on the display of "print" in the display area E1 and the mouse is clicked, the "print" process is emulated on the computer.
【0037】そして、各種処理がエミュレートされ、ア
プリケーションプログラム完了の旨を表わす入力がなさ
れると、ステップS3の判断結果が「YES」となり、
該プログラムの処理がステップS4に進む。ステップS
4では、プログラム最後に定義された「emu_exi
t(n)」なる関数に基づき、エミュレート動作を終了
する。When various processes are emulated and an input indicating that the application program is completed is made, the result of the determination in step S3 is "YES",
The processing of the program proceeds to step S4. Step S
In No. 4, "emu_exi" defined at the end of the program
The emulation operation is terminated based on the function "t (n)".
【0038】この実施例によれば、図7に示す初期化状
態設定によって、開発マシン側でハンディターミナルの
ハードウェア構成がエミュレートされる。また、エミュ
レータEMは、ハンディターミナル1のハードウェア環
境に対応させた専用関数ライブラリTLと同一の引数を
備え、かつ各専用関数の機能f1〜f9を開発マシンの
ハードウェア環境に対応させている。このため、ソース
プログラムにエミュレータEMをリンクして、生成した
実行ファイルEfをパーソナルコンピュータにロードす
れば、該開発マシン上でハンディターミナル1の動作が
エミュレートされることになる。さらに、このエミュレ
ート動作では、ハンディターミナル1の動作状態がディ
スプレイDSPに逐一表示されるたので、アプリケーシ
ョンプログラムのデバッグ作業が極めて効率良く行え
る。According to this embodiment, the hardware configuration of the handy terminal is emulated on the development machine side by the initialization state setting shown in FIG. Further, the emulator EM has the same arguments as the dedicated function library TL corresponding to the hardware environment of the handy terminal 1, and also makes the functions f1 to f9 of each dedicated function correspond to the hardware environment of the development machine. Therefore, if the emulator EM is linked to the source program and the generated execution file Ef is loaded on the personal computer, the operation of the handy terminal 1 is emulated on the development machine. Further, in this emulation operation, the operating state of the handy terminal 1 is displayed on the display DSP step by step, so that the debugging work of the application program can be performed very efficiently.
【0039】また、上記実施例によれば、エミュレータ
用に開発したソースプログラムがそのままハンディター
ミナル用のソースファイルとなり、完全互換性を備える
ので、プログラム開発がすべて同一のマシン上で行なう
ことが可能になる。この結果、従来必要とされる実行フ
ァイルEfのダウンロードDLと、これに応じてなされ
る実機デバッグDG1とが省略することができるので、
極めて効率の良いプログラム開発が可能となる。Further, according to the above-mentioned embodiment, the source program developed for the emulator becomes the source file for the handy terminal as it is, and it has complete compatibility. Therefore, it is possible to carry out all program development on the same machine. Become. As a result, it is possible to omit the download DL of the execution file Ef and the actual device debug DG1 that are performed according to this, which are conventionally required.
It enables extremely efficient program development.
【0040】[0040]
【発明の効果】以上説明したように、この発明によれ
ば、互いにハードウェア構成が異なるコンピュータの
内、いずれか一方のコンピュータ用に作成したプログラ
ムを、他方のコンピュータ上で動作可能にするエミュレ
ータにおいて、前記プログラムがコールする複数のルー
チンから形成されるライブラリであって、前記プログラ
ムと同一の引数で定義された各関数ルーチンが、それぞ
れ前記他方のコンピュータ側のハードウェア構成に対応
した各機能を模倣する模倣手段と、前記模倣手段によっ
て模倣される一方のコンピュータのハードウェア構成に
関する情報を、前記模倣手段の起動時に設定する初期設
定手段とを備えて、初期設定手段は、模倣手段の起動時
に、模倣手段によって模倣される一方のコンピュータの
ハードウェア構成に関する情報を設定する。模倣手段
は、以後、設定された情報に基づいて、他方のコンピュ
ータ側のハードウェア構成に対応した各機能を模倣する
ことが可能となる。As described above, according to the present invention, in an emulator that allows a program created for one of computers having different hardware configurations to operate on the other computer. , A library formed by a plurality of routines called by the program, each function routine defined with the same arguments as the program imitating each function corresponding to the hardware configuration of the other computer side. And an initial setting unit that sets information about the hardware configuration of one computer imitated by the imitating unit when the imitating unit is activated. The hardware configuration of one computer imitated by imitation means To set that information. After that, the imitation means can imitate each function corresponding to the hardware configuration of the other computer based on the set information.
【図1】 この発明の一実施例を適用したプログラム開
発手順の概要を示す図である。FIG. 1 is a diagram showing an outline of a program development procedure to which an embodiment of the present invention is applied.
【図2】 同実施例におけるエミュレータEMの機能構
成を示す図である。FIG. 2 is a diagram showing a functional configuration of an emulator EM in the embodiment.
【図3】 同実施例により作成されたアプリケーション
プログラムの概略動作を示すフローチャートである。FIG. 3 is a flowchart showing a schematic operation of an application program created by the embodiment.
【図4】 同実施例における初期化条件の一覧表であ
る。FIG. 4 is a list of initialization conditions in the example.
【図5】 同実施例における設定ファイルの一例を示す
表である。FIG. 5 is a table showing an example of a setting file in the example.
【図6】 同実施例における初期化ルーチンの動作を示
すフローチャートである。FIG. 6 is a flowchart showing an operation of an initialization routine in the same embodiment.
【図7】 同実施例の初期状態設定の動作を示すフロー
チャートである。FIG. 7 is a flowchart showing an operation of initial state setting of the embodiment.
【図8】 同実施例における表示エリアE1,E2,E
3の表示例を示す図である。FIG. 8 shows display areas E1, E2, E in the same embodiment.
It is a figure which shows the example of a display of 3.
【図9】 ハンディターミナルの外観構成を示す平面図
である。FIG. 9 is a plan view showing an external configuration of a handy terminal.
【図10】 ハンディターミナル1の電気的構成の一例
を示すブロック図である。FIG. 10 is a block diagram showing an example of an electrical configuration of the handy terminal 1.
【図11】 従来のプログラム開発手順を説明するため
の図である。FIG. 11 is a diagram for explaining a conventional program development procedure.
sf…ソースファイル、cc…コンパイル、of…オブ
ジェクトファイル、LK…リンカ、EM…エミュレータ
(模倣手段)、SL…標準関数ライブラリ、Ef…実行
ファイル。sf ... Source file, cc ... Compile, of ... Object file, LK ... Linker, EM ... Emulator (imitation means), SL ... Standard function library, Ef ... Executable file.
─────────────────────────────────────────────────────
─────────────────────────────────────────────────── ───
【手続補正書】[Procedure amendment]
【提出日】平成5年8月11日[Submission date] August 11, 1993
【手続補正1】[Procedure Amendment 1]
【補正対象書類名】明細書[Document name to be amended] Statement
【補正対象項目名】図面の簡単な説明[Name of item to be corrected] Brief description of the drawing
【補正方法】変更[Correction method] Change
【補正内容】[Correction content]
【図面の簡単な説明】[Brief description of drawings]
【図1】 この発明の一実施例を適用したプログラム開
発手順の概要を示す図である。FIG. 1 is a diagram showing an outline of a program development procedure to which an embodiment of the present invention is applied.
【図2】 同実施例におけるエミュレータEMの機能構
成を示す図である。FIG. 2 is a diagram showing a functional configuration of an emulator EM in the embodiment.
【図3】 同実施例により作成されたアプリケーション
プログラムの概略動作を示すフローチャートである。FIG. 3 is a flowchart showing a schematic operation of an application program created by the embodiment.
【図4】 同実施例における初期化条件を示す図表であ
る。4 is a diagram table showing the initialization condition in the same embodiment.
【図5】 同実施例における設定ファイルの一例を示す
図表である。FIG. 5 shows an example of a setting file in the embodiment.
It is a drawing table.
【図6】 同実施例における初期化ルーチンの動作を示
すフローチャートである。FIG. 6 is a flowchart showing an operation of an initialization routine in the same embodiment.
【図7】 同実施例の初期状態設定の動作を示すフロー
チャートである。FIG. 7 is a flowchart showing an operation of initial state setting of the embodiment.
【図8】 同実施例における表示エリアE1,E2,E
3の表示例を示す図である。FIG. 8 shows display areas E1, E2, E in the same embodiment.
It is a figure which shows the example of a display of 3.
【図9】 ハンディターミナルの外観構成を示す平面図
である。FIG. 9 is a plan view showing an external configuration of a handy terminal.
【図10】 ハンディターミナル1の電気的構成の一例
を示すブロック図である。FIG. 10 is a block diagram showing an example of an electrical configuration of the handy terminal 1.
【図11】 従来のプログラム開発手順を説明するため
の図である。FIG. 11 is a diagram for explaining a conventional program development procedure.
【符号の説明】 sf…ソースファイル、cc…コンパイル、of…オブ
ジェクトファイル、LK…リンカ、EM…エミュレータ
(模倣手段)、SL…標準関数ライブラリ、Ef…実行
ファイル。[Explanation of Codes] sf ... Source file, cc ... Compile, of ... Object file, LK ... Linker, EM ... Emulator (imitation means), SL ... Standard function library, Ef ... Executable file.
Claims (1)
ュータの内、いずれか一方のコンピュータ用に作成した
プログラムを、他方のコンピュータ上で動作可能にする
エミュレータにおいて、 前記プログラムがコールする複数のルーチンから形成さ
れるライブラリであって、前記プログラムと同一の引数
で定義された各関数ルーチンが、それぞれ前記他方のコ
ンピュータ側のハードウェア構成に対応した各機能を模
倣する模倣手段と、 前記模倣手段によって模倣される一方のコンピュータの
ハードウェア構成に関する情報を、前記模倣手段の起動
時に設定する初期設定手段とを有することを特徴とする
エミュレータ。1. An emulator that allows a program created for any one of computers having different hardware configurations to operate on the other computer is formed from a plurality of routines called by the program. In the library, each function routine defined by the same argument as that of the program is imitated by the imitation means for imitating each function corresponding to the hardware configuration of the other computer side, and the imitation means. An emulator, comprising: initial setting means for setting information about the hardware configuration of one computer when the imitating means is started.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4294628A JPH06149621A (en) | 1992-11-02 | 1992-11-02 | Emulator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4294628A JPH06149621A (en) | 1992-11-02 | 1992-11-02 | Emulator |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH06149621A true JPH06149621A (en) | 1994-05-31 |
Family
ID=17810223
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4294628A Pending JPH06149621A (en) | 1992-11-02 | 1992-11-02 | Emulator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH06149621A (en) |
-
1992
- 1992-11-02 JP JP4294628A patent/JPH06149621A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2795244B2 (en) | Program debugging system | |
KR100247952B1 (en) | Booting control apparatus and method of pda | |
Duncan | Advanced MS-DOS Programming | |
Mahmoud | Learning wireless java | |
Meiller | Modern App Development with Dart and Flutter 2: A Comprehensive Introduction to Flutter | |
Jung et al. | Beginning LUA programming | |
JPH06149591A (en) | Emulator | |
JPH06149621A (en) | Emulator | |
JPH06149622A (en) | Emulator | |
JP2939392B2 (en) | emulator | |
JP2938272B2 (en) | emulator | |
Mühlbacher et al. | Oberon-2 programming with Windows | |
JP2939391B2 (en) | emulator | |
JP3100463B2 (en) | emulator | |
JP2939390B2 (en) | emulator | |
JP3330979B2 (en) | emulator | |
JP2959910B2 (en) | emulator | |
JPH06103103A (en) | Emulator | |
KR20020032256A (en) | Integrated Embedded System and Method for Realizing thereof | |
Burgess | C programming tutorial | |
JPH06103087A (en) | Emulator | |
JPH06103086A (en) | Emulator | |
GUIDE | intJ | |
Oualline | Bare Metal C: Embedded Programming for the Real World | |
Lazzarini et al. | Introduction to the Programming Environment |