Showing changes from revision #27 to #28:
Added | Removed | Changed
The instructions given below are suitable for models of Raspberry Pi up to and including the Pi 4B and Pi 400.
The Raspberry Pi 5 is not supported.
The Raspberry Pi bootloader files live in the FAT16 partition of the boot SD. On a standardDOS partition of the boot SD. On a standard RISC OS build using a Dual-format SD card, this can be reached by double-clicking on !Boot.Loader (i.e. shift-doubleclick on !Boot and then double-click on the file called “Loader”).
The Pi Zero, Pi 1, Pi 2 and Pi 3 use the following files:
bootcode.bin
– The boot loader for the CPU.start.elf
– The GPU firmware. Forms a matched pair with fixup.datfixup.dat
– Additional code for the GPU. Forms a matched pair with start.elfriscos.img
– The RISC OS ROMconfig.txt
– Configuration parameters for the boot loader. See below for suggested contents.cmdline.txt
– (Optional) Additional parameters to be passed to the kernel (i.e. RISC OS). See below for possible contents.On the Pi 4 (and Pi 400) the following two files take the place of bootcode.bin
, start.elf
and fixup.dat
:
start4.elf
– The Pi 4 GPU firmware. Forms a matched pair with fixup4.datfixup4.dat
– Additional code for the Pi 4 GPU. Forms a matched pair with start4.elf Note If that you the are installing recent firmware on a Pi 4 4B has or its Pi boot 400, code you in may need to update theonboard EEPROMEEPROM so as it well. does See not the need bootcode.bin.Pi 4 EEPROM section below.
If you are running a recent build of RISC OS 5.31 beta – and only if you are running RISC OS 5.31 – there is a good chance that the latest Raspberry Pi firmware will work. Use these direct links to download the latest firmware:
In all other cases – and particularly if you experience problems with the latest firmware – you should try an older firmware build, available from the following index pages1:
For the Pi Zero, Pi 1, Pi 2 and Pi 3, the procedure to follow is:
For the Pi 4B and Pi 400, the procedure to follow is:
1 These index pages may not work if you are using NetSurf. Please use another browser to retrieve the firmware files.
2 This is the date as reported by “vcgencmd version”. The website will mention the commit date, which can be later than the build date.
3 The download button contains a downward-pointing arrow – when you hover the mouse pointer over the button you should see a tooltip of “Download raw file”.
If you are installing (or upgrading to) RISC OS 5.30 on a Pi 4B or Pi 400, you may need to update the boot EEPROM as well as installing new firmware.
*vcgencmd bootloader_version
From RISC OS:
From Windows/macOS/Linux:
This is a plain text file. The following example should be suitable for all models of Raspberry Pi supported by RISC OS:
[pi4]
enable_gic=1
[all]
arm_64bit=0
fake_vsync_isr=1
framebuffer_swap=0
gpu_mem=64
init_emmc_clock=100000000
kernel=RISCOS.IMG
ramfsfile=CMOS
ramfsaddr=0x508000
If you have a Pi 4B or Pi 400, config.txt must have a [pi4]
section containing the line
enable_gic=1
Parameters applicable to all models of Raspberry Pi appear in the [all]
section.
These parameters – and several others that may be of interest to RISC OS users – are discussed in more detail at config.txt (Raspberry Pi).
This file is optional: RISC OS will still boot if it is not present.
If you are running a development version of RISC OS (5.27, 5.29 or 5.31) you may need to specify the following parameter to avoid a blank screen issue.
disable_gamma
Parameters must be space separated on the first line of the file, so if you wanted to specify two parameters, you would do it like this:
disable_mode_changes disable_gamma
For details of the parameters available, see cmdline.txt (Raspberry Pi).