Back to Silas S. Brown's home page
RISC OS and low vision
Modern versions of RISC OS have a function which
magnifies almost everything by a scale factor of 2
without sacrificing resolution. Middle-click the
rightmost-but-one icon on the taskbar and move the
mouse over the Mode option, then delete the last 2
words and replace them with EX0 EY0 (so the
mode string will look something like X1280 Y1024
C256 EX0 EY0) and press Enter.
- This might not work well on an emulator.
It works on old RISC PC hardware, and on the Raspberry Pi (RISC OS 5).
- StrongED won't scale bitmap fonts (and versions before 4.7
display them strangely) so right-click on the "tick" icon and choose
an outline font.
This needs to be done for each editing mode you use.
- While you're there, try left-clicking the "tick" and selecting Display / Alternative colour scheme. There's also a "Windows" option that lets you set the default size and position.
- Applications like NettleSSH (which uses ZapRedraw) can also have trouble displaying large sizes.
- NetSurf gives minor display corruption on scrolling (due to its Bug 513); this is improved by turning off the menu's Display / Render / Buffer all rendering
To ensure RISC OS is magnified on startup, open
$.!Boot.Choices.Boot.Tasks, edit one of the files (in RISC OS 4 edit
!Boot; in RISC OS 5 edit one of the others---try ScrnSetup) and add the
line WimpMode X1280 Y1024 C256 EX0 EY0 or
whatever. If you need more magnification, reduce
the resolution (or if only one application needs to be
magnified then you may be able to adjust that).
You can adjust the desktop font on RISC OS 4 by opening !Boot and
choosing Fonts (I use Homerton.Medium).
Alternatively, use a VNC server and magnify
at the client (which has the advantage that you
can share a one-input monitor without using a
Setting the clock without NTP
If your sight condition makes it harder to look off-screen at a wall
clock etc, then you might want to ensure the on-screen clock is correct.
The Raspberry Pi has no battery-backed clock, and
old RISC PCs can have broken batteries, so
if NTP is not available then you could
- run a Telnet server on RISC OS and have another machine telnet
in and set the time, or
- on a Raspberry Pi that dual-boots between
RISC OS and Raspbian, arrange for Raspbian to save its clock to
the RISC OS partition before rebooting into RISC OS (assuming you've
arranged for the Raspbian clock to be correct, e.g. daytime
query over PPP connection
from a USB modem that RISC OS wouldn't support...)
This Python time-setting script
can either run on the other machine and perform the telnet commands,
or run on Raspbian and save the clock to RISC OS on shutdown.
See comments at start of the script for usage.
High contrast mode for RISC OS 4
(in RISC OS 5 this is less helpful but still works partially)
Some people prefer to have dark backgrounds and light
text. To achieve this throughout RISC OS, download
my RISC OS high-contrast
theme and run the HighContrast obey file. (You
can also edit the source if you need to change the
colours.) The NormalColours obey file can be used
to temporarily switch back to normal colours, which you
will sometimes need to do because some programs don't
work well with HighContrast. After making each
change, close and re-open any Edit windows (that way
NormalColours still gives you high contrast in Edit).
If you want you can add the line Filer_Run
$.high-contrast/zip (correcting the path as
appropriate) into $.!Boot.Choices.Boot.Tasks.!Boot so
that the options are available on startup (you could
also add the line Run
$.high-contrast/zip.HighContrast if you want it to
be selected by default). Both of these rely on
SparkFS being run first (so put the line late in the
file). Some applications will display differently
depending on whether they are loaded before or after
HighContrast. Sometimes you will have to
explicitly set the application's foreground colour to
something other than black, or change the application's
All material © Silas S. Brown unless otherwise stated.