Tutorial: How to transfer files RISC OS<->RISC iX

A place for discussing anything RISC iX, whether emulated or on original hardware!
Post Reply
Sophira
Posts: 113
Joined: Mon Sep 26, 2022 9:45 am
Contact:

Tutorial: How to transfer files RISC OS<->RISC iX

Post by Sophira »

Transferring files from RISC OS to RISC iX and vice versa isn't too hard (especially from iX->ROS), but there's some interestingness for sure.

From RISC iX to RISC OS:

This is the easiest transfer direction. The RISCiXFS module loaded by !RISCiX can actually do pretty much all of the work for us here. In RISC OS, while !RISCiX is loaded, press F12 and type:

Code: Select all

*Filer_OpenDir RISCiXFS:$
Then press ENTER again to go back to the Desktop. A Filer window will pop up with the root filesystem contents, and you can then copy files to the RISC OS world using normal Filer procedures. (Sadly, it's read-only; you can't copy files *to* the filesystem here.)

From RISC OS to RISC iX:

This direction is a bit more fraught. The only method I know of for transferring files the other way round involves using a floppy disc (or, in the case of emulators like Arculator, a floppy image).

Generally, if you're transferring files to RISC iX, it would probably normally be preferable to use DOS-formatted discs, as RISC iX doesn't attempt to perform any character substitution regarding "/" characters in filenames on ADFS discs for extensions and such, which makes such files uncopyable. However, because I use Arculator and using either RISC OS or RISC iX to format a DOS disc gives me errors, I'm going to outline the ADFS method here.

Doing it this way involves formatting the floppy in ADFS 800K D format, which is not the standard for RISC OS (which normally uses E format). There are two ways of doing this - either via the floppy drive menu in RISC OS, or you can type "ffd adfs" in RISC iX.

Either way, once you have a floppy drive in D format, copy files to it in the usual way. (Remove any "/" characters from your filenames on the disc, because these will be uncopyable in RISC iX.) Then, in RISC iX, you can use these commands (see the man pages for details):
  • adfsls: List the catalogue of the disc
  • adfscp: Copy files from the ADFS disc to RISC iX (but not the other way round)
For example, adfsls -l will show you the catalogue of the disc, and adfscp gzip124 /tmp/. will copy a file called "gzip124" from the ADFS-formatted floppy disc to the /tmp directory.
iainfm
Posts: 602
Joined: Thu Jan 02, 2020 8:31 pm
Location: Dumbarton
Contact:

Re: Tutorial: How to transfer files RISC OS<->RISC iX

Post by iainfm »

OMG, I've found a way of making files available remotely to RISCiX running in Arculator.

After spending days messing around with tftp and ftp, it turns out that NFS works!

For my setup, I've used my TrueNAS media server box. Pools and storage were all set up, so I just created (well, reused) a folder /mnt/pool1/tftp as an NFS share.

For this you'll need:

A configured NFS server (any *nix distro should have one) with an exported folder

TCP/IP configured and working on the RiX side (SLiRP is the only option I get)

For TrueNAS, the vital things I needed to add to the NFS config were:
  • NFS server enabled (duh)
  • The 'Serve UDP NFS clients' option enabled
  • The 'Allow non-root mount' option enabled
  • An NFS share created to a local folder on the TrueNAS box
  • In the advanced options of the NFS export I set my local subnet range as an authorised network (my 192 range, not the 10.x range of RiX)
On the RiX side I added a hosts file entry for the TrueNAS box

fs <ip of TrueNAS box>

Then I can mount the NFS share with:

mount -t nfs fs:/mnt/pool1/tftp /mnt

This mounts the NFS share under /mnt (and also under /net, which I presume is some kind of automountd implementation).

Phew!
User avatar
awilliams
Posts: 145
Joined: Sun Feb 22, 2015 10:51 am
Location: Adelaide, Australia
Contact:

Re: Tutorial: How to transfer files RISC OS<->RISC iX

Post by awilliams »

Would it work the other way round?
I took a backup tar file of my RISC iX machine some time ago by exporting / on it and mounting that on linux and taring up the mount.

In the day it would be RISC iX that did the exporting, and the Acorn NFS client doing the mount. I have been meaning to test this with !Sunfish as the RISC OS client and then the other way round with !MoonFish as the exporter and RISC iX doing the mount.
For the Acorn NFS client you had to run PCNFSD on the RISC iX side.
Ronin47
Posts: 583
Joined: Tue Apr 20, 2021 5:32 pm
Contact:

Re: Tutorial: How to transfer files RISC OS<->RISC iX

Post by Ronin47 »

iainfm wrote: Thu Dec 21, 2023 4:26 pm OMG, I've found a way of making files available remotely to RISCiX running in Arculator.

After spending days messing around with tftp and ftp, it turns out that NFS works!

mount -t nfs fs:/mnt/pool1/tftp /mnt

This mounts the NFS share under /mnt (and also under /net, which I presume is some kind of automountd implementation).

Phew!
More RISC OS related, but I've just spent a bunch of time setting up a NIC in my A5000 and had massive troubles getting anything like FTP or SMB to work for file transfers.

Ultimately I set up some open NFS shares on my Windows server, and used Sunfish (NFS client for RISCOS) on the A5000 and was happily able to connect and transfer files.

Similarly I was able to set up an NFS share using Moonfish on my A5000 and connect using the mount command as you described on a Linux VM and also a Linux laptop.

NFS was definitely the way forwards for me after a lot of messing around, it was just straightforward.
iainfm
Posts: 602
Joined: Thu Jan 02, 2020 8:31 pm
Location: Dumbarton
Contact:

Re: Tutorial: How to transfer files RISC OS<->RISC iX

Post by iainfm »

awilliams wrote: Thu Dec 21, 2023 10:58 pm Would it work the other way round?
I took a backup tar file of my RISC iX machine some time ago by exporting / on it and mounting that on linux and taring up the mount.

In the day it would be RISC iX that did the exporting, and the Acorn NFS client doing the mount. I have been meaning to test this with !Sunfish as the RISC OS client and then the other way round with !MoonFish as the exporter and RISC iX doing the mount.
For the Acorn NFS client you had to run PCNFSD on the RISC iX side.
Should do - it doesn't really matter which way round you do it in some (but possibly not all*) ways. If your NFS share is r/w you can mount it as a folder in RiX and create the tar file in there. You'd need to exclude that folder from the tar (there's an option to not traverse mount points for example).

*I think the advantage of doing the tarring on the machine you're backing up is that symbolic links will be preserved. I have a feeling that if you exported the root partition, mounted it on a client and tarred it up there you'd lose those. You might also lose user/group information for files and folders as well, but at the end of the day they're both just numbers so maybe they'd be ok.
Post Reply

Return to “32-bit acorn software: RISC iX”