| luna88k | … LUNA88K
@@ -297,8 +292,7 @@ If real, synchronize with the r
if virtual, synchronize with the virtual time.
The default is real.
This feature is under experimentation and may be changed in the future
-without notice.
-
+without notice.
debugger-port = integer
デバッガの TCP 待ち受けポート番号を指定します。
0 なら待ち受けを行いません。
@@ -312,6 +306,17 @@ The default is 0.
形式で指定します。
auto なら自動的に決定します。
デフォルトは auto です。
+hostkbd-input = string
+ホストキーボードの入力モードを指定します。
+char ならキャラクタ入力モード、
+jp なら日本語キーボードモードです。
+デフォルトは char です。
+詳細は VM について の章を参照してください。
+Specifies the input mode of the host keyboard.
+char means the character mode,
+jp means the Japanese keyboard mode.
+The defualt is char.
+See About VM for details.
hostnet-driver = string
イーサネットデバイスのホスト側ドライバを指定します。
afpacket、bpf、tap のうち
@@ -384,8 +389,7 @@ In all cases, you need to prepare two sh
nono-ifup and nono-ifdown in the VM directory or
its parent directory.
Even if you don't have anything to do in these scripts,
-you need to prepare empty scripts that will terminate successfully.
-
+you need to prepare empty scripts that will terminate successfully.
hostnet-fallback = integer
hostnet-driver で指定したドライバが使用可能でなかった時、
0 ならプロセスを終了します。
@@ -468,8 +472,7 @@ DIPSW#2 が "11111111" なら
if the DIPSW#2 is "11111111".
Otherwise, the bootloader will enter interactive mode.
(I doubt that they actually wanted to switch with only #8)
-
-
+
monitor-rate = integer
テキスト系モニタウィンドウの更新頻度を Hz 単位で指定します。
1 から 60 までの間で指定でき、デフォルトは 20Hz です。
@@ -477,8 +480,7 @@ Otherwise, the bootloader will enter int
Specifies refresh rate of all text monitor windows in Hz.
It ranges from 1 to 60. The default is 20Hz.
You can change this value on GUI menu after boot,
-but unlike this configuration value, there are only a few preset choices.
-
+but unlike this configuration value, there are only a few preset choices.
mpu-clock = value
MPU のクロック数を MHz 単位で指定します。
デフォルトは LUNA-I なら 20MHz、LUNA88K なら 25MHz です。
@@ -515,8 +517,7 @@ The default value is empty.
nono 内蔵のなんちゃって下位互換 ROM で起動します。
If you does not have the real LUNA machines,
you can boot with nono's internal downward compatible emulated ROM
-if you set this field empty (or leave it as the default).
-
+if you set this field empty (or leave it as the default).
LUNA-I 実機を持っている場合は
ROM ファイルを指定することで実機 ROM で起動できます。
@@ -528,16 +529,14 @@ you can boot with the real ROM spcifying
The ROM file is extracted from 0x41000000-0x4101ffff (128KB) of
the real LUNA-I machine.
For now, only V4.22 (Thu Jul 27 11:45:42 1989) is supported.
-I have no idea about other ROMs.
-
+I have no idea about other ROMs.
LUNA88K 実機の場合は 0x41000000-0x4103ffff (256KB) を保存したものです。
今のところ ROM は version 1.20 のみサポートしています。
For LUNA88K,
the ROM file is extracted from 0x41000000-0x4103ffff (256KB).
-For now, only version 1.20 is supported.
-
+For now, only version 1.20 is supported.
ram-size = integer
搭載する RAM サイズを MB 単位で指定します。
LUNA-I のデフォルトは 16MB です。
@@ -554,16 +553,14 @@ If larger, you can specify up to 255MB i
By the way, NetBSD/luna68k needs at least 8MB to boot.
On LUNA88K, the default is 64MB.
If the size is less than 64MB, you can specify in 16MB unit.
-If larger, you can specify up to tentative 255MB in 1MB unit.
-
+If larger, you can specify up to tentative 255MB in 1MB unit.
show-statuspanel = integer
ステータスパネルを表示するかどうかを指定します。
0 なら非表示、1 なら表示です。
起動後はメニューから変更可能です。
Specifies whether to display the status panel or not.
If 0, it is hidden; if 1, it is shown.
-You can change it on GUI menu after boot.
-
+You can change it on GUI menu after boot.
spc0-idN-image = devtype[,path]
SCSI デバイスとイメージを指定します。キーの N には 0 から 7 が入ります。
ただし ID 7 は本体が使用しますので指定しないでください。
@@ -575,8 +572,7 @@ Specifies SCSI device and image. N
But don't specify ID 7 because the host uses it.
The value is in a form of device type devtype and
the disk image path path separated by ","(comma).
-devtype can be one of the following:
-
+devtype can be one of the following:
- hd … HD drive
- cd … CD-ROM drive
@@ -590,8 +586,7 @@ the disk image path path separate
If devtype is hd, path cannot be ommitted.
If devtype is cd or mo, path can be ommitted.
-If the path is relative path, it is from the VM directory.
-
+If the path is relative path, it is from the VM directory.
例えば、nono.cfg と同じディレクトリに置いた sd0.img を
@@ -619,8 +614,7 @@ spc0-id4-image = mo
Currently, the default value is 0
(This may be something like SSD :-).
If you specify about 16 or so, you can feel nostalgic,
-but this feature is still unstable.
-
+but this feature is still unstable.
spc0-idN-writeignore = integer
指定の SCSI HD デバイスへの書き込みを無視するかどうか指定します。
0 なら通常動作(書き込みを行う)です。
@@ -653,23 +647,22 @@ clear the write permission from the imag
このオプションは開発用です。
Obsolete.
Use spc0-idN-writeignore instead.
-This option is for developers.
-
+This option is for developers.
-VM について About VM
-ステータスパネル Status Panel
+4. VM について About VM
+4.1. ステータスパネル Status Panel
ステータスパネル中央にあるパフォーマンスメータのアイコンは
高速モードの状態を表示しています。
ダブルクリックすると高速/等速モードの指定を切り替えることができます。
The performance meter's icon at the center of the status panel
shows the VM speed status.
-You can switch full speed / syncronized mode by double-clicking on this icon.
-
+You can switch full speed / syncronized mode by double-clicking
+on this icon.
@@ -680,30 +673,308 @@ You can switch full speed / syncronized
the user has specified syncronized mode and
the VM is running in synchronized mode.
-
+
| …
|
-三角2つの場合、ユーザが高速モードを指定していて、等速モードで実行中です。
-キー入力中(後述)または VM がアイドル状態(m68k の STOP 命令)などで起きます。
+三角3つの場合、ユーザが高速モードを指定していて、高速モードで実行中です。
高速モード中はパーセントではなく何倍速で動作しているかを表します。
-When an icon (two triangles) is displayed,
+When an icon (three triangles) is displayed,
the user has specified full speed mode and
-the VM is running in synchronized mode.
-This will happen during keystrokes (see below) or when the VM is idle
-(STOP instruction on m68k).
-
+the VM is running in full speed mode.
-
+
| …
|
-三角3つの場合、ユーザが高速モードを指定していて、高速モードで実行中です。
-When an icon (three triangles) is displayed,
+三角2つの場合、ユーザが高速モードを指定していて、等速モードで実行中です。
+以下のいずれかの状態で起きます。
+When an icon (two triangles) is displayed,
the user has specified full speed mode and
-the VM is running in full speed mode.
+the VM is running in synchronized mode.
+This will happen when any of the following occurs:
+
+- キー押下中(後述)あるいはキーボードブザー発声中
+
When any keys are pressed (see below),
+or the keyboard buzzer is sounding.
+- STOP instruction on m68k.
+
- pseudo STOP state on m88k.
+
| | | | |
-キー入力 Key input
+4.2. キー入力モード Key input mode
+
+LUNA のキーボードは通常日本語キーボードです
+(英語キーボードも存在するようですが…)。
+そのため、ホストが日本語キーボードの場合とそうでない場合のために
+2つの入力モードを用意しています。
+どちらも一長一短があります。
+ Most LUNAs have the Japanese keyboard
+(though I ever heard there are the US keyboard...).
+So nono provides two input modes
+for Japanese keyboard users and non Japanese keyboard users.
+Both have advantages and disadvantages.
+
+JP キーボードモードは、ホストが日本語キーボードであることを前提に
+対応するキーの押下、開放をその都度 VM に入力します。
+メリットとしては動作が実機に近くなり、
+特にキーリピート(をハードウェアが行わないこと)も忠実に再現可能です。
+デメリットは ALT + TAB やアクセラレータキーでメニューを開く場合などに
+キー入力が残ることがあることです
+(キーを押した後でフォーカスが外れるとキーを離したことが
+アプリケーションに通知されないため)。
+またホストが日本語キーボードでなければ使いづらいです。
+JP keyboard mode assumes that the host uses the Japanese keyboard.
+Each time you presses and releases a key,
+nono sends the corresponding key-pressed or key-released to the VM.
+One advantage is that it's close to the real machine behavior,
+and another is that it can reproduce
+the LUNA keyboard itself does not perform a key repeat.
+On the other hand,
+one disadvantage is that key sometimes remains pressed,
+especially when you enter ALT + TAB to switch the application
+or enter accelerator key to open the menu
+(If the application loses the focus after the key is pressed,
+the application will not receive the subsequent key release).
+And another disadvantage is that
+it will be hard to use for non Japenese keyboard users.
+
+一方、キャラクタ入力モードは、ホストから入力された「文字」を
+再び LUNA のキーコードに解釈し直して VM に入力するモードです。
+例えばゲスト OS に "@" を入力したい場合、
+US キーボードなら [SHIFT] + [2] を、
+JP キーボードなら [@] キーを押しますが、
+どちらも VM には [@] キーの押下、[@] キーの開放が連続して送られます。
+US キーボードで [SHIFT] を押したことは通知されません。
+逆に "=" を入力したい場合、
+US キーボードなら [=] キーを、
+JP キーボードなら [SHIFT] + [-] を押しますが、
+どちらも VM には
+[SHIFT]押下 → [-]押下 → [-]開放 → [SHIFT]開放のシーケンスが送られます。
+このようにホストキーボードのレイアウトによらず、
+入力したい文字が入力できるようになり、
+通常のタイピングで困ることはないと思います。
+デメリットは、通常の文字入力以外のタイピングはほぼ出来ないことです。
+[SHIFT] キーを押したままにすることや、
+文字が入力できないキーの組み合わせは入力出来ません。
+もう一つのデメリットはキーリピート(をハードウェアが行わないこと)が再現できず、
+ホスト側のキーリピートが効いてしまうことです
+(本来キーリピートが動作しない ROM やブートローダでもキーリピートが効くことは
+一般ユーザからはメリットに感じられるかも知れませんが)。
+In contrast, in the character mode, when you type a character,
+nono re-converts it into the LUNA's key code and sends it to the VM.
+For example if you want to type "@" in the guest OS,
+you would press [SHIFT] + [2] on the US keyboard or [@] on the JP keyboard.
+In both cases, the sequence of
+[@]-pressed and [@]-released will be sent to the VM.
+Note that the fact that you pressed [SHIFT] key on the US keyboard
+will not be sent to the VM.
+Another example, if you want to type "=",
+you would press [=] on the US keyboard or [SHIFT] + [-] on the JP keyboard.
+In both cases, the sequence of
+[SHIFT]-pressed, [-]-pressed, [-]-released, and [SHIFT]-released
+will be sent to the VM.
+Thus, you can type what character you want to type,
+regardless of your keyboard layout.
+Of course there are some disadvantages.
+Firstly, it's hard to type any special characters,
+for example, you can not type any key conbinations
+that don't generate a character.
+Or you can not hold [SHIFT] key pressed.
+Secondly, the key repeat works (by the host),
+even though it should not work as a correct emulation
+(Although some of you may feel it an advantage).
+
+
+4.3. キャラクタ入力モードのキーコード対応表
+Keycode table in the character mode
+
+キャラクタ入力モードでの、ホストから入力した文字と
+VM に送信されるキーの対応は次の通りです。
+ファンクションキーとカーソルキーは文字ではありませんが
+特別に対応しています。
+HostChar が N/A で示してあるキーはソフトウェアキーボードからのみ入力できます。
+ The following table shows the correspondence between
+the character that typed from the host
+and the key that will be sent to the VM.
+nono can recognize the function keys and arrow keys.
+The keys where the HostChar is N/A can
+only be typed from the software keyboard window.
+
+
+
+
+| HostChar | GuestKey
+ |
|---|
| a 〜 z | [A] 〜 [Z]
+ | | 0 〜 9 | [0] 〜 [9]
+ | | SPACE | [SPACE]
+ | | - | [-]
+ | | ^ | [^]
+ | | \ | [\]
+ | | @ | [@]
+ | | [ | [[]
+ | | ; | [;]
+ | | : | [:]
+ | | ] | []]
+ | | , | [,]
+ | | . | [.]
+ | | / | [/]
+ | | ^@ | [CTRL]+[@]
+ | | ^A 〜 ^Z | [CTRL]+[A] 〜 [CTRL]+[Z]
+ | | ^[ | [ESC]
+ | | ^\ | [CTRL]+[\]
+ | | ^] | [CTRL]+[]]
+ | | ^^ | [CTRL]+[^]
+ | | ^_ | [CTRL]+[_]
+ | | ^H | [BS]
+ | | ^I | [TAB]
+ | | ^M | [Enter]
+ |
+
+| HostChar | GuestKey
+ |
|---|
| A 〜 Z | [SHIFT]+[A] 〜 [SHIFT]+[Z]
+ | | ! | [SHIFT]+[1]
+ | | " | [SHIFT]+[2]
+ | | # | [SHIFT]+[3]
+ | | $ | [SHIFT]+[4]
+ | | % | [SHIFT]+[5]
+ | | & | [SHIFT]+[6]
+ | | ' | [SHIFT]+[7]
+ | | ( | [SHIFT]+[8]
+ | | ) | [SHIFT]+[9]
+ | | = | [SHIFT]+[-]
+ | | ~ | [SHIFT]+[^]
+ | | | | [SHIFT]+[\]
+ | | ` | [SHIFT]+[@]
+ | | { | [SHIFT]+[[]
+ | | + | [SHIFT]+[;]
+ | | * | [SHIFT]+[:]
+ | | ] | [SHIFT]+[]]
+ | | < | [SHIFT]+[,]
+ | | > | [SHIFT]+[.]
+ | | ? | [SHIFT]+[/]
+ | | _ | [SHIFT]+[_]
+ |
+
+| HostChar | GuestKey
+ |
|---|
| F1 〜 F10 | [PF1] 〜 [PF10]
+ | | ↑ | [↑]
+ | | ← | [←]
+ | | → | [→]
+ | | ↓ | [↓]
+ | | N/A | [確定]
+ | | N/A | [前面]
+ | | N/A | [CAP]
+ | | N/A | [かな]
+ | | N/A | [変換]
+ | | N/A | [消去]
+ | | N/A | [呼出]
+ | | N/A | [文節←]
+ | | N/A | [文節→]
+ | | N/A | Numpad[0]〜[9]
+ | | N/A | Numpad[+]
+ | | N/A | Numpad[-]
+ | | N/A | Numpad[*]
+ | | N/A | Numpad[/]
+ | | N/A | Numpad[=]
+ | | N/A | Numpad[.]
+ | | N/A | Numpad[Enter]
+ |
+
+
+
+4.4. JP キーボードモードのキーコード対応表
+Keycode table in the JP keyboard mode
+
+JP キーボードモードでの、ホストキーと VM に送信されるキーの対応は次の通りです。
+HostKey が N/A で示してあるキーは
+ソフトウェアキーボードからのみ入力出来ます。
+ The following table shows the correspondence between
+the host key and the guest key.
+The keys where the HostKey is N/A can only be enter from
+the software keyboard window.
+
+
+
+| HostKey | GuestKey
+ |
|---|
| [0] 〜 [9] | [0] 〜 [9]
+ | | [A] 〜 [Z] | [A] 〜 [Z]
+ | | [-] | [-]
+ | | [^] | [^]
+ | | [\] | [\]
+ | | [@] | [@]
+ | | [[] | [[]
+ | | [;] | [;]
+ | | [:] | [:]
+ | | []] | []]
+ | | [,] | [,]
+ | | [.] | [.]
+ | | [/] | [/]
+ | | [_] | [_]
+ |
+
+| HostKey | GuestKey
+ |
|---|
| [ESC] | [ESC]
+ | | [TAB] | [TAB]
+ | | [CTRL] | [CTRL]
+ | | [BS] | [BS]
+ | | [Enter] | [Enter]
+ | | [F1] 〜 [F10] | [PF1] 〜 [PF10]
+ | | [DEL] | Numpad[DEL]
+ | | Numpad[0]〜[9] | Numpad[0]〜[9]
+ | | Numpad[+] | Numpad[+]
+ | | Numpad[-] | Numpad[-]
+ | | Numpad[*] | Numpad[*]
+ | | Numpad[/] | Numpad[/]
+ | | Numpad[=] | Numpad[=]
+ | | Numpad[.] | Numpad[.]
+ | | Numpad[Enter] | Numpad[Enter]
+ |
+
+| HostKey | GuestKey
+ |
|---|
| [SHIFT-L] | [SHIFT-L]
+ | | [SHIFT-R] | [SHIFT-R]
+ | | [↑] | [↑]
+ | | [←] | [←]
+ | | [→] | [→]
+ | | [↓] | [↓]
+ | | N/A | [確定]
+ | | N/A | [前面]
+ | | N/A | [CAP]
+ | | N/A | [かな]
+ | | N/A | [変換]
+ | | N/A | [消去]
+ | | N/A | [呼出]
+ | | N/A | [文節←]
+ | | N/A | [文節→]
+ |
+
+
+
+4.5. キーリピート Key Repeat
LUNA では、キーボードがハードウェア側でキーリピートを行わず、
ソフトウェア(OS など)がキーリピートの処理を行います。
@@ -721,8 +992,7 @@ VM が高速動作するとキーリピ
(ALT + TAB やアクセラレータキーでメニューを開くと起きがちです)
高速モードが抑制されたままということが起きえます。
その場合はソフトウェアキーボードからキー入力を解除するなどしてください。
-
-On LUNA,
+On LUNA,
key repeat is done by software(OS), not by the keyboard hardware.
For this reason,
key repeat doesn't occur on LUNA's PROM or NetBSD/luna68k's bootloader
@@ -737,22 +1007,19 @@ while any keys are pressed.
That is why the above-mentioned icon distinguishes them.
If keys continue to be pressed for some reasons,
the VM also continues to run syncronized mode.
-In this case, you can resolve it by using the software keyboard window.
-
+In this case, you can resolve it by using the software keyboard window.
-実行してみる Try it
-NetBSD/luna68k を実行してみる Try NetBSD/luna68k
+5. 実行してみる Try it
+5.1. NetBSD/luna68k を実行してみる Try NetBSD/luna68k
つついさんが NetBSD/luna68k 9.2 の liveimage を用意されています。
Tsutsui-san has provided a liveimage of NetBSD/luna68k 9.2.
-- https://twitter.com/tsutsuii/status/1262429647364427783
-- https://twitter.com/tsutsuii/status/1405206240913805313
+- https://twitter.com/tsutsuii/status/1436381589211017217
ここではこれを起動してみます。 Let's try it.
@@ -768,8 +1035,8 @@ VM ディレクトリ ~/nono/luna/ に
Download imagefile from the following link,
extract it and place it in the VM directory, ~/nono/luna/.
-http://teokurebsd.org/netbsd/liveimage/20210614-luna68k/
+http://teokurebsd.org/netbsd/liveimage/20210910-luna68k/
以下の内容の設定ファイル nono.cfg を VM ディレクトリ ~/nono/luna/
@@ -782,7 +1049,7 @@ By the way, to simplify the explanation,
However, please configure the network if necessary.
vmtype = luna
-spc0-id6-image = hd,liveimage-luna68k-raw-20210614.img
+spc0-id6-image = hd,liveimage-luna68k-with-packages-20210910.img
hostnet-driver = none
@@ -808,7 +1075,7 @@ x⏎
You will see a screen like this. The bold text indicates
the characters you need to enter.
-NONO 0.2.0 Emulated ROM Monitor for LUNA-I
+NONO 0.2.3 Emulated ROM Monitor for LUNA-I
** NVRAM Initialized.
@@ -838,8 +1105,7 @@ In addition, after the first login, you
This is because the infamous makemandb(8) runs heavily in the background
for a looooong time.
It's very sad to me that these two accidents which are far from the ideal
-are the first experiences of a newcomer.
-
+are the first experiences of a newcomer.
終了する時は root
ユーザで “shutdown -p now” を実行してください。
@@ -851,13 +1117,13 @@ and nono will terminate when the VM is p
-OpenBSD/luna88k を実行してみる Try OpenBSD/luna88k
+5.2. OpenBSD/luna88k を実行してみる Try OpenBSD/luna88k
-あおやまさんが OpenBSD/luna88k 6.9 の liveimage を用意されています。
- Aoyama-san has provided a liveimage of OpenBSD/luna88k 6.9.
+あおやまさんが OpenBSD/luna88k 7.0-beta の liveimage を用意されています。
+ Aoyama-san has provided a liveimage of OpenBSD/luna88k 7.0-beta.
-- https://twitter.com/ao_kenji/status/1404784588015112192
+
- https://twitter.com/ao_kenji/status/1439351714033766402
ここではこれを起動してみます。 Let's try it.
@@ -868,10 +1134,10 @@ and nono will terminate when the VM is p
and create subdirectories for individual VMs in it
(for example ~/nono/luna88k/).
- 以下のリンクから liveimage-luna88k-raw-YYYYMMDD.img.gz
+以下のリンクから liveimage-luna88k-raw-20210918.img.gz
をダウンロードして展開し、
VM ディレクトリ ~/nono/luna88k/ に置きます。
-Download liveimage-luna88k-raw-YYYYMMDD.img.gz from the following link,
+Download liveimage-luna88k-raw-20210918.img.gz from the following link,
extract it and place it in the VM directory, ~/nono/luna88k/.
vmtype = luna88k
-spc0-id6-image = hd,liveimage-luna88k-raw-20210614.img
+spc0-id6-image = hd,liveimage-luna88k-raw-20210918.img
hostnet-driver = none
@@ -910,7 +1176,7 @@ b⏎
You will see a screen like this. The bold text indicates
the characters you need to enter.
-NONO 0.2.0 Emulated ROM Monitor for LUNA88K
+NONO 0.2.3 Emulated ROM Monitor for LUNA88K
** NVRAM Initialized.
@@ -936,7 +1202,7 @@ and nono will terminate when the VM is p
-ネットワーク設定例 Example of network setup
+6. ネットワーク設定例 Example of network setup
wm0 を持つ NetBSD ホストに tap(4) デバイスを用いて
nono のゲスト OS を接続する場合の設定例です。
@@ -959,8 +1225,7 @@ sysinst 等で OS をアップグレー
に戻るのがハマりポイントです。
By default, /dev/tap is only accessible to privileged user.
You need to chmod /dev/tap (without unit number) appropriately.
-Note that upgrading using sysinst always reset the permission to 600.
-
+Note that upgrading using sysinst always reset the permission to 600.
bridge(4) インタフェースを作成し、
ホストの外部(物理)インタフェースをブリッジに追加しておきます。
@@ -1029,14 +1294,8 @@ It's OK if you can see "HostNet Driver:
-
-変更履歴 Changes
-
-
-過去のバージョンからの移行方法 How to migrate from old versions
+7. 過去のバージョンからの移行方法 How to migrate from old versions
バージョンアップに伴い設定ファイル等に非互換が発生する場合があります。
その場合は以下の移行方法を参照して設定ファイル等を更新してください。
@@ -1047,14 +1306,21 @@ In such case, you may need to upgrade it
+
+8. 変更履歴 Changes
+
+
-ライセンス License
+9. 連絡先、ライセンス等 Contact, License, etc
+
+9.1. ライセンス License
-
-連絡先 Contact us
+9.2. 連絡先 Contact us
バグ報告などは以下にお願いします。日本語でおk。
If you find any problems, please let me know.
@@ -1063,12 +1329,11 @@ You may write in English.
>https://github.com/isaki68k/nono-issue/issues
-
-パッチの提供について About contributes
+9.3. パッチの提供について About contributes
パッチを提供してくださる場合は以下に同意したものとします。
- If you provide a patch to nono, you must agree to the following conditions:
-
+ If you provide a patch to nono, you must agree to the following
+conditions:
- 成果物が nono のライセンスに従って運用あるいは配布されること。
All your work are operated or distributed under the nono license.
@@ -1080,8 +1345,7 @@ You may write in English.
-
-Acknowledgements
+9.4. Acknowledgements
nono は以下の広告条項を含むソースコードを利用しています。
nono uses source code with the following advertising clause.
|