{"id":15134,"date":"2018-08-31T20:32:09","date_gmt":"2018-09-01T00:32:09","guid":{"rendered":"http:\/\/scruss.com\/blog\/?p=15134"},"modified":"2018-08-31T20:32:09","modified_gmt":"2018-09-01T00:32:09","slug":"ebens-bbc-basic-programmes","status":"publish","type":"post","link":"https:\/\/scruss.com\/blog\/2018\/08\/31\/ebens-bbc-basic-programmes\/","title":{"rendered":"eben&#8217;s bbc basic programmes"},"content":{"rendered":"<p>I wrote this as a comment to <a href=\"https:\/\/www.raspberrypi.org\/blog\/learn-to-write-games-for-the-bbc-micro-with-eben\/\">Learn to write games for the BBC Micro with Eben &#8211; Raspberry Pi<\/a>, but it didn&#8217;t seem to save:<\/p>\n<p style=\"padding-left: 30px;\"><em><a href=\"http:\/\/beebem-unix.bbcmicro.com\/\">BeebEm<\/a>? Lawks, that&#8217;s a bit old (2006). All the cool (*cough*) kids are running b-em &#8211; <a href=\"https:\/\/github.com\/stardot\/b-em\">https:\/\/github.com\/stardot\/b-em<\/a> &#8211; these days. It&#8217;s lovingly maintain by Stardot forum members. It&#8217;s a little crashy on some Linux platforms, but seems stable on the Raspberry Pi and Raspbian. You may need to install the <\/em>liballegro5-dev<em> and <\/em>zlib1g-dev<em> packages to get it to compile.<\/em><\/p>\n<p style=\"padding-left: 30px;\"><em>If you want a native version of BBC BASIC, Richard Russell&#8217;s version is pretty neat: <a href=\"http:\/\/www.bbcbasic.co.uk\/bbcsdl\/\">http:\/\/www.bbcbasic.co.uk\/bbcsdl\/<\/a> . You&#8217;ll most likely need to change line 280 to use some variant of the <\/em><strong>WAIT<\/strong><em> command to make it playable.<\/em><\/p>\n<p style=\"padding-left: 30px;\"><em>Another native interpreter is Brandy. There&#8217;s an ancient one in the repos, but I&#8217;m completely taken with the Matrix Brandy fork: <a href=\"https:\/\/github.com\/stardot\/MatrixBrandy\">https:\/\/github.com\/stardot\/MatrixBrandy<\/a> . It may need a few packages installed to get it to build (<\/em>libsdl1.2-dev<em> might be a good first try), but it&#8217;s really fast. For cross-platform happiness, change line 280 to <\/em><strong>WAIT 10<\/strong><em>. If you stick to using a <\/em><strong>FOR<\/strong><em> loop, you might have to have it as high as 2,000,000 on a fast computer!<\/em><\/p>\n<p style=\"padding-left: 30px;\"><em>Lastly, if you want to run the game in a browser, JSBeeb to the rescue: <a href=\"https:\/\/bbc.godbolt.org\/?autorun&amp;loadBasic=https:\/\/gist.githubusercontent.com\/scruss\/f5a8eb83f28b85d6399142cac460c806\/raw\/74c4e39de7661bb2e3dd7f435840dd8db7172589\/helicopter.bbc\">https:\/\/bbc.godbolt.org\/?autorun&amp;loadBasic=https:\/\/gist.githubusercontent.com\/scruss\/f5a8eb83f28b85d6399142cac460c806\/raw\/74c4e39de7661bb2e3dd7f435840dd8db7172589\/helicopter.bbc<\/a><\/em><br \/>\n<em>It&#8217;s a bit slow in Chromium on a Raspberry Pi, but it does work!<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I wrote this as a comment to Learn to write games for the BBC Micro with Eben &#8211; Raspberry Pi, but it didn&#8217;t seem to save: BeebEm? Lawks, that&#8217;s a bit old (2006). All the cool (*cough*) kids are running b-em &#8211; https:\/\/github.com\/stardot\/b-em &#8211; these days. It&#8217;s lovingly maintain by Stardot forum members. It&#8217;s a [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[7],"tags":[2062,857,2510],"class_list":["post-15134","post","type-post","status-publish","format-standard","hentry","category-computers-suck","tag-basic","tag-bbc","tag-raspberrypi"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pQNZZ-3W6","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/15134","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/comments?post=15134"}],"version-history":[{"count":1,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/15134\/revisions"}],"predecessor-version":[{"id":15135,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/15134\/revisions\/15135"}],"wp:attachment":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/media?parent=15134"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/categories?post=15134"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/tags?post=15134"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}