Date   
Re: Should I bundle Rubik.bbc with the Android edition? #poll

Richard Russell
 

The outcome of the poll was a clear majority in favour of bundling Rubik.bbc with the Android edition, despite the resulting increase in size. It is now available for download from the usual address:

http://www.rtr.myzen.co.uk/BBCBasic.apk (10.7 Megabytes)

This release also fixes a couple of bugs:

  • The *EXEC command left the file open on completion, which could block a subsequent attempt to delete or re-write it.

  • The OPENIN/OPENOUT/OPENUP statements could fail to open a file with a space character in its path.
Anybody using the BBC2APK utility should download a new copy of the template APK to ensure that any standalone application they create has these bugs fixed.

Richard.

Re: BBC BASIC for iOS?

Richard Russell
 

On Mon, Mar 5, 2018 at 01:33 pm, Rob McKay wrote:
I seem to recall (but cannot confirm) that when a program is "run" in a programming environment that it may take over the whole screen so long as it provides a way to go back to the programming environment.
I can (and do) make sure that the example programs I supply with BBC BASIC have an easy means of returning to the 'IDE', but I have no control over programs written - or downloaded - by the user.  If Apple expect me somehow to modify BBC BASIC so that it's no longer a 'general purpose' programming language, by for example making it impossible to disable the 'escape' action, I'm not going to do that.

I suppose at some point the only thing to do will be to submit it for App Store verification, but assuming that I am honest with my description I think it's almost certain that it will be rejected.

Richard.

Invitation to test the iOS edition of BBC BASIC

Richard Russell
 

I think I've figured out how to distribute beta-test copies of 'BBC BASIC for iOS', within the constraints imposed by Apple anyway.  The main restrictions are that every tester must be individually registered by me, and that the test version times out after 60 days (or is it 90, I'm not sure) unless I release an update.

If anybody would like to try it, the minimum requirement is a 64-bit iOS device, so that means an iPhone 5S or later, or an iPad Air or later.  Please don't ask whether it will run on anything older, IT WON'T!

If you have a suitable device, and would like to try the app, please send me a personal email (do not post here) containing the UDID of your device.  To discover the UDID (consisting of 40 letters and numbers) you will need to perform the following steps:

1.  Connect your device to a PC or Mac running iTunes, as you would to sync music or photos.
2.  When the device has been recognised by iTunes, click on the corresponding icon that appears.
3.  The Serial Number will be displayed; this is NOT what I need.  Click on the Serial Number to reveal the UDID.
4.  Right click (on a PC, I'm not sure what the equivalent is on a Mac) and copy the UDID to the clipboard.
5.  Paste the UDID into an email and send it to me.

I should be able to tell whether the UDID is valid, but try not to make any mistakes (copying-and-pasting is far preferable to typing it in)!  I will reply to your email with installation instructions.

I'm sorry the process is rather involved, but blame Apple rather than me.

Richard.

Re: Invitation to test the iOS edition of BBC BASIC

caffey
 

I have a iPod Touch that I would like to test this on.

I'm not 100% but I thought Apple had something called TestFlight that made it easier to install beta type apps.   I'm testing a beta messaging app called Tungsten through TestFlight

My main device is an Android though

Good luck

Re: Invitation to test the iOS edition of BBC BASIC

Richard Russell
 

On Wed, Mar 7, 2018 at 04:11 am, caffey wrote:
I have a iPod Touch that I would like to test this on.
I didn't mention iPods because only the very last iteration ('6th generation') has a 64-bit CPU and receives OS updates.  If that is what you have, I will keep an eye out for your email.  

I'm not 100% but I thought Apple had something called TestFlight
> that made it easier to install beta type apps. 

TestFlight is not appropriate because it requires the app to meet App Store requirements (it gets reviewed just like an App Store submission) which it is unlikely BBC BASIC could meet.  It is also more intended for professional app developers (with a limit of 10,000 beta testers I think!) so really is in a completely different league.  With an absolute maximum of (I would guess) a dozen people interested in BBC BASIC for iOS the method I am using is the right one.

Richard.

Re: Testers wanted

Paul Marshall
 

On Thu, Mar 1, 2018 at 04:36 pm, Richard Russell wrote:
It's not as though the version currently available for download is a time-limited trial version,
Ok. I would be reluctant using it if you yourself had 'gone off' the project.
I have used it once more without the slightest hitch.   For me a big success. Thanks.   

Re: Invitation to test the iOS edition of BBC BASIC

Storer, Darren
 

For previous iOS app testing projects I've used UDID finder (link below) but of course, Richard's method to find the UDID is just as valid:

https://itunes.apple.com/gb/app/udid-finder/id384382012

Regards

Darren

On 6 March 2018 at 22:21, Richard Russell <news@...> wrote:
I think I've figured out how to distribute beta-test copies of 'BBC BASIC for iOS', within the constraints imposed by Apple anyway.  The main restrictions are that every tester must be individually registered by me, and that the test version times out after 60 days (or is it 90, I'm not sure) unless I release an update.

If anybody would like to try it, the minimum requirement is a 64-bit iOS device, so that means an iPhone 5S or later, or an iPad Air or later.  Please don't ask whether it will run on anything older, IT WON'T!

If you have a suitable device, and would like to try the app, please send me a personal email (do not post here) containing the UDID of your device.  To discover the UDID (consisting of 40 letters and numbers) you will need to perform the following steps:

1.  Connect your device to a PC or Mac running iTunes, as you would to sync music or photos.
2.  When the device has been recognised by iTunes, click on the corresponding icon that appears.
3.  The Serial Number will be displayed; this is NOT what I need.  Click on the Serial Number to reveal the UDID.
4.  Right click (on a PC, I'm not sure what the equivalent is on a Mac) and copy the UDID to the clipboard.
5.  Paste the UDID into an email and send it to me.

I should be able to tell whether the UDID is valid, but try not to make any mistakes (copying-and-pasting is far preferable to typing it in)!  I will reply to your email with installation instructions.

I'm sorry the process is rather involved, but blame Apple rather than me.

Richard.


Re: Invitation to test the iOS edition of BBC BASIC

Storer, Darren
 

How embarrassing - the UDID Finder app needs to be updated for iOS 11 support. In my haste to be helpful I neglected to test the app before posting.

Apologies !

Darren

On 7 March 2018 at 15:32, Storer, Darren <darren.storer@...> wrote:
For previous iOS app testing projects I've used UDID finder (link below) but of course, Richard's method to find the UDID is just as valid:

https://itunes.apple.com/gb/app/udid-finder/id384382012

Regards

Darren

On 6 March 2018 at 22:21, Richard Russell <news@...> wrote:
I think I've figured out how to distribute beta-test copies of 'BBC BASIC for iOS', within the constraints imposed by Apple anyway.  The main restrictions are that every tester must be individually registered by me, and that the test version times out after 60 days (or is it 90, I'm not sure) unless I release an update.

If anybody would like to try it, the minimum requirement is a 64-bit iOS device, so that means an iPhone 5S or later, or an iPad Air or later.  Please don't ask whether it will run on anything older, IT WON'T!

If you have a suitable device, and would like to try the app, please send me a personal email (do not post here) containing the UDID of your device.  To discover the UDID (consisting of 40 letters and numbers) you will need to perform the following steps:

1.  Connect your device to a PC or Mac running iTunes, as you would to sync music or photos.
2.  When the device has been recognised by iTunes, click on the corresponding icon that appears.
3.  The Serial Number will be displayed; this is NOT what I need.  Click on the Serial Number to reveal the UDID.
4.  Right click (on a PC, I'm not sure what the equivalent is on a Mac) and copy the UDID to the clipboard.
5.  Paste the UDID into an email and send it to me.

I should be able to tell whether the UDID is valid, but try not to make any mistakes (copying-and-pasting is far preferable to typing it in)!  I will reply to your email with installation instructions.

I'm sorry the process is rather involved, but blame Apple rather than me.

Richard.



Re: Invitation to test the iOS edition of BBC BASIC

Richard Russell
 

On Wed, Mar 7, 2018 at 07:32 am, Storer, Darren wrote:
For previous iOS app testing projects I've used UDID finder
Knowing some people's (understandable) reluctance to install apps of unknown 'pedigree', and noting the customer reviews ("Gives a random string in place of the device's actual UDID") I didn't want to recommend this method.  But if you find it works it's certainly more convenient than connecting to a PC or Mac.

Richard.

Re: Invitation to test the iOS edition of BBC BASIC

Storer, Darren
 

Hi Richard,

Seemingly/annoyingly the UDID "finder" family of 3rd party apps stopped working after iOS 7. The last time I used it successfully was for Reuben Scratton's iBeeb (BBC Micro Emulator) which even ran Elite but sadly the project was never released via the Apple App Store.

Thanks for the opportunity to help with iOS testing.

Regards

Darren


On 7 March 2018 at 15:39, Richard Russell <news@...> wrote:
On Wed, Mar 7, 2018 at 07:32 am, Storer, Darren wrote:
For previous iOS app testing projects I've used UDID finder
Knowing some people's (understandable) reluctance to install apps of unknown 'pedigree', and noting the customer reviews ("Gives a random string in place of the device's actual UDID") I didn't want to recommend this method.  But if you find it works it's certainly more convenient than connecting to a PC or Mac.

Richard.


Re: Should I bundle Rubik.bbc with the Android edition? #poll

R.E.
 

   you want to bundle them because it is an attractive visual demo of what BBC Basic can do?
   That's a very large "AD" file don't you think?  I would rather have them separate I believe.   Perhaps a smaller
visual presentation that shows it's capabilities would be more appropriate.
-Stephen

Re: Should I bundle Rubik.bbc with the Android edition? #poll

Richard Russell
 

On Wed, Mar 7, 2018 at 09:22 am, R.E. wrote:
I would rather have them separate I believe. 
You are rather late to the party!  The poll produced a conclusive result, and the Android edition complete with Rubik.bbc has already been released!

Perhaps a smaller visual presentation that shows it's capabilities
> would be more appropriate.

You can't show its "capabilities" in one, or even a few, demonstration programs - you need dozens, or more.  Every single example program distributed with BBC BASIC, and there are more than 60 of them currently, demonstrates some capability.  Since all the desktop editions have included Rubik.bbc for a while, omitting it from the Android edition was always an anomaly, and that has now been rectified.  The new iOS edition includes it too.

If you consider that "an attractive visual demo of what BBC Basic can do" is somehow superfluous, I totally disagree.  
There was recently a comment posted to this group requesting "a debate on how we can make it appeal to the younger person... David Williams FOD is exactly what we need but sadly is a bit big to bundle".  A "bit big" indeed, at about 50 Mbytes (!), but Rubik is not in that ball park.

Richard.

Re: Invitation to test the iOS edition of BBC BASIC

Richard Russell
 

On Wed, Mar 7, 2018 at 08:07 am, Storer, Darren wrote:
Seemingly/annoyingly the UDID "finder" family of 3rd party apps stopped working after iOS 7.
Had Apple wanted the UDID to be discoverable on the device itself they would have displayed it in the settings!  For whatever reason (and I've given up trying to decode Apple's motives) they evidently don't think that is desirable, so any app that does it is presumably using some undocumented and unsupported method.  It's hardly surprising, therefore, that it stops working after an iOS update (and frankly I don't know how it got into the App Store in the first place).

Of all the platforms on which I am trying to support BBC BASIC, the Apple ones (both Mac OS and iOS) give me far more grief than the others.  I wouldn't say I am an 'Apple hater' but I am far from being a fan of their Big Brother, 'we know best', attitude to everything.

Richard.

Re: Invitation to test the iOS edition of BBC BASIC

Richard Russell
 

When you start either the Android or iOS edition of BBC BASIC the program that initially runs is the 'Touch IDE' (touchide.bbc in the tools directory).  It is this program that allows you to navigate the file hierarchy, run a program by tapping on its name, scroll and zoom the file list, edit and copy programs etc.  Brief instructions for the use of the Touch IDE can be found at the website.

There's nothing to stop you running 'touchide.bbc' in the same way as any of the other supplied example programs (by navigating to the tools directory and tapping on it).  The difference is that, since it's the program that is already running, nothing obvious happens - the program simply CHAINs itself!  Sadly some people completely misinterpret this apparent lack of action and report that "touchide is not working"!

Richard.

Re: BBC BASIC in 'Hello World' magazine

Dagfinn
 

That is good to hear!

I learned computing on a Beeb "back in the day" and I am still thanking the British Broadcasting Corporation :-)

Today I got BBCSDL running from a 32-bit Puppy Linux live CD. Sound and graphics worked beautifully. Indeed, there is something about the aesthetics and mentality of Puppy Linux that reminds me of the Beeb, and which makes it a good fit for "modern" BBC Basic.

However, the point is that my first thought upon seeing it run was: I want to use this to teach kids about computing!

So I just wanted to thank you for all your work on BBC Basic, and preserving it for future generations :-)

Best regards,
Dagfinn




Re: Should I bundle Rubik.bbc with the Android edition? #poll

R.E.
 

OK Mr Russell, you've got my interest/curiosity way up.   I first learned to program on  a CPM machine and basic in the 80s
, now many years ago.  Most of my life I preferred C++ , but now I really want to try your Basic.
  So is there a way I can get BBC Basic and put it on my windows 7 machine?  perhaps a file I can download?
Does it have a compiler to make stand alone programs? 
  I would appreciate trying out your program.
Stephen Hatch
Dewey AZ USA

Re: Should I bundle Rubik.bbc with the Android edition? #poll

Richard Russell
 

On Thu, Mar 8, 2018 at 08:32 am, R.E. wrote:
So is there a way I can get BBC Basic and put it on my windows 7 machine?
For Windows your options are the free trial version of 'BBC BASIC for Windows' (BB4W), the full paid-for version of BB4W or the freeware 'BBC BASIC for SDL 2.0' (BBCSDL); all are available from the website.  The Rubik's cube program will run on the second or third option, but not on the trial version of BB4W because there is insufficient memory.  

Does it have a compiler to make stand alone programs? 

Of the three options, only the paid-for version of BB4W currently supports creating standalone Windows executables.  On the other hand developing programs using BBCSDL offers the prospect of creating standalone Android apps!

Richard.

Re: Should I bundle Rubik.bbc with the Android edition? #poll

R.E.
 

 I just found your web site and downloaded the free version and the Paid version.   I now have a lot of reading to do.
  I shall explore your product with great interest as well as curiosity.
-Stephen Hatch
Dewey AZ

Re: Should I bundle Rubik.bbc with the Android edition? #poll

Richard Russell
 

On Thu, Mar 8, 2018 at 08:55 am, R.E. wrote:
 I just found your web site and downloaded the free version and the Paid version. 
You might want to download the free BBCSDL too.  There are pros and cons compared with BB4W: BBCSDL doesn't provide access to the Windows API but it does give you access to SDL's high-performance 2D games engine.  So for example David Williams' prizewinning Forces of Darkness game needed his own assembly-language graphics library to run in BB4W, but in BBCSDL it required only BASIC code.

These days I try to write programs so that they will run in either BB4W or BBCSDL without modification.  That's usually pretty easy, although occasionally I need to include a conditional test so that different code can be executed according to the platform.  For example in Rubik.bbc the names of the 3D graphics library and its initialisation routine are different depending on the platform, so there is conditional code to allow for that.

Richard.

Re: Invitation to test the iOS edition of BBC BASIC

Richard Russell
 

After some rather intense 'forensic debugging' I've discovered what was making the graphics so slow on iOS - a 'feature' of SDL2, when running on iOS (only), which results in the SDL_PumpEvents function (and the SDL_PollEvent function, which calls it) running very slowly.   It's even commented in the code of SDL if you know where to look: 

    /* Let the run loop run for a short amount of time: long enough for
       touch events to get processed (which is important to get certain
       elements of Game Center's GKLeaderboardViewController to respond
       to touch input), but not long enough to introduce a significant
       delay in the rest of the app.
    */
    const CFTimeInterval seconds = 0.000002;

Two microseconds may not sound like much, but it's an age on a modern CPU (and in fact I suspect the pause is much longer).  The comment "not long enough to introduce a significant delay in the rest of the app" is far from the case with BBC BASIC!

Fortunately a workaround in my code was possible, so those of you who have downloaded the iOS edition of BBCSDL please replace it with the latest version.  You should notice a worthwhile speed improvement, indeed in a few cases it will be very marked (I reckon 'scarab.bbc' is now running about a hundred times faster than it was!).

Richard.