Matrix Brandy BASIC V for Linux with SDL: V1.21.16 released

discuss PC<>Acorn file transfer issues & the use of FDC, XFER, Omniflop/disk etc.
User avatar
bakoulis
Posts: 290
Joined: Wed Feb 08, 2012 9:45 pm
Location: Athens, Greece
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by bakoulis » Tue Oct 30, 2018 10:34 pm

Last build gives an error on compilation:

Code: Select all

src/mos_sys.c:56:9: warning: variable ‘rtn’ set but not used [-Wunused-but-set-variable]
   int32 rtn, a;
         ^~~
2xElectron, 3xBBC B, BBC Master.
2xAcorn A310, A420/1, 2xA3000, 2xA3010, A3020, A4000, A5000.
2xRISC PC, Acorn Pocket Book, Acorn Pocket Book II.

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Soruk » Wed Oct 31, 2018 8:37 am

bakoulis wrote:
Tue Oct 30, 2018 10:34 pm
Last build gives an error on compilation:

Code: Select all

src/mos_sys.c:56:9: warning: variable ‘rtn’ set but not used [-Wunused-but-set-variable]
   int32 rtn, a;
         ^~~
Hopefully I've managed to suppress that.

User avatar
Richard Russell
Posts: 526
Joined: Sun Feb 27, 2011 10:35 am
Location: Downham Market, Norfolk
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Richard Russell » Wed Oct 31, 2018 12:38 pm

Soruk wrote:
Tue Oct 30, 2018 9:35 pm
Edit: Looking at the float behaviour, it appears to be doing an INT on both arguments:
No! It's an important characteristic of BBC BASIC that INT truncates towards −infinity whereas the automatic promotion of a float to an integer, such as when a bitwise operator is applied, truncates towards zero:

Code: Select all

>a = -123.4
>PRINT a AND &55
         5
>PRINT INT(a) AND &55
         4
If Brandy gets that wrong (I'd be very surprised if it does) many programs will break.

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Soruk » Wed Oct 31, 2018 12:57 pm

Richard Russell wrote:
Wed Oct 31, 2018 12:38 pm
Soruk wrote:
Tue Oct 30, 2018 9:35 pm
Edit: Looking at the float behaviour, it appears to be doing an INT on both arguments:
No! It's an important characteristic of BBC BASIC that INT truncates towards −infinity whereas the automatic promotion of a float to an integer, such as when a bitwise operator is applied, truncates towards zero:

Code: Select all

>a = -123.4
>PRINT a AND &55
         5
>PRINT INT(a) AND &55
         4
If Brandy gets that wrong (I'd be very surprised if it does) many programs will break.
Brandy gets this right - and (having implemented AND= for float variables) a AND=&55 gives the correct value of 5 in a. I'm not using a C cast to int, but the Brandy code offers TOINT() and TOFLOAT() conversion functions, which I am using for this.

Edit - That's the rest of the bitwise modify and assign functions implemented for float variable types.
Last edited by Soruk on Wed Oct 31, 2018 1:43 pm, edited 1 time in total.

User avatar
Richard Russell
Posts: 526
Joined: Sun Feb 27, 2011 10:35 am
Location: Downham Market, Norfolk
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Richard Russell » Wed Oct 31, 2018 1:47 pm

Soruk wrote:
Wed Oct 31, 2018 12:57 pm
I'm not using a C cast to int, but the Brandy code offers TOINT() and TOFLOAT() conversion functions, which I am using for this.
A C cast to int is surely guaranteed to truncate towards zero, so I'm puzzled by the need for a TOINT() function; what is it doing differently? BBC BASIC's INT() function works like C's floor() function.

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Soruk » Wed Oct 31, 2018 1:55 pm

Richard Russell wrote:
Wed Oct 31, 2018 1:47 pm
Soruk wrote:
Wed Oct 31, 2018 12:57 pm
I'm not using a C cast to int, but the Brandy code offers TOINT() and TOFLOAT() conversion functions, which I am using for this.
A C cast to int is surely guaranteed to truncate towards zero, so I'm puzzled by the need for a TOINT() function; what is it doing differently? BBC BASIC's INT() function works like C's floor() function.
Okay. Maybe I'm getting myself muddled up. TOINT() is a macro that is indeed casting to int. The code behind the BASIC INT function is using floor(). And - from your example above, it's a truncate towards zero that is needed, not a floor() for the bitwise operations. So, all good. I confused things by saying the bitwise operations were doing an INT on the float values - it's a C-style int, not a BASIC one.
Last edited by Soruk on Wed Oct 31, 2018 1:56 pm, edited 1 time in total.

User avatar
Rich Talbot-Watkins
Posts: 1365
Joined: Thu Jan 13, 2005 5:20 pm
Location: Palma, Mallorca
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Rich Talbot-Watkins » Wed Oct 31, 2018 3:12 pm

Richard Russell wrote:
Wed Oct 31, 2018 12:38 pm
No! It's an important characteristic of BBC BASIC that INT truncates towards −infinity whereas the automatic promotion of a float to an integer, such as when a bitwise operator is applied, truncates towards zero:
Never noticed that INT behaved like that! That's quite unusual rounding behaviour - I wonder why it was chosen? The fact that it's different behaviour to implicit conversion to integer is even more unusual, in my opinion!

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Soruk » Wed Oct 31, 2018 3:48 pm

Rich Talbot-Watkins wrote:
Wed Oct 31, 2018 3:12 pm
Richard Russell wrote:
Wed Oct 31, 2018 12:38 pm
No! It's an important characteristic of BBC BASIC that INT truncates towards −infinity whereas the automatic promotion of a float to an integer, such as when a bitwise operator is applied, truncates towards zero:
Never noticed that INT behaved like that! That's quite unusual rounding behaviour - I wonder why it was chosen? The fact that it's different behaviour to implicit conversion to integer is even more unusual, in my opinion!
Yeah, when digging into this a bit more, I got this:

Code: Select all

>a=-4.5
>a%=a
>PRINT INT(a),a%
        -5        -4
giving two different types of INT conversion. I replicated this on RISC OS 3.71, to ensure it wasn't a bug in Brandy.

User avatar
Richard Russell
Posts: 526
Joined: Sun Feb 27, 2011 10:35 am
Location: Downham Market, Norfolk
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Richard Russell » Wed Oct 31, 2018 4:55 pm

Rich Talbot-Watkins wrote:
Wed Oct 31, 2018 3:12 pm
Never noticed that INT behaved like that! That's quite unusual rounding behaviour.
It's not unusual for BASIC, it's the norm. In fact I know of only one BASIC which works differently which is Liberty BASIC, and its author acknowledges that it's non standard. As far as I'm aware all Microsoft BASICs follow the standard, as does Locomotive BASIC. Indeed I'm pretty certain the original (Kemeny & Kurtz) BASIC did too.

One advantage of INT truncating towards minus infinity is that to find the nearest integer to a number you can simply do INT(n+0.5). If INT were to truncate towards zero finding the nearest integer is harder.
The fact that it's different behaviour to implicit conversion to integer is even more unusual, in my opinion!
I don't think that's unusual either. For example in QBasic (which probably means all Microsoft-derived BASICs):

Code: Select all

DIM i AS INTEGER
a = -123.4
i = a
PRINT INT(a), i
This prints:
-124 -123

User avatar
Rich Talbot-Watkins
Posts: 1365
Joined: Thu Jan 13, 2005 5:20 pm
Location: Palma, Mallorca
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Rich Talbot-Watkins » Wed Oct 31, 2018 5:05 pm

Seems like you're absolutely right (and can confirm that Sinclair BASIC and MS-derived BASICs - C64, Oric, etc - also work like this)! I'm most surprised I never noticed that back in the day. Having spent the last two decades in C/C++ land, where an implicit or explicit conversion to int rounds towards zero, I guess that's what feels like the right behaviour to me now!

User avatar
Richard Russell
Posts: 526
Joined: Sun Feb 27, 2011 10:35 am
Location: Downham Market, Norfolk
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Richard Russell » Wed Oct 31, 2018 6:17 pm

Rich Talbot-Watkins wrote:
Wed Oct 31, 2018 5:05 pm
I guess that's what feels like the right behaviour to me now!
I suspect one reason why truncating to zero is sometimes preferred is simply that it's easier (and faster) when floating-point numbers are held in a sign+magnitude format, which is conventional. A mathematician would probably favour truncating to minus (or plus) infinity because they don't treat zero as 'special' on the number line.

User avatar
dhg2
Posts: 96
Joined: Tue Oct 25, 2016 7:37 pm
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.14 released

Post by dhg2 » Wed Oct 31, 2018 8:51 pm

Hello,

I think I've found a bug in Matrix Brandy's triangle drawing function. Tested with this program:

Code: Select all

MODE32
s%=64
FOR i%=0 TO 1600 STEP s%
 FOR j%=0 TO 1200 STEP s%
  MOVE i%+s%*(RND(2)-1),j%+s%*(RND(2)-1)
  MOVE i%+s%*(RND(2)-1),j%+s%*(RND(2)-1)
  PLOT 85,i%+s%*(RND(2)-1),j%+s%*(RND(2)-1)
 NEXT
NEXT
When it gets to the top of the screen and part of the triangle should be clipped off, it looks like the point of the triangle beyond the top of the screen gets moved down so that it's within the screen.
brandy_.png
Here's a picture of the same program running in BBCSDL with an equivalent screen mode:
bbcsdl.png
I haven't had the opportunity to test it in RISC OS yet.
Regards,
- Patrick

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.14 released

Post by Soruk » Wed Oct 31, 2018 10:40 pm

dhg2 wrote:
Wed Oct 31, 2018 8:51 pm
Hello,

I think I've found a bug in Matrix Brandy's triangle drawing function. Tested with this program:

Code: Select all

MODE32
s%=64
FOR i%=0 TO 1600 STEP s%
 FOR j%=0 TO 1200 STEP s%
  MOVE i%+s%*(RND(2)-1),j%+s%*(RND(2)-1)
  MOVE i%+s%*(RND(2)-1),j%+s%*(RND(2)-1)
  PLOT 85,i%+s%*(RND(2)-1),j%+s%*(RND(2)-1)
 NEXT
NEXT
When it gets to the top of the screen and part of the triangle should be clipped off, it looks like the point of the triangle beyond the top of the screen gets moved down so that it's within the screen.

brandy_.png

Here's a picture of the same program running in BBCSDL with an equivalent screen mode:

bbcsdl.png

I haven't had the opportunity to test it in RISC OS yet.
It's definitely a bug. Need to investigate further... and it's not exactly right in upstream either.
Last edited by Soruk on Wed Oct 31, 2018 10:44 pm, edited 1 time in total.

User avatar
bakoulis
Posts: 290
Joined: Wed Feb 08, 2012 9:45 pm
Location: Athens, Greece
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by bakoulis » Wed Oct 31, 2018 10:42 pm

The triangles are random on screen. Every time you will give RUN, they are on different positions.
Anyway I have test the program on RISCOS 3.7 RPCEmu, Brandy and BBCSDL and I have to tell that RISCOS and Brandy looks like drawing at the same way.
Last edited by bakoulis on Wed Oct 31, 2018 10:44 pm, edited 2 times in total.
2xElectron, 3xBBC B, BBC Master.
2xAcorn A310, A420/1, 2xA3000, 2xA3010, A3020, A4000, A5000.
2xRISC PC, Acorn Pocket Book, Acorn Pocket Book II.

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Soruk » Wed Oct 31, 2018 10:48 pm

bakoulis wrote:
Wed Oct 31, 2018 10:42 pm
The triangles are random on screen. Every time you will give RUN, they are on different positions.
Anyway I have test the program on RISCOS 3.7 RPCEmu, Brandy and BBCSDL and I have to tell that RISCOS and Brandy looks like drawing at the same way.
Not to me they don't... this is in RISC OS 3.71, note how the tops of the triangles on the top row are trimmed off, rather than squashed down. It's more like the BBCSDL rendering, which is correct.
triangles.rpcemu.png
Last edited by Soruk on Wed Oct 31, 2018 10:49 pm, edited 1 time in total.

User avatar
bakoulis
Posts: 290
Joined: Wed Feb 08, 2012 9:45 pm
Location: Athens, Greece
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by bakoulis » Wed Oct 31, 2018 11:38 pm

I referred only on how looks likes the output screens. I hadn't noticed the trimmed tops of triangles. You have definitely right.
Last edited by bakoulis on Wed Oct 31, 2018 11:39 pm, edited 1 time in total.
2xElectron, 3xBBC B, BBC Master.
2xAcorn A310, A420/1, 2xA3000, 2xA3010, A3020, A4000, A5000.
2xRISC PC, Acorn Pocket Book, Acorn Pocket Book II.

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.14 released

Post by Soruk » Thu Nov 01, 2018 10:45 am

dhg2 wrote:
Wed Oct 31, 2018 8:51 pm
Hello,

I think I've found a bug in Matrix Brandy's triangle drawing function. Tested with this program:

Code: Select all

MODE32
s%=64
FOR i%=0 TO 1600 STEP s%
 FOR j%=0 TO 1200 STEP s%
  MOVE i%+s%*(RND(2)-1),j%+s%*(RND(2)-1)
  MOVE i%+s%*(RND(2)-1),j%+s%*(RND(2)-1)
  PLOT 85,i%+s%*(RND(2)-1),j%+s%*(RND(2)-1)
 NEXT
NEXT
This ought to do it.
triangles.brandy.png

User avatar
dhg2
Posts: 96
Joined: Tue Oct 25, 2016 7:37 pm
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by dhg2 » Thu Nov 01, 2018 2:10 pm

I noticed in your screenshot that it still looks a bit irregular at the top of the screen - there's notches in the lines where they should be perfectly straight.

I compiled the latest version from github and tested it a bit more, and I've found that when part of a triangle goes past the top of the screen, the graphics may become glitched up and brandy may exit with a segmentation fault.

I also found that when part of a triangle is clipped off by the left or right sides of the screen, a line gets drawn against the edge of the screen:
2018-11-01-134612_800x600_scrot.png
I checked the old version of brandy (1.20.1) and it also had this problem.

Tested with this program:

Code: Select all

MODE 32
*refresh off
s=240*2
p=PI*2/3
ON ERROR REPORT:PRINT " at ";ERL:OSCLI"refresh on":END
REPEAT
 CLS
 MOUSE x,y,b%
 a=TIME/200
 MOVE   x+COSa*s,    y+SINa*s
 MOVE   x+COS(a+p)*s,y+SIN(a+p)*s
 PLOT85,x+COS(a+p*2)*s,y+SIN(a+p*2)*s
 *refresh
 WAIT 2
UNTILFALSE
Last edited by dhg2 on Thu Nov 01, 2018 2:17 pm, edited 1 time in total.
Regards,
- Patrick

User avatar
bakoulis
Posts: 290
Joined: Wed Feb 08, 2012 9:45 pm
Location: Athens, Greece
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by bakoulis » Thu Nov 01, 2018 2:36 pm

dhg2 wrote:
Thu Nov 01, 2018 2:10 pm
I noticed in your screenshot that it still looks a bit irregular at the top of the screen - there's notches in the lines where they should be perfectly straight.

I compiled the latest version from github and tested it a bit more, and I've found that when part of a triangle goes past the top of the screen, the graphics may become glitched up and brandy may exit with a segmentation fault.

I also found that when part of a triangle is clipped off by the left or right sides of the screen, a line gets drawn against the edge of the screen:
2018-11-01-134612_800x600_scrot.png
I checked the old version of brandy (1.20.1) and it also had this problem.

Tested with this program:

Code: Select all

MODE 32
*refresh off
s=240*2
p=PI*2/3
ON ERROR REPORT:PRINT " at ";ERL:OSCLI"refresh on":END
REPEAT
 CLS
 MOUSE x,y,b%
 a=TIME/200
 MOVE   x+COSa*s,    y+SINa*s
 MOVE   x+COS(a+p)*s,y+SIN(a+p)*s
 PLOT85,x+COS(a+p*2)*s,y+SIN(a+p*2)*s
 *refresh
 WAIT 2
UNTILFALSE
For me this listing exit Matrix with a (segmentation fault) (core dumped) error!!!
On RISCOS 3.7 the program don't run at all, probably because of use of REFRESH command.
2xElectron, 3xBBC B, BBC Master.
2xAcorn A310, A420/1, 2xA3000, 2xA3010, A3020, A4000, A5000.
2xRISC PC, Acorn Pocket Book, Acorn Pocket Book II.

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.15 released

Post by Soruk » Thu Nov 01, 2018 3:16 pm

bakoulis wrote:
Thu Nov 01, 2018 2:36 pm
For me this listing exit Matrix with a (segmentation fault) (core dumped) error!!!
On RISCOS 3.7 the program don't run at all, probably because of use of REFRESH command.
I can replicate the segfault - and it's rather non-obvious. SOMETHING is changing the value of the modescreen pointer, corrupting it. It's going to be an absolute nightmare trying to track this one down.

Edit: Some fun with GDB breakpoints later, tracked down to an array scribbling out of bounds, who knows what else it was trashing. Also, fixed that other bug where it was drawing vertical lines when drawing offscreen.
Last edited by Soruk on Thu Nov 01, 2018 4:15 pm, edited 1 time in total.

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Matrix Brandy BASIC V for Linux with SDL: V1.21.16 released

Post by Soruk » Sun Nov 04, 2018 12:29 pm

Hi,

I've just released version 1.21.16 of Matrix Brandy.

Changes include:
- Added auto-sensing support for the Raspberry Pi's GPIO interface, with memory-mapped I/O and SYS calls. While the calls are recognised on all builds, it's only active on the Raspberry Pi.
- Bug fix (regression): LIST in text builds would error after one line.
- Adjust graphsdl.c:buff_convex_poly bounds checking to allow off-screen drawing (we limit this elsewhere). For example, triangles drawn offscreen will now appear to be chopped off, rather than squashed into the screen.
- Bug fix for out-of-bounds array scribbling when off screen.
- Code refactor - SYS calls are now (with a few exceptions) in their own file.
- Performance improvements to Mode 7, and fix rendering bug when ESCAPE was disabled.
- Telstar client now includes Authentic mode, where a delay is added to each character rendering to simulate (approximately) a 1200baud modem.
- Implemented AND=, OR=, EOR=, MOD= and DIV= from BB4W/BBCSDL and JGH's ARM BBC BASIC Plus.

It's up on github and the website in all the usual places.

grannyg
Posts: 42
Joined: Tue Sep 10, 2013 3:06 pm
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.16 released

Post by grannyg » Sun Nov 04, 2018 8:02 pm

Just to report that the 1.21.16 version builds and runs OK on RISC OS on a RPi. Both the original RISC OS and the SDL version.

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.16 released

Post by Soruk » Sun Nov 04, 2018 9:57 pm

grannyg wrote:
Sun Nov 04, 2018 8:02 pm
Just to report that the 1.21.16 version builds and runs OK on RISC OS on a RPi. Both the original RISC OS and the SDL version.
Are you able to share binaries for RISC OS? It'd be nice to have a play!

grannyg
Posts: 42
Joined: Tue Sep 10, 2013 3:06 pm
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.16 released

Post by grannyg » Mon Nov 05, 2018 10:43 am

Sure. The download is at https://www.riscosports.co.uk/matrixbrandy.zip.

There is both the SDL and RISC OS native version and also versions for RISC OS hardware containing VFP.

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.16 released

Post by Soruk » Mon Nov 05, 2018 12:52 pm

grannyg wrote:
Mon Nov 05, 2018 10:43 am
Sure. The download is at https://www.riscosports.co.uk/matrixbrandy.zip.

There is both the SDL and RISC OS native version and also versions for RISC OS hardware containing VFP.
Thank you.

I got both FPA builds running in RPCEmu, running in RISC OS 5, after installing the SharedUnixLibrary module (I have 1.14).

Unfortunately, it doesn't run in RISC OS 3.71, I just get the "Application may have gone wrong" dialogue window, and Describe gives "No writeable memory at this address".

grannyg
Posts: 42
Joined: Tue Sep 10, 2013 3:06 pm
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.16 released

Post by grannyg » Mon Nov 05, 2018 1:29 pm

I forgot to mention older versions of RISC OS need the wimpslot setting. Just drag 'Next' to 2MB in Tasks before running brandy.

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.16 released

Post by Soruk » Mon Nov 05, 2018 2:04 pm

grannyg wrote:
Mon Nov 05, 2018 1:29 pm
I forgot to mention older versions of RISC OS need the wimpslot setting. Just drag 'Next' to 2MB in Tasks before running brandy.
That did the trick - and has highlighted a memory leak in the SDL build when changing MODE - which can be replicated in Linux. Just that the smaller process space in RISC OS 26-bit has highlighted it and made it unfortunately quite crashy :( However, being repeatable under Linux is a good thing, means it's not a RISC OS issue.

Edit: Memory leak FIXED.
Last edited by Soruk on Mon Nov 05, 2018 2:07 pm, edited 1 time in total.

grannyg
Posts: 42
Joined: Tue Sep 10, 2013 3:06 pm
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.16 released

Post by grannyg » Mon Nov 05, 2018 2:54 pm

I've updated the zip file so the SDL version has the fix.

Soruk
Posts: 214
Joined: Mon Jul 09, 2018 10:31 am
Location: Basingstoke, Hampshire
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.16 released

Post by Soruk » Mon Nov 05, 2018 3:30 pm

grannyg wrote:
Mon Nov 05, 2018 2:54 pm
I've updated the zip file so the SDL version has the fix.
That's a lot better. One thing, if I set the memory size and leave the task window open, Brandy can crash the task window application along with itself! Closing that, it seems to be semi-stable, though mode changes can still kill it or lock the machine up.

Edit: I managed to crash it with the window closed.. so don't know what's going on there. Even if I allocate a pile of memory for it to use....

Edit2: Which version of SDL are you building with?
Last edited by Soruk on Mon Nov 05, 2018 3:55 pm, edited 2 times in total.

grannyg
Posts: 42
Joined: Tue Sep 10, 2013 3:06 pm
Contact:

Re: Matrix Brandy BASIC V for Linux with SDL: V1.21.16 released

Post by grannyg » Sat Nov 10, 2018 9:10 am

I've done some testing in RPCEmu with several versions of RISC OS but couldn't get it to crash.
One thing it could be. Are you running brandy from a task window? Best to run it by double-clicking the executable.
The SDL version is 1.2.15.
Last edited by grannyg on Sat Nov 10, 2018 9:10 am, edited 1 time in total.

Post Reply