ROOL Forum: Recent Posts

BBC BASIC - 64 bit integer support, long string support

Thu, 13 Feb 2025 00:09:18 -0000

The 80-bit FP is software-based; in essence what I did was convert the (32+8) bit software floating point code to (64+8+8bits spare), then to (64+16) bits; it runs at the same speed or slightly faster (on a Pi 5) than RISC OS ARM32 BBC BASIC on a Pi 4, and given the Pi5 is 3x faster than a Pi4, and I still have debug logging in the code, that isn’t bad!

I did this as it was / is a learning project (to learn ARM32, ARM64, more about floating point, and also how BASIC works!).

As a point of interest, it may be possible to hardware accelerate 80-bit FP on a 32/64-bit floating point unit. While I am focusing on what a C-based BBC BASIC with 32/64-bit ints etc would look like, it may be possible to write the core FP code in asm. If properly compartmentalized, this would mean rewriting a few dozen lines of asm ‘FP support code’, or defaulting to inbuilt soft-float. Rewriting a few dozen lines of asm code in ARM32, Aarch64, x86-64bit wouldn’t take long, and I think 64-bit intel supports 80-bit FP in hardware back in the 8086 days, so hopefully still does!)

RPCEmu on AArch64 Linux

Wed, 12 Feb 2025 20:26:31 -0000

now being closed source

Is there a source for this?

Not sure if you deliberately shortened the quote the way you did it. Jan said “With the development of RPCEmu now being closed source and no updates” which describes the current situation quite well – between releases, no code changes and hence no development is done in a publically available repo. There are still source drops for all release versions of course, as required by the GPL.

So you could say that “RPCEmu is still Open Source” and you could also say “RPCEmu development is no longer as open as in the past”. Although what this “past” means is unclear, because it went through some different ways of organizing the development, including various forks.

RPCEmu on AArch64 Linux

Wed, 12 Feb 2025 18:31:56 -0000

Nota: the work on the open source version of RISC OS 4.00 is also very promising, in order to provide a fully legal solution to users.

What is the problem with the legality of existing solutions? Like “I use my RISC OS license with the emulator” or “I bought the Classic RISC OS ROM collecton” or “I bought the RISC OS 4 Virtually Free”?

Of course, having an Open Source version has other advantages, and having it for free is also an advantage.

It’s also interesting, as it could include drivers for new RPCEmu models (Phoebe computer, or a RPCEmu computer).

At least one of the Howkins brothers are on record saying to be not interested to develop RPCEmu into a direction different to “perfecting classic hardware emulation”. The fact that RPCEmu still does not implemennt virtual RISC OS 5 hardware after more than 16 years is a strong sign that developers seem to be not interested in that path. How will a 26bit post-RISC OS 3.71 pre-RISC OS 4.0x change that?

Http Request with BASIC

Wed, 12 Feb 2025 10:14:36 -0000

https://heyrick.eu/blog/index.php?diary=20191226

BBC BASIC - 64 bit integer support, long string support

Wed, 12 Feb 2025 10:13:13 -0000

What is doing the 80-bit FP? The old FPA/FPE supports it, but VFP and Neon on modern hardware don’t, so I assume you’ll be going with softfloat?

Http Request with BASIC

Wed, 12 Feb 2025 09:56:53 -0000

Hi

I am looking to make a HTTP request from BASIC.
I understand there is no predefined command for that and that SWI should be used…
Despite the documentation, I still have been unable to find my way.
Could s.o. direct me to some resources with working examples?

Thank you

François

BBC BASIC - 64 bit integer support, long string support

Wed, 12 Feb 2025 07:35:30 -0000

Steve Reville said :

“Are you saying your FPs are going to be 10 bytes (i.e. 80-bit IEEE 754-1985 double extended format)?”

The ARM64 ARM BBC BASIC I made (which is almost complete except for the matrix multiplication stuff in Array.S) uses 80-bit FP (originally 64bit 8bit, then 64bit/16bit). I did this so that I could keep the data flow the same as it is in 32-bit ARM BBC BASIC. It was a learning project, and I learnt a lot about ARM32 and Aarch64 assembly, and also software floating point, doing it!. Overall, it was worth doing simply to learn how BASIC actually works; the code is very similar to the ARM32 code, as it is essentially a hand-translation of that code into ARM64 code.

I am planning to do a C rewrite of ARM BBC BASIC (which will help me practice C, which I only just started learning). I am currently reading around the subject (including things like structs in C / interworking with asm)

I will check my email – thank you!

Copro copro-cabana at ROUGOL, Mon 17th Feb 2025

Wed, 12 Feb 2025 05:17:25 -0000

The next meeting of the RISC OS User Group Of London is:

Copro, copro-cabana, presented by Rob Sprowson

Monday 17th February 2025, 7.45pm

The Duke of Sussex
(upstairs in the Chichester or Petworth Room from 6.30pm)
23 Baylis Road, London, SE1 7AY
http://www.rougol.jellybaby.net/venue.html

Also online via Zoom from 7.30pm

https://rougol.jellybaby.net/meetings/

This month we will be joined at the Copacabana Duke of Sussex by Lola Rob Sprowson who will be taking us right back to our roots with a demonstration of his ARM copro for the Beeb. While the original seeds of RISC OS were developed on an ARM1 copro, Sprow will be talking about how he designed his ARM7TDMI copro.

We will have a BBC Master in the pub linked up to the big screen to show the ARM copro in use. In addition to that Rob will also have a collection of other copros for everyone to have a look and play with, including 6502, Z80, Turbo, and 80186.

Although the meeting will also be on Zoom, the hands on nature of this demo (with the wonderful tactile clack of a Beeb keyboard!) means you will get a lot more out of it by attending in the pub. Plus plentiful food and drink on hand :-)

Rumours that Rob will have yellow feathers in his hair and a dress cut down to there have not been confirmed…

Our venue is right next to Waterloo Station and there is parking directly outside. Directions here – https://rougol.jellybaby.net/venue.html

For any queries or to receive the Zoom link (same as previous months) contact us – https://rougol.jellybaby.net/contacts/

Bryan.

RPCEmu on AArch64 Linux

Tue, 11 Feb 2025 21:34:22 -0000

the work on the open source version of RISC OS 4.00 is also very promising

Do you have any pointers to where this work is happening?

I think it’s a reference to Peter’s work on the RISC OS 4.00 which was kept going within Pace, ie. he’s based it on the last 26 bit commit to the kernel from ROOL’s sources (before the HAL-ification started) then grafted on either contemporary modules or where applicable the more recent code from ROOL’s tree (since things like the Wimp can still be built as 26 bit since they appear PlingSystem).

It’s not a reference to RISC OS Limited’s RISC OS 4.00 which branched off a few years earlier. Nor RISC OS Select.

RO5 New User

Tue, 11 Feb 2025 16:38:04 -0000

Could I also remind people to keep the conversations welcoming and civil here? Much obliged.

RPCEmu on AArch64 Linux

Tue, 11 Feb 2025 14:01:35 -0000

the work on the open source version of RISC OS 4.00 is also very promising

Do you have any pointers to where this work is happening?