Jet Set Willy 2021 Edition

User avatar
TobyLobster
Posts: 618
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Jet Set Willy 2021 Edition

Post by TobyLobster »

Similar to my Manic Miner 2021 Edition (viewtopic.php?f=74&t=22323) I've updated the original BBC Micro version of Jet Set Willy:

Improvements

* More colours on screen.
* More authentic colour choices.
* More tuneful.
* New font.
* Corrected room and sprite definitions.
* Arrows and ropes together again.
* Uses the RETURN key for jump.
* Watch Tower crash bug fixed.
* Arrow rendering bug fixed.
* Player start position fixed.
* Works on the Master.

https://github.com/TobyLobster/jsw2021/raw/main/JSW.ssd

I've written notes and published the source code here https://github.com/TobyLobster/jsw2021
User avatar
leenew
Posts: 4900
Joined: Wed Jul 04, 2012 4:27 pm
Location: Doncaster, Yorkshire
Contact:

Re: Jet Set Willy 2021 Edition

Post by leenew »

Marvellous! =D>

Lee.
User avatar
kieranhj
Posts: 1103
Joined: Sat Sep 19, 2015 11:11 pm
Location: Farnham, Surrey, UK
Contact:

Re: Jet Set Willy 2021 Edition

Post by kieranhj »

I just quickly read your write up on GitHub - what a fantastic piece of work and really interesting to read about all the bugs, differences and fixes - clearly a labour of love. The increase of colours per room makes a huge difference - excellent touch! I look forward to playing this on my Master soon. =D> =D> =D>
Bitshifters Collective | Retro Code & Demos for BBC Micro & Acorn computers | https://bitshifters.github.io/
User avatar
lurkio
Posts: 4351
Joined: Wed Apr 10, 2013 12:30 am
Location: Doomawangara
Contact:

Re: Jet Set Willy 2021 Edition

Post by lurkio »

Incredible!

:shock: =D> =D> =D>
User avatar
FourthStone
Posts: 1527
Joined: Thu Nov 17, 2016 2:29 am
Location: Brisbane, Australia
Contact:

Re: Jet Set Willy 2021 Edition

Post by FourthStone »

Impressive effort, really enjoying the write up, top marks =D> :D

I wholeheartedly approve of improving / correcting classics 8)
User avatar
Richard Hallas
Posts: 74
Joined: Thu Jun 28, 2018 8:09 am
Contact:

Re: Jet Set Willy 2021 Edition

Post by Richard Hallas »

This is a stupendous piece of work! Very well done indeed; the improvements are incredible – particularly the per-row palette changes, allowing a far more authentic use of colour.

Just three small observations…

1. In The Bathroom, the wall behind the toilet is white-on-black rather than yellow-on-blue. I understand why it has to change colour here, but I don't see why both colours have to change, since yellow is still in the palette definition. Why can't it go to yellow on black? That would make it a much less obvious change.

2. The one really obvious gameplay difference from the Spectrum is ropes that you shouldn't be allowed to ascend, but can. E.g. on The Beach and Under the Roof: Willy should only be able to ascend these ropes to a certain point and go no higher, but in the BBC version he can go right to the top and wrap around to the bottom of the screen. The original BBC version does this too, but it'd be nicer if it could behave like the Spectrum (and all other ports I've tried).

3. The notes say, under Lives: "The remaining lives are shown by a line of Willy characters walking right. This is unlike the Spectrum where they are static, but apes Manic Miner instead." That's actually wrong. On the Spectrum, Manic Miner and JSW both behave in the same way, i.e. the lives march if the background music is playing, and are stationary if it isn't. It would be nice if this BBC version could mimic this behaviour.

That's really nit-picking, though. Overall, an incredible piece of work!
Richard Hallas

Former editor of RISC User and Foundation RISC User magazines
Designer of the RISC OS cogwheel logo • Designer of the RISC OS 5 icon set
User avatar
TobyLobster
Posts: 618
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: Jet Set Willy 2021 Edition

Post by TobyLobster »

Thanks. Re: Observations:

1. I thought the same thing until I tried it. Counter-intuitively yellow on black I think looks more obvious.
Screenshot 2021-07-22 at 13.21.15.png

2. I've now fixed the rope behaviour as you suggest to match the Spectrum version.

3. I'd never noticed this, you're right! I've updated the marching Willy characters to mimic this behaviour, and updated the notes to correct this.

Thanks for these.
User avatar
0xC0DE
Posts: 1300
Joined: Tue Mar 19, 2019 7:52 pm
Location: The Netherlands
Contact:

Re: Jet Set Willy 2021 Edition

Post by 0xC0DE »

Great work once again! I can't keep up with you :mrgreen:
0xC0DE
"I program my home computer / Beam myself into the future"
:arrow: Follow me on Twitter
:arrow: Visit my YouTube channel featuring my games and demos for Acorn Electron and BBC Micro
User avatar
Richard Hallas
Posts: 74
Joined: Thu Jun 28, 2018 8:09 am
Contact:

Re: Jet Set Willy 2021 Edition

Post by Richard Hallas »

TobyLobster wrote: Thu Jul 22, 2021 2:28 pm Thanks. Re: Observations:

1. I thought the same thing until I tried it. Counter-intuitively yellow on black I think looks more obvious.
How absolutely extraordinary! Yes, I completely agree now that I see it. Logically, it should be much better with yellow, yet it simply isn't. How can a single subtle colour-change be clearly more obvious than two less subtle changes? I don't understand… Weird. Anyway, I agree that you've made the right choice.
TobyLobster wrote: Thu Jul 22, 2021 2:28 pm 2. I've now fixed the rope behaviour as you suggest to match the Spectrum version.

3. I'd never noticed this, you're right! I've updated the marching Willy characters to mimic this behaviour, and updated the notes to correct this.

Thanks for these.
Wonderful! And fast work. Thank you!

By the way, perhaps I shouldn't ask, but… is there anything akin to the Spectrum's WRITETYPER mode?
Richard Hallas

Former editor of RISC User and Foundation RISC User magazines
Designer of the RISC OS cogwheel logo • Designer of the RISC OS 5 icon set
User avatar
lurkio
Posts: 4351
Joined: Wed Apr 10, 2013 12:30 am
Location: Doomawangara
Contact:

Re: Jet Set Willy 2021 Edition

Post by lurkio »

This, from your notes on Github, might be of interest to people if you'd be willing to share it..?:
On Github, TobyLobster wrote: Wed Jul 21, 2021 6:35 pm I hacked away at the b2 emulator to allow playback of keyboard inputs from a text file. This allowed me to automatically play through the entire game to check that it was completable.
:?:
User avatar
TobyLobster
Posts: 618
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: Jet Set Willy 2021 Edition

Post by TobyLobster »

Richard Hallas wrote: Thu Jul 22, 2021 5:45 pm By the way, perhaps I shouldn't ask, but… is there anything akin to the Spectrum's WRITETYPER mode?
Sadly no cheat mode, mostly because I'm out of memory. There's only 12 bytes free right now. Still, who needs a cheat mode :-) ?
User avatar
TobyLobster
Posts: 618
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: Jet Set Willy 2021 Edition

Post by TobyLobster »

might be of interest to people if you'd be willing to share it..?
Maybe, I'll have to think about that one. I'd want to get it in some kind of sensible order first.
MatthewThompson
Posts: 1872
Joined: Tue Apr 22, 2008 4:44 pm
Location: Oxford
Contact:

Re: Jet Set Willy 2021 Edition

Post by MatthewThompson »

I can only echo what has been posted previously, this is absolutely brilliant, when I first read there was an update, I thought I hope Moonlight Sontana has been added and it has !

Unfortunately and I don't know why - probably emulaitor/platform specific, the colours don't display properly using !BeebIT on RISC OS 5 machine, see attachment, the game all works and plays and sounds perfect, but it doesn't seem to like the new colours, there is like a colour band which moves down the screen until it gets to the correct colours but then the band goes down it again.

I haven't tried it yet on BeebEM on my PC, but I am pretty sure this won't happen on there.

I don't know if this can be fixed or not, but thought it was worth mentioning just in case but again a brilliant piece of work, any chance of a JSW II update too ?
Attachments
JSw2.jpg
JSW1.jpg
User avatar
TobyLobster
Posts: 618
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: Jet Set Willy 2021 Edition

Post by TobyLobster »

MatthewThompson wrote: Thu Jul 22, 2021 9:44 pm the colours don't display properly using !BeebIT on RISC OS 5 machine
This looks like an emulation issue with !BeebIT. Sorry I can't help with that.
MatthewThompson
Posts: 1872
Joined: Tue Apr 22, 2008 4:44 pm
Location: Oxford
Contact:

Re: Jet Set Willy 2021 Edition

Post by MatthewThompson »

TobyLobster wrote: Thu Jul 22, 2021 11:17 pm
MatthewThompson wrote: Thu Jul 22, 2021 9:44 pm the colours don't display properly using !BeebIT on RISC OS 5 machine
This looks like an emulation issue with !BeebIT. Sorry I can't help with that.
my thoughts exactly it was an emulator issue, no worries, thanks anyway and keep these brilliant updates coming !
MatthewThompson
Posts: 1872
Joined: Tue Apr 22, 2008 4:44 pm
Location: Oxford
Contact:

Re: Jet Set Willy 2021 Edition

Post by MatthewThompson »

Definitely emulator related as here it is running on !6502em on RISC OS.
Attachments
JSW2021.jpg
User avatar
TobyLobster
Posts: 618
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: Jet Set Willy 2021 Edition

Post by TobyLobster »

That one looks *almost* right - it seems to be changing the palette one pixel row too early, e.g. the bottom pixels of the green enemy is shown red.
MatthewThompson
Posts: 1872
Joined: Tue Apr 22, 2008 4:44 pm
Location: Oxford
Contact:

Re: Jet Set Willy 2021 Edition

Post by MatthewThompson »

TobyLobster wrote: Fri Jul 23, 2021 11:17 am That one looks *almost* right - it seems to be changing the palette one pixel row too early, e.g. the bottom pixels of the green enemy is shown red.
I hadn't noticed that at all, but having a quick play round it does appear on a few screens, but I can live with it , doesn't spoil playing the game.
User avatar
TobyLobster
Posts: 618
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: Jet Set Willy 2021 Edition

Post by TobyLobster »

Fixed a bug where the lives would not be redrawn on room exit if the music was not playing. (Same link in initial post).
User avatar
a1exh
Posts: 264
Joined: Fri Apr 16, 2021 5:35 pm
Location: Oxfordshire
Contact:

Re: Jet Set Willy 2021 Edition

Post by a1exh »

This is a breath taking technical masterpiece. Congratulations on improving this cult game on our platform. I enjoyed reading the technical diary of what was done. I played the spectrum version more than any other platform. I did play it on the Elk but it was a shadow of the spectrum in the visuals. Plus I do remember different mechanics. Great job.
Principal ASIC Engineer
RetroGeek
Acorn Electron + A310 + A5000
http://thalion.atari.org
Michael Brown
Posts: 2609
Joined: Sat Apr 03, 2010 1:54 pm
Location: Nottingham
Contact:

Re: Jet Set Willy 2021 Edition

Post by Michael Brown »

Excellent work!

BTW can the bug with the WATCH TOWER in the original BBC version not be fixed somehow?

regards,
Mick.
User avatar
jgharston
Posts: 5319
Joined: Thu Sep 24, 2009 12:22 pm
Location: Whitby/Sheffield
Contact:

Re: Jet Set Willy 2021 Edition

Post by jgharston »

Michael Brown wrote: Sat Jul 24, 2021 4:31 pm BTW can the bug with the WATCH TOWER in the original BBC version not be fixed somehow?
Yes.

Code: Select all

$ bbcbasic
PDP11 BBC BASIC IV Version 0.45
(C) Copyright J.G.Harston 1989,2005-2024
>_
User avatar
jgharston
Posts: 5319
Joined: Thu Sep 24, 2009 12:22 pm
Location: Whitby/Sheffield
Contact:

Re: Jet Set Willy 2021 Edition

Post by jgharston »

A fewTwo points:
* The display seems a bit far right. Changing register_crtc_array+3 to 90 centres it on BeebEm and my Master
* I've spotted a small number of jsr/rts sequences that could be optimised to JMPs and the branch to the RTS moved to another nearby RTS.

I was going to complain about using the Spectrum font, but it actually seems perfect! It's so weird playing on the Master and it being so close to the original.

Now... (cracks knuckles).... to update my room editor! :D

Edit:
* *RUN JSW1 instead of *RUN "JSW1" looks "neater"
* You don't need to change PAGE, as *RUN takes over completely
* If you put LDA #0:TAY:JSR OSFIND at the start of the entry code, you can also get rid of CLOSE#0, and reduce the !BOOT down to the single line: *JSW1
* If the file addresses are correctly set to the I/O processor, it works with the Tube turned on. Which, if you move the CLOSE#0 to the machine code, means it also works if any Tube is turned on!
Last edited by jgharston on Sat Jul 24, 2021 6:27 pm, edited 1 time in total.

Code: Select all

$ bbcbasic
PDP11 BBC BASIC IV Version 0.45
(C) Copyright J.G.Harston 1989,2005-2024
>_
User avatar
Dave Footitt
Posts: 998
Joined: Thu Jun 22, 2006 10:31 am
Location: Abandoned Uranium Workings
Contact:

Re: Jet Set Willy 2021 Edition

Post by Dave Footitt »

Just wanted to echo what others have said here - absolutely great job, well done that man =D> =D> =D>
melchett
Posts: 478
Joined: Tue Jan 28, 2003 9:52 am
Contact:

Re: Jet Set Willy 2021 Edition

Post by melchett »

Stunning piece of work and it breathes new life into a classic game. Great to see the Beeb can match the Spectrum original (and surpass it in some respects).

I was always pleased back in the day that Dave Mann / Tynesoft managed to cram that into the BBC Micro and preserve so much of the Spectrum game.

And this takes that work to another level - the additional colours and graphic tweaks are gorgeous. The Jet Set Willy start screen and the pulsating cross in particular.

I always wondered if this game could be completed and apparently so (Watch Tower screen crash aside, I think I had the cassette version). The replay file show it is - I wondered if anyone managed it without cheating, quite some feat to do that given how timing sensitive some of it is.

Spectrum font is a great addition as is the switch to using Return to jump.

Fascinating write up too - how did you remove the OSWORD/OSWRCH/OSBYTE calls without compromising e.g. Master compatibility? Will look at the code when I have a weekend with some more free time.

A labour of love which we can all benefit from, thank you!

Andy
User avatar
TobyLobster
Posts: 618
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: Jet Set Willy 2021 Edition

Post by TobyLobster »

melchett wrote: Sun Jul 25, 2021 4:07 pm how did you remove the OSWORD/OSWRCH/OSBYTE calls without compromising e.g. Master compatibility?
Thankfully the BBC Micro and Master share a lot of the same hardware, at least for what I needed. The specific calls I replaced control the keyboard, sound, etc and these work the same across the two machines. So as it turned out, no Master specific code was needed. An Electron version would require a lot more changes.
User avatar
Andrew_Waite
Posts: 312
Joined: Tue Aug 30, 2016 3:58 pm
Contact:

Re: Jet Set Willy 2021 Edition

Post by Andrew_Waite »

Jet Set Willy 2021 is a triumph. Eliminating the sprite flicker, the use of the Spectrum fonts and the extra colours gives the game a whole extra dimension. Superb.
MatthewThompson
Posts: 1872
Joined: Tue Apr 22, 2008 4:44 pm
Location: Oxford
Contact:

Re: Jet Set Willy 2021 Edition

Post by MatthewThompson »

After speaking with the author of !BeebIT emulator on RISC OS and him spending time working on it, JSW2021 on Beebit now looks like this

So it was emulator specific problem and it looks and plays really well now. Thanks again for this update for JSW , have you considered JSW2 on the BBC from the Speccy version ? that would be brilliant to complete the updated set . Or maybe The Perils Of Willy could be ported from Vic20 to the BBC ? just thought .
Attachments
JSW1.jpg
MatthewThompson
Posts: 1872
Joined: Tue Apr 22, 2008 4:44 pm
Location: Oxford
Contact:

Re: Jet Set Willy 2021 Edition

Post by MatthewThompson »

melchett wrote: Sun Jul 25, 2021 4:07 pm Stunning piece of work and it breathes new life into a classic game. Great to see the Beeb can match the Spectrum original (and surpass it in some respects).

I was always pleased back in the day that Dave Mann / Tynesoft managed to cram that into the BBC Micro and preserve so much of the Spectrum game.

And this takes that work to another level - the additional colours and graphic tweaks are gorgeous. The Jet Set Willy start screen and the pulsating cross in particular.

I always wondered if this game could be completed and apparently so (Watch Tower screen crash aside, I think I had the cassette version). The replay file show it is - I wondered if anyone managed it without cheating, quite some feat to do that given how timing sensitive some of it is.

Spectrum font is a great addition as is the switch to using Return to jump.

Fascinating write up too - how did you remove the OSWORD/OSWRCH/OSBYTE calls without compromising e.g. Master compatibility? Will look at the code when I have a weekend with some more free time.

A labour of love which we can all benefit from, thank you!

Andy
I can't comment on the BBC version of JSW , but the Electron version could definitely be completed as I managed to do it, that was on cassette on the Electron, no cheats or save states or anything like that.
User avatar
TobyLobster
Posts: 618
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: Jet Set Willy 2021 Edition

Post by TobyLobster »

MatthewThompson wrote: Sat Oct 23, 2021 10:45 am After speaking with the author of !BeebIT emulator on RISC OS and him spending time working on it, JSW2021 on Beebit now looks like this

So it was emulator specific problem and it looks and plays really well now. Thanks again for this update for JSW , have you considered JSW2 on the BBC from the Speccy version ? that would be brilliant to complete the updated set . Or maybe The Perils Of Willy could be ported from Vic20 to the BBC ? just thought .
No current plans to do JSW 2 or The Perils of Willy, but I won't rule it out :-)
Post Reply

Return to “miscellaneous new bbc and electron games”