Games that don't work in jsbeeb

feedback, questions and discussion relating to the Complete BBC Games Archive (beta site now open!)
User avatar
pau1ie
Posts: 525
Joined: Thu May 10, 2012 9:48 pm
Location: Bedford
Contact:

Games that don't work in jsbeeb

Post by pau1ie » Sat Jan 07, 2017 10:38 pm

Thanks to ahope1 for creating a bug report in github. The customrl also allows a game not to be played online, so I switched off the following games. Does anyone know of any others that don't work?
I'm working on http://bbcmicro.co.uk

joachim
Posts: 135
Joined: Wed Jun 21, 2006 1:20 am
Contact:

Re: Games that don't work in jsbeeb

Post by joachim » Sat Feb 25, 2017 10:54 pm

Just to be clear, there are non-RAM versions of Dunjunz too: STH has a non-RAM disc image and that doesn't work on jsbeeb either.


User avatar
billcarr2005
Posts: 1196
Joined: Fri Sep 09, 2005 3:01 pm
Location: UK
Contact:

Re: Games that don't work in jsbeeb

Post by billcarr2005 » Mon May 08, 2017 9:27 pm

Since the Master version of Dunjunz was Side B of the original disk, I decided to try Side A on jsbeeb with "BBC B" set as the model and it works fine.
I don't think that the version using sideways RAM was official, and as such I'm not entirely sure it's worth trying to get it working.

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Mon May 08, 2017 9:29 pm

The STH zip file that contained a .SSD of Dunjunz for the Master also contained a separate .SSD for the Model B, but the two .SSDs were originally two sides of a flippy disc that needed to be removed from the drive, turned over, and reinserted before you could play the Model B version of the game. (The second .SSD also held all the level data, for both Model B and Master.)

I've created a single .SSD that should contain a bootable, working copy of the Model B version of Dunjunz:
If you know how to play the game -- I don't! -- then please try my version and let me know if it works properly. In particular, can you get past Level 1 and onto Level 2?

:?:

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Mon May 08, 2017 9:30 pm

billcarr2005 wrote:Since the Master version of Dunjunz was Side B of the original disk, I decided to try Side A on jsbeeb with "BBC B" set as the model and it works fine.
I don't think that the version using sideways RAM was official, and as such I'm not entirely sure it's worth trying to get it working.
You just beat me to the Submit button!

I thought the Master version was on Side A of the STH copy?

:?:

User avatar
billcarr2005
Posts: 1196
Joined: Fri Sep 09, 2005 3:01 pm
Location: UK
Contact:

Re: Games that don't work in jsbeeb

Post by billcarr2005 » Mon May 08, 2017 9:48 pm

lurkio wrote:
I thought the Master version was on Side A of the STH copy?

:?:
I stand corrected!
Had misnamed my FSD and subsequent SSD files :oops:

User avatar
Pernod
Posts: 1216
Joined: Fri Jun 08, 2012 10:01 pm
Location: Croydon, UK
Contact:

Re: Games that don't work in jsbeeb

Post by Pernod » Tue May 09, 2017 11:50 am

lurkio wrote:If you know how to play the game -- I don't! -- then please try my version and let me know if it works properly. In particular, can you get past Level 1 and onto Level 2?
It works to level 2, I didn't try it any further.
- Nigel

BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, BeebZIF, etc.

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Tue May 09, 2017 11:54 am

Pernod wrote:
lurkio wrote:If you know how to play the game -- I don't! -- then please try my version and let me know if it works properly. In particular, can you get past Level 1 and onto Level 2?
It works to level 2, I didn't try it any further.
Thanks, Nigel! That's probably good enough -- I just wanted to check that the game code could find and load the files for levels beyond Level 1.

:idea:

joachim
Posts: 135
Joined: Wed Jun 21, 2006 1:20 am
Contact:

Re: Games that don't work in jsbeeb

Post by joachim » Thu Jun 08, 2017 12:26 am

A tiny failure: the "Play" link in Ghouls of Azzod, http://bbcmicro.co.uk/game.php?id=599, doesn't result in a functional game, just a black screen in jsbeeb.

Incomprehensibly, the game loads fine if you press SHIFT-BREAK from this screen, or if you BREAK and *EXEC !BOOT. It's just the autoboot straight from startup that fails.

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Thu Jun 08, 2017 11:10 am

joachim wrote:A tiny failure: the "Play" link in Ghouls of Azzod, http://bbcmicro.co.uk/game.php?id=599, doesn't result in a functional game, just a black screen in jsbeeb. Incomprehensibly, the game loads fine if you press SHIFT-BREAK from this screen, or if you BREAK and *EXEC !BOOT. It's just the autoboot straight from startup that fails.
I think this is down to some sort of vague "timing" issue with JSBeeb, which has already been reported here:
Unfortunately, Matt Godbolt doesn't seem to have been able to do much development work on JSBeeb lately, so I think we'll have to work around any issues, case by case. For Ghouls Of Azzod, this fix seems to work:
All I did was add a pointless PRINT statement to the !BOOT, which seems to slow it down just enough to allow JSBeeb to boot the game from a "cold start".

:idea:
Matt Godbolt wrote:Hi all, I'd like to announce my Javascript BBC Micro emulator, jsbeeb ...


User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Tue Sep 05, 2017 8:25 pm

Looks like JSBeeb will run Egghead In Space --
-- but only in Master mode:
:?:
Last edited by lurkio on Sat Dec 23, 2017 4:02 pm, edited 1 time in total.

joachim
Posts: 135
Joined: Wed Jun 21, 2006 1:20 am
Contact:

Re: Games that don't work in jsbeeb

Post by joachim » Fri Dec 22, 2017 3:11 am

lurkio wrote:
joachim wrote:A tiny failure: the "Play" link in Ghouls of Azzod, http://bbcmicro.co.uk/game.php?id=599, doesn't result in a functional game, just a black screen in jsbeeb. Incomprehensibly, the game loads fine if you press SHIFT-BREAK from this screen, or if you BREAK and *EXEC !BOOT. It's just the autoboot straight from startup that fails.
I think this is down to some sort of vague "timing" issue with JSBeeb, which has already been reported here:
Another game with the same problem (doesn't work from the "Play" link on bbcmicro.co.uk, but works when you hit SHIFT-BREAK again): Get Set Santa (http://bbcmicro.co.uk/game.php?id=1410).

(Edit: on closer inspection, this game uses essentially the same Database Publications loader as Ghouls of Azzod, so it's not surprising they both fail in the same way. I'm surprised more games aren't affected, but presumably if we got the games from a magazine type-in or from the subscription tape/disc then they wouldn't come with this individual loader. I wonder which reissue of the games this loader is from?)

By the way, this game has a "twin" (another game obviously developed from the same codebase), Super Digga (Electron User February 1988): I was going to look to see if it had the same issue, but it's one of the EU games not yet on bbcmicro.co.uk.
Last edited by joachim on Fri Dec 22, 2017 8:02 pm, edited 1 time in total.

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Fri Dec 22, 2017 1:11 pm

joachim wrote:
lurkio wrote:
joachim wrote:A tiny failure: the "Play" link in Ghouls of Azzod, http://bbcmicro.co.uk/game.php?id=599, doesn't result in a functional game, just a black screen in jsbeeb. Incomprehensibly, the game loads fine if you press SHIFT-BREAK from this screen, or if you BREAK and *EXEC !BOOT. It's just the autoboot straight from startup that fails.
I think this is down to some sort of vague "timing" issue with JSBeeb, which has already been reported here: https://github.com/mattgodbolt/jsbeeb/issues/125
Another game with the same problem (doesn't work from the "Play" link on bbcmicro.co.uk, but works when you hit SHIFT-BREAK again): Get Set Santa (http://bbcmicro.co.uk/game.php?id=1410).
Thanks. I've added Get Set Santa to the big old bug report:
I think I've found a new workaround for the problem of autobooted games that hang in JSBeeb until you manually press Shift-Break:
You don't need to make any changes to the .SSD disc-image. You just have to adapt the JSBeeb "Play" URL by replacing the autoboot parameter with autorun and adding the loadBasic parameter to load a text file containing this BASIC code:
:idea:
pau1ie wrote:Does anyone know of any others that don't work?
Paul, can we host a copy of the text file on bbcmicro.co.uk?

:?:
Last edited by lurkio on Sat Dec 23, 2017 4:01 pm, edited 1 time in total.

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Sat Dec 23, 2017 12:39 am

lurkio wrote:
pau1ie wrote:Does anyone know of any others that don't work?
Paul, can we host a copy of the text file on bbcmicro.co.uk?
Haven't heard from Paul, so I tried to work around the lack of the hosted text file that was required for the previous workaround!

Turns out that everything can be done inside the URL -- you don't have to use external resources like text files. Hat-tip to BigEd, whose URL params I nicked without fully understanding them!:
The patch uses address &BC09 as a breakpoint, three times, to insert *EXEC !BOOT into the keyboard input buffer at &3E0 and to insert bytes representing the buffer-start offset and the buffer-end offset at &2D8 and &2E1 respectively.

:idea:

http://bbcmicro.co.uk/jsbeeb/play.php?d ... 4f4f540dff
Last edited by lurkio on Wed Feb 14, 2018 1:13 pm, edited 11 times in total.

User avatar
pau1ie
Posts: 525
Joined: Thu May 10, 2012 9:48 pm
Location: Bedford
Contact:

Re: Games that don't work in jsbeeb

Post by pau1ie » Sat Dec 23, 2017 12:46 am

Sorry about that, I don't know why I didn't notice the notification. Anyway I copied the file now. It does no harm if you don't need it any more.

execboot.txt
I'm working on http://bbcmicro.co.uk

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Sat Dec 23, 2017 2:48 pm

pau1ie wrote:Sorry about that, I don't know why I didn't notice the notification. Anyway I copied the file now. It does no harm if you don't need it any more. execboot.txt
Thanks. I'm doing without the text file for now. But there is a new little problem!:

The custom "Play" URLs which I've added to the bbcmicro.co.uk entries for Ghouls Of Azzod and Get Set Santa don't load properly on my iPhone -- they give a 404 error -- but they do load properly on my laptop! Any idea why?

It's not a huge problem because I can't use JSBeeb on my iPhone anyway (it's just not compatible), but it's still odd because all the other standard Play URLs work fine on the iPhone: they load the disc and boot the game as normal. (I just can't actually play the games using my iPhone keyboard once they've loaded, but that's not the point here.)
Last edited by lurkio on Sat Dec 23, 2017 3:51 pm, edited 1 time in total.

User avatar
BigEd
Posts: 1891
Joined: Sun Jan 24, 2010 10:24 am
Location: West
Contact:

Re: Games that don't work in jsbeeb

Post by BigEd » Sat Dec 23, 2017 3:25 pm

Those URLs failed for me too, but on a laptop, using Chrome.

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Sat Dec 23, 2017 3:35 pm

BigEd wrote:Those URLs failed for me too, but on a laptop, using Chrome.
Yes, you're quite right!

The only browser I can get the URLs to work in is Safari 10.1.2 on my laptop. They fail in Chrome and Firefox on my laptop.

How odd.

:?:

UPDATE: I think I made an error in the URLs (but quite why they still worked in Safari I've no idea!?).

Try these:
:idea:
Last edited by lurkio on Mon Dec 25, 2017 10:26 am, edited 3 times in total.

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Sat Dec 23, 2017 7:04 pm

pau1ie wrote:Sorry about that
Paul, I've noticed that there are two different directory-hierarchy formats for "Play" URLs (and "Download" URLs).

One includes the game ID in the path, in this case 2627:
But the other doesn't:
What's the reason for the difference?

:?:

User avatar
pau1ie
Posts: 525
Joined: Thu May 10, 2012 9:48 pm
Location: Bedford
Contact:

Re: Games that don't work in jsbeeb

Post by pau1ie » Sat Dec 23, 2017 10:07 pm

lurkio wrote:What's the reason for the difference?
A combination of laziness and foolishness. At first everything was in the same directory. Then when I created the backend I realised it would be easier for each game to have its own directory. If you access the game upload page it creates the directory if it doesn't exist and moves the disc image into it. So you can force the game to have its own subdirectory that way.

Of course I could have (And could still) create a program to move everything into its own directory. Not sure why I didn't, I suppose it made sense to me at the time.
I'm working on http://bbcmicro.co.uk

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Sat Dec 23, 2017 10:39 pm

pau1ie wrote:A combination of laziness and foolishness. At first everything was in the same directory. Then when I created the backend I realised it would be easier for each game to have its own directory. If you access the game upload page it creates the directory if it doesn't exist and moves the disc image into it. So you can force the game to have its own subdirectory that way.

Of course I could have (And could still) create a program to move everything into its own directory.
Yes, creating that program would probably be a good idea for the sake of consistency -- and sanity!

I'm wondering if this might have something to do with why I got my Play links in recent posts so badly wrong?

In any case, is there a way to get a list of all the custom Play URLs that you, Lee and I have manually added to date? I want to check I haven't made any more errors.

:?:

User avatar
pau1ie
Posts: 525
Joined: Thu May 10, 2012 9:48 pm
Location: Bedford
Contact:

Re: Games that don't work in jsbeeb

Post by pau1ie » Sat Dec 23, 2017 11:55 pm

lurkio wrote:Yes, creating that program would probably be a good idea for the sake of consistency -- and sanity!
I will look into it.
lurkio wrote:is there a way to get a list of all the custom Play URLs

Code: Select all

SELECT concat(gameid, ' ', customurl) FROM `images` where customurl > '' 

 557    %jsbeeb%%wsroot%/gameimg/discs/557/Disc031-UridiumCB.ssd&model=Master
 599    %wsroot%jsbeeb/play.php?disc=%wsroot%/gameimg/discs/599/Disc034-GhoulsOfAzzod.ssd&patch=@bc09,3e0:324f4c440d52554e0d000d;@bc09,2d8:e1;@e4e0,1900:0d00000f2a455845432021424f4f540dff
 709    %jsbeeb%%wsroot%/gameimg/discs/709/Disc040-ExileR.ssd&model=Master
 743    %jsbeeb%%wsroot%/gameimg/discs/743/Disc042-CloggerP.ssd&model=Master
1068    %jsbeeb%/play.php?autoboot&disc=http://bbcmicro.co.uk/gameimg/discs/1068/DunjunzB.ssd
1212    %jsbeeb%%wsroot%/gameimg/discs/1212/Disc068-ExizR.ssd&model=Master
1249    %jsbeeb%%wsroot%/gameimg/discs/1249/Disc070-HoledOutR.ssd&model=Master
1260    %jsbeeb%%wsroot%/gameimg/discs/1260/Disc070-ZedonR.ssd&model=Master
1385    %jsbeeb%%wsroot%/gameimg/discs/1385/Disc077-UIMR.ssd&model=Master
1410    %wsroot%/jsbeeb/play.php?disc=%wsroot%/gameimg/discs/1410/Disc079-GetSetSantaE.ssd&patch=@bc09,3e0:324f4c440d52554e0d000d;@bc09,2d8:e1;@e4e0,1900:0d00000f2a455845432021424f4f540dff
1842    %jsbeeb%%wsroot%/gameimg/discs/1842/Disc103-EggheadInSpace.ssd&model=Master
1849    NONE
1964    %jsbeeb%%wsroot%/gameimg/discs/1964/Disc110-AstroblasterRCB.ssd&model=Master
2196    %jsbeeb%%wsroot%/gameimg/discs/2196/Disc999-QuestForTheGobal.ssd&model=Master
2294    NONE
2329    %jsbeeb%%wsroot%/gameimg/discs/2329/Disc999-HobbitUniversalDiscVersion.ssd&model=master
2346    NONE
1286    %jsbeeb%%wsroot%/gameimg/discs/1286/Disc072-HoledOutExtraCourses1R.ssd&model=Master
1322    %jsbeeb%%wsroot%/gameimg/discs/1322/Disc074-HoledOutExtraCourses2R.ssd&model=Master
1992    NONE
2330    %jsbeeb%%wsroot%/gameimg/discs/2330/Disc999-LordOfTheRingsUniversalTextOnly.ssd&model=Master
2297    NONE
2298    NONE
2299    NONE
2300    NONE
2296    NONE
2552    NONE
The customurl is created from the file upload page. If the image file wasn't in its own directory before, accessing the page will have put it in its own directory. There are debug statements to this effect if it happens, but they wouldn't have meant much to you before you had this explained. So all custom urls should have the subdirectory included (discs/nnnn/filename.ssd). Scanning the list, I think they do, so they should work.

I am really pleased with the bbcmicro website, apart from the back end which is butt ugly, has debug statements all over, and barely works. It doesn't help you in the way you would expect a website to normally. I feel a little embarrassed about this, but since currently only three people ever see it, I don't think it is best use of my time to improve it. Hopefully you can make it work better as you get used to it.
I'm working on http://bbcmicro.co.uk

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Sun Dec 24, 2017 6:29 pm

pau1ie wrote:The customrl also allows a game not to be played online, so I switched off the following games ...
OddJob (Disc Version) (AKA Odd Job) ...
Found a workaround for Oddjob so that it can now be played online in JSBeeb. See link in quote.

:idea:

User avatar
pau1ie
Posts: 525
Joined: Thu May 10, 2012 9:48 pm
Location: Bedford
Contact:

Re: Games that don't work in jsbeeb

Post by pau1ie » Fri Dec 29, 2017 10:04 pm

lurkio wrote:Yes, creating that program would probably be a good idea for the sake of consistency -- and sanity!
I have created and run the above program. Everything looks like it works still, but please let me know if it doesn't (I normally manage to mess something up!). So now, every disc image should be in its own directory, which is numbered for the game id.
I'm working on http://bbcmicro.co.uk

joachim
Posts: 135
Joined: Wed Jun 21, 2006 1:20 am
Contact:

Re: Games that don't work in jsbeeb

Post by joachim » Thu Mar 22, 2018 2:25 am

Southern Belle and Evening Star only 99% work in jsbeeb from the "Play" link. The bug is that if you start the game then hit 'T' to display the timetable screen, half of the bottom line of text is cut off.

Playing at godbolt.org with the STH disc image doesn't have this problem, so I assume it's due to using an outdated version of jsbeeb.

User avatar
pau1ie
Posts: 525
Joined: Thu May 10, 2012 9:48 pm
Location: Bedford
Contact:

Re: Games that don't work in jsbeeb

Post by pau1ie » Thu Mar 22, 2018 6:22 pm

This is because of the black border we put on the screen to hide scrolling artifacts, jsbeeb works fine.

Lurkio asked:
lurkio wrote:Would it be possible to superimpose black borders on the canvas element
It was, but it seems to have caused this problem.

What do you think Lurkio? We didn't update jsbeeb because of the disc drive noises being annoying and slowing the emulator down. Matt seemed happy to make the optional, but clearly hasn't found time to do that yet.
I'm working on http://bbcmicro.co.uk

User avatar
lurkio
Posts: 1611
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: Games that don't work in jsbeeb

Post by lurkio » Thu Mar 22, 2018 7:27 pm

pau1ie wrote:This is because of the black border we put on the screen to hide scrolling artifacts, jsbeeb works fine. Lurkio asked:
lurkio wrote:Would it be possible to superimpose black borders on the canvas element
It was, but it seems to have caused this problem. What do you think Lurkio?
I'd still like to keep the border as the default option if at all possible, but how about passing a URL param to play.php which would trigger code that removes the border (removes the <div id="cub-monitor"> node from the DOM) ? Then we could turn off the border as and when necessary -- i.e. in the hopefully rare cases like Southern Belle that need it gone.

:?:

User avatar
pau1ie
Posts: 525
Joined: Thu May 10, 2012 9:48 pm
Location: Bedford
Contact:

Re: Games that don't work in jsbeeb

Post by pau1ie » Fri Mar 23, 2018 9:40 am

lurkio wrote:how about passing a URL param to play.php
I will look into it. I am a little concerned at the number of customisations we are making because this will cause problems upgrading jsbeeb, but I suppose we can always just fall back to losing them at the point of upgrade.
I'm working on http://bbcmicro.co.uk

Post Reply