Unusual tape loaders

reminisce about bbc micro & electron games like chuckie egg, repton, elite & exile

Related forum: adventures


User avatar
Rich Talbot-Watkins
Posts: 1121
Joined: Thu Jan 13, 2005 5:20 pm
Location: Palma, Mallorca

Unusual tape loaders

Postby Rich Talbot-Watkins » Tue Nov 22, 2016 9:45 am

"Way of the Exploding Fist" loads its title screen exactly like the Spectrum!
Look! - http://bbc.godbolt.org/?tape=sth%3AMelb ... _B.hq.zip#

Image

First loads 1bpp data in that peculiar interleaved format, one third of the screen at a time, and then loads all the "attributes" at the end. It even sounds like a Spectrum loading a screen! All using its own blockless tape format. I guess this works as a way of compressing the image, but it's a complicated way to do it - I can only assume the author intended it as a kind of "tribute" to the other platform.

Skirmish's tape loader is also a work of art of its own.

Any other interesting tape loaders out there?

User avatar
Kecske Bak
Posts: 676
Joined: Wed Jul 13, 2005 7:03 am
Location: Treddle's Wharf, Chigley
Contact:

Re: Unusual tape loaders

Postby Kecske Bak » Tue Nov 22, 2016 10:54 am

Micropower Dune Rider had quite an interesting tape loader IIRC, a primitive precursor of the Skirmish one.

User avatar
Rich Talbot-Watkins
Posts: 1121
Joined: Thu Jan 13, 2005 5:20 pm
Location: Palma, Mallorca

Re: Unusual tape loaders

Postby Rich Talbot-Watkins » Tue Nov 22, 2016 11:44 am

Ah yes, it has text interleaved with the code it's loading so it can give you something to read while it loads. Never seen that one before! Here's a UEF from the old Acorn Preservation site:
Attachments
Dune Rider.zip
(10.55 KiB) Downloaded 25 times

poink
Posts: 963
Joined: Tue Mar 01, 2011 10:27 am

Re: Unusual tape loaders

Postby poink » Tue Nov 22, 2016 12:28 pm

Rich Talbot-Watkins wrote:I guess this works as a way of compressing the image, but it's a complicated way to do it - I can only assume the author intended it as a kind of "tribute" to the other platform.

Maybe, but it looks the ZX Spectrum uses the same title/loading screen - albeit with a bit more magenta - so, perhaps it was more about saving money by reusing the artwork than anything else!

User avatar
Rich Talbot-Watkins
Posts: 1121
Joined: Thu Jan 13, 2005 5:20 pm
Location: Palma, Mallorca

Re: Unusual tape loaders

Postby Rich Talbot-Watkins » Tue Nov 22, 2016 12:54 pm

Yeah, it doesn't surprise me that it would be the same image (but scaled down to 4 colours instead of 16), but it does surprise me that they would opt for exactly the same data format as the Spectrum screen instead of converting it to a more BBC-ready format. I wonder if all the attribute data is exactly the same as the Spectrum screen as well, and converted to a more limited Mode 1 palette as it loads?

In terms of saving money, I don't really think that's necessarily the reason - given how much extra development time would have gone into coding the screen loader and custom tape handling. But maybe the size benefits of this screen format were enough to convince him to keep the data in this form, instead of spending more time converting it to BBC screen layout with RLE compression or whatever.

This must be the only case of "attribute clash" on the BBC! Look at the red and blue blocks of colour at the top of the guy's head!

User avatar
kieranhj
Posts: 528
Joined: Sat Sep 19, 2015 10:11 pm
Location: Farnham, Surrey, UK

Re: Unusual tape loaders

Postby kieranhj » Tue Nov 22, 2016 3:48 pm

Rich Talbot-Watkins wrote:This must be the only case of "attribute clash" on the BBC! Look at the red and blue blocks of colour at the top of the guy's head!

Other than MODE 7 of course! I like the effect Spectrum style loading effect though, have you tried extracting the data & code to see the attribute format etc.?
Bitshifters Collective | Retro Code & Demos for BBC Micro & Acorn computers | https://bitshifters.github.io/

cmj6502
Posts: 29
Joined: Mon Jan 05, 2009 7:24 pm

Re: Unusual tape loaders

Postby cmj6502 » Wed Nov 23, 2016 9:00 pm

Didn't ultimate play the game titles have weird loaders?

I seem to recall sabre wulf having some special loader, but I could be totally mis remembering! I think I got a .. ahem backup disk version in the end.

Tony1044
Posts: 38
Joined: Thu Feb 06, 2003 3:24 pm

Re: Unusual tape loaders

Postby Tony1044 » Thu Dec 01, 2016 10:25 am

Psychastria had it's own unique loader for the tape version tape, too.

Kevin Edwards
Posts: 61
Joined: Tue Mar 14, 2006 9:16 pm

Re: Unusual tape loaders

Postby Kevin Edwards » Tue Oct 17, 2017 3:00 pm

Yes, most of the Ultimate games had their own custom tape loaders. For protection and load time speed reasons.

Basically a 1200 baud continuous stream with no 'inter-block' gaps. Just one big lump of data.

Loads quite a bit faster, but if you get a tape error you have to rewind and start from scratch.

I did attempt to increase the baud rate but IIRC the serial ULA wouldn't let you go any faster.

User avatar
Rich Talbot-Watkins
Posts: 1121
Joined: Thu Jan 13, 2005 5:20 pm
Location: Palma, Mallorca

Re: Unusual tape loaders

Postby Rich Talbot-Watkins » Tue Oct 17, 2017 8:07 pm

Actually, By Fair Means Or Foul has an interesting tape loader. It also goes for the 'big block of data' approach, but it's broken into blocks too, and will prompt you to rewind the tape a small amount if it detects an error. The stream format is basically:

* start of block marker
* file number
* block number
* checksum of those three bytes
* 256 bytes of data
* data CRC
(repeat)

without any gaps. After rewinding the tape, it must need a moment to synchronise correctly, until it manages to read a byte which is correctly framed by start/stop bits - not sure how the Serial ULA handles this, but it seems to work. It also does some basic run-length encoding to reduce the file size a bit - pretty cool.

User avatar
vanekp
Posts: 342
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Unusual tape loaders

Postby vanekp » Tue Oct 17, 2017 8:29 pm

mmm don't seem to have a tape image (cant find one on the forum either or sth) has it never been made into a uef then?
only see this on sth :-

By Fair Means or Foul ** continuous data streams : would not transfer with MAKEUEF v0.3b **


Peter.

User avatar
Rich Talbot-Watkins
Posts: 1121
Joined: Thu Jan 13, 2005 5:20 pm
Location: Palma, Mallorca

Re: Unusual tape loaders

Postby Rich Talbot-Watkins » Tue Oct 17, 2017 8:44 pm

Pro Boxing Simulator from Codemasters was a retitled re-release, which has the same loader!

Edit: Ha, due to a bug in jsbeeb, it hangs once it's loaded. Oh well, try it in B-Em if you actually want to play it afterwards...

Edit 2: Actually that's weird code. It's setting up the transmit baud rate, and then writing some data via the serial hardware, and in a kind of obfuscated way too. I have no idea what purpose that serves - perhaps Bill Carr can hazard a guess? It's the code at &6024. Serial output isn't supported by jsbeeb, so no wonder it doesn't work properly.

User avatar
vanekp
Posts: 342
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Unusual tape loaders

Postby vanekp » Wed Oct 18, 2017 1:20 pm

Ahhh okay thanks Rich for the info and not that hard to replicate I see.
Peter.

Commie_User
Posts: 916
Joined: Wed Jan 27, 2016 12:50 am

Re: Unusual tape loaders

Postby Commie_User » Wed Oct 18, 2017 4:13 pm

I like those loader musics, not to mention the fastloaders. Pity BBC programmers were unable to make fastloading routines where the data just whisked in to the accompaniment of raster bars, music and a mini game at the same time. On the 64, you had your own acid house, right there. (But then, given the Beeb's more garish colours, I suppose more kids may have had attacks if all that lot began to flash. Teacher might not have like it, either.)

It's the music I love. I already looked at that: viewtopic.php?t=11429

User avatar
MrZeroPage
Posts: 15
Joined: Mon Oct 03, 2016 5:45 pm
Location: Warwickshire, UK

Re: Unusual tape loaders

Postby MrZeroPage » Thu Oct 26, 2017 2:49 pm

I always found custom loaders on tape for the BBC magical. Especially as you couldn't *LOAD the game data in the first place!
Both Rich & Kevin are spot on, the serial ULA is set to 1200 baud with CRC checks and the 2400Hz inter-block gap for normal tape operations. Fist goes both barrels at 1200 baud with no CRC and no inter block gap.

I was curious how this is done so I disassembled the Fist game loader and annotated it. The loader itself is loaded into and begins execution at &2F00. Note that this code doesn't load in the whole game program, it loads 42 blocks of 256 bytes starting from &400 and JMPs to &1000 where the rest of the game code is loaded in, replacing the original loader.

This is just the loader for the game, I'm also curious about the spectrum-style loading screen so I'll have a bash at that next ;)

WEF-LOADER.pdf
(262.09 KiB) Downloaded 22 times


Hope some of you find it useful/interesting.
All the best, James.
Last edited by MrZeroPage on Sat Oct 28, 2017 3:54 pm, edited 2 times in total.

User avatar
vanekp
Posts: 342
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Unusual tape loaders

Postby vanekp » Thu Oct 26, 2017 4:20 pm

James what game are we talking about here, its not clear from your post ?
Peter.

User avatar
MrZeroPage
Posts: 15
Joined: Mon Oct 03, 2016 5:45 pm
Location: Warwickshire, UK

Re: Unusual tape loaders

Postby MrZeroPage » Thu Oct 26, 2017 4:22 pm

Apologies... it's Way Of The Exploding Fist.

Cheers, James.


Return to “software: classic games”

Who is online

Users browsing this forum: No registered users and 4 guests