RPCEmu Linux Guide: Difference between revisions

From RISC OS
Jump to navigationJump to search
(Enlarging bootdisc image)
(Enlarging bootdisc: reformat, text added)
Line 96: Line 96:
Run the emulator and wait till the system has been booted. Now open the Filer window of your ''HostFS'' disc. This disc is linked to your previously created hostfs directory. It's now empty but you can use this disc to transfer files from the host system to RISC OS and back. The ''ADFS'' harddisc where the system boots from, is linked to an image file hd4.hdf on your host system.
Run the emulator and wait till the system has been booted. Now open the Filer window of your ''HostFS'' disc. This disc is linked to your previously created hostfs directory. It's now empty but you can use this disc to transfer files from the host system to RISC OS and back. The ''ADFS'' harddisc where the system boots from, is linked to an image file hd4.hdf on your host system.


Open !Boot (shift doubleclick) on the bootdisc and go to directory Choices.Boot.Task.!hostfs. Edit !Run (shift doubleclick) and change line 'rmensure hostfs 0 rmload <hostfs$dir>.hostfsrm' to 'rmensure ArcEmHostfs 0 RMLoad <hostfs$Dir>.hostfsrm'
Open !Boot (shift doubleclick) on the bootdisc and go to directory Choices.Boot.Task.!hostfs. Edit !Run (shift doubleclick) and change line:

rmensure hostfs 0 rmload <hostfs$dir>.hostfsrm

to:
rmensure ArcEmHostfs 0 RMLoad <hostfs$Dir>.hostfsrm


Copy !Boot from the IDEDisc4 to the HostFS disc.
Copy !Boot from the IDEDisc4 to the HostFS disc.
Line 113: Line 119:
unzip rpchform
unzip rpchform


Boot the emulator and enter CTRL+END. A menu pops up at the left top. Select 'Disc' -> 'Load drive :0...' Select hform.adf and press 'OK'. Open drive 0 (click on the :0 icon) and run !HForm. Format the ADFS bootdisc with these options:
Boot the emulator and enter CTRL+END. A menu pops up at the left top. Select 'Disc' -> 'Load drive :0...'. Select hform.adf and press 'OK'. Open drive 0 (click on the :0 icon) and run !HForm. Format the ADFS bootdisc with these options:


Drive: 4
Drive: 4
Line 129: Line 135:
Longfilenames: Yes (only available for RISC OS 4)
Longfilenames: Yes (only available for RISC OS 4)
Confirm format: Yes
Confirm format: Yes
Large file allocation unit: 2048
Large file allocation unit (LFAU): 2048


You have created a large harddisc image of 504MB for ADFS drive 4. If you want a bigger image then enlarge number of cylinders. Note that the parking cylinder must be the total amount of cylinders minus 1.
You have created a large harddisc image of 504MB for ADFS drive 4. If you want a bigger image then enlarge number of cylinders. Note that the parking cylinder must be the total amount of cylinders minus 1. Note also that you have to multiply the suggested LFAU value by 2. So if HForm suggets 1024 then change it to 2048.

Revision as of 14:36, 23 October 2008

Introduction

This quick guide describes how to download/instal/configure RPCEmu for your linux environment. The guide is written for a [hddp://www.debian.org/ Debian] linux distribution like [hddp://www.ubuntu.com Ubuntu], [hddp://www.knoppix.org/ Knoppix] and [hddp://www.xandros.com/ Xandros]. This doesn't mean it won't work on other linux distributions but commands, package names and places of files could be different then described in this guide.


Requirements

What do you need:

  • Linux system: P4 or similar processor at about 2GHz or more.
  • A working [hddp://en.wikipedia.org/wiki/X_Window_System X Window system (X11)]
  • Internet connection
  • Harddisc space: 62 MB for the emulator and 500 MB for RISC OS applications
  • Image files of RISC OS roms 3.6, 3.7 or 4.02 (best is RISC OS 4.02)


Installation

Get the required packages for the RPCEmu emulator by using apt-get:

sudo apt-get update
sudo apt-get install subversion liballegro4.2 liballegro4.2-dev liballegro4.2-plugin-jack

Get the lates RPCEmu package with subversion:

svn co svn://svn.riscos.info/rpcemu/trunk rpcemu

After downloading:

cd rpcemu/src/
aclocal
automake
autoconf

If you get an error that the system doesn't recognize any of the above commands then install the next packages:

sudo apt-get install make automake autoconf

You can get some warnings from the allegro library, just ignore them.

Now you have two options. Create the interpreter version of rpcemu or the dynamic recompiler. The first one is slower but more stable and it's possible to select an ARM processor. The recompiler version has the advantage to be five times faster but only runs the StrongARM (SA) processor. If you want to run the SA processor under RISC OS 4 then I recommend the recompiler because of bad screen redraws and abort on data transfers in 16 bits per pixel modes.

To select the interpreter:

./configure

To select dynamic recompiler:

./configure --enable-dynarec

If you see the output and get no errors then compile:

make

The emulator is ready for use. You only need the RISC OS roms. I recommend to get RISC OS 4.02 because it has more support for internet. As RISC OS is copyrighted, you have to get them yourself from a real RISC PC. Just open a taskwindow on your RISC PC and enter the next commands:

*save rom1 38000000 39000000
*save rom2 39000000 3A000000
*save rom3 3A000000 3B000000
*save rom4 3B000000 3C000000

Get the 4 files (rom1 rom2 rom3 rom4) to your linux host system and copy them to the roms directory. If you have the wget package then download the bootimage:

wget hddp://b-em.bbcmicro.com/arculator/hdboot.zip

otherwise download the archive from the site with your browser. Extract the archive to the rpcemu directory and overwrite cmos.ram and hd4.hdf:

unzip hdboot.zip

Create two directories:

mkdir hostfs
mkdir poduleroms

Edit rpc.cfg:

mouse_following = 1
cdrom_type = 0
cdrom_enabled = 1
blit_optimisation = 0
refresh_rate = 60
stretch_mode = 0
sound_enabled = 1
vram_size = 2
cpu_type = ARM710
mem_size = 32
ipaddress = 172.31.0.1

Start up the emulator in your X11 environment:

rpcemu

A window will pop up and the emulator loads the OS and runs the !Boot. You've got a working RISC OS desktop on your linux system.


Enlarging bootdisc

Run the emulator and wait till the system has been booted. Now open the Filer window of your HostFS disc. This disc is linked to your previously created hostfs directory. It's now empty but you can use this disc to transfer files from the host system to RISC OS and back. The ADFS harddisc where the system boots from, is linked to an image file hd4.hdf on your host system.

Open !Boot (shift doubleclick) on the bootdisc and go to directory Choices.Boot.Task.!hostfs. Edit !Run (shift doubleclick) and change line:

rmensure hostfs 0 rmload <hostfs$dir>.hostfsrm

to:

rmensure ArcEmHostfs 0 RMLoad <hostfs$Dir>.hostfsrm

Copy !Boot from the IDEDisc4 to the HostFS disc.

Now press F12 and enter the command:

*configure filesystem HostFS

Return to the desktop. Go back to the linux console and copy the HostFS module in the !Boot to your poduleroms dir with:

cp hostfs/\!Boot/Choices/Boot/Tasks/\!hostfs/hostfsrm,ffa podulesroms/

Shutdown RISC OS, quit the emulator, get HForm from the [hddp://b-em.bbcmicro.com/arculator Arculator] website and unzip it:

wget hddp://b-em.bbcmicro.com/arculator/rpchform.zip
unzip rpchform

Boot the emulator and enter CTRL+END. A menu pops up at the left top. Select 'Disc' -> 'Load drive :0...'. Select hform.adf and press 'OK'. Open drive 0 (click on the :0 icon) and run !HForm. Format the ADFS bootdisc with these options:

Drive: 4
Retain shape: No
Drive type: OTHER
Sectors per track: 63
Heads: 16
Cylinders: 1024
Drive parameter init flag: 1
Parking cylinder: 1023
No more changes to defect list
Initialise the drive
Soak test: None
Bootable disc: Yes
Longfilenames: Yes (only available for RISC OS 4)
Confirm format: Yes
Large file allocation unit (LFAU): 2048

You have created a large harddisc image of 504MB for ADFS drive 4. If you want a bigger image then enlarge number of cylinders. Note that the parking cylinder must be the total amount of cylinders minus 1. Note also that you have to multiply the suggested LFAU value by 2. So if HForm suggets 1024 then change it to 2048.