[Oberon] Oberon System emulator for Windows

Michael Schierl schierlm at gmx.de
Tue Feb 11 23:50:28 CET 2020


Hello Wojtek,


Am 11.02.2020 um 00:54 schrieb Skulski, Wojciech:

> 1. Is it possible to change the colors from white-on-grey to white-on-black, or the reverse black-on-white?

Not except patching the source code
<https://github.com/pdewacht/oberon-risc-emu/blob/079038a24feb6dd26d7193df9f916dcccd8eb055/src/sdl-main.c#L21>
and recompiling.

> 2. Is a color display available with at least a few colors like red, green, blue in order to mark the text with colors?

Peter's emulator only offers monochrome mode. My fork of the emulator
(available at
<https://github.com/schierlm/oberon-risc-emu-enhanced/releases>) also
supports a 16-color mode if you start it with the --color switch. That
will require a different Display.Mod file, though.

https://github.com/schierlm/oberon-risc-emu-enhanced/blob/master/Mods/Display.Color.Mod

So start in black&white mode, compile the Mod file, and restart in color
mode. Take a backup of your disk image before doing so, just in case.

The 16 color palette can be tweaked from within the system by writing 16
words (RGBA color) starting at address -128.

So you could make your system look like this if you prefer:

http://schierlm.github.io/OberonEmulator/emu.html?image=ColorDiskImage

(The black&white color palette is still hardcoded, as it is quite
readable for me.)

> 3. Are the official Text and Mod file formats pure ASCII as it is the case under the FPGA Oberon? Are the Oberon Text supported with fonts and colors?

When loading a file that starts with 0F1X, it will be loaded as Oberon
text, other files will be loaded as ASCII text.

<https://schierlm.github.io/OberonXref/ProjectOberon2013/Texts.html#L_115-120>

When saving a file, it will be saved as Oberon text.

<https://schierlm.github.io/OberonXref/ProjectOberon2013/Texts.html#L_164>

> Two observations.
>
> 1. I tried the emulator under Windowes 7 and Windows 10. It runs under both. The emulator does not run under Windows XP. It is a pity because both the ETH Oberon and Linz V4 run very well under XP.

This requirement is "interesting" in times where compilers and linkers
start removing support for Vista and Windows 7. On the other hand, the
version of MinGW I used to compile my fork does still support Windows XP.

And if you set the environment variable SDL_VIDEODRIVER=dummy it even
starts (yet is not very usable without display). So the culprit is the
SDL library (DLL).

And indeed, when replacing the SDL library by the one from
<https://www.libsdl.org/release/SDL2-2.0.10-win32-x86.zip>, my fork of
the emulator starts on XP as well (Did not try with Peter's build, may
work there as well).

> 2. The fonts are so tiny that I can barely see anything on my Acer Aspire E15 laptop. I wonder if it is possible to remap the fonts or do I have to do it manually in all the files?

Peter's emulator (starting from October 2017,
<https://github.com/pdewacht/oberon-risc-emu/commit/7217b49551999d016bdabee1922edd87de9fa9ed>)
supports a "--zoom 2" switch to scale the display to 2x. Unfortunately
the provided release binary is older. But my fork is newer and so has
the switch as well :)

Another (more hacky) option would be to rename another larger font to
Oberon10.Scn.Fnt.

As TextFrames uses this font to determine the line height, remapping all
the text to a larger font would result in overlapping lines (and would
not solve the menu headers still being unreadable on HiDPI displays).


Regards,


Michael


More information about the Oberon mailing list