[Oberon] ULX3S oberon

Michael Schierl schierlm at gmx.de
Sat May 11 22:55:59 CEST 2019


Hello Davor,

Am 11.05.2019 um 12:41 schrieb D EMARD:

> 64-bit color is connected and should go to DVI/HDMI monitor display
> Just I don't know how to make something color from oberon-v5 disk image,
> attached examples seem to draw only BW


The only two commands in Oberon5 where you actually can use colors are
Edit.ChangeColor (to change the color of the selected text) and
Draw.ChangeColor (to change the color of the selected shape). However,
they do not have any effect in case your Display.Mod uses a 1-bpp
framebuffer (like in the image from projectoberon.com and many others on
the net). So you first need a different Display.Mod that uses a 4-bpp
(or higher :D) framebuffer.

See e.g. <http://saanlima.com/forum/viewtopic.php?f=14&t=1296&start=10>
for Verilog changes (for the Saanlima Pepino) to use 4-bpp framebuffer
and a 16-color palette lookup table. A Display.Mod for that setup can be
found at
<https://github.com/schierlm/OberonEmulator/blob/master/Oberon/Display.Mod.16Colors.txt>.
Depending on your memory layout (which is defined by the bootloader)
there might not be enough display memory for a 4-bpp framebuffer at
1024x768, so you maybe also need to change the bootloader to use a
different memory layout, and/or (significantly) reduce the display
resolution.

After that you should already see colors; as some places in the Oberon
source use hardcoded color 1 for white and others use 15 for white, and
some use XOR, you will effectively see colors 0,1,14,15 on screen. You
can spend some time and change constants in various modules to match the
colors those used by old Native Oberon for x86:

<http://schierlm.github.io/OberonEmulator/emu.html?image=ColorBigmemDiskImage>
(this is an emulator running in your browser, not just a screenshot).



Regards,


Michael


More information about the Oberon mailing list