rplantz
Posts: 69
Joined: Sun Jul 01, 2012 2:38 am

Firmware changes?

Wed Aug 10, 2016 3:43 pm

I've used Raspbian on my RPi 3 to test code for an introductory assembly language textbook that I've written (available online at bob.cs.sonoma.edu). I'm thinking of moving to Risc OS for the I/O chapter. My original thought was that students could use Raspbian for most of the book, and then switch to their Risc OS card for the I/O chapter.

Looking over this forum, it looks like (a) Risc OS is not quite ready for the RPi 3, and (b) Risc OS alters the firmware on the RPi.

I also have an original RPi (256 MB model). It runs fine (but very slow) by simply moving my Raspbian SD card from the 3. I'm thinking that the old RPi might be a good platform for me to play with Risc OS. (I do realize that it will be slow.) But I'm concerned about what I'm reading about firmware changes. Not quite sure what's going on here.

fruitoftheloom
Posts: 24061
Joined: Tue Mar 25, 2014 12:40 pm
Location: Delightful Dorset

Re: Firmware changes?

Wed Aug 10, 2016 4:06 pm

rplantz wrote:I've used Raspbian on my RPi 3 to test code for an introductory assembly language textbook that I've written (available online at bob.cs.sonoma.edu). I'm thinking of moving to Risc OS for the I/O chapter. My original thought was that students could use Raspbian for most of the book, and then switch to their Risc OS card for the I/O chapter.

Looking over this forum, it looks like (a) Risc OS is not quite ready for the RPi 3, and (b) Risc OS alters the firmware on the RPi.

I also have an original RPi (256 MB model). It runs fine (but very slow) by simply moving my Raspbian SD card from the 3. I'm thinking that the old RPi might be a good platform for me to play with Risc OS. (I do realize that it will be slow.) But I'm concerned about what I'm reading about firmware changes. Not quite sure what's going on here.
RiscOS is a completely different OS to Linux and should be treated as such.

RiscOS on a Raspberry Pi 1 or Zero runs perfectly well...

As you will be installing RiscOS on a separate SD Card am at a loss to the Firmware issue, it is after all only software and does not change the hardware.

https://www.riscosopen.org/content/down ... spberry-pi

https://www.riscosopen.org/wiki/documen ... 0RISC%20OS

https://en.wikipedia.org/wiki/RISC_OS


.
Thinking outside the box is better than burying your head in the sand...

dfeugey
Posts: 119
Joined: Mon Nov 03, 2014 2:38 pm
Location: France
Contact: Website

Re: Firmware changes?

Wed Aug 10, 2016 5:33 pm

Looking over this forum, it looks like (a) Risc OS is not quite ready for the RPi 3
The RISC OS RC14 distribution is not ready for the Pi3, but RISC OS itself is.
and (b) Risc OS alters the firmware on the RPi.
Once again, you talk here of the distribution RISC OS RC14, delivered with a kernel, a filesystem and some firmware files.
Firmware is the same as on Linux, but here in an old version.
You can simply update it by changing some files on the FAT16 partition.
RISC OS FR - All RISC OS, in french (but not only)
http://www.riscos.fr/

rplantz
Posts: 69
Joined: Sun Jul 01, 2012 2:38 am

Re: Firmware changes?

Wed Aug 10, 2016 6:38 pm

My confusion about "firmware" comes from this statement, "It contains all the elements required to run RISC OS, including the firmware to initialise the Raspberry Pi as well as the HardDisc4 boot files, in an SD card image...", which comes from the information about the RC14 SD image on the riscosopen.org website. I've always thought of firmware as being in hardware, sometimes changeable, sometimes not. For example, I have updated the firmware in my router a couple of times. So when a disk image includes firmware, I'm somewhat confused. I don't wish to place either of my RPis in a state where they will only run RISC OS.

My overall question is: If I create an SD card with RISC OS on it and use that to run my RPi 1, can I still run Raspbian on the RPi 1 by simply swapping SD cards? As you might guess from the fact that I've written an entire book about assembly language programming, I would very much like to understand the details of what is going on with respect to "firmware", etc. :-)

Also, I would very much like to play with RISC OS. I've been programming since 1961 so have used a large variety of operating systems, and several embedded environments with no operating system. Looks like great fun to me.

fruitoftheloom
Posts: 24061
Joined: Tue Mar 25, 2014 12:40 pm
Location: Delightful Dorset

Re: Firmware changes?

Wed Aug 10, 2016 6:51 pm

rplantz wrote:My confusion about "firmware" comes from this statement, "It contains all the elements required to run RISC OS, including the firmware to initialise the Raspberry Pi as well as the HardDisc4 boot files, in an SD card image...", which comes from the information about the RC14 SD image on the riscosopen.org website. I've always thought of firmware as being in hardware, sometimes changeable, sometimes not. For example, I have updated the firmware in my router a couple of times. So when a disk image includes firmware, I'm somewhat confused. I don't wish to place either of my RPis in a state where they will only run RISC OS.

My overall question is: If I create an SD card with RISC OS on it and use that to run my RPi 1, can I still run Raspbian on the RPi 1 by simply swapping SD cards? As you might guess from the fact that I've written an entire book about assembly language programming, I would very much like to understand the details of what is going on with respect to "firmware", etc. :-)

Also, I would very much like to play with RISC OS. I've been programming since 1961 so have used a large variety of operating systems, and several embedded environments with no operating system. Looks like great fun to me.
You are looking for issues where none exist, you are over thinking the whole scenario :?

As the Raspberry Pi has no BIOS all the software required to boot is in a ROM in the VPU and various files (firmware) on the SD Card, yes the RPi boots from a VPU !

http://wiki.beyondlogic.org/index.php?t ... ot_Process


.
Thinking outside the box is better than burying your head in the sand...

rplantz
Posts: 69
Joined: Sun Jul 01, 2012 2:38 am

Re: Firmware changes?

Wed Aug 10, 2016 6:58 pm

fruitoftheloom wrote: You are looking for issues where none exist, you are over thinking the whole scenario :?
.
Yeah, I tend to do that. Like I said, I'm an assembly language programmer. ;-)

I truly appreciate your taking the time to help me here.

fruitoftheloom
Posts: 24061
Joined: Tue Mar 25, 2014 12:40 pm
Location: Delightful Dorset

Re: Firmware changes?

Wed Aug 10, 2016 7:19 pm

rplantz wrote:
fruitoftheloom wrote: You are looking for issues where none exist, you are over thinking the whole scenario :?
.
Yeah, I tend to do that. Like I said, I'm an assembly language programmer. ;-)

I truly appreciate your taking the time to help me here.
History, originally the Video Core VPU did not have an ARM CPU attached, hence why it Boots from the VPU, so in essence it is quite different from the so called RPi "Clones" SBC :

https://en.wikipedia.org/wiki/VideoCore

.
Thinking outside the box is better than burying your head in the sand...

baantonia
Posts: 63
Joined: Fri Feb 06, 2015 2:19 pm

Re: Firmware changes?

Wed Aug 10, 2016 9:50 pm

The RPi has no firmware in the sense of what you might find in a BIOS or router in that the RPi has no in-built storage (except the compute module). What you might consider to be equivalent to the firmware are the files contained within the FAT32 partition, these have changed over time with the changes of hardware. However each operating system sits separate to the 'firmware' (but on the same SD card) and therefore changes to that firmware may require corresponding changes to each OS. The RISC OS ROM is the equivalent to the kernel.img or kernel7.img file you find in the FAT32 partition for other OS's.

Removing an SD card from the Pi removes the not just the OS but also the so called 'firmware', so a RPi is never going to be locked in to only one type of OS.

Currently the RISC OS RC14 distribution is somewhat old and doesn't run on the RPi3 and there is currently no downloadable image file of RISC OS which will install and run on a RPi3 straight away. To run RISC OS on a RPi3 you have to create and format an ADFS partition in addition to the FAT32 partition, copy the 'firmware' files used in a current Linux distro to the FAT32 partition, copy the RISC OS nightly build ROM to the same partition, edit the config file, boot the Pi, download (to a memory stick on another computer the harddrive4 utility), copy and run the self ex-tractable harddrive4 utility within the ADFS partition then finally install the patches to !Boot. However this has to be done on a RPi2 or B+. Once you have the patched SD card it can be moved to a Pi3, hoorah! However you can then back up the SD card and restore to another SD card to be used on another RPi3. There is also a downloadable zip file of utilities which can be installed.

Note any backup you create will be the same size as the SD card you use, doesn't get compressed.
Useful to have a USB stick which holds its contents on a removable microSD card (for the ADFS format stage) and to create the ADFS partition there is software which can be purchased.

Or, if you have an earlier Pi, just use the RC14 download. Currently RISC OS only uses one core so only clock rate is the advantage of RPi3 and it cannot use the built-in WiFi or Bluetooth.

Why go to all this bother? Well to test software one has written and distributed and make updates as appropriate.

rplantz
Posts: 69
Joined: Sun Jul 01, 2012 2:38 am

Re: Firmware changes?

Thu Aug 11, 2016 12:30 am

Thank you very much for the thorough explanation, baantonia. Very helpful. I found your explanation of "firmware" being located on the SD card.

I will download the RC14 image and run that on my old RPi for now. That will give me a chance to learn how to use RISC OS. After I've crossed that bridge, I can think about playing with newer development versions on my RPi 3.

Many thanks to everyone who responded to my questions. Very helpful!!

baantonia
Posts: 63
Joined: Fri Feb 06, 2015 2:19 pm

Re: Firmware changes?

Thu Aug 11, 2016 5:49 am

By the way, if you don't mind paying for some development tools, the ROOL DDE software is very useful, tools I've used since the days of Acorn. Current version of the DDE runs on all the versions of RPi's.

microbits
Posts: 13
Joined: Wed Jan 06, 2016 1:54 pm

Re: Firmware changes?

Thu Aug 11, 2016 7:09 am

Sorry to but in but the last post is incorrect RC14 image will run on the Pi3 3 But you have to change the firmware.
As you have a Pi1 one your best option is to create an image using the RC 14 image file write this to an SDcard use a small one in an Micro SD adapter so that you can use it later in your Pi3 the image is only small so will only create a 2GB partition.
put this into the pi one and boot into Risc OS
Now download this File http://www.svrsig.org/software/update4.zip to update the firmware and the Risc Image(Rom)
Also down load the latest nightly build for the hard Disk here https://www.riscosopen.org/zipfiles/pla ... 1470729053
Next step update the current boot
First unpack the nightly build into a folder on the Pi1 running Risc OS this can then be used to update the current hard disc image
that you are using.
to do this double click on the !Boot folder to open Configuration left click boot from the dialog then left click install to open the merge dialog follow instructions by dragging the new !boot from the folder you unpacked and merge this will update the !boot to the latest version, do not restart yet.
Next unpack update 4 to a folder this has to be copied over your !Boot to update the the firmware and the Risc OS image so that it will work on a Pi Any version.
you can test that it has worked by rebooting your Pi 1 to check it then
you are ready to test it on your Pi 3 don't forget that you will also need to update some more software !Netsurf web browser but you can use !store to do this load it from the apps folder this is because the Pi 3 Is Arm 8 not Arm 6.
If You need any more info just ask.

baantonia
Posts: 63
Joined: Fri Feb 06, 2015 2:19 pm

Re: Firmware changes?

Thu Aug 11, 2016 8:29 am

Hi microbits,

Just as I said about RC14. By changing the ROM and the firmware and conducting the patching you have changed the version. You no longer have the initial RC14, only the partition structure and stuck with the 2GB size on any SD card you use, RC14 will not run on RPi3 directly as is, I've tried it.

Essentially you are building exactly the same as I described but with a limited size ADFS partition. Mine is a different route but with a slight tweek to use all of any currently, easily available, over the counter class 10 microSD cards (at least up to 16GB, haven't tried higher, too expensive for the job at present).

microbits
Posts: 13
Joined: Wed Jan 06, 2016 1:54 pm

Re: Firmware changes?

Thu Aug 11, 2016 9:23 am

The whole idea is to create a working system from an existing release candidate this being RC 14 as the user already has a Pi 1
It's a simple task to update it to work on the Pi 3 which is the whole point of the question.
The size limit is something that we cannot control this is set by the image if you want to create a 16Gb or 32GB SD card you have to use Systemdisc by Piccolo system here http://piccolosystems.com/disctools/systemdisc the dos Loader folder has to be in a special place on the SD Card to be able to load the Firmware & Risc OS Image, the Risc OS file system ADFS don't support partitions.
So unless you are in a position to host a 16Gb or 32Gb image we are stuck with it.

baantonia
Posts: 63
Joined: Fri Feb 06, 2015 2:19 pm

Re: Firmware changes?

Thu Aug 11, 2016 10:04 am

I agree, this is what I do, apart from starting with a RC14 install.

rplantz
Posts: 69
Joined: Sun Jul 01, 2012 2:38 am

Re: Firmware changes?

Thu Aug 11, 2016 2:40 pm

Thank you, microbits, for adding your knowledge here. All of this discussion has been very helpful in my understanding of the RISC OS environment on the RPi. I wish we could come up with some name other than "firmware" for a file on the SD card. On the other hand, people still use "core dump." (About half a century ago, my mother worked as a supervisor at a factory where they wound memory cores.)

Return to “RISCOS”