-------------------------------------------------- ----------------------------

 SCSI Target Emulator RaSCSII (*^..^*)
 for Raspberry Pi

 Powered by XM6 TypeG Technology.
 Copyright (C) 2016-2020 GIMONS

-------------------------------------------------- ----------------------------
□ Regarding the functions unique to the X68000
  RaSCSI is equipped with a virtual SCSI device called a bridge device,
  You can bridge the host Raspberry Pi. With this bridge device
  The following functions are provided by using the dedicated driver for X68000.
  
  ・Ethernet
    It provides the same Ethernet function as Neptune-X. SCSI-connected Ethernet
    RaSCSI behaves like a BOX. Relay packets to the Raspberry Pi TAP device
    It is realized by doing. Similar to Ether+.

  ・Host file system
    The emulator of X68000 provides a standard function equivalent to Windrv.
    Mount the file system on the Raspberry Pi as a remote drive
    I can.

□ How to activate the Bridge Device
  If you set the keyword "BRIDGE" as the file name when RaSCSI starts up, it will be assigned to that ID.
  Generate a Buzzilli device for it.

  ex)
    sudo rascsi -ID0 HDIMAGE0.HDS -ID6 BRIDGE

□ Dedicated driver
  Two drivers are included in RASDRIVER.XDF or RASDRIVER.HDS included in the distribution
  I am. It is better to mount RASDRIVER.HDS with RaSCSI and copy it appropriately to transfer to the actual device
  It will be easy.

□ Ethernet connection
  Ethernet driver (RASETHER.SYS) works with bridge device to connect to Ethernet
  You can send and receive packets.

  Below, the IP address of the virtual adapter (TAP) of Raspberry Pi is "192.168.68.1",
  The case where the X68000 side is set to "192.168.68.3" will be explained.

  -X68000 settings
    RASETHER.SYS is made by modifying the driver for Neptune-X.
    Exactly the same. In order to connect the X68000 to the internet, it is necessary to set other environment settings.
    I will. Please check the setting method by yourself.
    
    Below is an excerpt of CONFIG.SYS and AUTOEXEC.BAT that are actually used.

    [Excerpt from CONFIG.SYS]
      PROCESS = 3 10 10
      DEVICE = \NETWORK\RASETHER.SYS

    [Excerpt from AUTOEXEC.BAT]
      SET SYSROOT=A:/NETWORK/
      SET temp=A:\
      SET tmp=A:\
      SET HOME=A:/NETWORK/ETC/
      SET HOST=X68000
      XIP.X
      IFCONFIG.X lp0 up
      IFCONFIG.X en0 192.168.68.3 netmask 255.255.255.0 up
      INETDCONF.X +router 192.168.68.1 -rip
      INETDCONF.X

  ・Raspberry Pi settings
    I am using a TAP device, so please enable TAP. perhaps
    If you're using Jessie these days, it should work from the beginning. The confirmation method is /dev/net/tun
    If the file exists, it can be determined that it is valid.

    The method of creating a virtual adapter is as follows.
    
    [Set from /etc/rc.local etc.]
      ip tuntap add ras0 mode tap user root
      ip link set ras0 up
      ifconfig ras0 inet 192.168.68.1/8 up
      route add -net 192.168.68.0 netmask 255.255.255.0 dev ras0

   By the above, communication between Raspberry Pi (192.168.68.1) and X68000 (192.168.68.3)
   It will be possible.

   When connecting to the Internet etc., bridge and routing on the Raspberry Pi side
   Settings are required. Please set according to your environment. Wifi
   In this case, there seem to be various problems in constructing a bridge.
   NAT configuration is also recommended. The author uses it in rc.local with the following settings.

      echo 1 >/proc/sys/net/ipv4/ip_forward
      iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

□ Host file system cooperation
  It provides the same functions as Windrv and WindrvXM that are often used in the X68000 emulator.
  Raspberri Pi files if you include a dedicated device driver called RASDRV.SYS
  It means that the system can be seen and operated as a drive on the X68000 side.

  Registering a device driver is easy.
  For example

      DEVICE = \SYS\RASDRV.SYS

  In this case, mount the root directory of Raspberry Pi by default.
  The drive mounted when the device driver is started is displayed.
  If you want to mount other than root, please specify the directory. /home/pi etc.
  To mount

      DEVICE = \SYS\RASDRV.SYS /home/pi

  Specify. If you specify multiple directories, they will be mounted as separate drives.
  It is possible.

  If you are using SUSIE, please install RASDRV.SYS before SUSIE. When incorporated later
  There are reports that it can not be recognized correctly.

[EOF]