| |
yago
Registered: May 2002 Posts: 333 |
Demos which load from tape ?
After reading covert bitops rants about irq-tapeloader, i wondered if there are any Demos which load their next Part from Tape ?
Something like a castro ?
|
|
... 22 posts hidden. Click here to view all posts.... |
| |
algorithm
Registered: May 2002 Posts: 705 |
As a past C64 Coder without a floppy drive. my last multipart demo's consisted of a tape irq loader which would display a part while loading the next. The main restriction was lack of solid raster timing, altough music, split screen etc was possible (I think sprites on screen caused load errors?)
|
| |
Graham Account closed
Registered: Dec 2002 Posts: 990 |
@Hoogo:
actually it's vice versa. samples are not very suitable for a storage which is based on variable signal lengths. this is way more accurate on an analogue tape than on a 44100 or even 22050 Hz sample... think of it: 44100 Hz = 22 cycles resolution. that's why very tight loaders do not work when converting them from TAP files to real tapes via audio out. |
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
for the "loading is not possible beside raster effects" problem, I got an idea:
why not save the files in an insane format ? so when the raster effect is displayed, no bits come off the tape ? :) then for the rest of the screen they can come as they used to :). |
| |
Hoogo
Registered: Jun 2002 Posts: 105 |
@Graham:
But also tapes can only store a maximum frequency, afaik they drop at about 20 kHz. Though a human might not hear that, the digitized picture should change a lot. And something I'm very unsure about: I think that tapes store their data after modulation with a 20 kHz-Signal, just like AM-radio. At least these theories explained to me why I didn't get my turbotapes work some years ago. 4*22 cycles were very unstable, though the save-routine was nearly as accurate as a raster-routine. Now with PC-generated wavs 2*22 cycles work fine.
|
| |
Hoogo
Registered: Jun 2002 Posts: 105 |
@Oswald:
I can't imagine a way how to sync tape and screen. I don't believe that turning the motor on/off will do... |
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
hoogo: it depends on how accurately (in terms of timing) can the tape replay the recorded data. I did not mean to turn the motor on/off, just simply dont store data on the tape when the raster effect takes over. so there would be empty gaps on the tape, in synchron with the occurance and length of the raster effect per frame. |
| |
Hoogo
Registered: Jun 2002 Posts: 105 |
Oswald: But when playing the demo you have to press play when the vic starts a frame. Otherwise you need a routine to sync the vic with the data from tape, only way I can imagine is by stopping/starting the motor. An dthe motor has to run very accurate for a long time, and I don't believe that it is. |
| |
algorithm
Registered: May 2002 Posts: 705 |
Give maximum priority to the tape loader and resort to using flickering rastersplits (hide it by empty gfx etc) |
| |
trident
Registered: May 2002 Posts: 91 |
You could also store every bit X times (for some good value of X), then synchronization would not have to be as perfect. Lets say that you choose X so that every bit is equivalent to 8 raster lines, then you would only need to sample the tape input once every 8 lines and it would not matter exactly when the sample took place.
I don't know how fast it would be and I know too little about tape loaders to know exactly how the bits would have to be encoded as pulses for this to work. |
| |
Hoogo
Registered: Jun 2002 Posts: 105 |
Unfortunately the sampling is not done by the hardware, tape-loaders have to work even below that level. The irq-register that is used for the tape is not like the usual IO-Ports. It doesn't tell WHAT happend, it only tells IF something happened since your last check, and its left to your loader to decide if something happens fast, slow or whatever you invented. So if you write 8 Samples to tape and ignore 7 of them, the answer of the register will always be "yes, something happened" |
Previous - 1 | 2 | 3 | 4 - Next |