Guest Join UsWelcome to our RISC OS Forum !
This developer forum wants to give a platform for programmers that want actively support the RISC OS development.
Add missing drivers for RISC OS (WIFI, Bluetooth, GPU 3D, GPU video, USB 3)
Add more applications
Improve handling and features of current RISC OS open source applications
Add more open source games
Improve RISC OS core functions like filer, filecore, font manager, internationalization
Supportive tasks like translation of RISC OS

For non-developers we suggest you look at the ROOL Forum www.riscosopen.org/forum
or Create an Account


Big Grin Soft Mesa working with OpenGL 1.1
User Avatar Forum: Mesa 3D driver with software rendering (open)
Posted by: ksattic - 09-03-2021, 04:20 PM - No Replies

I've got a soft Mesa working now with OpenGL 1.1; it took a while to get it building in the autobuilder but it's working now. The hardware rendered version is also working again on the Iyonix.

I also managed to get the latest Mesa building in Ubuntu with software and hardware rendering - it took a while because I spent quite a lot of time trying to get it working on macOS, but then I ended up dual-booting Ubuntu on my Windows PC so I'm unblocked now.

I've had a very busy August at work and I'm about to go to the UK for 3 weeks (departing in a few hours). I don't have any way to do development while I am there because my work laptop is locked down and cannot run a VM.

I uploaded the RISC OS version of Mesa to github a couple of weeks ago: https://github.com/simonrules/Mesa-3.4.1-riscos

There are some demo files in the ros_demos directory.

I will push my latest changes there today so that readers are able to try with the autobuilder.

Print this item

  Data transfer protocol and clipboard
User Avatar Forum: RISC OS Bug Reports or Insufficiencies
Posted by: Stefan (Cloverleaf) - 08-24-2021, 09:48 AM - No Replies

Here is an article of Nemo about data transfer and Clipboard

https://www.getrevue.co/profile/nemo20000/issues/the-ineffability-of-the-data-transfer-and-clipboard-protocols

Print this item

  Open source options for a physical based renderer
User Avatar Forum: Physically based rendering (Raytracing)
Posted by: Stefan (Cloverleaf) - 08-10-2021, 06:55 AM - No Replies

Currently there exists one port of a raytracer for RISC OS of POVray https://www.riscosports.co.uk/vfp/
But there exists some more sophisticated renderers that could be ported.

https://www.mitsuba-renderer.org/

Watch the video about the physical based rendering technology:
http://rgl.epfl.ch/publications/NimierDa...19Mitsuba2

or

https://www.pbrt.org/

https://www.pbrt.org/gallery

PBRT example:

[Image: emily.jpg]


Who would like to port them and maybe inetgrate them into an 3D editor. A very simple 3D editor is available in the form of the Merlin 3D editor on this site also.

Print this item

  FreeCAD port
User Avatar Forum: 2D/3D CAD
Posted by: Stefan (Cloverleaf) - 07-31-2021, 02:12 PM - No Replies

One application that is really missing in RISC OS is a 2D/3D CAD program.
There is RiscCAD for £30 (35 EUR / 40 USD) Visit RiscCAD website
and ProCAD for £60 (70 EUR / 80 USD) Visit ProCAD website
So one solution to close there gap is to port an open source CAD.

Here are 4 examples what open source CAD software are available:

www.freecadweb.org



www.librecad.org



www.openscad.org



www.salome-platform.org
[url=https://www.youtube.com/watch?v=slK1SVn_G28][/url]

Print this item

  RISC OS GCC 10 intro
User Avatar Forum: GCC 10 in RISC OS (open)
Posted by: Stefan (Cloverleaf) - 07-27-2021, 08:11 AM - Replies (1)

Actually there exists the official GCC release for RISC OS of version 4.7.2.
For the release of the new !Iris browser Lee Noa has been working on GCC 10.2.
There might be some other people involved but I don't have insight information about it. So sorry for possibly incomplete information.

From the GCC mailing list at RISCOS.info I got this info from Chris Gardensen:

The GCCK 10.2.0 native compiler hasn't been released yet. Once you have the
autobuilder set up you can build it yourself.

mkdir gccsdk
cd gccsdk
svn co svn://svn.riscos.info/gccsdk/trunk/autobuilder/ autobuilder
svn co svn://svn.riscos.info/gccsdk/trunk/gcc4/ gcc4

mkdir build
cd build


Create a file call build-setvars containing the following contents.
(Assuming the autobuilder has been installed in /home/gccsdk.)

      GCCSDK_INSTALL_CROSSBIN=/home/gccsdk/cross/bin
      GCCSDK_INSTALL_ENV=/home/gccsdk/env
      RO_SHAREDLIBS=yes
      RO_USE_ARMEABIHF=yes
      AB_ELFBUILD=yes

rm -f /home/gccsdk/autobuilder/develop/gcc/gcc.dwarf2out.c.p
../autobuilder/build -v gcc

The packages for the native compiler will be created in
/home/gccsdk/autobuilder/autobuilder_packages/arm/Development.

Using GCC natively on RISC OS is very slow. It's OK for simple stuff.

I had to set a 32000k wimplot otherwise everything froze.

Using GCC 10.2.0 with the autobuilder successully builds e.g. Qupzilla,
RPCEmu, ffmpeg and  mplayer.

Print this item

  3D driver technical description
User Avatar Forum: 3D GPU Mesa Driver for RockChip RK3399 (in progress)
Posted by: ksattic - 07-26-2021, 02:32 PM - No Replies

RISC OS is missing a standard 3D API and drivers. In the past there have been numerous projects which have attempted to bring 3D rendering to RISC OS, but none had sufficient support or were restricted to a single platform.

The main ones I'm aware of are:

  • Software rendered OpenGL 1.x via a Mesa 3.x port from the early 2000s. This had an ARM code renderer and would work on machines of the time but the assembly needs updating for current compilers.
  • Hardware rendered OpenGL 1.x via a Mesa 3.x port from 2005 for the Iyonix. This had a hardware accelerated renderer but would only work on the Iyonix with specific GeForce cards. Vertex processing was still done in software so although it could run games like GLQuake, it was fairly slow. I made this port.
  • Hardware rendered "Khronos" driver for the Raspberry Pi 1-3, including a module which provides SWI access to the OpenGL API.


The main limitation of the Mesa ports is that access to the OpenGL APIs was via C/C++ only, since there were no bindings for other languages. From a design perspective, it would make the most sense to provide the OpenGL (or other) APIs via SWIs, since that would allow for a language-agnostic way to make these calls. We can still provide C APIs for ease of porting existing software. In terms of flexibility, allowing for different renderers to be swapped in below these APIs would allow for software or hardware rendering on any given RISC OS platform.

As a first step, the goal is to create (or port) a module that provides access to OpenGL 1.1 APIs from RISC OS. The next step is to connect that to an existing software and hardware renderer. Following that, more recent OpenGL APIs will be added, and a core goal is to maintain a port of Mesa with a 3D accelerant for the RK3399. This is already available in Panfrost, for Linux.

Print this item

  Developer introduction
User Avatar Forum: 3D GPU Mesa Driver for RockChip RK3399 (in progress)
Posted by: ksattic - 07-26-2021, 02:18 PM - No Replies

Hi all, I wanted to make an introduction. I'm Simon Wilson and I'm working on a 3D driver for RISC OS. I started programming on RISC OS when I was 12 and I have the following (working) machines: A3000, A3010, A5000, A7000+, RiscPC, RiscPC Kinetic, Iyonix, Titanium, ARMBook, and a few Raspberry PIs. 

My background is in embedded software engineering and graphics. I ported the first 3D drivers to Android (for the G1 and Nexus 1 phones) when I was working at Qualcomm, and I'm also the designer/author of tinyalsa (the de-facto audio library for Android) and Nanohub/Context Hub (the sensor co-processor OS for Android).

Please feel free to say hi or ask questions. I'll also post a technical thread for the 3D driver.

Print this item

  Hardware video decoder for RockChip RK3399 task
User Avatar Forum: RockChip RK3399 video hardware decoder (open)
Posted by: Stefan (Cloverleaf) - 07-17-2021, 07:01 PM - No Replies

One of the missing important drivers for RISC OS is a hardware video decoder for the Raspberry Pi 3 & 4.
this is specially needed in the age of internet where a majority of content is presented as videos.

I found this content:

[/url]https://github.com/rockchip-linux/mpp
https://github.com/rockchip-linux/libv4l-rkmpp


[url=http://opensource.rock-chips.com/wiki_Mpp]http://lkml.iu.edu/hypermail/linux/kerne...02233.html

https://patchwork.kernel.org/project/lin...ulik.info/

https://www.programmersought.com/article/56114329398/
https://lwn.net/Articles/816270/

The task will be two parts:
1. Videoplayer integration into RISC OS that it could be integrated also in web browsers (Iris, NetSurf)
2. Driver to access the hardware video decoder

Print this item

  Intro for the Raspberry Pi VideoCore Harware Video decoder
User Avatar Forum: Raspberry Pi Video hardware decoder
Posted by: Stefan (Cloverleaf) - 07-17-2021, 06:13 PM - No Replies

One of the missing important drivers for RISC OS is a hardware video decoder for the Raspberry Pi 3 & 4.
this is specially needed in the age of internet where a majority of content is presented as videos.

I found this content on the Raspberry Forum:

Pi0-3 have hardware accelerated decode for H264, MPEG4, H263, and through optional codec licences for MPEG2 and VC1.
Pi4 has the same hardware accelerated decode for H264, but not the other codecs. It also has a separate block for HEVC.

The block for H264 etc can only be accessed via the VPU firmware, which means either MMAL or IL. That applies to all platforms.
There is a wrapper above MMAL that implements the V4L2 M2M stateful decoder API - https://github.com/raspberrypi/linux/bl ... l2-codec.c. This should appear as /dev/video10 on our downstream kernel builds.

FFmpeg has a client implementation for V4L2 M2M
V..... h263_v4l2m2m V4L2 mem2mem H.263 decoder wrapper (codec h263)
V..... h264_v4l2m2m V4L2 mem2mem H.264 decoder wrapper (codec h264)
V..... mpeg2_v4l2m2m V4L2 mem2mem MPEG2 decoder wrapper (codec mpeg2video)
V..... mpeg4_v4l2m2m V4L2 mem2mem MPEG4 decoder wrapper (codec mpeg4)
It also has a client implementation for MMAL
V..... h264_mmal h264 (mmal) (codec h264)
V..... mpeg2_mmal mpeg2 (mmal) (codec mpeg2video)
V..... mpeg4_mmal mpeg4 (mmal) (codec mpeg4)
V..... vc1_mmal vc1 (mmal) (codec vc1)

GStreamer likewise has components for V4L2 decode as v4l2h264dec, etc.

HEVC decode on the Pi4 is through a separate block that is driven by the Linux kernel. I'm just finishing off PR for that - https://github.com/raspberrypi/linux/pull/3505.


Full thread can be read here:
https://www.raspberrypi.org/forums/viewt...p?t=268356

Further information:
https://elinux.org/Raspberry_Pi_VideoCore_APIs
https://en.wikipedia.org/wiki/VideoCore

The task will be two parts:
1. Videoplayer integration into RISC OS that it could be integrated also in web browsers (Iris, NetSurf)
2. Driver to access the hardware video decoder of the VideoCore IV (Raspberry Pi 0 to 3) or VI (Raspberry Pi 4)

Print this item

  Open source matrix printer driver
User Avatar Forum: Guten Print matrix printer driver (in progress)
Posted by: Stefan (Cloverleaf) - 07-08-2021, 09:01 AM - No Replies

There is a lack of an up-to-date matrix printer driver for RISC OS. MW-Software offers still the GutenPrint driver but it is based on a version that is about 10 years old.
So the current GutenPrint version must be compiled and integrated into RISC OS printer system.
Martin Würthner from MW Software is willing to supply the sources for the RISC OS printer side but details must be still discussed.

www.gimp-print.sourceforge.net
Sources for GutenPrint

Print this item


About RISC OS Developer Forum - Open Source for ARM SoC #Raspberry Pi #Acorn

For any more information, please use our contact form.

              User Links