Page 1 of 1

Re: Maximum possible tape loading speed ?

Posted: Fri Sep 20, 2019 5:15 pm
by Ast A. Moore
zxbruno wrote: Fri Sep 20, 2019 4:05 pm Maybe we should explore more fast-loading options instead of just sticking to old school tape loading or instant (non-gratifying) loading.
Like I said, my loader is capable of providing very high loading speeds (it’s quite trivial, actually). I’ve only kept it capped at 3x to maintain actual compatibility with tapes (and low-end tape players). Instant loading has never been my cup of tea, but I can completely understand the people who prefer it over the traditional loading methods.

When I feel like it, I update modern games with my loader, but for the most part, I sense there’s little to no demand for it—people just use DivMMC and the like to load games. Heck, the majority of people use emulators anyway. :D

Re: Maximum possible tape loading speed ?

Posted: Fri Sep 20, 2019 5:30 pm
by Seven.FFF
Yes, it’s a pity, but custom loaders are downright incompatible with modern digital container files and instant loading hardware.

For example, tap files can only be used on hardware if they have standard loaders; tzx files can only be used with virtual tape players like tzxduinos, etc.

For that reason, I’m cheered by the Pi accelerator developments on the Next. We have proof of concept demonstrations of a general purpose lightweight linux supervisor that can run scriptable custom commands, and can talk over a fast wide bus to the Next hardware. The user can pick a tzx file from the browser, then the Next can autoinstall a Linux handler for tzx files, then upload a file, and go into tape loading mode. The handler converts this to a temporary WAV, and plays it through what it sees as a digital I2S soundcard, but what the Next sees as digital input on either the EAR socket or the stereo specdrum/soundrive DAC (switchable depending on how you want to use it). It’s basically like a TOSlink connection.

It’s all reasonably straightforward stuff, but there’s real magic in having it be seamless, dynamic and with an extensible mechanism - one that is open to end user HLL programmers rather than bare metal geniuses, at that. Fun times!

Ast’s uberfast loader should work fine on this, for example!

Re: Maximum possible tape loading speed ?

Posted: Mon Nov 09, 2020 8:36 pm
by catmeows
Ast A. Moore wrote: Fri Sep 20, 2019 5:15 pm
zxbruno wrote: Fri Sep 20, 2019 4:05 pm Maybe we should explore more fast-loading options instead of just sticking to old school tape loading or instant (non-gratifying) loading.
Like I said, my loader is capable of providing very high loading speeds (it’s quite trivial, actually). I’ve only kept it capped at 3x to maintain actual compatibility with tapes (and low-end tape players). Instant loading has never been my cup of tea, but I can completely understand the people who prefer it over the traditional loading methods.

When I feel like it, I update modern games with my loader, but for the most part, I sense there’s little to no demand for it—people just use DivMMC and the like to load games. Heck, the majority of people use emulators anyway. :D
Hi, Ast A. Moore. How you loader works ? It doesn't seem to be accelerated ROM load. Can you share some details ?
Also, I wonder if you tested it with real tape.

Sorry for necroposting.

Re: Maximum possible tape loading speed ?

Posted: Mon Nov 09, 2020 10:25 pm
by Pegaz
You can go even further with emulators and k7zx.
Its possible loading Manic Miner, under 10 seconds and over 30,000 bps. :)
https://gofile.io/d/SUiWJZ

Re: Maximum possible tape loading speed ?

Posted: Tue Nov 10, 2020 9:26 am
by catmeows
Pegaz wrote: Mon Nov 09, 2020 10:25 pm You can go even further with emulators and k7zx.
Its possible loading Manic Miner, under 10 seconds and over 30,000 bps. :)
https://gofile.io/d/SUiWJZ
Yes I know. But I'm more interested in real tape examples. For example Speedlock offers just slight speed improvement over ROM. And I guess original ROM tape loader speed was choosen for some reason.
Some people mention 6kHz as limit for cheapest tape deck. It sounds like quite reasonable estimation, as far I remember, tapes were not particulary good at heights (but not bad either, I remember listening Kate Bush from tape :)
So, with 6kHz limit, modified ROM loader could work 550T/1100T timing, that is about 150% of default speed.
When I was looking into original tapes tzx, ~ 550/1100 was the fastest loader I have found.

Re: Maximum possible tape loading speed ?

Posted: Tue Nov 10, 2020 10:05 am
by Ast A. Moore
catmeows wrote: Mon Nov 09, 2020 8:36 pm Hi, Ast A. Moore. How you loader works ? It doesn't seem to be accelerated ROM load. Can you share some details?
I have a few versions. One version uses a single edge method, as opposed to the ROM’s standard two edge. That alone can offer an up to 200 percent speed increase. There are quite a few other optimizations and tweaks there—both for speed and size. I also tag each block with a unique identifier, so if a loading error occurs, you can safely rewind the tape and only the failed block will load, ignoring anything else.
catmeows wrote: Mon Nov 09, 2020 8:36 pmAlso, I wonder if you tested it with real tape.
Not as such. I don’t have a high-quality tape deck to record the loader onto a cassette. I did, of course, test it on real Spectrums by feeding the audio directly from the phone and computer. It loaded okay. As I mentioned before, the Spectrum itself can easily accommodate much higher loading speeds; the bottlenecking occurs in the quality of the audio signal itself. A middle-of-the-road tape deck and a chrome or metal tape will have sufficient bandwidth for very high speed loads. A cheap tape player with a Type I tape will severely limit the higher frequency response, and very high speed loaders will fail.

Re: Maximum possible tape loading speed ?

Posted: Thu Feb 04, 2021 10:07 am
by mike-shevchenko
Does anyone know what is the maximum loading speed which can be achieved by connecting e.g. an Arduino-based device directly to the EAR port? I'm investigating the possibility to create an Arduino-based device+firmware for retro-computer museums which would allow to load snapshots to various ZX Spectrum clones (often lacking an Edge Connector or ZX Bus), which otherwise rest on shelves at most showing "(C) 1982...".

One spectrumist has offered me an idea of creating a bi-directional protocol using MIC and EAR, which could automatically choose the best reliable speed. Have anyone heard about such development, not to re-invent a bike?

Thanks for attention!

Re: Maximum possible tape loading speed ?

Posted: Thu Feb 04, 2021 11:08 am
by Sol_HSA
I looked at turboloaders for a bit when I was developing my 48k speccy toolchain, but in the end figured that compressing the image and decompressing after load actually sped up the load time more than a turboloader would have =)

As a "bonus" my loading screens load up really fast, as they're also compressed. Some people feel that's a misfeature, though...

If I were to write a "turboloader", it would be for the same reason most commercial "turboloaders" were - to make the loading more interesting by, say, showing different colors or counters, or maybe even to play music. Less for the actual speeding up purpose.

Re: Maximum possible tape loading speed ?

Posted: Sun Feb 07, 2021 7:44 am
by Jbizzel
Loading times on the spectrum are not a limitation, they're a feature :D :D

They seemed to take forever as a kid, but these days I love the 'slow gaming' experience.

Re: Maximum possible tape loading speed ?

Posted: Sun Feb 07, 2021 8:43 am
by kolbeck
Jbizzel wrote: Sun Feb 07, 2021 7:44 am Loading times on the spectrum are not a limitation, they're a feature :D :D

They seemed to take forever as a kid, but these days I love the 'slow gaming' experience.
Image

Re: Maximum possible tape loading speed ?

Posted: Sun Feb 07, 2021 1:21 pm
by Jbizzel
kolbeck wrote: Sun Feb 07, 2021 8:43 am
Jbizzel wrote: Sun Feb 07, 2021 7:44 am Loading times on the spectrum are not a limitation, they're a feature :D :D

They seemed to take forever as a kid, but these days I love the 'slow gaming' experience.
Image
Isn't that just the difference though?

Computers hide everything and it's frustrating.

The loading of a spectrum you can hear what's happening, and see it. The sound of a screen loading is very distinctive for example

Re: Maximum possible tape loading speed ?

Posted: Mon Feb 08, 2021 12:42 pm
by patters
Ast A. Moore wrote: Fri Sep 20, 2019 5:15 pm Like I said, my loader is capable of providing very high loading speeds (it’s quite trivial, actually). I’ve only kept it capped at 3x to maintain actual compatibility with tapes (and low-end tape players).
I'm curious - does your loader work as a TZX file and have you got any examples? I have a TZXDuino so I'd be interested to experience just what could have been possible if tapes were better.

Re: Maximum possible tape loading speed ?

Posted: Mon Feb 08, 2021 1:31 pm
by Ast A. Moore
patters wrote: Mon Feb 08, 2021 12:42 pm
I'm curious - does your loader work as a TZX file and have you got any examples? I have a TZXDuino so I'd be interested to experience just what could have been possible if tapes were better.
Yes, it’s a standard TZX file. You can try the latest version of Yankee to see it in action.