Linux Port
Pages: 1 ... 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Rob Heaton (274) 515 posts |
Does the Linux Port need updating now that RISC OS 5.28 is out? |
Lothar (3292) 134 posts |
Does the Linux Port require ARM with full 32-bit support like A72 or does it work also on ARM with only User Mode 32-bit support like A76? |
Chris Gransden (337) 1207 posts |
See this forum topic. |
Jan Rinze (235) 368 posts |
A few things from testing a fresh build on the RPI4 - Often the desktop hangs for no apparent reason, requiring to restart the run_RISC_OS. - The mouse arrow is a non-transparent block - PlingStore can’t connect - Backups of harddisk directory seems to lose the xattributes and are rendered useless. - Build only works after fiddling with the make files to download the harddisk uitl file - run_RISC_OS needlessly rebuilds the ROM at startup |
Jan Rinze (235) 368 posts |
Do we have a ‘stable’ checkout point in git which is know to work well? |
Jan Rinze (235) 368 posts |
On the RPI4:
but on the Xavier AGX:
which seems to be off. |
Jan Rinze (235) 368 posts |
The ‘hangs’ appear to be network related. Is there a proper way to setup network on the Linux Port? |
Kuemmel (439) 384 posts |
Hi Jan, interesting machine that Xavier ! Off topic from your question…but could you run my three Fractal benchies if you got time ? How many MHz ist that thing running on ? Find them here |
Jan Rinze (235) 368 posts |
Benchmarks Xavier AGX @ 2265.6 MHz: 32 Bit Fixed Point Integer Fractal NEON Single Precision VFP Double Precision VFP Single Precision see also https://www.riscosopen.org/forum/forums/9/topics/15359?page=1#posts-110160 |
Raik (463) 2061 posts |
From the first post suggests to me that it works. But no answer…
Is there a way? I have no answer/todo found. Thanks a lot! |
Timothy Baldwin (184) 242 posts |
I’ve done that.
Just requires user mode.
I haven’t seen that.
This is SDL bug #5037, which affects version 2.0.12. It’s fixed in version 2.0.14, but there 2 other bugs, when resizing the window it often terminates with an X11 error, and it fails to start if accessed over ssh. I’ve tried to modify the Makefiles to download and build working SDL source if necessary, however it fails to build on 32-bit ARM for me. Commit 13430:c32f98490438 does appear to work
Works for me.
It you use a backup program that handles extended attributes it works. :-) Perhaps an easy option to use ,xxx extenstions for HardDisc4 is needed. The ‘hangs’ appear to be network related. Apart from setting the DNS server address there is nothing to set. For debugging try using strace to check if it is stuck in system call. |
David Feugey (2125) 2709 posts |
Hi Timothy. Do you advice on good hardware to test it (Chromebook, SBC…)? |
Andrew Chamberlain (165) 74 posts |
I was wondering about this too. In terms of modern ARM chipsets for laptops/desktops the most up to date/powerful are the boards in the M1 Macs and Qualcomm Snapdragon 8CX-based Windows laptops (both of which are customised Cortex A76 designs). As far as I’m aware, Linux has yet to be ported on to any of these devices. I think the fastest ARM-based laptop to run Linux would be something like the Lenovo Chromebook Duet or the HP Chromebook 11a, both of which use the (A73-based) Mediatek MT8183 chipset. I don’t know whether anyone has tried the RISC OS port on either of these. Below that you’re down to Pi 4/Pinebook Pro level hardware. |
Charlotte Benton (8631) 168 posts |
Do we have a step-by-step guide to installing this on the Raspberry Pi 4 (assuming standard Raspberry Pi OS)? |
Timothy Baldwin (184) 242 posts |
Whatever you run it on, you may need root privileges to adjust the vm.mmap_min_addr sysctl value, which sets the lowest virtual address available, which currently needs to be 12288 (&3000) or lower to fit in the debugger workspace and scratch space. I have some changes that move the scratch space, and doesn’t fail to boot if virtual addresses below 32768 (&8000) aren’t usable. However this breaks the Debugger module, Zap and probably some other programs. |
Timothy Baldwin (184) 242 posts |
I think I found out why !Store doesn’t work reliably, Linux select() is edge triggered and will not report a socket is ready again until until after it becomes non-ready, whereas I think RISC OS and BSD are level triggered. It appears I will have to write an implementation of select. |
David J. Ruck (33) 1635 posts |
@Tim it was things like that which caught me out when making the Red Squirrel to Windows network pass through. Windows was much less BSD like than Linux. |
Colin Ferris (399) 1814 posts |
Would it be possible to give modules the option of retuning in ‘user mode’ stack set up for user mode – say by indicating to the OS – by adding a extra flag. |
Timothy Baldwin (184) 242 posts |
I don’t know what you mean by this. |
Colin Ferris (399) 1814 posts |
To work towards rmodules running in User mode. For testing purposes – I switched a rmodule to User mode when called. By the way – does Linux RO run on the Pinebook Pro? |
Timothy Baldwin (184) 242 posts |
The Linux port runs with the CPU in 32-bit user mode.
Is there something other than CPU mode you wish to test? Do you mean RISC OS state entered by OS_LeaveOS?
I’ve tested it on a Cortex A72 (specifically a AWS a1 with Graviton 1), not sure about Cortex A53. RISC OS does lots of thing that officially don’t work on ARMv8, and I would not be surprised if something the type of CPU it is running on changing. If it doesn’t like the A53s you could use taskset to force it onto the A53s. |
Raik (463) 2061 posts |
Works. Look here. ;-) |
Timothy Baldwin (184) 242 posts |
I’ve added a RISC OS style select, and added Taskwindow support to the Internet module. !Store, NetSurf, WebJames, Packman and SimpleGit all work (at least partially). I have worked around 2 SDL bugs (solid mouse pointer and crashing on windows resize ) by scripting the download of an older binary. I have added the
It works well enough to run bash, dash and RISC OS:
Quoting arguments works:
It needs some work doing on it:
|
Raik (463) 2061 posts |
Thanks a lot for the Linux Port. |
David Pitt (3386) 1248 posts |
Some Linux commands run. *ixrun whoami * * *ixrun date Fri Mar 12 10:48:36 UTC 2021 *IXRun ifconfig -a * *ixrun which which /usr/bin/which *ixrun uname Linux *
I have not seen that. The only freeze previously seen was associated with networking and/or NetSurf, which I need to revisit. Otherwise it had been stable. This is a local build with DDE29c from the sources on an RPi400. (But I have just found a way to freeze the Linux port, by running an app from within a zip. The apps run OK if copied out from the zip first. This was with SparkFS 1.46.) By way of light entertainment I reproduced the Scale 0.17 bug on it thereby demonstrating the accuracy of the port. Thanks for the port, apart from trivia, it’s looking good. |
Pages: 1 ... 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20