This page details the process for upgrading an already-working RISC OS installation on a Raspberry Pi to RISC OS 5.27.
If you are upgrading from a recent (2017 or later) release, you can skip ahead to here. If you are using an older (2016 or earlier) release, you will have to follow the whole process.
This will be a two stage process. First you need to upgrade to RISC OS 5.24, then once you have 5.24 working you can upgrade to 5.27. Do not try to upgrade direct to RISC OS 5.27 – it may not work.
Once you have confirmed that !Boot still works properly, proceed as follows:
*SaveCMOS !Boot.Loader.CMOS
ramfsfile=CMOS
ramfsaddr=0x508000
*SaveCMOS $.Backups.CMOS-RO524
(or a location of your own choosing)1 The InSituBootUpgrade file (supplied with the 5.24 HardDisc4 image) assumes you are upgrading from 5.22, but RC14 was based on RISC OS 5.21 – to successfully use the InSituBootUpgrade process you’d need to run the 5.22 InSituBootUpgrade file first (and finding a copy of the 5.22 HardDisc4 image can be tricky). If you are upgrading from RISC OS 5.19 (Pi releases up to approximately RC10) you cannot use the InSituBootUpgrade process at all.
This should be a simple matter of checking your monitor configuration is appropriate for use at RISC OS 5.27, and then performing the upgrade itself. These two items are described in turn below.
In earlier releases of RISC OS 5, the monitor pixel resolution chosen at boot-up time was controlled by two settings supplied to the Raspberry Pi bootloader (the “hdmi_group” and “hdmi_mode” lines in config.txt). If you want RISC OS to continue using those settings, you should add disable_mode_changes
to cmdline.txt2. Otherwise, those settings will be ignored from RISC OS 5.24 onwards.
Instead RISC OS can now use EDID to obtain the native pixel resolution directly from the monitor itself. Most monitors manufactured in the last 15 years support EDID, so you should use it if at all possible.
2 For example, you may be using a display that only supports a specific pixel resolution, or perhaps you want to use the “AnyMode” utility.
Two CMOS RAM configuration settings – previously all but ignored – are now expected to hold valid information. These are “MonitorType” and “WimpMode”: while RISC OS 5.24 is rather forgiving of unusual values in these two fields, from RISC OS 5.27 they must be correct or the monitor may not display a picture.
So, it is necessary to check that the values are correct before upgrading to 5.27.
*Status MonitorType
*Status WimpMode
*Configure MonitorType Auto
*Configure WimpMode Auto
You should now be ready to perform the upgrade to RISC OS 5.27.
CMDLINE/TXT
inside !Boot.Loader (if it doesn’t already exist). The file should contain the text disable_gamma
on the first line. See cmdline.txt (Raspberry Pi) for details.3 The build date is mentioned immediately below the download link itself. Although listed as “daily” builds, they do occasionally skip a day or three.
4 If you want to continue using ZeroPain, the Beta ROM archive contains the latest version. Installation instructions are included in the archive.
ramfsfile=CMOS
ramfsaddr=0x508000
*SaveCMOS !Boot.Loader.CMOS