レコード編集

目次


このアプリケーションについて

このアプリケーションはBTRONの実身のレコードを編集するためのアプリケーショ ンです。別の言い方をするといわゆるバイナリエディタです。

このアプリケーションでは以下の事が行えます。


起動方法及び編集する実身の指定方法

レコード編集用紙を原紙箱から持って来て、実行する。

編集する実身を指定するには編集したい実身を指す仮身を他のウィンドウからレ コード編集アプリケーションのウィンドウにドラッグすればよい。

この時現在レコード編集アプリケーションが編集している実身が編集後保存されていない場合は、編集する実身を変更する前に現在の実身を保存するかどうかを指定する 為のパネルが開かれる。

なお、デフォルトでは(原紙箱から持って来た直後)は、自分自身を編集する (「編集ウィンドウ」のタイトルに「(自)」の文字が入っ ている)ようになっている。

注意

一度仮身をドラッグして編集する実身を指定した後は、自分自身の仮身をドラッ グして編集することはできない(エラーパネルがでる)ので注意する事。この場合、 自分自身を編集するには新しくレコード編集用紙を作成して実行し、その中に仮 身をドラッグして編集すれば良い。

このアプリケーションは編集対象の実身の情報をを起動対象実身の中のリンクレ コードとして格納している。従ってこのアプリケーションの実行機能付箋を編集 したい実身に張り付けて実行すると、その実身内のリンクレコードを書換えてし まうので、もともと存在するリンクレコードのデータを破損してしまう恐れがあ る。従って編集対象を指定するには実行機能付箋を張り付けるという方法を使わ ずに必ず仮身をドラッグして行うという方法を使う事。

他のファイルシステム上の実身を編集する事はできない(エラーパネルが出る)。 他のファイルシステム上の実身を編集する場合には、レコード編集用紙を編集し たい実身のあるファイルシステム上にコピーすればそのレコード編集用紙を使っ て編集を行える。


画面の説明と使い方

このアプリケーションを実行すると以下のようなウィンドウが作られる。

[全画面スクリーンショット]

下のウィンドウを 「編集ウィンドウ」、
真中上のウィンドウを 「表示属性設定パネル」、
真中の下のウィンドウを「レコード情報パネル」、
左上のウィンドウを 「データ編集パネル」、
右上のウィンドウを 「TAD検索パネル」、
と呼ぶ。以下各ウィンドウについて説明する。

編集ウィンドウ

メインウィンドウには現在「レコード情報パネル」で選択 されているレコードの内容がダンプして表示されている。

タイトルについて

このウィンドウのタイトルは自動的に「(編集している実身名)の編集」という名 前になる。

ただし、原紙箱から持って来た直後の場合のみ自分自身を編集するという意味で 「(編集している実身名)(自)の編集」という名前になる。

他のウィンドウから仮身をドラッグした場合、編集する実身が変更されるが、こ の時も、編集ウィンドウのタイトル及びこのアプリケーションを実行した仮身の 指す実身名は自動的に「(編集している実身名)の編集」という名前に変更される。

画面の説明

[編集ウィンドウスクリーンショット]

編集ウィンドウには以下の3種類のデータが表示される。左から順に説明する。

アドレスデータ
その行に表示されているレコードのデータの先頭アドレスが表示される。このア ドレスは16進数で表示される。
レコードの実データその1
その行の「アドレスデータ」が表示するアドレスから16バイド分のデータが10進 数又は16進数で表示される。ここに表示されるデータの表示形式は「表示属性設定パネル」の設定に基づいて表示される。詳細は 「表示属性設定パネル」を参照の事。
レコードの実データその2
その行の「アドレスデータ」が表示するアドレスから16バイド分のデータがTRON コード又はASCIIで表示される。ここに表示されるデータの表示形式は「表示属性設定パネル」の設定に基づいて表示される。
表示バイト数が2バイトの時は対応する2バイトのデータが表すTRONコード、1バ イトの時は対応する1バイトのデータが表すASCIIで表示される。なお、ASCIIが 表示される場合、データが0x00〜0x1F及び0x7F〜0xFFの値を取る時には・が表示 される。
詳細は「表示属性設定パネル」を参照の事。

レコードの実データその1及びその2の文字色は通常黒色で表示されるが、「TAD検索パネル」を使ってTADデータを検索した場合、検索 されたTADデータのうち

で表示される。

編集ウィンドウでの操作

編集ウィンドウでは以下の操作を行う事ができる。

カーソル位置の設定
レコードの実データその1又はその2の上でPDをプレスすることによってPDの下に あるデータにカーソルが移動する。
その1で設定した場合は桁もPDの位置によって設定される。
その2で設定した場合はデータの桁は最上位の桁に設定される。
データの選択
レコードの実データその1又はその2の上でPDを0.3秒以上プレスし続ける事によっ て最初にPDをプレスした位置のアドレスからPDのプレスを解除した位置のアドレ スまでのデータを選択することができる。
選択されたデータ範囲のデータには選択枠が表示される。
なお、このときすでにデータが選択されていた場合は、それまでの選択領域が解 除され新たに指定した範囲が選択領域となる。
レコードの実データその1又はその2以外の場所、又はデータのない場所でPDを 0.3秒以上プレスした場合は、なにも選択されず、それまでの選択状態が解除さ れる。

なお、実際のデータの編集は「キーボード」又は「データ編集パネル」によって行うので、そちらを参照するこ と。

表示属性設定パネル

[表示属性設定パネルスクリーンショット]

表示属性設定パネルは「編集ウィンドウ」で表示されるレ コードのデータの表示形式を設定する。

又、「データ編集パネル」の検索データ及び置換データの 設定に影響を及ぼす。こちらについては「データ編集パネル 」を参照の事。

表示進数

設定値レコードの実データその1の表示形式レコードの実データその2
16進数データは16進数で表示される特に影響を与えない
10進数データは10進数で表示される特に影響を与えない

表示バイト数

設定値レコードの実データその1の表示形式レコードの実データその2
2バイトデータは2バイトずつ表示される対応する2バイトのデータが表すTRON文字で表示される
1バイトデータは1バイトずつ表示される対応する1バイトのデータが表すASCII文字で表示される

表示バイト数が2の時は常にデータは2バイト単位で扱われる。

表示バイト数が1バイトの時にレコードサイズが奇数であった場合、表示バイト 数を2バイトに変更するとレコードの最後に内容が0のデータが1バイト追加され、 レコードのサイズが偶数になるように調整されるので注意する事。

表示エンディアン

レコードのデータのエンディアンを指定する。

なお、MCUBEはビッグエンディアンで格納されているが、TAD主データ等のレコー ドは準TAD形式と呼ばれるリトルエンディアンの方式で格納されているため、正 しいデータを見たい場合はここをリトルエンディアンに設定する必要がある。

表示バイト数が1に設定されている場合はこの設定値は表示になんの影響も及ぼ さない。

レコード情報パネル

編集する実身のレコードの情報を表示する。

画面の説明

[レコード情報パネルスクリーンショット]

レコード情報パネルには以下の7種類のデータが表示される。左から順に説明する。

なお、赤い文字で表示されているレコードの内容が「編集ウィ ンドウ」に表示される。

編集済みマーク
そのレコードが編集されており、実際の実身に格納されているレコードのデータ と異なっている場合、*印が表示される。上の図ではレコード番号2のレコードが 編集されている事を示している。
レコードのロック
ここに"L"が表示されている場合はそのレコードはロックされていることを示す。 ロックされているレコードの編集、セーブを行う事は出来ない(セーブの操作を してもセーブされない)。
ロックの設定/解除は、"L"の文字が表示される場所でPDをプレスするか、"L"キー を押す事によって行う事ができる。
レコード番号
その行に表示されるデータのレコード番号が表示される。
レコードタイプ
その行に表示されるデータのレコードタイプが数字で表示される。詳しくは青本 付2-3参照の事。
レコードサブタイプ
その行に表示されるデータのレコードサブタイプが表示される。
レコードサイズ
その行に表示されるデータのレコードサイズが表示される。
レコードタイプの意味表示
その行に表示されるデータのレコードタイプの意味が表示される。詳しくは青本 付2-3参照の事。

レコード情報パネルでの操作

レコード情報パネルでは以下の操作を行う事ができる。

レコードのロックの設定/解除
レコードのロックを表す場所でPDをプレスする事により、そのレコードのロック 属性を設定/解除することができる。
レコードの選択
レコードのロックを表す場所以外でPDをプレスする事により、そのレコードを選 択状態にする事が出来る。選択状態のレコード情報は赤い文字で表示され、「編集ウィンドウ」にはそのレコードの内容が表示される。

データ編集パネル

データ編集パネルは「編集ウィンドウ」で表示されている データの編集等を行うパネルである。

画面の説明

[データ編集パネルスクリーンショット]

一番上の行から順に説明する。

1行目
カーソルのアドレス
1行目の左半分には「編集ウィンドウ」での現在のカーソルのアドレスが16進数で数値ボックスに表示されている。
この数値ボックスにアドレスを16進数で入力することで、カーソルの位置を設定する事が可能である。
レコードサイズより大きいアドレスを入力した場合はレコードの最後のアドレスのデータへカーソルが移動する。
上書き/挿入モード
データをキーボードから入力した時の動作を設定する。
上書きモードの場合キーボードで入力したデータがそのまま上書きされる。
挿入モードの場合、キーボードで任意のアドレスのデータを入力すると、その次のアドレスに内容が「0」のデータが挿入される。
いずれのモードでもレコードの最後のデータの内容を入力した場合その次のアドレスに内容が「0」のデータが追加される。
なお、このモードはキーボードでデータを入力した場合以外には影響を及ぼさない。
2行目

3行目に入力する詮索文字列データの意味を決定する。

TCODE
入力された文字列をTRONコード文字列とみなしてその文字列に対応するTRONコードを検索データとする。
表示属性設定パネル」の表示バイト数が2バイト、かつ表示エンディアンがリトルの場合入力した文字のトロンコードのデータをリトルエンディアンとみなし、2バイト毎にデータをひっくり返して検索データを設定する。
ASCII
入力された文字列をASCIIコードとみなしてその文字列に対応するASCIIコードを検索データとする。
なお、0x00〜0x1f及び、0x7f〜0xffを表すASCII文字はないので、それらのデータをこのモードを使って検索する事はできない。
16進
入力された文字列を16進数とみなしてその数字に対応する数字を検索データとす る。
10〜15の数字にはa〜f又はA〜Fを使用する。又、1バイトを2文字で表すが、各バ イトとバイトの間には何もはさまず、連続して入力する。
表示属性設定パネル」の表示バイト数が2バイト、かつ表示エンディアンがリトルの場合入力した16進データを先頭から2バイト(4文字)毎に区切り、そのデータをリトルエンディアンとみなし、2バイト毎にデータをひっくり返して検索データを設定する。
入力されたデータの文字数が奇数だった場合は最後に0があるものとみなす。例えば123と入力した場合は1230と入力されたものとみなす。
表示バイト数が2の時に入力されたデータのバイト数(文字数/2)が奇数だった場合、最後の1バイト(2文字)は削られる。
10進
入力された文字列を10進数とみなしてその数字に対応する数字を検索データとす る。
数字と数字の間はスペースで区切って入力する。
表示属性設定パネル」の表示バイト数が2バイトの場合、数値として0〜65535を入力でき、入力されたデータを2バイトのデータとみなす。
表示バイト数が1バイトの場合、数値として0〜255を入力でき、入力されたデー タを1バイトのデータとみなす。
表示バイト数が2バイト、かつ表示エンディアンがリトルの場合入力した数字のデータをリトルエンディアンとみなし、2バイト毎にデータをひっくり返して検索データを設定する。

なお、モードを変更すると、3行目のテキストボックス内の文字列データはクリ アされる。

3行目
コピー
3行目の左半分の「コピー」ボタンを押すと「編集ウィンドウ 」で現在選択中のデータが2行目のモードに対応した形で3行目の右のテキス トボックスにコピーされる。
この時データがテキストボックスに入り切らなかった場合は(最大32文字)足りな かった分のデータはカットされる。
なにも選択されていなかった場合はなにも起こらない。
検索文字列
ここに文字列を入力するとその文字列が2行目のモードに応じて解釈され検索デー タに変換される。どのように変換されるかは2行目の説明を参照の事。
変換できない文字を入力した場合はエラーパネルが表示され、実際の検索データ は変化しない。
表示属性設定パネル」の内容を変更した場合はそのつど、 その時点でのテキストボックス内のデータを元に検索データを計算し直す。
4行目
前検索
3行目で設定された検索データを「編集ウィンドウ」で表 示されているレコードの現在のカーソルの位置から遡って検索する。
次検索
3行目で設定された検索データを「編集ウィンドウ」で表 示されているレコードの現在のカーソルの位置から順に検索する。
先頭から
3行目で設定された検索データを「編集ウィンドウ」で表 示されているレコードの先頭から順に検索する。

いずれの場合も検索データと一致するデータが発見できた場合は編集ウィンドウのカーソルがその位置へ設定され、発見されたデータが新たな選択領域となる。

発見されなかった場合はその旨をパネルに表示なにも行わない。

5、6行目

5、6行目は検索ではなく置換データに関するデータを設定する為のものである点 を除いて2、3行目のものと同じである。

なお、「編集ウィンドウ」で表示されているレコードがロッ クされている場合はこの部分の操作を行う事はできない。

7行目

編集ウィンドウ」で表示されているレコードがロッ クされている場合はこの部分の操作を行う事はできない。

置換/検索
現在の選択領域のデータを6行目で設定された置換データのそれと置換し、その 後置換されたデータの先頭アドレスから順に検索データを検索する。
選択領域が存在しない場合、カーソルの位置から置換データのバイト数だけデー タを置換する。
検索によってデータが発見された場合の挙動は4行目の検索に関するボタンを押 した時のものと同じである。
検索によってデータが発見できなかった場合はカーソルは置換されたデータの先 頭アドレスに設定され、選択領域は置換されたデータの範囲に設定される。
置換
現在の選択領域のデータを6行目で設定された置換データのそれと置換する。
選択領域が存在しない場合、カーソルの位置から置換データのバイト数だけデー タを置換する。
置換後はカーソルは置換されたデータの先頭アドレスに設定され、選択領域は置 換されたデータの範囲に設定される。
挿入
現在のカーソルの指すアドレスに6行目で設定された置換データを挿入する。
挿入後はカーソルは挿入されたデータの先頭アドレスに設定され(結果として変 化しない)、選択領域は置換されたデータの範囲に設定される。
削除
現在の選択領域のデータを削除する。
カーソルは削除されたデータの先頭アドレスに設定され、選択領域は解除される。
選択領域が存在しない場合はなにも行わない。
8行目

キーボードからデータを入力する際のキーの配置を設定する。

通常
キーボードの文字の通りの入力を行う。なお、日本語入力モードになっていても A〜Fに対応するキーを押すとちゃんとその文字が入力される。
疑似テンキー(注:トロンキーボード用の機能です。通常のキーボードを使っている方は無視して下さい)
キーボードの一部をテンキーと見立てて入力を行う。
具体的には以下のようになっている。なお、日本語入力モードになっていても入 力は可能である。
トロンキーボードの右半分

6789   789A
FGCR → 456B
DHTN   123C
BMWV   0FED

TAD検索パネル

TAD編集パネルは「編集ウィンドウ」で表示されている データの中からTADセグメントデータを検索し、検索したデータを色をつけて 表示するものである。

なお、当然の事ではあるが、TAD主レコード以外のレコードではこの機能はほと んど無意味である。

TADセグメントデータについては青本付録2章を参照のこと。

画面の説明及び操作方法

[TAD検索パネルスクリーンショット]

レコード情報パネルには以下のデータが表示される。上の行から順に説明する。

1行目

現在編集ウィンドウで色付きで表示されているTADセグメ ントデータ(以後「選択TADデータ」と呼ぶ。選択枠で囲まれ、検索や置換の対象 となる選択領域とは異なるので注意する事)のレコードの先頭からの番号-1(以後 「選択TAD番号」と呼ぶ)と、そのレコードに存在するTADセグメントの数-1が「/」で分けられて表示されて いる。

選択TAD番号が-1の場合、現在編集ウィンドウに選択TADデータが存在しない事を 示す。

選択TAD番号は数値ボックスで表示されており、PDでプレスする事により値の編 集を行う事ができる。

選択TAD番号の値を編集をした場合、番号に対応するTADセグメントデータが新た な選択TADデータとなり、以下の動作が行われる。

2行目

選択TADデータのアドレスを16進数で表示する。選択TADデータが存在しない場合、 「00000〜00000」と表示される。

3行目

選択TADデータのセグメントID及びセグメントタイプ(青本付録2-7等を参照のこ と)を表示する。選択TADデータが存在しない場合はIDに「00」、セグメントタイ プに「−−−−−−」と表示される。

セグメントタイプは表示の都合上先頭の6文字のきりのいいところまでのみ表示 しているので注意する事。

4行目

選択TADデータのデータ部のサイズ(総サイズでないことに注意)を表示する。

5行目

5行目の3つのボタンをプレスする事によって選択TADデータが以下のように変化する。

選択TADデータが存在する選択TADデータが存在しない
一つ前現在の選択TADデータの一つ前のTADセグメントデータを選択 TADデータとする現在のカーソルの位置より前にあるTADセグメントデータを 選択TADデータとする
現在値変化しないが、カーソルや選択領域は変更される選択領 域が存在する場合、それが解除される以外は何も行わない。
一つ後現在の選択TADデータの一つ後のTADセグメントデータを選択 TADデータとする現在のカーソルの位置より後にあるTADセグメントデータを 選択TADデータとする

選択TADデータが存在しない時に現在値ボタンを押した場合以外では、カーソル 及び選択領域に対して選択TAD番号に対して編集を行った場合と同様の動作が行 われる。

なお、カーソルのアドレスが0であるときのみ、一つ後のボタンを押すと一番最 初のTADセグメントデータが選択TADデータとなる。

6行目
選択ボタン
現在のカーソルがTADセグメントデータの一部にある場合、そのTADセグメントデー タを新たな選択TADデータにし、カーソルや選択領域に対して選択TAD番号に対し て編集を行った場合と同様の動作を行う。
現在のカーソルがTADセグメントデータの一部にない場合選択TADデータ及び選択 領域を解除する。
再計算ボタン
このアプリケーションは編集するレコードを変更する度に変更したレコードの TADセグメントの情報を計算している。従ってレコードの編集を行ってしまうと、 TAD検索パネルで正しくTADデータを検索できなくなることがある。
このボタンはレコード編集後にそのレコードのTADセグメントを正しく検索でき るよう、レコードのTADセグメントの情報を現在のレコードの内容で計算しなお すものである。
中止
選択TADデータを解除する

キー入力について

キー入力によってレコードにデータが挿入、削除された場合、選択領域は解除さ れるので注意する事。

0〜9、A〜F

対応するデータを「編集ウィンドウ」のレコードの実デー タその1のカーソルの位置へ入力する。

なお、「データ編集パネル」の入力モードによってそれぞ れの数字を表すキーの位置が異なるので注意すること。

入力の結果レコードの実データその1のカーソルの位置が一桁右へ移動する。カー ソルが一の桁にある時入力を行うと、カーソルは次のアドレスの最上位桁へ移動 する。

このとき挿入モードであった場合は次のアドレスに0が挿入される。

カーソルがレコードの最後のアドレスにあった場合は次のアドレスに0が追加さ れ、それに応じてレコードのサイズか拡張される。

空白

現在のカーソルのアドレスに表示バイト数だけ内容が0のデータを挿入する。

レコードがロックされている場合はなにも行われない。

一字消し

現在のカーソルのアドレスのデータを表示バイト数だけ削除する。

レコードがロックされている場合はなにも行われない。

カーソルの移動

以下の矢印による操作で特に記していない場合は、カーソルのアドレスが変わっ た場合はレコードの実データ1のカーソルの位置は最上位の桁に設定されるもの とする。

カーソルの位置を左へ一桁分移動する。カーソルが最上位桁にある場合はカーソ ルのアドレスを表示バイト数分だけ減らす。レコードの実データその1のカーソ ルはそのアドレスの最下位の桁へ設定される。これによってアドレスを0未満に することはできない(キー入力が無視される)。
カーソルの位置を右一桁分移動する。カーソルが最下位桁にある場合はカーソル のアドレスを表示バイト数分だけ増やす。
レコードがロックされている場合、これによってアドレスがレコードのサ イズを越える事はできない(キー入力は無視される)。
レコードがロックされていない場合、これによってアドレスがレコードのサイズ を越えた場合、レコードの末尾に表示バイト数分だけ内容が0のデータが追加される。
カーソルの位置を16バイトだけ減らす。
これによってアドレスを0未満にすることはできない(カーソルのアドレスがすで に0の場合はキー入力が無視される、そうでない場合はカーソルのアドレスが0に 設定される)。
SHIFT+↑
カーソルの位置を64バイトだけ減らす。
カーソルの位置を16バイトだけ増やす。
これによってアドレスがレコードのサイズを越えることはできない(カーソルの アドレスがすでにレコードの最後のアドレスにある場合はキー入力が無視される、 そうでない場合はカーソルのアドレスがレコードの最後のアドレスに設定される)。
SHIFT+↓
カーソルの位置を64バイトだけ増やす。

その他

L
現在編集しているレコードのロック属性を設定/解除する。

ショートカット

ショートカットにある機能はすべてメニューを使って実行する事が可能である。

Ctrl-E
アプリケーションを終了する。終了時に編集中のレコードが存在していた場合、 それらのレコードを保存するかどうか確認するパネルが表示される。
Ctrl-S
編集されていてロックされていないレコードをすべて保存する。保存されたレコー ドの編集マークは解除される。
Ctrl-1
表示属性設定パネル」を消去/作成する。
Ctrl-2
レコード情報パネル」を消去/作成する。
Ctrl-3
データ編集パネル」を消去/作成する。
Ctrl-4
TAD検索パネル」を消去/作成する。

メニューについて

終了

アプリケーションを終了する。終了時に編集中のレコードが存在していた場合、 それらのレコードを保存するかどうか確認するパネルが表示される。

Ctrl-Eのショートカットでも同じ動作が行われる。

保存

作業中のレコードを保存。
現在「編集ウィンドウ」で編集中のレコードのみ保存する。 保存されたレコードの編集マークは解除される。
全てのレコードを保存
編集されていてロックされていないレコードをすべて保存する。保存されたレコー ドの編集マークは解除される。
Ctrl-Sのショートカットでも同じ動作が行われる。

表示

表示属性設定パネル
表示属性設定パネル」を消去/作成する。
Ctrl-1のショートカットでも同じ動作が行われる。
レコード情報パネル
レコード情報パネル」を消去/作成する。
Ctrl-2のショートカットでも同じ動作が行われる。
データ編集パネル
データ編集パネル」を消去/作成する。
Ctrl-3のショートカットでも同じ動作が行われる。
TAD検索パネル
TAD検索パネル」を消去/作成する。
Ctrl-4のショートカットでも同じ動作が行われる。
最描画
全てのウィンドウを最描画する。

バージョン表示

現在のバージョンを表示する。

ウィンドウ

選択したウィンドウをアクティブにする。

小物

選択した小物を実行する。


エラーメッセージについて

エラーが起きた場合、パネルが開いてエラーメッセージを表示する。 現在エラーメッセージに関してはまだ一部のみしか実装されていない。


戻る