Go to advanced search

by RichardRussell
Sun Aug 11, 2019 6:47 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

Maybe you could target WASM web assembly and simultaneously reach near native speeds on both. It's such a pity that web assembly doesn't support multi-threaded applications, at least when I last checked it still didn't, which means I can't easily port BBC BASIC to that platform. Re-writing it as si...
by RichardRussell
Sun Aug 11, 2019 4:42 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

That's not to rule out a proper compiler later on - it won't be terribly difficult to do but will be annoying having to support x86/x64 and ARM. You would have to support both 32-bits and 64-bits ARM too, at least for as long as the Raspberry Pi is 32-bits. With PCs as fast as they are now I don't ...
by RichardRussell
Sun Aug 11, 2019 1:14 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

memory is cheap and fast. Memory is cheap and plentiful, but even on modern CPUs the fastest memory (the Level 1 cache) is still relatively small: 32 Kbytes on this Core i7 laptop, which is comparable with the total amounts of RAM in a 1980s home computer! So keeping the memory footprint of an inte...
by RichardRussell
Sun Aug 11, 2019 12:00 am
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

The EVAL() function doesn't use an interpreter, but it uses the compiler at runtime to compile a BASIC expression on demand, but the EVAL() function itself is only compiled once per program invocation. If one replaces the words 'compiler' and 'compiled' with 'tokenizer' and 'tokenized' then that ex...
by RichardRussell
Sat Aug 10, 2019 9:26 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

Liberty BASIC isn't technically an interpreter. It compiles to an object model that executes on top of a bytecoded dynamic translator (similar to Java). The interpreter/compiler distinction lost its 'binary' nature decades ago, and these days it is best considered to be a continuous spectrum with '...
by RichardRussell
Sat Aug 10, 2019 7:51 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

Are the 3D problems with Raspbian Buster in general or just when running on the Pi 4B? Only when running on the RPi 4. The bug/omission is in the V3D driver, which is only used on the RPi 4; on the RPi 3 the VC4 driver is used instead and that doesn't suffer from the same issue. Indeed the fix for ...
by RichardRussell
Sat Aug 10, 2019 9:31 am
Forum: Raspberry Pi OS
Topic: STICKY: Buster bug report thread
Replies: 375
Views: 94354

Re: Buster bug report thread

Is there a forecast for when this V3D driver fix will be incorporated in Buster? Is it possible that it may be available sooner as a separate install of mesa? Currently this issue causes BBC BASIC not to work correctly, and other applications are almost certainly affected.
by RichardRussell
Sat Aug 10, 2019 9:04 am
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

From the comments, it appears that this is the goto for BASIC on the Pi. I haven't been able to locate it in the Pi's repositories. It's downloadable as this Zip file . You can find more details here . But if there's no other way, a little help in getting it installed would be greatly appreciated! ...
by RichardRussell
Fri Aug 09, 2019 5:42 pm
Forum: Advanced users
Topic: glLogicOp(GL_OR) not working on Raspberry Pi 4?
Replies: 10
Views: 1314

Re: glLogicOp(GL_OR) not working on Raspberry Pi 4?

trejan wrote:
Fri Aug 09, 2019 5:20 pm
No idea how long you'll need to wait for a newer Mesa to appear in Raspbian.
Indeed, but I guess knowing there's a fix in the pipeline is better than nothing. If anybody from the RPF is listening, at least they now know that the issue affects a popular app (BBC BASIC).
by RichardRussell
Fri Aug 09, 2019 4:56 pm
Forum: Advanced users
Topic: glLogicOp(GL_OR) not working on Raspberry Pi 4?
Replies: 10
Views: 1314

Re: glLogicOp(GL_OR) not working on Raspberry Pi 4?

https://gitlab.freedesktop.org/mesa/mesa/commit/e540775f0cb189ca81565815968323edc935cc74 is from a month ago but the Mesa in Raspbian is from 20190429 according to the timestamp in the version. Ah, so this is a known problem that has been fixed upstream but not yet incorporated in Raspbian? Should ...
by RichardRussell
Fri Aug 09, 2019 4:09 pm
Forum: Advanced users
Topic: glLogicOp(GL_OR) not working on Raspberry Pi 4?
Replies: 10
Views: 1314

Re: glLogicOp(GL_OR) not working on Raspberry Pi 4?

Which is why I asked ! Having stated that the identical code works fine on the RPi 3, but fails on the RPi 4, I really don't think the clarification (or the question) was necessary. Do you have any suggestion as to how I can try to get this issue resolved, because I'd rather not have to tell my use...
by RichardRussell
Fri Aug 09, 2019 3:37 pm
Forum: Advanced users
Topic: glLogicOp(GL_OR) not working on Raspberry Pi 4?
Replies: 10
Views: 1314

Re: glLogicOp(GL_OR) not working on Raspberry Pi 4?

PeterO wrote:
Fri Aug 09, 2019 3:10 pm
Are you using openGL or openGL ES code ?
'Full' OpenGL (which is why I'm using the VC4 driver of course). OpenGL ES2 doesn't support the glLogicOp() function at all.
by RichardRussell
Fri Aug 09, 2019 2:51 pm
Forum: Advanced users
Topic: glLogicOp(GL_OR) not working on Raspberry Pi 4?
Replies: 10
Views: 1314

glLogicOp(GL_OR) not working on Raspberry Pi 4?

This is a strange one. I have an application which contains the following code: glEnable (GL_COLOR_LOGIC_OP) ; glLogicOp (GL_OR) ; // GL_AND and GL_XOR are also used This works as expected on the RPi 3B (with the VC4 GL driver enabled) using Raspbian Jessie, Stretch or Buster. However, according to ...
by RichardRussell
Sun Aug 04, 2019 9:12 am
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

and in this case also of the normals which are used for lighting On the subject of normals, it is normal for normals to need to be normalised! That is, usually the normal vector needs to be of unit length. This can be very conveniently arranged by combining a couple of BBC BASIC features, as follow...
by RichardRussell
Sat Aug 03, 2019 9:23 am
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

I'm still all at sea trying to work out the subscripting for a simple 2d rotation matrix. BBC BASIC needs it dimensioned precisely, where ANSI BASIC tends to do it for you It's complicated by there often being a choice of two alternatives: having the rotation matrix as the second term in the dot pr...
by RichardRussell
Thu Aug 01, 2019 12:52 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

BBC BASIC has never supported this option: all arrays have zero-based indices. Just to expand on that a little, BASICs which support the OPTION BASE stetement or equivalent usually implement DIM as follows: OPTION BASE 0 DIM a(4) : REM Array has 4 elements with indices 0, 1, 2, 3 OPTION BASE 1 DIM ...
by RichardRussell
Thu Aug 01, 2019 12:15 am
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

I was a bit surprised that PRINT a(1) prints '2'. The BASIC you were using probably has the OPTION BASE statement which allows you to specify whether the array indices begin at 0 or 1, with it defaulting to OPTION BASE 1. BBC BASIC has never supported this option: all arrays have zero-based indices...
by RichardRussell
Wed Jul 31, 2019 11:17 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

In another thread the matter of arrays in BASIC has been discussed. It is interesting to note that some of the very earliest BASICs supported 'whole array' operations using the MAT keyword. For example the statement MAT B = A would copy every element of the array A() into the corresponding element o...
by RichardRussell
Fri Jul 26, 2019 12:47 pm
Forum: Other programming languages
Topic: ScriptBasic
Replies: 1398
Views: 103766

Re: ScriptBasic

hippy wrote:
Fri Jul 26, 2019 12:20 pm
when there is no option to get those account names back ?
What makes you think there is no such option in phpBB? As far as I am aware an admin with the right privileges can do that:
unban.png
unban.png (43.62 KiB) Viewed 5645 times
by RichardRussell
Fri Jul 26, 2019 8:22 am
Forum: Other programming languages
Topic: ScriptBasic
Replies: 1398
Views: 103766

Re: ScriptBasic

I don't think you will find any ScriptBasic posts after the 20th until my personal account was disabled. Just to say, in this specific case you have my full support. I suggest you take the issue to a private discussion with an administrator who has the authority to sort it out (I am confident that ...
by RichardRussell
Thu Jul 25, 2019 4:27 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

RichardRussell wrote:
Thu Jul 25, 2019 2:51 pm
This has a rather risqué Easter Egg, can you find it?!
Try not to cheat by looking at the code! Adding an Easter Egg to a short program which is published in source form is a whole new level of stupidity (not that I've been silly enough to draw attention to it with a comment).
by RichardRussell
Thu Jul 25, 2019 2:51 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

I have released version 1.05a of BBC BASIC for SDL 2.0 , the cross-platform programming language for Windows, MacOS, Linux, Raspbian (Raspberry Pi), Android and iOS. The changes in this version are as follows: BASIC Interpreter / Run Time Engine Fixed a bug causing MOUSE and graphics coordinates to ...
by RichardRussell
Tue Jul 23, 2019 2:44 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

Maybe it's worth adding something like REFRESH 0 / REFRESH 1 My hands are tied because of the way SDL2/OpenGL work. The renderer is created with the SDL_RENDERER_PRESENTVSYNC flag so screen refreshes are always synchronised with vsync. I would have done the same in BB4W had there been any straightf...
by RichardRussell
Tue Jul 23, 2019 1:27 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

Why hanoi.bbc in bbcsdl for Windows is about 10 times slower than in bbcwdem6 for Windows? It's because of the *REFRESH command in PROCHANOI(). In BBC BASIC for Windows *REFRESH sets a flag to indicate that the screen should be updated at the next opportunity, and then returns immediately. In BBC B...
by RichardRussell
Tue Jul 23, 2019 1:12 pm
Forum: Other programming languages
Topic: Introduction to BBC BASIC
Replies: 747
Views: 92419

Re: Introduction to BBC BASIC

IIRC the original BBC basic I and II would only accept COLOUR. Maybe. When I say "all versions" I mean all current versions, i.e. all versions that will run on today's hardware. I know a few people still play with those early versions, mostly in emulation, but they hold no interest for me and I ten...

Go to advanced search