Musical tape loaders

Whether it's Mire Mare or a BASIC tape you found in the attic, it needs to be preserved digitally. Post here and experts can help to do so.

Moderator: pavero

User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: Musical tape loaders

Post by R-Tape »

TheShich wrote: Tue Jun 12, 2018 1:26 pm I don't like being touched, but I'm here :)
It's been a long time, but probably I still have tap sources for above videos if you still interested.
Brilliant! Yes please, I'll send you a PM.

Great work by the way.
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: Musical tape loaders

Post by R-Tape »

TheShich wrote: Tue Jun 12, 2018 1:26 pm It's been a long time, but probably I still have tap sources for above videos if you still interested.
Any luck Shich? If you don't have the TAPs perhaps someone could make representative ones from the YouTube vids themselves?
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: Musical tape loaders

Post by R-Tape »

TheShich wrote: Tue Jun 12, 2018 1:26 pm It's been a long time, but probably I still have tap sources for above videos if you still interested.
Any luck Shich? If you don't have the TAPs perhaps someone could make representative ones from the YouTube vids themselves?
User avatar
TheShich
Drutt
Posts: 17
Joined: Tue Jun 12, 2018 1:19 pm

Re: Musical tape loaders

Post by TheShich »

I'm sorry for delay. It was 3 PC ago and I'm very disorganized person. But there's a hope still.
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: Musical tape loaders

Post by R-Tape »

TheShich wrote: Sun Jul 01, 2018 11:24 am I'm sorry for delay. It was 3 PC ago and I'm very disorganized person. But there's a hope still.
Received with thanks, they will be in the next update. How did you make them by the way? Did you use Patrik Rak's utility I've quoted by Bob below? If not can you explain how you did it?
bob_fossil wrote: Sat May 12, 2018 5:34 pm Patrik Rak made a utility which lets you create musical loaders:

http://www.thefossilrecord.co.uk/wp-con ... icload.zip

I also had this kicking about on my hard drive. Can't give a credit as there's no info in the zip file.

http://www.thefossilrecord.co.uk/wp-con ... loader.zip
Ta Bob, I missed this one. Can you remember where it came from? What song is it? I'm sure I'll kick myself but I can't place it!
User avatar
bob_fossil
Manic Miner
Posts: 654
Joined: Mon Nov 13, 2017 6:09 pm

Re: Musical tape loaders

Post by bob_fossil »

After some Googling, I think it's from here:

http://foro.speccy.org/viewtopic.php?f=6&t=214

The links are dead (for the zips and YouTube video) but it looks like it was written by 'Decicoder'.

As for the tune, the first part sounds like 'Oh Susannah' - more commonly known as 'I came from Alabama with a banjo on my knee'.
User avatar
TheShich
Drutt
Posts: 17
Joined: Tue Jun 12, 2018 1:19 pm

Re: Musical tape loaders

Post by TheShich »

R-Tape wrote: Sun Jul 01, 2018 7:51 pm How did you make them by the way? Did you use Patrik Rak's utility I've quoted by Bob below? If not can you explain how you did it?
Well, actually no. I did not use any utilities.
The main inspiration was this video and lots of other videos with crazy stuff playing Vader's theme like floppy drives.

https://www.youtube.com/watch?v=pmfHHLfbjNQ

I thought what if loading noise itself is a melody? My goal was to make a valid piece of data loadable by standard Speccy routines that sounds like a well known tune. It's pity, but I can't load any additional data this way.
To make long story short I read how zeroes and ones are stored on tape. Then I tried to listen to different patterns of zeroes and ones. Then with many trial and errors attempts I hand tuned my "piano". It's relatively easy task, but as far as I know nobody tried to repeat it. There were other people's attempts before, but they sounds unfamiliar.
Now imagine a piano with may notes missing, and remaining notes wrong. I was disappointed. So the music is just stream of carefully chosen bits packed in bytes. Moreover, with Speccy tape encoding every 0 is shorter than 1. That's why empty blocks are loading faster. And I have to count every 1 and 0 and calculate time properly. It was real pain, but I succeeded (I think so). By the way "R tape loading error" was dramatic coincidence because I pause recorder manually.
User avatar
4thRock
Manic Miner
Posts: 415
Joined: Thu Nov 09, 2017 9:35 am
Location: Portugal

Re: Musical tape loaders

Post by 4thRock »

TheShich wrote: Wed Jul 04, 2018 10:02 pm ... Then with many trial and errors attempts I hand tuned my "piano".
...
Now imagine a piano with may notes missing, and remaining notes wrong.
Can you give us some more information ?
What note range is available ?
Do you have a table of Byte » Khz » Nearest Note ?
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: Musical tape loaders

Post by R-Tape »

bob_fossil wrote: Sat May 12, 2018 5:34 pm I also had this kicking about on my hard drive. Can't give a credit as there's no info in the zip file.

http://www.thefossilrecord.co.uk/wp-con ... loader.zip
I've converted this to TZX and it plays the tune but I can't get SPIN or FUSE to recognise it as a viable loader, can anyone help?
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: Musical tape loaders

Post by Ast A. Moore »

R-Tape wrote: Sat Jul 07, 2018 9:44 am I've converted this to TZX and it plays the tune but I can't get SPIN or FUSE to recognise it as a viable loader, can anyone help?
I get the opposite results: I can fish out the loader, but the payload needs to be converted to CSW or direct recording.

That aside, I don’t quite get the idea behind this exercise. We simply have a series of tones of different frequencies, which don’t translate into data. The only “loader” effect is the border changing color each time the waveform crosses the zero point.

The loader is a variation of OTLA—it uses IN F,(C) and checks for parity (a dubious choice for an actual loader, as pressing any key during loading will corrupt the data). In this case, it works as a sort of real-time digitizer. The irony is that the Spectrum kind of already does that on its own.

I think I’m missing something here. :?
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: Musical tape loaders

Post by R-Tape »

Ast A. Moore wrote: Sat Jul 07, 2018 1:58 pm That aside, I don’t quite get the idea behind this exercise. We simply have a series of tones of different frequencies, which don’t translate into data. The only “loader” effect is the border changing color each time the waveform crosses the zero point.
Is it 'Oh Susannah' you don't see the point of, or musical tape loaders in general?

My understanding is that Imperial March and Happy30th do translate into bytes and are worthy of a ZXDB ID, but based on what you say 'Oh Susannah' is only a loader followed by everyday notes that do not translate into bytes and shouldn't have an ID. Sound about right?
I think I’m missing something here. :?
I doubt it!
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: Musical tape loaders

Post by Ast A. Moore »

R-Tape wrote: Sat Jul 07, 2018 2:25 pm Is it 'Oh Susannah' you don't see the point of, or musical tape loaders in general?
I have nothing against “Oh, Susanna”—it’s one of the tunes my wristwatch plays! (Yup, it’s from the 80s, and sill going strong). :lol:
I just don’t see how this is a “loader.” It doesn’t load anything; just toggles the border color based on the state of the EAR port. You can feed it any audio signal—even a complex one—and it’ll more or less do the same.
R-Tape wrote: Sat Jul 07, 2018 2:25 pmMy understanding is that Imperial March and Happy30th do translate into bytes and are worthy of a ZXDB ID, but based on what you say 'Oh Susannah' is only a loader followed by everyday notes that do not translate into bytes and shouldn't have an ID. Sound about right?
Yeah, in a nutshell.

For I come from Alabama with a banjo on my knee . . .
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
djnzx48
Manic Miner
Posts: 729
Joined: Wed Dec 06, 2017 2:13 am
Location: New Zealand

Re: Musical tape loaders

Post by djnzx48 »

Maybe I'm not quite getting what you're saying here, but the 'Oh Susanna' thing definitely loaded something for me:

Image
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: Musical tape loaders

Post by Ast A. Moore »

djnzx48 wrote: Sun Jul 08, 2018 3:43 am Maybe I'm not quite getting what you're saying here, but the 'Oh Susanna' thing definitely loaded something for me:
I think you mixed up the tapes and left Phil Collins’ But Seriously in the tape player. A rookie mistake.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
djnzx48
Manic Miner
Posts: 729
Joined: Wed Dec 06, 2017 2:13 am
Location: New Zealand

Re: Musical tape loaders

Post by djnzx48 »

So what exactly makes this 'not a loader' then? It looks like one to me.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: Musical tape loaders

Post by Ast A. Moore »

djnzx48 wrote: Sun Jul 08, 2018 10:56 am So what exactly makes this 'not a loader' then? It looks like one to me.
Holy moly! I originally only managed to have a precursory look at it, and it didn’t look to me it it actually loaded anything. I just tried to play back the audio file in Fuse and . . . :o

Seriously, man, I thought you were joking with that screen shot.

My apologies. This requires serious investigation.

[mention]R-Tape[/mention] I kid you not. It really friggin’ loads that screen while playing the goddamn tune!

P.S. My point about the use of the IN F,(C) instruction still stands, though (don’t press any keys while the screen is loading), but doesn’t make me any less wrong on the whole loader vs. not-a-loader front.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
MatGubbins
Dynamite Dan
Posts: 1238
Joined: Mon Nov 13, 2017 11:45 am
Location: Kent, UK

Re: Musical tape loaders

Post by MatGubbins »

It does load in Fuse..... yup.

Options --> Media. Untick fast loading.

Drag the .wav file into the emulator and it will load in the first part and stop.

Media --> Tape --> Play (or press F8) and it will load in the rest of the file.

Impressive!
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: Musical tape loaders

Post by R-Tape »

Thanks Mat et al. Impressive indeed. I'm going to need to go to a darkened room with a flannel on my forehead trying to work out how this actually works.

Now that we know the .wav works, can anyone make a functioning TZX from it? 4Mb is a sizeable file.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: Musical tape loaders

Post by Ast A. Moore »

R-Tape wrote: Sun Jul 08, 2018 2:08 pm Thanks Mat et al. Impressive indeed. I'm going to need to go to a darkened room with a flannel on my forehead trying to work out how this actually works.
I think I know how it works. I theory, a least.
R-Tape wrote: Sun Jul 08, 2018 2:08 pmNow that we know the .wav works, can anyone make a functioning TZX from it? 4Mb is a sizeable file.
Sure. It’s still 636K, though. (Grab quickly. The link expires in a few days.)
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: Musical tape loaders

Post by R-Tape »

Below is the comment I've put in the spreadsheet to add to ZXDB. I think it betrays the fact that I don't really understand it but is probably good enough. If someone wants to suggest something better/more accurate (yet concise) please do so.

"Uses tape loading sounds to play "Oh Susannah" while loading graphics."
Ast A. Moore wrote: Sun Jul 08, 2018 2:17 pm Sure. It’s still 636K, though. (Grab quickly. The link expires in a few days.)
Ta! I'm not sure why mine didn't work :?
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: Musical tape loaders

Post by Ast A. Moore »

R-Tape wrote: Sun Jul 08, 2018 8:18 pm Ta! I'm not sure why mine didn't work :?
It didn’t work for me when I tried it with fuseutils either, so I took a different approach. I loaded the WAV into Fuse and then saved it as a TZX.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
druellan
Dynamite Dan
Posts: 1466
Joined: Tue Apr 03, 2018 7:19 pm

Re: Musical tape loaders

Post by druellan »

Beyker, a member of the Spanish Telegram group tested the WAV on real hardware, and it works, in fact, he noticed that you can stop the load at any point and resume.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: Musical tape loaders

Post by Ast A. Moore »

druellan wrote: Sun Jul 08, 2018 10:01 pm he noticed that you can stop the load at any point and resume.
True, but most of the time it’ll mess up the picture, as some data will likely be lost. (You can try it with Fuse as well, using the play/pause command. That way, no data will be lost.)

That’s one of the modifications made to the loaders, both standard (Patrik Rak’s version) and OTLA—they don’t terminate after a timeout. There’s no error checking per se; the loader terminates only when the byte counter runs down. As a result, you can feed it different audio sources—including normal audio files—and they will display something (fairly random garbage) on the screen until the entire display file is filled up.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
djnzx48
Manic Miner
Posts: 729
Joined: Wed Dec 06, 2017 2:13 am
Location: New Zealand

Re: Musical tape loaders

Post by djnzx48 »

I found a thread on W*S about this loader: https://www.worldofspectrum.org/forums/discussion/22295

It's a shame about the dead source code link. No one happens to have a copy of the source (musical_source.zip) do they?
Post Reply