+ビルド方法
How to build
+コマンドラインオプション
Command Line Option
+設定
Configuration
+VM について
About VM
+実行してみる
Try it
+ネットワーク設定
Setup network
+変更履歴
Changes
+連絡先、ライセンス等
Contact, License, etc
+
--- nono/doc/index.php 2026/04/29 17:04:40 1.1.1.4
+++ nono/doc/index.php 2026/04/29 17:04:51 1.1.1.7
@@ -41,21 +41,41 @@ function get_version($filename)
nono は NetBSD とかで動作する OMRON LUNA-I とかのエミュレータです。
nono is OMRON LUNA-I emulator runs on NetBSD and etc.
+
+
How to build
Command Line Option
Configuration
About VM
Try it
Setup network
Changes
Contact, License, etc
Introduction
nono is OMRON LUNA-I emulator runs on NetBSD and etc. -LUNA88K is still experimental support and it does not work yet. +LUNA88K is still experimental support.
How to build
The following are required for build.+ビルドには以下が必要です。 +NetBSD(pkgsrc) なら wxWidgets は pkgsrc/x11/wxGTK30 です +(OPTIONS:gtk3 で動作確認しています)。 +
The followings are required for build. +If you use NetBSD(pkgsrc), +wxWidgets is pkgsrc/x11/wxGTK30 (OPTIONS:gtk3 is tested).+
If you use NetBSD(pkgsrc), -wxWidgets is pkgsrc/x11/wxGTK30 (OPTIONS:gtk2 is recommended).+
+(NetBSD 以外でのビルドはサポートしていませんが)
+Ubuntu 18.04 ではたぶん以下のパッケージが必要です。
+You may need the following packages on Ubuntu 18.04
+(though we won't support non-NetBSD platform).
+
アーカイブを展開したら以下のようにビルドします。 configure には環境変数 CC、CXX でコンパイラを指定することが出来ます。 @@ -88,21 +122,18 @@ if configure cannot find wx-config. # make install - -
2つの実行ファイルがインストールされます。
nono が GUI 版実行ファイル、
nono-cli がコマンドライン版です。
Two executables will be installed.
-nono is GUI executable and nono-cli is
-command line executable.
+nono is the GUI executable and nono-cli is
+the command line executable.
Command Line Option
Specifies the VM directory. If omitted, the current directory is used.+option_item("-c vmpath", <<<_EOM_ +VM ディレクトリ/設定ファイルを指定します。 +vmpath がディレクトリならそのディレクトリの中の nono.cfg +を設定ファイルとします。 +vmpath がファイルならそれを設定ファイルとします。 +そしていずれの場合も +設定ファイルがあるディレクトリを VM ディレクトリとします。 +-c オプションを省略すると vmpath をカレントディレクトリとします。 +
Specifies the VM directory/configuration file. +If vmpath is a directory, +make nono.cfg in that directory a configuration file. +Or if vmpath is a file, +make the specified file a configuration file. +And in both cases, +make the directory where that file is located a VM directory. +If -c option is omitted, +vmpath is considered as the current directory. +_EOM_ ); @@ -270,14 +316,18 @@ _EOM_
Configuration
VM configuration file is nono.cfg in the VM directory. +VM configuration file is nono.cfg +(or the file specified by -c option) in the VM directory. Its syntax is key = value format, one per line. White spaces before and after key and value are ignored. And, blank lines, lines beginning with "#", and @@ -321,7 +371,39 @@ config_item("ethernet-hostdriver = st none、tap、bpf が指定できます。 none ならホスト側とは一切通信を行いません。 tap か bpf かはホスト OS によってビルド時に決定します。 -NetBSD なら tap です。 +NetBSD、OpenBSD、FreeBSD、Linux なら tap です。 +Specifies the host driver of ethernet device. +none, tap and bpf can be specified. +If none, it doesn't make any communication with the host. +tap or bpf is determined at build time for the host OS. +If the host is NetBSD, OpenBSD, FreeBSD, or Linux, it's tap.+_EOM_ +); + +config_item("ethernet-hostdevice = string", <<<_EOM_ +イーサネットデバイスのホスト側のデバイス名を指定します。 +ethernet-hostdriver が tap の場合ここには +tap デバイスを(フルパスで)指定します。 +Specifies the host device name of ethernet device. +If ethernet-hostdriver is tap, +this field specifies the full path to the tap device.++デフォルトは auto で、この場合の動作はホスト OS ごとに異なります。 +Linux なら "/dev/net/tun" を指定したのと同じです。 +OpenBSD なら /dev/tap0 から /dev/tap9 まで +順番にオープンできるまで試します。 +NetBSD (と FreeBSD) ならまず /dev/tap でクローニングを試み、 +それが失敗すれば /dev/tap0 から /dev/tap9 までを +順番にオープンできるまで試します。 +
The default is auto. +The behavior in this case depends on the host OS. +On Linux, it's the same as /dev/net/tun. +On OpenBSD, it will try from /dev/tap0 to /dev/tap9 +until successful. +On NetBSD (and FreeBSD), it will try cloning by /dev/tap first. +If that fails, then try from /dev/tap0 to /dev/tap9 +until successful. +_EOM_ ); @@ -394,8 +476,9 @@ _EOM_ config_item("mpu-clock = value", <<<_EOM_ MPU のクロック数を MHz 単位で指定します。 -デフォルトは 20MHz です。 -Specifies the MPU clock in MHz. The default value is 20MHz.+デフォルトは LUNA-I なら 20MHz、LUNA88K なら 25MHz です。 +Specifies the MPU clock in MHz. +The default value is 20MHz on LUNA-I, or 25MHz on LUNA88K._EOM_ ); @@ -450,8 +533,33 @@ _EOM_ config_item("ram-size = integer", <<<_EOM_ 搭載する RAM サイズを MB 単位で指定します。 -デフォルトは 16MB です。 -Specifies the RAM size in MB. The default is 16MB.+LUNA-I のデフォルトは 16MB です。 +16MB 未満は 4MB 単位で、 +16MB 以上は 255MB まで 1MB 単位で指定できます +(ちなみに NetBSD/luna68k の起動には最低でも 8MB 必要です)。 +LUNA88K のデフォルトは 64MB です。 +64MB 未満は 16MB 単位で、 +64MB 以上は暫定で 255MB まで 1MB 単位で指定できます。 +Specifies the RAM size in MB. +On LUNA-I, the default is 16MB. +If the size is less than 16MB, you can specify in 4MB unit. +If larger, you can specify up to 255MB in 1MB unit. +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. ++_EOM_ +); + +config_item("show-statuspanel = integer", <<<_EOM_ +ステータスパネルを表示するかどうかを指定します。 +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. +_EOM_ ); @@ -509,7 +617,7 @@ fsck を気にせずカーネルのデ デフォルトは 0 です。Specifies whether nono ignores writing to SCSI devices. 0 means normal operation (writes to the devices). -If 1 is specified, +If 1 is specified, nono will not actually write back to the disk image even though the write command is succeeded. nono's SCSI devices acts as @@ -529,6 +637,90 @@ _EOM_
About VM
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. ++
+| …
+ |
+マークなしの場合、ユーザが等速モードを指定していて、等速モードで実行中です。
+ | When no icons are displayed, +the user has specified syncronized mode and +the VM is running in synchronized mode.+
+ | …
+ |
+三角2つの場合、ユーザが高速モードを指定していて、等速モードで実行中です。
+キー入力中(後述)または VM がアイドル状態(m68k の STOP 命令)などで起きます。
+ | When an icon (two triangles) is displayed, +the user has specified full speed mode and +the VM is running in synchronized mode. +This will happen during keystrokes or when the VM is idle +(STOP instruction on m68k). ++
+ | …
+ |
+三角3つの場合、ユーザが高速モードを指定していて、高速モードで実行中です。
+ | When an icon (three triangles) is displayed, +the user has specified full speed mode and +the VM is running in full speed mode. + |
Key input
+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 +that don't implement it, and +key repeat occurs on NetBSD/luna68k kernel that implements it. +Since the timing of key repeat is measured by software, +if the VM is running faster than the real, +the key repeat will occur faster, too. +The host application doesn't have the way to avoid it. +Therefore, nono will temporarily suppress the full speed mode +while any keys are pressed. +That is why the above-mentioned icon distinguishes them. +For this reason, +if keys continue to be pressed for some reason, +the VM also continues to run syncronized mode. +In this case, you can resolve it by using the software keyboard window. ++
Try it
Create a directory somewhere for nono (for example ~/nono/), -and create subdirectory for individual VMs in it (for example ~/nono/luna).+and create subdirectories for individual VMs in it (for example ~/nono/luna/).
Download imagefile from the following link, -extract it and place it in the VM directory, ~/nono/luna.+extract it and place it in the VM directory, ~/nono/luna/.
http://teokurebsd.org/netbsd/liveimage/20200518-luna68k/
Create a configuration file nono.cfg in the same VM directory, ~/nono/luna, +Create a configuration file nono.cfg in the VM directory, ~/nono/luna/, with following contents:この内容は NVRAM.DAT に記録されているので次回以降は直接 NetBSD が起動します。 -vmtype = luna @@ -577,7 +769,7 @@ g xThe information you have just entered is recorded in NVRAM, +The information you have just entered is recorded in the NVRAM, so next time it boots NetBSD automatically.@@ -586,6 +778,7 @@ so next time it boots NetBSD automatical
Setup network
-最もシンプルなケースだとおそらく
-For example, in the simplest case, probably,
+例えば、NetBSD ホストで、ホストの wm0 セグメントに nono のゲスト OS を接続する場合、
+For example, if you want to connect guest OS to host's wm0 segment
+on NetBSD,
+
By default, /dev/tap is only accessible to privileged user. +You need to chmod /dev/tap (without unit number) appropriately.+sysinst 等で OS をアップグレードするとパーミッションが 600 +に戻るのがハマりポイントです。 + +
Create a bridge(4) interface, and +add your physical interface to the bridge.
-のようにして用意しておいた bridge0 に対して、 -(sudo の設定は別途行ってから) -次のような nono-ifup、nono-ifdown を用意すれば -wm0 の物理セグメントとブリッジできると思います。 --# brconfig bridge0 create +# ifconfig bridge0 create # brconfig bridge0 add wm0
If you setup bridge0 as above (and setup sudo) and -prepare the following nono-ifup, nono-ifdown scripts, -you can bridge between the guest network and host's wm0. -+常用するなら設定ファイルに書いておきましょう。 +
If you want to use this all the time, +you can put configuration file into /etc.+
+/etc/ifconfig.bridge0 ++ ++create +up +!/sbin/brconfig $int add wm0 +++# /etc/rc.d/network restart ++
Return to non-privileged user, and +create following two scripts in the VM directory or its parent directory. +In addition, you need to set up sudo separately.
nono-ifup#!/bin/sh -sudo ifconfig $1 up -sudo brconfig bridge0 add $1 +sudo /sbin/ifconfig $1 up +sudo /sbin/brconfig bridge0 add $1
-nono-ifup +nono-ifdown+#!/bin/sh -sudo brconfig bridge0 delete $1 -sudo ifconfig $1 down +sudo /sbin/brconfig bridge0 delete $1 +sudo /sbin/ifconfig $1 down
+ ++% chmod +x nono-ifup nono-ifdown +
Run nono, +and open "Monitor > Host > Host Network" window from menu. +It's OK if you can see "NetDriver: BSD tap" (in this case).+ +
Changes
License