pygmy_giant wrote:I also downloaded Arch Elite but it has 26-bit components so would require an emulator to run on the Pi. Not sure which one though.
That would be Aemulor, which is expected to be released shortly. (You'll have to pay to use it on the Pi, though.) In the meantime, you could try ArcEm
, which emulates 1980s era hardware, but unfortunately it doesn't come with RISC OS ROMs, and I think the only (legal) source to obtain that from is the £10 Classic ROM Collection CD
I don't know how modern ArcElite is, and if it's too ancient then Aemulor may not be enough, but I'd be inclined to wait for the release of Aemulor.
Regarding your GCC problems, I think I might know what's going on.
As previously mentioned, RISC OS applications are self-contained directories, unlike anything on any other OS I know of. Shift-double-clicking on them will allow you to browse the contents. Certain filenames in the root of an application directory have special meanings. One of these, !Run, you've already encountered - it's the only compulsory one, and is executed when you double-click on the directory without holding down Shift. Another one is called !Sprites (which must be filetyped as a sprite), which contains the picture used to represent the directory - if this isn't present, it is given a default icon of an A made up of cogs. (You may also see !Sprites22 and !Sprites11 - if present, these hold higher resolution icons.)
The pertinent one in this case is called !Boot, which is automatically run whenever you open the directory containing the application
. Or at least, that's what happens in theory; in practice, RISC OS executes those files as little as possible to prevent directories containing large numbers of applications taking ages to open every time. (In the days of 8MHz processors, this was a real problem.) I'm still not quite sure how its optimisation and 'I've seen this app already' algorithms work, but it is very possible that it tried to execute the !Boot file of the copy of !GCC which you trashed by unzipping it on your PC, failed, and then didn't
attempt to execute the !Boot file of the working copy of !GCC in the zip when you opened the directory containing that a few seconds later.
By the way, !GCC is an entirely command line-based application, so there isn't really anything sensible for the !Run file to do. I believe it just contains a command to execute the !Boot file again (which is useful in the aforementioned circumstance that RISC OS didn't automatically execute the file itself because it thinks it's already seen this application when in fact it's a different one). The !Boot file sets a number of command aliases which allow you to type "gcc", "make", etc. in a TaskWindow (Ctrl-F12) without having to worry about where the gcc and make binaries are stored on your SD card (inside the !GCC application directory, as it happens). If it didn't do that, then you'd have to enter the full pathname every time.
Of course, this does have the disadvantage that you have to have opened a directory containing the !GCC application before you can use its commands. Fortunately, you can automate this process: middle-click over the raspberry icon (bottom-right corner), left-click on 'Configure', click on 'Boot' in the window which opens (the same one which our correspondent above regards as a 'parallel universe'), click on 'Look at'. Now drag and drop your copy of !GCC from its filer window into the pane on the left and click the yellow button (I think it's marked 'Set', but can't check ATM). Its !Boot file will now be automatically executed when the machine starts up.
tl;dr version: The moral of the story is:
NEVER EVER UNZIP A RISC OS PROGRAM UNDER WINDOWS, MAC OR LINUX!
You can fix your problem by deleting the copy of !GCC which you broke by doing this and unzipping it under RISC OS instead. If in doubt, reset the computer after doing this.
And now, some general advice for all those people who are having trouble downloading from NetSurf or installing with !Store: RISC OS uses drag'n'drop a lot
more than any other desktop environment. If you see a file icon and you're not sure what to do with it, generally speaking you're supposed to drag it to a filer window. This is standard practice across all RISC OS applications - e.g. if you click on StrongED's 'Save' button, you'll also see an icon which you're supposed to drag to a filer window. This is how you let RISC OS know the location you want to save in. The save function in most other OSes will open a window which requires you to navigate an entire directory structure in order to choose your location, but here the directory has to be opened externally to the application.
For a similar reason, RISC OS has no concept of the 'Open' window. All applications load files by dragging and dropping them from the filer to that application's icon on the icon bar. If the application has claimed the filetype, you can simply double-click on it (e.g. NetSurf claims the HTML filetype, which allows you to double-click on 'welcome/html', but loading NetSurf and then dragging and dropping the file from the Pinboard onto its icon would also work).
The icon bar (which was later poorly ripped off by Apple for their 'dock', and even more poorly imitated by Microsoft for their 'taskbar') is a concept which many newbies find confusing. An application does not
need to have windows open in order to be running! The very first thing any app does (assuming it's a desktop program) is add its icon to the icon bar. Then
, if you so desire, you can open its windows. (This avoids the need for, say, StrongED to create a blank text file every time you load it, just for the sake of having at least one window on the screen, unlike Notepad or emacs or any number of other foreign text editors. What's with that, anyway? Terrible OS design.) For the same reason, a program does not quit just because all its windows have been closed - to do that, you must middle-click on the icon and select 'Quit'. I see the distinction between 'an application' and 'windows belonging to an application' has already thrown at least one person. Remember, the icon
'is' the application - the windows