Which Emulator for BBC Micro on Linux?

want to talk about MESS/model b/beebem/b-em/electrem/elkulator? do it here!
BitSeeker
Posts: 53
Joined: Fri Mar 30, 2018 1:18 pm
Contact:

Re: Which Emulator for BBC Micro on Linux?

Post by BitSeeker » Fri Apr 13, 2018 3:51 pm

I've been working on a BASIC program as a refresher and to put into practice the things learned. The program is now approaching 140 lines of code and I am finding that using *EXEC to load from a text file no longer imports all of the lines. I am wondering whether this is down to memory? I am getting no system error messages during the transfer, just an incomplete transfer. Naturally, the program no longer runs properly because lines are missing. Using copy and paste still seems to work fine though and the program runs as expected.

Coeus
Posts: 1025
Joined: Mon Jul 25, 2016 11:05 am
Contact:

Re: Which Emulator for BBC Micro on Linux?

Post by Coeus » Fri Apr 13, 2018 4:43 pm

BitSeeker wrote:I've been working on a BASIC program as a refresher and to put into practice the things learned. The program is now approaching 140 lines of code and I am finding that using *EXEC to load from a text file no longer imports all of the lines. I am wondering whether this is down to memory? I am getting no system error messages during the transfer, just an incomplete transfer. Naturally, the program no longer runs properly because lines are missing. Using copy and paste still seems to work fine though and the program runs as expected.
If it is possible to copy/paste the the program then it must fit in memory. I am not aware of a limitation for *EXEC. What happens? Is there an error message? If it just seems to stop short is it still possible to type at the BASIC prompt?

BitSeeker
Posts: 53
Joined: Fri Mar 30, 2018 1:18 pm
Contact:

Re: Which Emulator for BBC Micro on Linux?

Post by BitSeeker » Fri Apr 13, 2018 9:02 pm

There is no error message. It just stops short. One has to press Return to exit anyway, which goes back to the prompt from where it is possible to type and do a RUN.

User avatar
Elminster
Posts: 3076
Joined: Wed Jun 20, 2012 8:09 am
Location: Essex, UK
Contact:

Re: Which Emulator for BBC Micro on Linux?

Post by Elminster » Mon Apr 16, 2018 7:35 pm

Elminster wrote:For those who know what Linux Containers are I have been playing around and put Tom's Linux version of B2 into a container.

The build file sucks the source, installs the dependancies, builds it and pushes the binary to another container. Will run on windows, mac or linux x86 currently (tested against docker 18.03 & 18.04 CE). Need vncviewer, so no sound but I may have a play at doing the others, and quite a few tweaks can be made to reduce the size further, larger than a single binary but much smaller than a VM.

https://hub.docker.com/r/elminster/b2_build/

Brief instructions on running the container on the site.
Rejigged this now. Docker imagine is at

https://hub.docker.com/r/elminster/b2_build/

And support multiple architectures (i.e. it has a manifest list), namely Linux x86 and Linux ARM (slow though, not sure if that is the pi, the build or b2 in general). Although bear in mind that Pre Windows 10 64bit and Docker for Mac actually running Linux 86 containers, So this should work on most platforms (even on later windwos versiosn you can switch it back from Windows to Linux containers). Also added the switch for command line volumes.
Will probably do a true windows container version next.

docker run -d -p 5920:5920 -v <local directory>:/home/bbcmicro/ssd elminster/b2:latest

Version of b2 is tagged as v0.4 but it is actually the last code from Tom's github.

Coeus
Posts: 1025
Joined: Mon Jul 25, 2016 11:05 am
Contact:

Re: Which Emulator for BBC Micro on Linux?

Post by Coeus » Mon Apr 16, 2018 10:20 pm

BitSeeker wrote:There is no error message. It just stops short. One has to press Return to exit anyway, which goes back to the prompt from where it is possible to type and do a RUN.
Very strange. Where are you *EXECing the file from? An SSD? if so does it *TYPE correctly? Any weird characters in it? You could try *DUMP to check.

Unrelated by I have put pre-compiled Linux packages (as well as Windows) for B-Em (the Allegro 5 version) at https://github.com/stardot/b-em/release ... egro5-pre2

User avatar
Elminster
Posts: 3076
Joined: Wed Jun 20, 2012 8:09 am
Location: Essex, UK
Contact:

Re: Which Emulator for BBC Micro on Linux?

Post by Elminster » Tue Apr 17, 2018 12:31 am

Coeus wrote:
Unrelated by I have put pre-compiled Linux packages (as well as Windows) for B-Em (the Allegro 5 version) at https://github.com/stardot/b-em/release ... egro5-pre2
I noticed that as I just got b-em Linux (allegro4) working in a container as well. Going to have to work out how to tag them, I guess follow git hub tags.

tom_seddon
Posts: 210
Joined: Mon Aug 29, 2005 11:42 pm
Contact:

Re: Which Emulator for BBC Micro on Linux?

Post by tom_seddon » Wed Apr 18, 2018 1:37 am

Elminster wrote:Rejigged this now. Docker imagine is at

https://hub.docker.com/r/elminster/b2_build/

And support multiple architectures (i.e. it has a manifest list), namely Linux x86 and Linux ARM (slow though, not sure if that is the pi, the build or b2 in general). Although bear in mind that Pre Windows 10 64bit and Docker for Mac actually running Linux 86 containers, So this should work on most platforms (even on later windwos versiosn you can switch it back from Windows to Linux containers). Also added the switch for command line volumes.
Will probably do a true windows container version next.

docker run -d -p 5920:5920 -v <local directory>:/home/bbcmicro/ssd elminster/b2:latest

Version of b2 is tagged as v0.4 but it is actually the last code from Tom's github.
Interesting - thanks for this! I'll try it out when I'm doing my Linux fixes. I'm not surprised if it is rather slow on a Raspberry Pi, since b2 is written with a modern Intel system in mind (GPU, good branch prediction, lots of MHz, out-of-order execution) - which is another way of saying it isn't especially efficient.

Regarding the version number: I'm setting up a continuous integration/rolling builds sort of setup with GitHub/Travis/AppVeyor, and so I'm thinking of changing the release process. I'm going to post in the b2 thread about this now.

--Tom

User avatar
Elminster
Posts: 3076
Joined: Wed Jun 20, 2012 8:09 am
Location: Essex, UK
Contact:

Re: Which Emulator for BBC Micro on Linux?

Post by Elminster » Wed Apr 18, 2018 9:17 am

tom_seddon wrote: Interesting - thanks for this! I'll try it out when I'm doing my Linux fixes. I'm not surprised if it is rather slow on a Raspberry Pi, since b2 is written with a modern Intel system in mind (GPU, good branch prediction, lots of MHz, out-of-order execution) - which is another way of saying it isn't especially efficient.
I did notice when playing with B-em allegro5 that the 'latest' ubuntu build from docker hub uses 16.x (which doesnt work with allegro 5 very well), so switched to 17.10. Will try the same on B2 to see if it make any difference. B-em is a bit sluggish but a little more responsive. At some point I will try these native on RPI but my main aim is Docker playing.
Regarding the version number: I'm setting up a continuous integration/rolling builds sort of setup with GitHub/Travis/AppVeyor, and so I'm thinking of changing the release process. I'm going to post in the b2 thread about this now.
--Tom
Watching B2 on github so I saw the CI update, should make it easier for people. Next on my learning list is to get Jenkins to CI/autobuild containers. At the movement the version tags are all manual, be good to automated it based on what is in github. The learning is work related but the emulators are a useful learning mini project.

Post Reply