JPH04117523A - Program editing device - Google Patents

Program editing device

Info

Publication number
JPH04117523A
JPH04117523A JP23780590A JP23780590A JPH04117523A JP H04117523 A JPH04117523 A JP H04117523A JP 23780590 A JP23780590 A JP 23780590A JP 23780590 A JP23780590 A JP 23780590A JP H04117523 A JPH04117523 A JP H04117523A
Authority
JP
Japan
Prior art keywords
file
common
exe
rom
module
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
Application number
JP23780590A
Other languages
Japanese (ja)
Inventor
Toru Sakai
徹 境井
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 JP23780590A priority Critical patent/JPH04117523A/en
Publication of JPH04117523A publication Critical patent/JPH04117523A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To attain the direct execution of the common modules formed into a single piece based on a real address stored in ROM by describing a call instruction, a jump instruction, etc., which define the real addresses of the common modules as their call destinations. CONSTITUTION:The MS-DOS stored in a system disk 8 is loaded into a RAM, and a source file stored in a file disk 9 is evolved to a RAM 3 under the back-up of the MS-DOS. The source file is successively converted into an object file, an EXE practicable file and then a HEX file. In this case, 'tool1' of lists 2 and 5 and 'tool2' of lists 3 and 6 are identical with the jobs common to two jobs. Thus these functions are deleted out of an EXE file B and remain only in an EXE file A in the form of a single piece respectively. As a result, the common modules are quickly carried out.

Description

【発明の詳細な説明】 [産業上の利用分野] この発明は、複数の実行可能ファイル(以下、EXEフ
ァイルと呼ぶ)を連結してROM化するのに好適なプロ
グラム編集装置に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a program editing device suitable for concatenating a plurality of executable files (hereinafter referred to as EXE files) and creating a ROM.

[発明の概要] この発明は、プログラム編集装置において、複数のEX
Eファイルを連結してROMイメージファイル(以下、
HEXファイルと呼ぶ)を作成するに当たり、複数のE
XEファイルに重複して存在するモジュールを1本化し
て共有モジュールとし、モジュールが削除されたファイ
ル側にて共有モジュールを実行するときは、その共有モ
ジュールのROM上での実アドレスによりコールしたり
、実アドレスヘジャンプしなりすることにより、共有モ
ジュールを簡単、かつ迅速に実行できるようにしたもの
である。
[Summary of the Invention] The present invention provides a program editing device in which a plurality of EX
E files are concatenated to create a ROM image file (hereinafter referred to as
When creating a HEX file (called a HEX file), multiple E
When duplicating modules in an XE file are combined into a single shared module, and the shared module is executed in the file where the module was deleted, it is called using the real address on the ROM of the shared module, By jumping to a real address, shared modules can be executed easily and quickly.

[従来の技術] 従来、例えばマルチタスクO8を備えたシステムをRO
M化する場合、ジョブ単位の独立性を確保するため、各
ジョブをEXEファイルにし、これら複数のEXEファ
イルを連結して[(EXファイルを作成している。
[Prior art] Conventionally, for example, a system equipped with a multitasking O8 was
When converting to M, each job is created as an EXE file in order to ensure the independence of each job, and these multiple EXE files are concatenated to create an EXE file.

しかし、単純に連結すると、第11図に示したように、
HEXファイルには、各EXEファイルに共通するモジ
ュールが重複して存在することとなり、ROM容量の点
で不利になる。
However, when simply connected, as shown in Figure 11,
The HEX file has duplicate modules that are common to each EXE file, which is disadvantageous in terms of ROM capacity.

そこで、従来は、第12図に示したように、共通するモ
ジュールを1本化して任意のEXEファイルは取入れ、
1本化のためにモジュールが削除された他のEXEファ
イル側では1本化された共通モジュールをコールするこ
とにより共同利用していたが、従来のコール方式は、共
通する各モジュールに一連Nαを割当て、第13図に示
したように、ソフトウェア・インクラブドを使用してコ
ールする方式であった。すなわち、呼出側は共通モジュ
ール対応のNαをレジスタに入れ、ソフトウェア・イン
タラブドをかけてコールする。すると、受は側では、予
め作成されたインタラブド関数に基づいて、共通モジュ
ールのアドレスを登録したアドレステーブルからNα対
応のアドレスを取出し、共通モジュールをコールする。
Therefore, conventionally, as shown in Figure 12, common modules were combined into one, and arbitrary EXE files were imported.
Other EXE files whose modules were deleted for unification were shared by calling the unified common module, but in the conventional calling method, a series of Nα was applied to each common module. As shown in FIG. 13, the allocation method was to call using software included. That is, the calling side puts Nα corresponding to the common module into a register, and calls with software interrelated. Then, on the receiving side, based on the interwoven function created in advance, the address corresponding to Nα is retrieved from the address table in which the addresses of the common module are registered, and the common module is called.

[発明が解決しようとする課題] しかし、従来の方式には次のような問題点があった。[Problem to be solved by the invention] However, the conventional method has the following problems.

すなわち、[呼出側コ「受は側]での固有番号付加、[
呼出側]のINTコール部の追加、「受は側]のアドレ
ステーブルの追加等、共同利用するモジールの登録作業
が繁雑であった。
In other words, adding a unique number on the calling side,
The process of registering modules for shared use was complicated, such as adding an INT call section on the calling side and adding an address table on the receiving side.

また、例えば、共同利用しないモジールを誤って登録し
てしまいこれを削除した場合には、それ以後の一連順を
全て修正しなければならず、この修正作業が面倒であっ
た。
Further, for example, if a module that is not to be used jointly is accidentally registered and deleted, the subsequent sequence must be corrected, and this correction work is troublesome.

さらに、上記説明から推測できるように、「呼出側][
受は側]の変換部分のステップ数が多くなりオーバーヘ
ッドが大きく、ROM容量の点でも不利であった。
Furthermore, as can be inferred from the above explanation, "caller" [
The number of steps in the conversion part of the receiver side is large, resulting in large overhead, and it is also disadvantageous in terms of ROM capacity.

これは、一連社を介して共通モジュールのROM上の実
アドレスを得ていることに起因する。
This is due to the fact that the real address on the ROM of the common module is obtained through a series of companies.

してみれば、共通モジュールをそのROM上の実アドレ
スに基づいて直接実行できれば、上記の問題を解決でき
ることは明らかである。
It is clear that the above problem can be solved if the common module can be executed directly based on its real address on the ROM.

この発明の課題は、1本化された共通モジュールをその
ROM上の実アドレスに基づいて直接実行できるように
することである。
An object of this invention is to enable a unified common module to be directly executed based on its real address on the ROM.

[課題を解決するための手段] この発明の手段は次の通りである。[Means to solve the problem] The means of this invention are as follows.

第1の制御手段(第1図の機能ブロック図を参照、以下
同じ)aは、複数の実行可能ファイルに重複して存在す
るモジュールを1本化する。
The first control means (see the functional block diagram of FIG. 1, the same applies hereinafter) a consolidates modules that exist redundantly in a plurality of executable files into one.

第2の制御手段すは、ROMイメージファイル作成の際
、上記第1の制御手段aにより1本化されたモジュール
について、ROM上での実アドレスを登録したライブラ
リを作成する。
When creating a ROM image file, the second control means a creates a library in which real addresses on the ROM are registered for the modules unified by the first control means a.

第3の制御手段Cは、第1の制御手段aにより1本化の
ためにモジュールが削除された実行可能ファイルをRO
Mイメージファイルに変換する際、第2の制御手段すに
て作成されたライブラリに基づいて、削除されたモジュ
ールの代わりに1本化されたモジュールの実アドレスを
実行先とする命令を記述する。
RO
When converting to an M image file, the second control means writes an instruction whose execution destination is the real address of the unified module instead of the deleted module, based on the library created.

[作 用] この発明の手段の作用は次の通りである。[Work] The operation of the means of this invention is as follows.

第1の制御手段aは、複数の実行可能ファイルに重複し
て存在する共通モジュールについて、当該共通モジュー
ルは1つの実行可能ファイルに残し、他の実行可能ファ
イルからは削除する、或いは共通モジュールだけを集め
た実行可能ファイルを新たに作成し、元の全ての実行可
能ファイルから共通モジュールを削除する等して1本化
し、各ファイル間の共有モジュールとする。
The first control means a is configured to leave a common module that exists redundantly in multiple executable files in one executable file and delete it from other executable files, or to delete only the common module. The collected executable files are newly created, the common module is deleted from all the original executable files, etc., and the file is unified into a single file, which is used as a shared module between each file.

そして、第2の制御手段すは、共有モジュールを含む実
行可能ファイルをROMイメージファイルに変換する際
、共有モジュールのROM上での実アドレスが確定する
ので、共有モジュール別にその実アドレスを登録したラ
イブラリを作成する。
Then, when converting an executable file containing a shared module into a ROM image file, the second control means is configured to create a library in which the real address of the shared module is registered on a ROM image file, since the real address of the shared module on the ROM is determined. create.

そこで、第3の制御手段Cは、第1の制御手段aにより
1本化のために共通モジュールが削除された実行可能フ
ァイルをROMイメージファイルに変換する際、第2の
制御手段すにて作成されたライブラリ内の実アドレスを
参照して、削除された共通モジュールの代わりに共有モ
ジュールの実アドレスをコール先とするコール命令、当
該実アドレスをジャンプ先とするジャンプ命令等を記述
する。
Therefore, when the first control means a converts the executable file from which the common module has been deleted for unification into a ROM image file, the third control means C creates a ROM image file using the second control means. Referring to the real address in the library that was deleted, write a call instruction that calls the real address of the shared module instead of the deleted common module, a jump instruction that uses the real address as the jump destination, etc.

従って、1本化された共通モジュールをそのROM上の
実アドレスに基づいて直接実行できる。
Therefore, the unified common module can be directly executed based on the real address on the ROM.

[実施例] 以下、一実施例を第2図ないし第10図を参照しながら
説明する。
[Example] An example will be described below with reference to FIGS. 2 to 10.

第2図は、プログラム編集装置のブロック椙成図であり
、実際にはcpui、ROM2、RAM3、入力部4、
表示部5、印字部6、及び伝送部7を有する通常のパー
ソナルコンピュータにより実現されている。
FIG. 2 is a block diagram of the program editing device, which actually includes CPU, ROM2, RAM3, input section 4,
It is realized by a normal personal computer having a display section 5, a printing section 6, and a transmission section 7.

本実施例では、CPUIとしては8o系のcPUを採用
しているが、勿論、他のCPUを採用しても楕わない、
このCPLJlは、ROM2にプリセットされた編集プ
ログラムに従って各種編集処理を行うが、この際、シス
テムディスク8内のMS−DO9をRAMにロードし、
コノMs−D。
In this embodiment, an 8o-based cPU is used as the CPU, but of course, other CPUs can also be used.
This CPLJl performs various editing processes according to the editing program preset in the ROM 2. At this time, MS-DO 9 in the system disk 8 is loaded into the RAM,
Kono Ms-D.

Sの支援の下に、ファイルディスク9内のソースファイ
ルをRAM3に展開し、このソースファイルをオブジェ
クトファイル、EXE実行可能ファイル、HEXファイ
ルに順次変換する。
With the support of S, the source file in the file disk 9 is developed into the RAM 3, and this source file is sequentially converted into an object file, an EXE executable file, and a HEX file.

伝送部7は、I(EXファイルをROM10に書込ませ
るために、ROMライタ11に転送する。
The transmitter 7 transfers the I(EX file to the ROM writer 11 in order to write it into the ROM 10.

なお、本実施例では、ソースファイルは第3図に示した
関数rmain4から推測できるように、C言語により
記述されている。第3図では、リスト1〜リスト3によ
り1つのジョブが構成され、リスト4〜リスト6により
別のジョブが構成されて、これらジョブ毎に別々のEX
EファイルA、EXEファイルBが作成される。この際
、リスト2.5の”too11″、リスト3.6の”t
In this embodiment, the source file is written in C language, as can be inferred from the function rmain4 shown in FIG. In FIG. 3, one job is composed of lists 1 to 3, another job is composed of lists 4 to 6, and a separate EX
E file A and EXE file B are created. In this case, "too11" in List 2.5, "t" in List 3.6
.

o12”は2つのジョブに共通する関数であるので、例
えばEXEファイルBからは削除され、EXEファイル
Aにのみ残されて1本化される。
o12'' is a function common to the two jobs, so it is deleted from, for example, EXE file B, and left only in EXE file A, making it a single function.

次に、プログラム編集動作を説明する。Next, the program editing operation will be explained.

最初に動作概要を第4図のゼネラルフローチャートに従
って説明する。
First, an outline of the operation will be explained according to the general flowchart shown in FIG.

各ソースファイルに重複して存在する共通モジュール(
第1図のりスト2.3.5.6)の関数名(tool 
1.2)を抜出し、共通関数として定義ファイルに書込
み、各ソースファイル等をコンパイルしてオブジェクト
ファイルを作成する(第4図のステップSl)。
Common modules that exist redundantly in each source file (
Figure 1 List 2.3.5.6) Function name (tool
1.2) is extracted and written into a definition file as a common function, and each source file is compiled to create an object file (step Sl in FIG. 4).

この定義ファイルには、本来、関数名だけを持てば充分
であるが、本実施例では第5図のように、r  ext
ern  int  far  関数名 」の形式で記
述している。その理由は、MS−D。
Originally, it would be sufficient to have only the function name in this definition file, but in this embodiment, as shown in Figure 5, r ext
It is written in the format "ern int far function name". The reason is MS-D.

S上のC言語の殆どは、far型関数記述をサポートし
ており、この様な記述をヘッダとして取込むだけで、共
通関数の呼出しをfarアドレスで行えるようにするた
めである。
Most of the C language on S supports far-type function description, and this is because common functions can be called using far addresses simply by incorporating such a description as a header.

そして、各オブジェクトファイルをリンクするに当たり
、共通関数をそのまま残しておくオブジェクトファイル
を決め、このオブジェクトファイルに入出力制御用のサ
ブルーチン等をリンクしてEXEファイルに変換する(
ステップs2)。
Then, when linking each object file, decide which object file will leave the common functions as is, and convert this object file to an EXE file by linking subroutines for input/output control, etc.
Step s2).

そして、定義ファイルに登録された共通関数のライブラ
リを作成する(ステップs3)、なお、このライブラリ
をツールBOXライブラリと呼ぶこととする。
Then, a library of common functions registered in the definition file is created (step s3). This library will be referred to as a tool BOX library.

次に、ツールBOXライブラリを使用して他のオブジェ
クトファイルをEXEファイルに変換する(ステップS
4)、すなわち、ツールBOXライブラリとのリンクに
よって、ツールBOXライブラリに登録された共通関数
と同一の関数の実体は、上記残された同一の共通関数ヘ
ジャンプするためのジャンプ命令に置換えられる。なお
、このジャンプ命令のジャンプ先アドレスは、この時点
では共通関数をROMに展開した際の実アドレスが未確
定であるため、所定のダミーアドレスとなっている。
Next, use the toolbox library to convert other object files to EXE files (step S
4) That is, by linking with the tool BOX library, the entity of the same function as the common function registered in the tool BOX library is replaced with a jump instruction for jumping to the same remaining common function. Note that the jump destination address of this jump instruction is a predetermined dummy address because the actual address when the common function is expanded into the ROM is undetermined at this point.

そして、共通関数を含むEXEファイルを)IEXファ
イルに変換する(ステップS5)、HEXファイルへの
変換処理により共通関数のROM上の実アドレスが確定
するので、この変換処理の際に、上記実アドレスをツー
ルBOXライブラリに登録する。
Then, the EXE file containing the common function is converted into an IEX file (step S5).The actual address on the ROM of the common function is determined by the conversion process to the HEX file. Register in the tool box library.

次に、共通関数を含まないEXEファイルをHEXファ
イルに変換する(ステップS6)。この際、ツールBO
Xライブラリを参照して、上記置換えられたジャンプ命
令の上記ダミーアドレスを実アドレスに変換する。
Next, the EXE file that does not include common functions is converted into a HEX file (step S6). At this time, tool BO
The dummy address of the replaced jump instruction is converted into a real address by referring to the X library.

なお、EXEファイル作成時には、EXEファイル内に
含まれる各関数が、当該EXEフアイルの先頭からどの
位置に有るか、すなわちファイル先頭からのオフセット
アドレスを登録したマツプファイルも同時に作成される
Note that when creating an EXE file, a map file is also created in which the position of each function included in the EXE file is registered from the beginning of the EXE file, that is, the offset address from the beginning of the file is registered.

次に、上記ステップS3におけるツールBOXライブラ
リの作成処理を、第6図を参照しながら詳細に説明する
Next, the tool BOX library creation process in step S3 will be described in detail with reference to FIG.

ライブラリを作成・管理するC言語のfib命令により
、まず、定義ファイルの内容を所定単位で読出し、(第
6図のステップ531)、ファイルエンドであるか否か
を判断する(ステップ532)、その結果、ファイルエ
ンドであれば終了する。
Using the fib command in the C language for creating and managing libraries, the contents of the definition file are first read out in predetermined units (step 531 in Figure 6), and it is determined whether or not the end of the file has been reached (step 532). As a result, if it is the end of the file, it ends.

一方、ファイルエンドでなければ、読出したデータが関
数名であるか否かを判断する(ステップ833)、その
結果、関数名でなければステップS31に戻る。関数名
であれば、インタフェースラベルを作成する(ステップ
534)、このインタフェースラベルは、 (関数名):JMPF  $ (但し°$”は自ファイルのアドレスである旨を示すデ
ータである) の形となっている。
On the other hand, if it is not the end of the file, it is determined whether the read data is a function name (step 833), and as a result, if it is not a function name, the process returns to step S31. If it is a function name, an interface label is created (step 534), and this interface label has the form (function name): JMPF $ (where °$” is data indicating the address of the own file). It has become.

そして、このインタフェースラベルをアセンブルしてツ
ールBOXライブラリに登録しくステ・ノブ535)、
ステップS31に戻る。
Then, assemble this interface label and register it in the tool box library.
Return to step S31.

次に、ステップS5における共通関数を含むEXEファ
イルをHEXファイルに変換する処理を、第7図を参照
しながら詳細に説明する。
Next, the process of converting an EXE file containing a common function into a HEX file in step S5 will be explained in detail with reference to FIG.

ツールBOXライブラリに登録しである共通関数のアド
レスを、マツプファイルから取出し、共通関数だけのマ
ツプテーブルを作成する(第7図のステップ551)。
The addresses of the common functions registered in the tool box library are taken out from the map file, and a map table containing only the common functions is created (step 551 in FIG. 7).

次に、EXEファイルのヘッダ情報を読出し、リロケー
ション項目に関するテーブルを作成する(ステップ55
2)。
Next, the header information of the EXE file is read and a table regarding relocation items is created (step 55).
2).

そして、EXEファイルからデータを読出しくステップ
953) 、ファイルエンドであるか否かを判断する(
ステップ554)、その結果、ファイルエンドであれば
終了する。ファイルエンドでなければ、リロケーション
項目であるか否かを判断する(ステップ555)。リロ
ケーション項目であれば、リロケート処理を行い(ステ
・ノブ556)、ステップS57に進む、リロケーショ
ン項目でなければ、リロケート処理をスキップしてステ
ップS57に進む。
Then, read data from the EXE file (step 953), and determine whether the file has reached the end (step 953).
Step 554), if the result is the end of the file, the process ends. If it is not the file end, it is determined whether it is a relocation item (step 555). If it is a relocation item, a relocate process is performed (step knob 556) and the process proceeds to step S57. If it is not a relocation item, the process skips the relocate process and proceeds to step S57.

ステップS57では、読出したデータがツールBOXラ
イブラリに登録された共通関数であるか否かを判断する
。その結果、登録された共通関数であれば、マツプテー
ブルを参照して、当該共通関数のROM上での実アドレ
スをツールBOXライブラリに登録する(ステップ85
8)、例えば、マツプテーブルに登録された当該共通関
数のオフセットアドレスが100OH番地であり(第8
図(a)参照)、当該共通関数を含むEXEファイルが
ROMの30000)1番地から書込まれる場合には、
当該共通関数の実アドレスとして310008番地を登
録する(第8図(b)参照)。
In step S57, it is determined whether the read data is a common function registered in the tool BOX library. As a result, if the common function is registered, the real address of the common function on the ROM is registered in the tool box library by referring to the map table (step 85).
8), for example, the offset address of the common function registered in the map table is address 100OH (8th
(See figure (a)), if the EXE file containing the relevant common function is written from address 30000)1 of the ROM,
Address 310008 is registered as the real address of the common function (see FIG. 8(b)).

そして、読出したデータをHEXファイルに書込んで(
ステップ559)、ステップ853に戻る。なお、読出
したデータが共通関数でないときは、ステップS58を
スキップしてステップS59に進む。
Then, write the read data to a HEX file (
Step 559), return to step 853. Note that if the read data is not a common function, step S58 is skipped and the process proceeds to step S59.

このように、共通関数を含むEXEファイルをHEXフ
ァイルに変換する際に、共通関数のROM上での実アド
レスがツールBOXライブラリに登録されていく。
In this way, when converting an EXE file containing a common function into a HEX file, the real address of the common function on the ROM is registered in the tool BOX library.

次に、ステップS6における共通関数を含まない他のE
XEファイルをHEXファイルに変換する処理を、第9
図を参照しながら詳細に説明する。
Next, another E that does not include the common function in step S6
The process of converting an XE file to a HEX file is explained in Part 9.
This will be explained in detail with reference to the drawings.

まず、共通関数を含まない他のEXEファイルであって
、HEXファイルへの変換処理がなされていないEXE
ファイルが存在するか否かを判断する(第9図のステッ
プ561)、その結果、上記EXEファイルが存在しな
いときは終了する。
First, let's start with other EXE files that do not contain common functions and have not been converted to HEX files.
It is determined whether the file exists (step 561 in FIG. 9), and if the EXE file does not exist, the process ends.

一方、上記EXEファイルが存在するときは、そのEX
Eファイルのヘッダ情報を読出し、ソロケージジン項目
に関するテーブルを作成する(ステップ562)。
On the other hand, if the above EXE file exists, the EXE file
The header information of the E file is read and a table regarding solo cage items is created (step 562).

そして、当該EXEフアイルからデータを読出しくステ
ップ863)、ファイルエンドであるか否かを判断する
(ステップ564)、その結果、ファイルエンドであれ
ば終了する。ファイルエンドでなければ、リロケーショ
ン項目であるか否かを判断する(ステップ565)、リ
ロケーション項目であれば、リロケート処理を行い(ス
テップ566)、ステップS67に進む、リロケーショ
ン項目でなければ、リロケート処理をスキップしてステ
ップS67に進む。
Then, data is read from the EXE file (step 863), and it is determined whether or not it is the end of the file (step 564). If it is the end of the file, the process ends. If it is not the end of the file, it is determined whether it is a relocation item (step 565). If it is a relocation item, it performs relocation processing (step 566) and proceeds to step S67. If it is not a relocation item, it performs relocation processing. Skip and proceed to step S67.

ステップS67では、読出したデータがツールBOXラ
イブラリに登録された共通関数であるか否かを判断する
。その結果、登録された共通関数であれば、その共通関
数と共に読出されたジャンプ命令のダミーのジャンプ先
アドレス゛°$”を、ツールBOXライブラリに登録さ
れた当該共通関数の実アドレスに書替える(ステップ3
68)。
In step S67, it is determined whether the read data is a common function registered in the tool BOX library. As a result, if it is a registered common function, the dummy jump destination address "°$" of the jump instruction read together with the common function is rewritten to the real address of the common function registered in the tool box library (step 3
68).

そして、読出したデータをHEXファイルに書込んで(
ステップ569)、ステップS61に戻る。
Then, write the read data to a HEX file (
Step 569), return to step S61.

なお、読出したデータが共通関数でないときは、ステッ
プS68をスキップしてステップS69に進む。
Note that if the read data is not a common function, step S68 is skipped and the process proceeds to step S69.

このようにして、共通関数の実体を含まないEXEファ
イルでは、ジャンプ命令のダミーのジャンプ先アドレス
が実アドレスに変換される。
In this way, in an EXE file that does not include the entity of a common function, the dummy jump destination address of the jump instruction is converted into a real address.

従って、受は側のインタラブド関数等を介さずに所望の
共通関数を直ちに実行することができる。
Therefore, the receiver can immediately execute a desired common function without going through an interwoven function or the like on the receiver side.

すなわち、本実施例での共通関数の利用形態を模式的に
示すと第10図のようになり、第13図に示した従来例
と比べてオーバーヘッドが小さくなっている。従って、
ROM容量の節約、処理の迅速化を図ることができる。
That is, the usage pattern of the common function in this embodiment is schematically shown in FIG. 10, and the overhead is smaller than that in the conventional example shown in FIG. 13. Therefore,
It is possible to save ROM capacity and speed up processing.

また、共通関数に一連随を割当てる等の繁雑な操作も省
ける。
Also, complicated operations such as assigning a series of functions to a common function can be omitted.

なお、ツールBOX単独のEXEファイルを作成しても
良い、また、インタフェースラベルは、(関数名)+r
etf とすることも可能である。
It is also possible to create an EXE file for the tool box alone, and the interface label is (function name) + r
It is also possible to set it as etf.

[発明の効果] この発明によれば、1本化された共通モジュールをその
ROM上の実アドレスに基づいて直接実行でき、共通モ
ジュールの1本化を簡単に行え、かつ当該共通モジュー
ルを迅速に実行できるようになる。また、ROM容量を
節約することもてきる。
[Effects of the Invention] According to the present invention, the unified common module can be directly executed based on the real address on the ROM, the common module can be easily unified, and the common module can be quickly executed. become executable. Furthermore, ROM capacity can be saved.

【図面の簡単な説明】 第1図は本発明の機能ブロック図、第2図は実施例のブ
ロック構成図、第3図は編集対象のプログラムファイル
例を示す図、第4図はプログラム編集動作の概要を示す
フローチャート、第5図は定義ファイルの内容例を示す
図、第6図はツールBOXライブラリの作成動作を示す
フローチャート、第7図は共通関数を含むEXEファイ
ルをHEXファイルに変換する変換動作を示すフローチ
ャート、第8図は実アドレスの登録例を説明するための
図、第9図は共通関数を含まないEXEファイルをHE
Xファイルに変換する変換動作を示すフローチャート、
第10図は本実施例での共通関数の利用形態を模式的に
示した図、第11図〜第13図は従来技術を説明するた
めの図である。 l・・・CPU、2・・・ROM、3・・・RAM、8
・・・システムディスク、9・・・ファイルディスク。 第 図 第 図 第 図 第 図 第 図 第 図 第10 図 第 図
[Brief Description of the Drawings] Figure 1 is a functional block diagram of the present invention, Figure 2 is a block diagram of an embodiment, Figure 3 is a diagram showing an example of a program file to be edited, and Figure 4 is a program editing operation. Fig. 5 is a flowchart showing an example of the contents of a definition file, Fig. 6 is a flowchart showing the creation operation of a tool box library, Fig. 7 is a conversion for converting an EXE file containing common functions into a HEX file. Flowchart showing the operation, Figure 8 is a diagram for explaining an example of registering a real address, Figure 9 is an EXE file that does not include common functions.
A flowchart showing a conversion operation for converting to an X file,
FIG. 10 is a diagram schematically showing how the common function is used in this embodiment, and FIGS. 11 to 13 are diagrams for explaining the prior art. l...CPU, 2...ROM, 3...RAM, 8
...System disk, 9...File disk. Figure Figure Figure Figure Figure 10 Figure Figure

Claims (1)

【特許請求の範囲】 複数の実行可能ファイルをリンクしてROM化するため
のROMイメージファイルを作成するプログラム編集装
置において、 複数の実行可能ファイルに重複して存在するモジュール
を1本化する第1の制御手段と、ROMイメージファイ
ル作成の際、上記第1の制御手段により1本化されたモ
ジュールについて、ROM上での実アドレスを登録した
ライブラリを作成する第2の制御手段と、 上記第1の制御手段により1本化のためにモジュールが
削除された実行可能ファイルをROMイメージファイル
に変換する際、上記第2の制御手段にて作成されたライ
ブラリに基づいて、削除されたモジュールの代わりに1
本化されたモジュールの実アドレスを実行先とする命令
を記述する第3の制御手段と、 を備えたことを特徴とするプログラム編集装置。
[Claims] In a program editing device for creating a ROM image file for linking a plurality of executable files and converting them into a ROM, there is provided a first method for combining modules existing redundantly in a plurality of executable files into one. a second control means for creating a library in which real addresses on the ROM are registered for the modules unified by the first control means when creating a ROM image file; When converting an executable file in which a module has been deleted for unification into a ROM image file by the control means, the executable file is converted into a ROM image file in place of the deleted module based on the library created by the second control means. 1
A program editing device comprising: third control means for writing an instruction to be executed at a real address of the converted module.
JP23780590A 1990-09-07 1990-09-07 Program editing device Pending JPH04117523A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23780590A JPH04117523A (en) 1990-09-07 1990-09-07 Program editing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23780590A JPH04117523A (en) 1990-09-07 1990-09-07 Program editing device

Publications (1)

Publication Number Publication Date
JPH04117523A true JPH04117523A (en) 1992-04-17

Family

ID=17020676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23780590A Pending JPH04117523A (en) 1990-09-07 1990-09-07 Program editing device

Country Status (1)

Country Link
JP (1) JPH04117523A (en)

Similar Documents

Publication Publication Date Title
JPH04117523A (en) Program editing device
US5765148A (en) Database processing apparatus and database processing method for variable length objects, and computer-readable memory medium for storing database processing program
JPH02165353A (en) Conversation type data processing system
JPH096981A (en) Drawing production and editing device
JP2613881B2 (en) Automatic creation of shipping documents
JP2720768B2 (en) Program customization equipment
JPH0256666A (en) System for dynamically updating job network unitary control system generating information
JPS62194542A (en) Program control system
JPH0221326A (en) Data sorting system
JPH02148220A (en) Selective copying system for program
JPH036535B2 (en)
JP2000035882A (en) Method for dynamic change of function calling sequence
JPH10105447A (en) Data processor
JPH0390931A (en) Generation of rom transformation program
JP3079825B2 (en) Electronic computer equipment
JPH05282134A (en) Divided load module formation system
JPH01205331A (en) Large-scale program link system
JPH07129408A (en) Executing system for language processing program
JPH07120274B2 (en) How to determine the compatibility of user assets
JPH0458334A (en) Message output selection system
JPH0264744A (en) Fault analyzing information acquiring system
JPH03255547A (en) Memory dump output system
JPH05189212A (en) Linking method
JPH04238532A (en) Sort processing system
JPH06282461A (en) Tracing device