--- nono/doc/index.php 2026/04/29 17:05:30 1.1.1.18 +++ nono/doc/index.php 2026/04/29 17:05:34 1.1.1.19 @@ -89,41 +89,37 @@ It can also emulate SHARP X68030 and vir (For gcc, at least 7.4 or later. For clang, at least 7.0 or later.)
  • wxWidgets 3.2.x "stable" branch. - (3.0.x "old stable" branch would also work but is not confirmed.) + (3.0.x "old stable" branch would also work.)
  • gettext +
  • libslirp +(4.7.0 or later is comfirmed, 4.8.0 or later is preferred.)

    -wxWidgets は NetBSD(pkgsrc) なら -pkgsrc/x11/wxGTK32 です (wxGTK30 でも動くはずです)。 +NetBSD(pkgsrc) なら必要なパッケージは +x11/wxGTK32 と net/libslirp です。 +wxGTK32 の代わりに wxGTK30 でも動くはずです。 If you use NetBSD(pkgsrc), -wxWidgets is pkgsrc/x11/wxGTK32 -(or wxGTK30). +x11/wxGTK32 and net/libslirp are needed. +wxGTK30 would work.

    (NetBSD 以外でのビルドはサポートしていませんが) -Ubuntu ではたぶん以下のパッケージが必要です。 -You may need the following packages on Ubuntu +Ubuntu 24.04 ではたぶん以下のパッケージが必要です。 +You may need the following packages on Ubuntu 24.04 (though we won't support non-NetBSD platform).

    - +

    nono のソースアーカイブを展開したら以下のようにビルドします。 @@ -621,8 +617,7 @@ The only one difference is that relative _EOM_ ); -config_item("exec-bootparam = string", <<<_EOM_ - +config_item("exec-bootparam = string", <<<_EOM_ (virt-m68k Only) カーネルに渡すブートパラメータを指定します。 内容はたぶん OS ごとに異なりますが、 @@ -632,7 +627,6 @@ NetBSD/virt68k では "root=ld0 The syntax may differ depending on the OS, but in NetBSD/virt68k, you can specify the root device to the kernel, like as "root=ld0" (excluding quotes). - _EOM_ ); @@ -696,9 +690,9 @@ _EOM_ ); config_item("fpu-type = value", <<<_EOM_ -(X68030 and virt-m68k Only) +(X68030 and virt-m68k Only) 68030 に FPU コプロセッサを装着するかどうか指定しています。 -この設定は mpu-type68030 の時のみ有効です。 +この設定は mpu-type68030 の時のみ有効です。 none なら FPU コプロセッサを装着しません。 68881 なら FPU コプロセッサとして 68881 を装着します。 現状 68882 はサポートしていません。 @@ -707,7 +701,7 @@ config_item("fpu-type = value", < デフォルトは 68881 です。 LUNA-I はたぶん 68881 搭載モデルのみのため変更できません。 Specifies whether to install FPU co-processor or not. -This item is meaningful only if mpu-type is 68030. +This item is meaningful only if mpu-type is 68030. If none, FPU co-processor is not installed. If 68881, 68881 FPU co-processor is installed. 68882 is not supported yet. @@ -757,25 +751,23 @@ config_item("hostcom-driver = string< シリアルポートのホスト側ドライバを指定します。 stdio なら標準入出力を使用します。 tcp なら TCP ポートで TELNET プロトコルで待ち受けます。 -cons ならメイン画面で端末エミュレーションを行います。 +cons ならメイン画面で端末エミュレーションを行います。 none ならホスト側とは一切通信を行いません。 - ゲスト機種によって対応しているホスト側ドライバの種類とデフォルト値が変わります。 LUNA-I、LUNA-88K、X68030 では stdiotcpnone が選択可能でデフォルトは none です。 virt-m68k、NEWS では stdiotcpconsnone -すべてが選択可能でデフォルトは cons です。 +すべてが選択可能でデフォルトは cons です。 Specifies the host driver of serial port. stdio uses the standard input/output. tcp listens on TCP port using TELNET protocol. -cons does a terminal emulation in main panel. +cons does a terminal emulation in main panel. none doesn't make any communication with the host. - The choices and default value vary depending on the guest type. On LUNA-I, LUNA-88K and X68030, you can choose stdio, tcp or none, and the default is none. On virt-m68k and NEWS, you can choose all of stdio, tcp, -cons or none, and the default is cons. +cons or none, and the default is cons. _EOM_ ); @@ -817,6 +809,9 @@ config_item( "hostnet-afpacket-ifname = ifname
    " . "hostnet-bpf-ifname = ifname
    " . "hostnet-tap-devpath = path
    " . + "hostnet-usermode-hostfwd = string
    " . + "hostnet-usermode-net = string
    " . + "hostnet-usermode-net6 = string
    " . "hostnet-fallback = integer
    ", <<<_EOM_ それぞれ hostnet0-* の別名です。 _EOM_ @@ -825,28 +820,40 @@ _EOM_ config_item("hostnetN-driver = string", <<<_EOM_ N 番目のイーサネットデバイスのホスト側ドライバを指定します。 -afpacketbpftap のうち -ホスト OS がサポートしているものと autonone が選択可能です。 -afpacket は Linux の AF_PACKET ソケットを使用します。 -bpf は bpf(4) デバイスを使用します。 -tap は tap(4) インタフェースを使用します。 -none ならホスト側とは一切通信を行いません。 -auto ならホスト OS がサポートしているもののうち -tapafpacketbpf を順に試します。 -hostnet0-driver のデフォルトは auto、 -hostnet1-driver のデフォルトは none です。 +afpacketbpftapusermode のうち +configure で検出したものと autonone が選択可能です。 Specifies the host driver of N-th ethernet device. -afpacket, bpf, and tap can be specified -only if the host OS supports them. -auto and none can always be specified. -afpacket uses Linux's AF_PACKET socket, -bpf uses bpf(4) device, -and tap uses tap(4) interface. -none doesn't make any communication with the host. -If auto is specified, -it tries tap, afpacket, and bpf in that order -(if the host OS supports them). +afpacket, bpf, tap and usermode can be specified +only if the configure detects them. +auto and none can always be specified. +

    + +autousermode と同義ですが、 +configure で libslirp が無効になっている場合は none と同義になります。 +hostnet0-driver のデフォルトは auto、 +hostnet1-driver のデフォルトは none です。 + +auto is a synonym for usermode, but +when libslirp is disabled on configure, it is a synonym for none. The default of hostnet0-driver is auto, the default of hostnet1-driver is none. _EOM_ @@ -911,6 +918,55 @@ you need to prepare empty scripts that w _EOM_ ); +config_item("hostnetN-usermode-net = network/netmask", <<<_EOM_ + +ホストドライバが usermode の時の、内部 IPv4 ネットワークのアドレスを指定します。 +ネットワークアドレスは +192.0.2.0/255.255.255.0 のようにネットマスクで指定するか +192.0.2.0/24 のようにネットマスク長で指定することも出来ます。 +デフォルトは 10.8.0.0/24 です。 + +_EOM_ +); + +config_item("hostnetN-usermode-net6 = network/prefixlen", <<<_EOM_ + +ホストドライバが usermode の時の、内部 IPv6 ネットワークのアドレスを指定します。 +ネットワークアドレスは 2001:db8::/64 +のようにアドレスとプレフィックス長で指定します。 +デフォルトは fd08::/64 です。 + +_EOM_ +); + +config_item("hostnetN-usermode-hostfwd = entry[;entry[;…]] ", <<<_EOM_ + +ホストドライバが usermode の時の、外部から内部へのポートフォワーディングの設定を行います。 +1つの entry は +
    +
    + +protocol,[hostaddr:]hostport,[guestaddr:]guestport + +
    + +のように ','(カンマ) 3つで区切って表します。 +protocoltcpudp です。 +hostaddr はホストのバインドアドレスで省略すると 0.0.0.0 です。 +guestaddr はゲストのアドレスで、 +省略すると DHCP でクライアントに配布したアドレスになります +(通常は省略します)。 +例えば、ホストの 10022/tcp へのコネクションをゲストの 22/tcp に転送したい場合は +tcp,10022,22 となります。 +複数指定する場合は ';'(セミコロン) で区切って1行に並べます。 + +

    + +IPv6 には対応していません。 + +_EOM_ +); + config_item("hostnetN-fallback = integer", <<<_EOM_ hostnetN-driver で指定したドライバが使用可能でなかった時、 0 ならプロセスを終了します。 @@ -1140,8 +1196,7 @@ On virt-m68k, it's less meaningful but 2 _EOM_ ); -config_item("mpu-type = value", <<<_EOM_ - +config_item("mpu-type = value", <<<_EOM_ (X68030, virt-m68k Only) MPU 種別を指定します。 MPU を変更出来るのは X68030 と virt-m68k のみで、 @@ -1149,7 +1204,6 @@ MPU を変更出来るのは X68030 と デフォルトはいずれも 68030 です。 Specifies the MPU type, 68030 or 68040. The default is 68030. - _EOM_ ); @@ -1564,12 +1618,10 @@ Only if you run the X server on NetBSD/x _EOM_ ); -config_item("xp-clock = value", <<<_EOM_ - +config_item("xp-clock = value", <<<_EOM_ (LUNA Only) XP プロセッサのクロック数を MHz 単位で指定します。 デフォルトは 6.144 [MHz] です。 - _EOM_ ); @@ -1643,7 +1695,7 @@ FUSEROM ○ X68030 MPU (68030) ◎ 68EC030 は実装予定なし 68EC030 is not planned FPU (68881) ◎ 68882 は未実装 68882 not implemented -MPU (68040) キャッシュ未実装、実行サイクル未考察 +MPU (68040) △ キャッシュ未実装、実行サイクル未考察 DMAC △ CRTC/VC △ 768x512 のテキスト画面のみサポート Only 768x512 text screen supported FDC/FDD ○ @@ -1687,7 +1739,7 @@ AST, Lv2Intr × virt-m68k MPU (68030) ◎ FPU (68881) ◎ 68882 は未実装 68882 not implemented -MPU (68040) キャッシュ未実装、実行サイクル未考察 +MPU (68040) △ キャッシュ未実装、実行サイクル未考察 Goldfish PIC ◎ Goldfish RTC ◎ Goldfish Timer ◎ @@ -1727,12 +1779,12 @@ __EOM__; -MPU (68040)"); ?> -

    + +
    いくつか未実装の命令があります。 キャッシュは未実装で、 それに伴いキャッシュ制御を行う新設命令 CINV*, CPUSH* も未実装です。 -MMU、ATC はおそらく実装完了です。 +MMU、ATC はまだ怪しいです。 FPU はある程度動作すると思いますが 例外を起こす細かい条件は未検証のため、 本来は例外が起きてソフトウェア (FPSP) で処理するはずのものが @@ -1748,7 +1800,7 @@ FPU はある程度動作すると思い LUNA-I と NEWS では選択できません。 NEWS に 68040 搭載モデルはなさそうなのと、 LUNA では 68040 搭載モデルは LUNA-I ではなく LUNA-II になるからです。 -
    +
    @@ -1792,9 +1844,8 @@ QEMU の "virt" (架空ハードウェ NetBSD/virt68k が動作します。 -X オプション (または設定の exec-file) でカーネルを、 -設定の exec-bootparam でルートデバイスを -それぞれ -指定してください。 +設定の exec-bootparam でルートデバイスを +それぞれ指定してください。 インストール時には --initrd (または設定の exec-initrd) で RAM ディスクイメージも指定します。 Supports QEMU "virt" virtual hardware's compatible machine and @@ -1806,9 +1857,8 @@ If you want to install, you also need to -シリアルコンソールの端末エミュレーション"); ?> +
    - virt-m68k (や NEWS) のようにシリアルコンソールしか持たない機種のために、 メイン画面でシリアルコンソールの端末エミュレーションを実装してあります。 hostcom-driver = cons とすることで nono のメイン画面に @@ -1817,7 +1867,6 @@ virt-m68k (や NEWS) のようにシリ ボールド、イタリック、下線などはある程度サポートしています。 バックログはありませんので、バックログが必要なら stdio 等を使ってください。 -
    @@ -1883,6 +1932,19 @@ Also, SW8 specifies enable/disable of th +usermode ネットワーク"); ?> +
    + +usermode ネットワークでは nono 自身が +NAT ルータ、DHCP サーバ、DNS サーバの機能を持ちます。 +ルータと DHCP サーバのアドレスはネットワークアドレス +1 (デフォルトでは 10.8.0.1)、 +DNS サーバのアドレスはネットワークアドレス +2 (デフォルトでは 10.8.0.2) です。 +IPv6 ルータのアドレスはネットワークアドレス +1 (デフォルトでは fd08::1)、 +DNS サーバのアドレスはネットワークアドレス +2 (デフォルトでは fd08::2) です。 + +
    + +
    X68030 で Windrv を一応サポートしています。 @@ -1902,8 +1964,9 @@ Human68k からホストのファイル 大文字小文字だけが違う同名のファイル (例えば a.BAK と a.bak) があると、 検索(FILES/NFILES) には現れません。 この状況で a.Bak (大文字小文字を区別していれば違うファイル) -を新規作成しようとすると (大文字小文字を区別しない a.Bak -というエントリはゲスト的には存在しないにも関わらず) 作成できなくしてあります。 +を新規作成しようとすると (大文字小文字を区別しないゲスト OS からは +a.Bak というエントリは存在しないように見えるにも関わらず) +作成できなくしてあります。
  • ファイルサイズが 2GB 以上のファイルはゲストからは見えません。
  • Human68k 側の属性は A(アーカイブ)/D(ディレクトリ)/R(読み込み専用) のみ対応しています。 @@ -2451,16 +2514,11 @@ extract it and place it in the VM direct
  • 以下の内容の設定ファイル nono.cfg を VM ディレクトリ ~/nono/luna/ に作成します。 -ここでは説明を簡単にするためネットワークなしにしていますが、 -ネットワーク設定は必要に応じて行ってください。 Create a configuration file nono.cfg in the VM directory, ~/nono/luna/, -with following contents. -By the way, to simplify the explanation, we assume there is no network here. -However, please configure the network if necessary. +with following contents.
     vmtype = luna
     spc0-id6-image = hd,liveimage-luna68k-with-packages-20210910.img
    -hostnet-driver = none
     
  • nono -c ~/nono/luna で起動します @@ -2558,16 +2616,11 @@ extract it and place it in the VM direct
  • 以下の内容の設定ファイル nono.cfg を VM ディレクトリ ~/nono/luna88k/ に作成します。 -ここでは説明を簡単にするためネットワークなしにしていますが、 -ネットワーク設定は必要に応じて行ってください。 Create a configuration file nono.cfg in the VM directory, ~/nono/luna88k/, -with following contents. -By the way, to simplify the explanation, we assume there is no network here. -However, please configure the network if necessary. +with following contents.
     vmtype = luna88k
     spc0-id6-image = hd,liveimage-luna88k-raw-20241013.img
    -hostnet-driver = none
     
  • nono -c ~/nono/luna88k で起動します @@ -2615,9 +2668,9 @@ and nono will terminate when the VM is p Try NetBSD/x68k"); ?>
    -つついさんが NetBSD/x68k 10.0_BETA の liveimage を用意されています。 +つついさんが NetBSD/x68k 10.1 の liveimage を用意されています。 ここではこれを起動してみます。 -Tsutsui-san has provided a liveimage of NetBSD/x68k 10.0_BETA. +Tsutsui-san has provided a liveimage of NetBSD/x68k 10.1. Let's try it.
      @@ -2627,29 +2680,27 @@ Let's try it. and create subdirectories for individual VMs in it (for example ~/nono/x68k/). -
    1. 以下のリンクから -plain-install か with-packages のお好みのほうをダウンロードして展開し、 -VM ディレクトリ ~/nono/x68k/ に置きます。 -Download your favorite one of plain-install or with-packages -from the following link, -extract it and place it in the VM directory, ~/nono/x68k/. +
    2. 以下のサイトから +「パッケージインストール設定済み版」か +「インストーラでインストールしたところまでの未設定版」の +お好みのほうをダウンロードします。 +迷ったら「パッケージインストール設定済み版」がよいでしょう。 +ダウンロードできたら展開して、VM ディレクトリ ~/nono/x68k/ に置きます。 +Download your favorite one of with-packages or plain-install +from the following site. +Extract it and place it in the VM directory, ~/nono/x68k/.
      -http://teokurebsd.org/netbsd/liveimage/20230111-x68k/ +http://www.ceres.dti.ne.jp/tsutsui/netbsd/liveimage/x68k.html
    3. 以下の内容の設定ファイル nono.cfg を VM ディレクトリ ~/nono/x68k/ に作成します。 -ここでは説明を簡単にするためネットワークなしにしていますが、 -ネットワーク設定は必要に応じて行ってください。 Create a configuration file nono.cfg in the VM directory, ~/nono/x68k/, -with following contents. -By the way, to simplify the explanation, we assume there is no network here. -However, please configure the network if necessary. +with following contents.
       vmtype = x68030
      -spc0-id0-image = hd,liveimage-x68k-with-packages-20230111.hds
      -hostnet0-driver = none
      +spc0-id0-image = hd,liveimage-x68k-with-packages-20250106.hds
       
    4. 初回のみ nono -c ~/nono/x68k --create-sram を実行します。 @@ -2725,17 +2776,14 @@ dd if=/dev/zero of=virt68k.img bs=1m cou
    5. 以下の内容の設定ファイル nono.cfg を VM ディレクトリ ~/nono/virt68k に作成します。 -ネットワークは別途設定してください。 Create a configuration file nono.cfg in the VM directory, ~/nono/virt68k/, -with following contents. -You may also need network configuration. +with following contents.
       vmtype = virt-m68k
       exec-file = netbsd-GENERIC.gz
       exec-bootparam = root=ld0
       virtio-block0-image = virt68k.img
       fast-mode = 1
      -hostnet-driver = auto
       
    6. インストーラ RAM ディスクを指定してインストーラを起動します。 @@ -2777,16 +2825,14 @@ nono -c ~/nono/virt68k Example of host network setup"); ?> +
      -wm0 を持つ NetBSD ホストに tap(4) デバイスを用いて -nono のゲスト OS を接続する場合の設定例です。 +NetBSD の tap(4) デバイスを用いて、 +ホストの wm0 と nono のゲスト OS を接続する場合の設定例です。
      1. -設定ファイル nono.cfg に以下の行を追加します -(と言いつつ NetBSD では書かなくてもデフォルトでこの動作になりますが) -Add the following line to configuration file, nono.cfg. -(Although you don't need to write it since these are default behavior -on NetBSD) +設定ファイル nono.cfg に以下の行を追加します。 +Add the following line to configuration file, nono.cfg.
         hostnet-driver = tap
         hostnet-tap-devpath = auto
        @@ -2865,6 +2911,7 @@ It's OK if you can see "HostNet Driver:
         
         
      +