(11-09-2022, 01:13 PM)SMcNeill Wrote:(11-09-2022, 12:27 PM)Richard Wrote: My understanding is that QB64(pe) will only work on computers with INTEL based processors (putting aside Virtual Machine implementation, which I do not think many users of QB64 are heavily involved with).
So, although QB64 is cross-platform compatible - it will not work on a MAC that is non-Intel - so QB64 is processor (class) specific.
QB64 will run on ARM-based processors, with just a few changes to the source. The only reason we're not offering and advertising it as a supported system is that none of the current devs have an ARM-system to test and debug any issues that might arise. There's several posts on the forums here which highlight the changes needed to run on an ARM-based system such as the Pi or newest MACs.
Well, you can do assembly if that is what you really want.
Inside a C header file, write your assembly routines using GCC inline assembly. See GCC-Inline-Assembly-HOWTO (ibiblio.org)
Ensure, you do not have weird external dependencies.
Once done, use "DECLARE LIBRARY" to declare your routines in the ".bas" file and then call those from your BASIC code. See DECLARE LIBRARY - QB64 Phoenix Edition Wiki
But all this stuff is easier said than done.
And like Steve said, we are thinking about supporting ARM in the future. So, writing stuff in assembly will make your code less portable.