|
|
1.1.1.2 ! root 1: <!-- ! 2: nono ! 3: Copyright (C) 2020 nono project ! 4: Licensed under nono-license.txt ! 5: --> 1.1 root 6: <html><?php 7: $nono_ver = ""; 8: 9: if ($_SERVER['argc'] > 1) 10: get_version($_SERVER['argv'][1]); 11: 12: function get_version($filename) 13: { 14: global $nono_ver; 15: 16: $fp = fopen($filename, "r"); 17: if ($fp !== false) { 18: while (($buf = fgets($fp)) !== false) { 19: if (preg_match("/NONO_MAJOR_VER\s+\((\d+)\)/", $buf, $m)) { 20: $nono_major = $m[1]; 21: } 22: if (preg_match("/NONO_MINOR_VER\s+\((\d+)\)/", $buf, $m)) { 23: $nono_minor = $m[1]; 24: } 25: if (preg_match("/NONO_PATCH_VER\s+\((\d+)\)/", $buf, $m)) { 26: $nono_patch = $m[1]; 27: } 28: if (preg_match("/NONO_DATE\s+\"([^\"]+)\"/", $buf, $m)) { 29: $nono_date = $m[1]; 30: } 31: } 32: fclose($fp); 33: 34: $nono_ver = "${nono_major}.${nono_minor}.${nono_patch} (${nono_date})"; 35: } 36: } 37: ?> 1.1.1.2 ! root 38: <?php require_once "common.php"; ?> 1.1 root 39: <body> 40: <h3>nono <?=$nono_ver?></h3> 41: 42: nono は NetBSD とかで動作する OMRON LUNA-I とかのエミュレータです。 43: <q>nono is OMRON LUNA-I emulator runs on NetBSD and so on.</q> 44: 45: <hr> 46: <h4>ビルド方法 <q>How to build</q></h4> 47: <div class="main"> 1.1.1.2 ! root 48: ビルドには以下が必要です。<q>The following are required for build.</q> 1.1 root 49: <ul> 1.1.1.2 ! root 50: <li>make (BSD make, not GNU make) ! 51: <li>C/C++ compiler which supports -std=c++14 ! 52: <li>wxWidgets >= 3.0 ! 53: <li>gettext 1.1 root 54: </ul> 1.1.1.2 ! root 55: ! 56: wxWidgets は NetBSD(pkgsrc) なら ! 57: pkgsrc/x11/wxGTK30 (OPTIONS:gtk2 推奨) です。 ! 58: <q>If you use NetBSD(pkgsrc), ! 59: wxWidgets is pkgsrc/x11/wxGTK30 (OPTIONS:gtk2 is recommended).</q> ! 60: <p> ! 61: アーカイブを展開したら以下のようにビルドします。 ! 62: configure には環境変数 CC、CXX でコンパイラを指定することが出来ます。 ! 63: また wx-config が標準的な名前で提供されていないために見付けられない場合には ! 64: 環境変数 WX_CONFIG にパスを指定することが出来ます。 ! 65: <q>Extract the archive and build as following. ! 66: You can specify C/C++ compiler using environment variable CC and CXX ! 67: if configure cannot find standard name suitable compiler. ! 68: Also, you can specify wx-config path using environment variable WX_CONFIG ! 69: if configure cannot find wx-config.</q> 1.1 root 70: <blockquote class="cons"><pre> 71: % ./configure 72: % make depend 73: % make 1.1.1.2 ! root 74: % su ! 75: # make install 1.1 root 76: </pre></blockquote> 1.1.1.2 ! root 77: ! 78: <?php /* ! 79: Ubuntu の場合は https://twitter.com/tsutsuii/status/1266546246543568896 ! 80: */ ?> ! 81: ! 82: <p> ! 83: 2つの実行ファイルがインストールされます。 ! 84: <tt>nono</tt> が GUI 版実行ファイル、 ! 85: <tt>nono-cli</tt> がコマンドライン版です。 ! 86: <q>Two executables will be installed. ! 87: <tt>nono</tt> is GUI executable and <tt>nono-cli</tt> is ! 88: command line executable.</q> 1.1 root 89: 90: </div> 91: 92: 93: <h4>コマンドラインオプション <q>Command Line Option</q></h4> 94: <div class="main"> 95: <dl> 96: <?php 97: function item($name, $desc) 98: { 99: if (!is_array($name)) { 100: $name = array($name); 101: } 102: foreach ($name as $n) { 103: print "<dt class=dt-indent><tt>{$n}</tt></dt>\n"; 104: } 105: print "<dd>{$desc}</p></dd>\n"; 106: } 107: function option_item($name, $desc) 108: { 109: item($name, $desc); 110: } 111: 112: option_item("-A <i>file</i>", <<<_EOM_ 113: ホストの <tt><i>file</i></tt> をロードして実行します。 114: ファイルが gzip 圧縮されていれば自動的に展開します。 115: (展開後の) ファイル形式は a.out (OMAGIC) か ELF で、 116: 実際にはブートローダとカーネル程度しか想定していません。 1.1.1.2 ! root 117: 設定ファイルの <tt>prom-image</tt> とともに指定されると 1.1 root 118: <tt>-A</tt> のほうが優先します。 1.1.1.2 ! root 119: <q>Loads and executes host's <tt><i>file</i></tt>. ! 120: If the file is gzip'd, it is automatically extracted. ! 121: The supported file format (after extracting) is a.out (OMAGIC) or ELF. ! 122: Actually, it only assumes bootloaders or kernels. ! 123: If this option is specified at the same time as ! 124: <tt>prom-image</tt> in configuration file, ! 125: this option preceeds. ! 126: </q> 1.1 root 127: _EOM_ 128: ); 129: 130: option_item("-c <i>vmdir</i>", <<<_EOM_ 131: VM ディレクトリを指定します。省略するとカレントディレクトリとします。 1.1.1.2 ! root 132: <q>Specifies the VM directory. If omitted, the current directory is used.</q> 1.1 root 133: _EOM_ 134: ); 135: 136: option_item("-f", <<<_EOM_ 137: 高速モードで起動します。 138: GUI なら起動後にもメニューから変更できますが、その初期値を変えるだけです。 1.1.1.2 ! root 139: <q>Boot as the fast mode. ! 140: You can change this mode on GUI menu after boot, ! 141: and the option only changes its initial state. ! 142: </q> 1.1 root 143: _EOM_ 144: ); 145: 146: option_item("--fontsize <i>height</i>", <<<_EOM_ 147: GUI 版のみ。 148: 全サブウインドウの起動時のフォントサイズを指定します。 1.1.1.2 ! root 149: <tt><i>height</i></tt> には 12, 16 1.1 root 150: のいずれかを指定します。デフォルトは <tt>12</tt> です。 1.1.1.2 ! root 151: <q> ! 152: GUI Only. ! 153: Specifies the initial fontsize on all sub windows. ! 154: <tt><i>height</i></tt> is one of 12 or 16. ! 155: The default value is <tt>12</tt> ! 156: </q> 1.1 root 157: _EOM_ 158: ); 159: 160: option_item(array("-s <i>scale</i>", 161: "--scale <i>scale</i>"), <<<_EOM_ 162: GUI 版のみ。 163: メインウィンドウの起動時のスケールを実数で指定します。 164: 起動後にもメニューからプリセットされた倍率には変更可能ですが、 165: 任意倍率は起動時のみ指定可能です 166: <span class=strike>(そのうちなんとかしたい)</span>。 167: デフォルトは 1.0 です。 1.1.1.2 ! root 168: <q> ! 169: GUI Only. ! 170: Specifies the initial main window scale in real number. ! 171: You can change this scale on GUI menu after boot, ! 172: but unlike this option, there are only a few preset choices ! 173: <span class=strike>(Should be improved in someday)</span>. ! 174: The default value is 1.0</q> 1.1 root 175: _EOM_ 176: ); 177: 178: option_item("--show-config", <<<_EOM_ 179: 設定ファイルと <tt>-V</tt> オプションを読み込んだ結果を表示します。 1.1.1.2 ! root 180: <q>Shows the result of reading configuration file and ! 181: parsing <tt>-V</tt> options.</q> 1.1 root 182: _EOM_ 183: ); 184: 185: option_item("-v", <<<_EOM_ 186: バージョンを表示します。 1.1.1.2 ! root 187: <q>Shows the version.</q> 1.1 root 188: _EOM_ 189: ); 190: 191: option_item("-V <i>name</i>=<i>value</i>", <<<_EOM_ 1.1.1.2 ! root 192: 設定ファイルの <tt><i>name</i>=<i>configvalue</i></tt> の代わりに ! 193: このオプションの <tt><i>name</i>=<i>value</i></tt> を適用します。 ! 194: <q>Applies this option's <i>name</i>=<i>value</i> ! 195: instead of <i>name</i>=<i>configvalue</i> in configuration file. ! 196: </q> 1.1 root 197: _EOM_ 198: ); 199: ?> 200: </dl> 201: 1.1.1.2 ! root 202: 以下開発用。<q>For developers:</q> 1.1 root 203: <dl> 204: <?php 205: // 項目間を空けない 206: function option_dev($name, $desc) 207: { 208: print "<dt class=dt-indent><tt>{$name}</tt></dt>\n"; 209: print "<dd>{$desc}</dd>\n"; 210: } 211: 212: option_dev("-b <i>hexaddr</i>", <<<_EOM_ 213: デバッガのブレークポイントを 16進数で指定します。 214: _EOM_ 215: ); 216: 217: option_dev("-C", <<<_EOM_ 218: ログをコンソールにも出力します。 219: 通常はログウィンドウにだけ出力されます。 220: _EOM_ 221: ); 222: 223: option_dev("-d", <<<_EOM_ 224: 起動時にデバッガプロンプトで停止します。 225: _EOM_ 226: ); 227: 228: option_dev("-D", <<<_EOM_ 229: コンソールをデバッガとして使用します。 230: -d を指定しなくても起動時にプロンプトで停止します 231: <span class=strike>(そのうちなんとかしたい)</span>。 232: _EOM_ 233: ); 234: 235: option_dev("-L <i>name1</i>=<i>level1</i>[,<i>name2</i>=<i>level2</i>,...]", 236: <<<_EOM_ 237: ログレベルを指定します。 238: カンマで区切って複数指定することも出来ます。 239: <tt>-Lhelp</tt> で name の一覧を表示します。 240: _EOM_ 241: ); 242: 243: option_dev("-M <i>name</i>[,<i>name2</i>,...]", <<<_EOM_ 244: 起動時に表示するモニタウィンドウを指定します。 245: カンマで区切って複数指定することも出来ます。 246: _EOM_ 247: ); 248: 249: 250: ?> 251: </dl> 252: </div> 253: 254: <h4>設定 <q>Configuration</q></h4> 255: <div class="main"> 256: VM の設定ファイルはその VM ディレクトリ内の nono.cfg です。 257: 書式は <tt>key = value</tt> 形式で1行1項目ずつです。 258: <tt>key</tt> と <tt>value</tt> の前後の空白は取り除かれます。 259: また空行と "<tt>#</tt>" で始まる行は無視します。 260: 知らないキーの行も無視します。 1.1.1.2 ! root 261: <q>VM configuration file is nono.cfg in the VM directory. ! 262: Its syntax is <tt>key = value</tt> format, one per line. ! 263: White spaces before and after <tt>key</tt> and <tt>value</tt> are ignored. ! 264: And, blank lines, lines beginning with "<tt>#</tt>", and ! 265: lines with unrecognized key are also ignored. ! 266: </q> 1.1 root 267: <p> 268: 設定項目は次の通りです。 1.1.1.2 ! root 269: <q>The configuration items are:</q> 1.1 root 270: <dl> 271: <?php 272: function config_item($name, $desc) 273: { 274: item($name, $desc); 275: } 276: 277: config_item("vmtype = <i>string</i>", <<<_EOM_ 1.1.1.2 ! root 278: VM 種別を指定します。 ! 279: 今の所 <tt><i>string</i></tt> に 1.1 root 280: 指定できるのは <tt>luna</tt> (LUNA-I) だけですが、省略不可です。 1.1.1.2 ! root 281: <q>Specifies the VM type. ! 282: For now, only <tt>luna</tt> (LUNA-I) can be specified for ! 283: <tt><i>string</i></tt>. ! 284: This field is mandatory.</q> 1.1 root 285: _EOM_ 286: ); 287: 288: config_item("debugger-port = <i>integer</i>", <<<_EOM_ 289: デバッガの TCP 待ち受けポート番号を指定します。 290: 0 なら待ち受けを行いません。 291: デフォルトは 9999 です(適当)。 292: _EOM_ 293: ); 294: 295: config_item("ethernet-hostdriver = <i>string</i>", <<<_EOM_ 296: イーサネットデバイスのホスト側ドライバを指定します。 297: <tt>none</tt>、<tt>tap</tt>、<tt>bpf</tt> が指定できます。 298: <tt>none</tt> ならホスト側とは一切通信を行いません。 299: <tt>tap</tt> か <tt>bpf</tt> かはホスト OS によってビルド時に決定します。 300: NetBSD なら <tt>tap</tt> です。 301: _EOM_ 302: ); 303: 304: config_item("ethernet-macaddr = <i>string</i>", <<<_EOM_ 305: イーサネットデバイスの仮想マシン側の MAC アドレスを指定します。 306: <tt><i>XX</i>:<i>XX</i>:<i>XX</i>:<i>XX</i>:<i>XX</i>:<i>XX</i></tt> 307: 形式で指定します。 308: <tt>auto</tt> なら自動的に決定します。 309: デフォルトは <tt>auto</tt> です。 310: _EOM_ 311: ); 312: 313: config_item("luna-dipsw1 = <i>string</i>", <<<_EOM_ 314: 本体前面 DIPSW#1-1..#1-8 の内容を指定します。 315: "<tt>0</tt>" を DOWN、"<tt>1</tt>" を UP として、 316: これを8つ並べた形式で、前から順に #1..#8 に対応します。 317: デフォルトは <tt>11110111</tt> です。 1.1.1.2 ! root 318: <q>Specifies status of the front panel DIPSW#1-1..#1-8. ! 319: "<tt>0</tt>" means DOWN and "<tt>1</tt>" means UP. ! 320: The first character corresponds to #1 and ! 321: the eighth character corresponds to #8. ! 322: The default value is <tt>11110111</tt>.</q> 1.1 root 323: <br> 324: 各スイッチの内容はここ 325: (<a href="https://wiki.netbsd.org/ports/luna68k/luna68k_info/" 326: >NetBSD/luna68k: Information</a>) を参照してください。 1.1.1.2 ! root 327: <q>See <a href="https://wiki.netbsd.org/ports/luna68k/luna68k_info/" ! 328: >NetBSD/luna68k: Information</a> about DIPSW.</q> 1.1 root 329: _EOM_ 330: ); 331: 332: config_item("luna-dipsw2 = <i>string</i>", <<<_EOM_ 333: 本体前面 DIPSW#2-1..#2-8 の内容を指定します。 334: 書式は <tt>luna-dipsw1</tt> と同じです。 335: デフォルトは <tt>11111111</tt> です。 1.1.1.2 ! root 336: <q>Specifies status of the front panel DIPSW#2-1..#2-8. ! 337: The same syntax as <tt>luna-dipsw1</tt> is used. ! 338: The default value is <tt>11111111</tt>.</q> 1.1 root 339: <br> 340: すべて "<tt>1</tt>"(UP) なら 341: NetBSD/luna68k のブートローダは自動的にカーネルをロードして実行し、 342: どれかでも "<tt>0</tt>"(DOWN) にするとプロンプトで停止するようです。 343: <span class=strike>(本当は #8 だけで制御するつもりだったんじゃないかという気がします)</span> 1.1.1.2 ! root 344: <q>If the value is <tt>11111111</tt>, ! 345: NetBSD/luna68k bootloader will automatically load and execute the kernel. ! 346: Otherwise, the bootloader will enter interactive mode. ! 347: <span class=strike>(I doubt that they actually wanted to switch with only #8) ! 348: </span> ! 349: </q> 1.1 root 350: _EOM_ 351: ); 352: 353: config_item("mpu-clock = <i>value</i>", <<<_EOM_ 354: MPU のクロック数を MHz 単位で指定します。 355: デフォルトは 20MHz です。 1.1.1.2 ! root 356: <q>Specifies the MPU clock in MHz. The default value is 20MHz.</q> 1.1 root 357: _EOM_ 358: ); 359: 360: /* luna には不要 361: config_item("mpu-has-fpu", ""); */ 362: 1.1.1.2 ! root 363: config_item("prom-image = <i>path</i>", <<<_EOM_ ! 364: 外部 ROM イメージファイルのパスを指定します。 ! 365: <i>path</i> がファイル名のみなら VM ディレクトリとその親ディレクトリからこのファイル名を検索します。 ! 366: <i>path</i> が相対パスなら VM ディレクトリからの相対パスになります (現在のディレクトリからではありません)。 ! 367: 空にすると内蔵 ROM を使用します。 ! 368: デフォルトは空です。 ! 369: <q>Specifies the external ROM image file path. ! 370: If the <i>path</i> does not have any path delimiters, ! 371: the VM directory and then its parent directory will be searched. ! 372: If the <i>path</i> is a relative path, ! 373: it will be path from the VM directory, not from the current ! 374: directory. ! 375: If the <i>path</i> is empty, internal emulated ROM will be used. ! 376: The default value is empty.</q> 1.1 root 377: <p> 1.1.1.2 ! root 378: 実機を持っていない場合はこの値を空に (= デフォルトのままに) しておくと、 1.1 root 379: nono 内蔵のなんちゃって下位互換 ROM で起動します。 1.1.1.2 ! root 380: <q>If you does not have the real LUNA machines, ! 381: you can boot with nono's internal downward compatible emulated ROM ! 382: if you set this field empty (or leave it as the default).</q> 1.1 root 383: <p> 1.1.1.2 ! root 384: 実機を持っている場合は ROM ファイルを指定することで実機 ROM で起動できます。 ! 385: ROM ファイルは実機の 0x41000000-0x4101ffff (128KB) を保存したものです。 ! 386: <q>If you have the real LUNA machines, ! 387: you can boot with the real ROM spcifying the ROM file path. ! 388: The ROM file is extracted from 0x41000000-0x4101ffff (128KB) from ! 389: the real machine.</q> ! 390: _EOM_ ! 391: ); ! 392: ! 393: config_item("ram-size = <i>value</i>", <<<_EOM_ ! 394: 搭載する RAM サイズを MB 単位で指定します。 ! 395: デフォルトは 16MB です。 ! 396: <q>Specifies the RAM size in MB. The default is 16MB.</q> 1.1 root 397: _EOM_ 398: ); 399: 400: config_item("spc0-id<i>N</i>-image = <i>devtype</i>,<i>path</i>", <<<_EOM_ 401: SCSI デバイスを指定します。<i>N</i> には 0 から 7 が入ります。 402: ID 7 は本体が使用しますので指定しないでください。 403: 値はデバイス種別 <i>devtype</i> とイメージパス <i>path</i> 404: を "<tt>,</tt>"(カンマ) で区切って並べた形式で、 405: 今の所デバイス種別 <i>devtype</i> には "<tt>hd</tt>"(ハードディスク) のみ指定可能です。 406: ディスクイメージパスが相対パスなら VM ディレクトリからの相対パスになります。 1.1.1.2 ! root 407: <q> ! 408: Specifies SCSI device. <i>N</i> is 0 to 7. ! 409: But don't specify ID 7 because the host uses it. ! 410: The value is in a form of device type <i>devtype</i> and ! 411: the image path <i>path</i> separated by "<tt>,</tt>"(comma). ! 412: For now, only "<tt>hd</tt>" (hard disk) can be specified for <i>devtype</i>. ! 413: If the <i>path</i> is relative path, it is from the VM directory. ! 414: </q> ! 415: 1.1 root 416: <p> 417: 例えば、nono.cfg と同じディレクトリに置いたディスクイメージ luna.img 418: を使う場合、 419: LUNA では通常 ID 6 をプライマリ HDD に割り当てるのでこんな感じになります。 1.1.1.2 ! root 420: <q>For example, if you use disk image luna.img placed in the same ! 421: directory as nono.cfg, ! 422: since LUNA usually assigns ID 6 to the primary HDD, ! 423: write as following:</q> 1.1 root 424: <blockquote><pre> 425: spc0-id6-image = hd,luna.img 426: </pre></blockquote> 427: _EOM_ 428: ); 429: 430: config_item("spc0-id<i>N</i>-writeprotect = <i>integer</i>", <<<_EOM_ 431: 指定の SCSI デバイスへの書き込みを無視するかどうか指定します。 432: <tt>0</tt> なら通常動作(書き込みを行う)です。 433: <tt>1</tt> なら書き込みコマンドは成功したように振る舞いますが実際には 434: ディスクイメージに一切書き戻しません。 435: fsck を気にせずカーネルのデバッグとかを行いたい場合にはどうぞ。 436: 何が起きるか意味が分からない人は指定しないでください。 437: デフォルトは <tt>0</tt> です。 1.1.1.2 ! root 438: <q>Specifies whether nono ignores writing to SCSI devices. ! 439: <tt>0</tt> means normal operation (writes to the devices). ! 440: If <tt>1</tt> is specified, ! 441: nono will not actually write back to the disk image ! 442: even though the write command is succeeded. ! 443: nono's SCSI devices acts as ! 444: write command is successfully done but it never writes back ! 445: to the actual disk image. ! 446: This is useful for kernel debugging because it does not require fsck ! 447: after the kernel hangs. ! 448: But don't use this flag if you don't understand this paragraph. ! 449: The default value is <tt>0</tt>. ! 450: </q> 1.1 root 451: _EOM_ 452: ); 453: 454: 455: ?> 456: </dl> 457: </div> 458: 459: 460: <h4>実行してみる <q>Try it</q></h4> 461: <div class="main"> 1.1.1.2 ! root 462: つついさんが NetBSD/luna68k 9.0 の liveimage を用意してくださっています ! 463: (いつもありがとうございます)。 ! 464: <q>Tsutsui-san has provided NetBSD/luna68k 9.0 liveimage for this ! 465: (Thanks as always).</q> ! 466: <br> ! 467: <ol> ! 468: <li>どこかに nono 用のディレクトリを用意し(例えば ~/nono/)、 1.1 root 469: その中に VM ディレクトリを用意します (例えば ~/nono/luna/)。 1.1.1.2 ! root 470: <q>Create a directory for nono somewhere (for example ~/nono/), ! 471: and create subdirectory for individual VMs in it (for example ~/nono/luna).</q> 1.1 root 472: 1.1.1.2 ! root 473: <li><a href="http://teokurebsd.org/netbsd/liveimage/20200518-luna68k/" ! 474: >http://teokurebsd.org/netbsd/liveimage/20200518-luna68k/</a> から ! 475: イメージファイルをダウンロードして展開し、 ! 476: VM ディレクトリ ~/nono/luna/ に置きます。 ! 477: <q>Download imagefile from ! 478: <a href="http://teokurebsd.org/netbsd/liveimage/20200518-luna68k/" ! 479: >http://teokurebsd.org/netbsd/liveimage/20200518-luna68k/</a>, ! 480: extract it and place it in the VM directory, ~/nono/luna.</q> ! 481: ! 482: <li>同じく VM ディレクトリに設定ファイル nono.cfg を以下の内容で用意します。 ! 483: <q>Create a configuration file nono.cfg in the same VM directory, ~/nono/luna, ! 484: with following contents:</q> ! 485: <blockquote class="file"><pre> ! 486: vmtype = luna ! 487: spc0-id6-image = hd,liveimage-luna68k-raw-20200518.img ! 488: </pre></blockquote> ! 489: <li><tt>nono -c ~/nono/luna</tt> で起動します ! 490: (VM ディレクトリに自動的に NVRAM.DAT が作られます)。 ! 491: <q>Run as <tt>nono -c ~/nono/luna</tt>. ! 492: (It creates NVRAM.DAT automatically in the VM directory)</q> ! 493: <li>Emulated ROM Monitor が起動するので、 ! 494: 初回は以下のように入力すると NetBSD が起動します。 ! 495: <q>The emulated ROM Monitor will be executed. ! 496: Then, only for the first time, ! 497: entering the following can boot NetBSD.</q> ! 498: <blockquote class="file"><pre> ! 499: k ! 500: [Enter] ! 501: [Enter] ! 502: d ! 503: boot ! 504: g ! 505: x ! 506: </pre></blockquote> ! 507: この内容は NVRAM.DAT に記録されているので次回以降は直接 NetBSD が起動します。 ! 508: <q>The information you have just entered is recorded in NVRAM, ! 509: so next time it boots NetBSD automatically.</q> ! 510: </ol> ! 511: <p> ! 512: <a href="https://twitter.com/tsutsuii/status/1262429647364427783" ! 513: >元ツイートはこちら<q>Original tweet</q></a>。 1.1 root 514: </div> 515: 516: 517: <h4>ネットワーク設定 <q>Setup network</q></h4> 518: <div class=main> 1.1.1.2 ! root 519: 設定ファイル nono.cfg に以下の行を追加します。 ! 520: <q>Add the following line to configuration file, nono.cfg.</q> 1.1 root 521: <blockquote class="file"><pre> 522: ethernet-hostdriver = tap 523: </pre></blockquote> 1.1.1.2 ! root 524: 次に VM ディレクトリかその親ディレクトリに nono-ifup、nono-ifdown ! 525: というスクリプトを用意します。 1.1 root 526: nono は tap(4) をオープンし、 527: そのデバイス名を引数にこれらのスクリプトを呼びます。 1.1.1.2 ! root 528: <q>Then, prepare two scripts named nono-ifup and nono-ifdown ! 529: in the VM directory or its parent directory. ! 530: nono will open tap(4) and ! 531: invoke these scripts with the name of the device as an argument.</q> 1.1 root 532: <p> 533: 最もシンプルなケースだとおそらく 1.1.1.2 ! root 534: <q>For example, in the simplest case, probably,</q> 1.1 root 535: <blockquote class="cons"><pre> 536: # brconfig bridge0 create 537: # brconfig bridge0 add wm0 538: </pre></blockquote> 539: のようにして用意しておいた bridge0 に対して、 540: (sudo の設定は別途行ってから) 541: 次のような nono-ifup、nono-ifdown を用意すれば 542: wm0 の物理セグメントとブリッジできると思います。 1.1.1.2 ! root 543: <q>If you setup bridge0 as above (and setup sudo) and ! 544: prepare the following nono-ifup, nono-ifdown scripts, ! 545: you can bridge between the guest network and host's wm0. ! 546: </q> 1.1 root 547: <blockquote> 548: nono-ifup 549: <pre class=file> 550: #!/bin/sh 551: sudo ifconfig $1 up 552: sudo brconfig bridge0 add $1 553: </pre></blockquote> 554: 555: <blockquote> 556: nono-ifup 557: <pre class=file> 558: #!/bin/sh 559: sudo brconfig bridge0 delete $1 560: sudo ifconfig $1 down 561: </pre></blockquote> 562: 563: </div> 564: 565: 1.1.1.2 ! root 566: <h4>既知の問題 <q>Known problems</q></h4> ! 567: <div class="main"> ! 568: <ul> ! 569: <li>メモリおよびデバイスのアクセスウェイトは未実装です。 ! 570: <q>Any access wait cycles for memories and devices are not implemented yet</q> ! 571: <li>メインウィンドウの中心にサブウィンドウが表示されていると ! 572: マウスモードが効きません。(ver 0.0.2 以降) ! 573: <q>Mouse mode can not work when some sub windows are displayed ! 574: on the center of the main window. (since ver 0.0.2)</q> ! 575: </ul> ! 576: ! 577: </ul> ! 578: </div> ! 579: ! 580: ! 581: <h4>変更履歴 <q>Changes</q></h4> ! 582: <div class="main"> ! 583: See <a href="changes.html">changes.html</a>. ! 584: </div> ! 585: ! 586: ! 587: <h4>ライセンス <q>License</q></h4> ! 588: <div class="main"> ! 589: See <a href="nono-license.txt">nono-license.txt</a>. ! 590: </div> ! 591: ! 592: ! 593: <h4>パッチの提供について <q>About contributes</q></h4> ! 594: <div class="main"> ! 595: パッチを提供してくださる場合は以下に同意したものとします。 ! 596: <q>If you provide a patch to nono, you must agree to the following conditions: ! 597: </q> ! 598: <ul> ! 599: <li>成果物が nono のライセンスに従って運用あるいは配布されること。 ! 600: <q>All your work are operated or distributed under the nono license.</q> ! 601: <li>ライセンスが将来変わる可能性があること。 ! 602: <q>The license may be changed in the future.</q> ! 603: <li>著作部分に関して著作者人格権を行使しないこと。 ! 604: <q>Do not exercise your author's rights.</q> ! 605: </ul> ! 606: <ul> ! 607: </div> ! 608: ! 609: ! 610: <h4>Acknowledgements</h4> ! 611: <div class="main"> ! 612: nono は以下の広告条項を含むソースコードを利用しています。 ! 613: <q>nono uses source code with the following advertising clause.</q> ! 614: <blockquote> ! 615: This product includes software developed by Gordon Ross<br> ! 616: This product includes software developed by the University of California, Lawrence Berkeley Laboratory.<br> ! 617: </blockquote> ! 618: </div> ! 619: 1.1 root 620: 621: <hr> 1.1.1.2 ! root 622: nono project 1.1 root 623: </body> 624: </html>
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.