From
Surfin' Bird
→
To
All
8 November 2005
Hello,GriV
Awesome thing! RULES!
I missed it at the time :(
What if you make it play from the CD? Then it will be possible to have such a frequency
amuse?
From
alexeenko
→
To
All
9 November 2005
Hello Corpsegrinder
Doesn't this sound cleaner?
The demo was Polish, called MIX #2.
File: 1.ZIP http://zx.pk.ru/attachment.php?attachmentid=1909
From
Surfin' Bird
→
To
All
12 November 2005
Hello,GriV
Gri> I don’t understand, how about with a CD again?
Well, I'm talking about this:
Gri> purely theoretically (in fact, it just breaks me to write a program)
Gri> you can write a decoder-player that would work with the average
Gri> decoding frequency 233.333 Hz = 233 kHz - it's almost like vinyl
Gri> (Spectrum is close to vinyl in quality... CD-audio is resting :D
Gri> ), accordingly, you can rewrite the encoder in Pascal, but here
Gri> here is the calculation - 1) This is a non-packing encoder 2) In connection with this
Gri> its operating time for the entire 256kByte of Scorpion memory is something like
Gri> 8-9 seconds :(.
As far as I understand, the problem is that there is too little memory? What if from CD
load all the time?
From
Valery Grigoriev
→
To
All
12 November 2005
Hello Surfin' Bird
Sur> Awesome thing! RULES!
;)
Sur> I missed it at the time:(
Sur>
Sur> What if you make it play from the CD? Then it will be possible to have one
Sur> increase the frequency?
I don’t understand, how about with a CD again?
From
Valery Grigoriev
→
To
All
12 November 2005
Hello Surfin' Bird
Sur> Well, I'm talking about this:
Sur>
Sur> As far as I understand, the problem is that there is too little memory? What
Sur> if you load from CD all the time?
If this can be done without the participation of the processor... ;))) then please, how is that?
I can't imagine how to do it without the help of the proc ;)))
If anyone has launched it on a real Speck, they will notice that there is a third of the disk there at the beginning
into memory - this is almost 30 seconds - then playback just starts - the same
30 seconds in the first sample and a minute in the second...
This is exactly what won’t be able to load; for video, the discreteness when loading is not the same
very noticeable, but unfortunately for audio...
From
Valery Grigoriev
→
To
All
12 November 2005
Hello Surfin' Bird
Sur> Well, I'm talking about this:
Sur>
Sur> As far as I understand, the problem is that there is too little memory? What
Sur> if you load from CD all the time?
There is also an option that there is some data that is fed to the port -
so that they can be taken from there without management (at least permanently)
remove (with a simple command IN A, (port)), this is also possible - it will even be easier -
because it’s more convenient to work with this later - you don’t have to monitor memory limits
- and the program replies to poll the keyboard at interruptions - then it’s totally cool. But
I doubt it will be that simple...
From
Orionsoft
→
To
All
12 November 2005
Hello,GriV
GriV, you're great! :)
From
Sergey Danilov
→
To
All
14 November 2005
Hello, CityAceE
Back in Born Dead 2 [http://trd.speccy.cz/press/borndead/BORN_02.ZIP] there was about
this, with a demonstration.
From
Valery Grigoriev
→
To
All
17 November 2005
Hello,GriV
P.P.S. I don't want to get ahead of myself... but I'm almost finished even more
a productive algorithm, although I haven’t made samples for it yet - I collected
decoder only. When I assemble the encoder and debug it, I’ll post it... by all standards, this is
it will just sound great... I had more in development
productive in terms of speed (almost 1.5 times faster!) circuit,
similar to the one given two posts above, but 4-5 seconds of sound (at 256
kb!) I think few people will be satisfied - it’s simply impossible to distinguish the sound level from
the previous version - that's why I didn't even develop it.
From
Mark Antonov
→
To
All
9 October 2006
Hello,GriV
Respect. sane.
but you can try to make loading from the HDD in real time - it won’t be much
different from switching banks (Anril, by the way, knows how to cheat HDD).
and if perverted, then simultaneously with loading from the flop! (option -
cache+turbomod)
From
TomCaT
→
To
All
9 October 2006
Hello, The Exploited
no, the steering wheel is unquestionable. Especially when the memory is 1m.
And if the speed of working with hard drive is really non-lethal for sound, then
the result could have been devastating. But here you probably still need DMA...
From
Mark Antonov
→
To
All
28 October 2006
Hello TomCaT
don't swing
From
Rustam Timerbaev
→
To
All
29 October 2006
Hello, The Exploited
Yeah, they don't swing. Check it out.
From
Yakovlev Anton
→
To
All
29 October 2006
Hello, The Exploited
yeah, the links are dead... :(
From
Valery Grigoriev
→
To
All
10 November 2006
Hello Savage
It's my fault, but not mine.
My domain name is fooling me - it seems like the registration has passed, mail is running (MX record
works) but for some reason NS does not resolve. Replace the given links instead
http://say.da.ru/ to http://grivalera.da.ru/
P.S. It seems like I fixed it this way and that, but it’s not clear why it doesn’t work. With the same
settings grivalera.da.ru works...
P.P.S. A day after this message, everything should work according to the above
addresses, it seems I found the reason why the links are glitchy...
From
Valery Grigoriev
→
To
All
11 November 2006
Hello Orionsoft
Now I have one idea in the air... rather like delirium.
The meaning is this - the most "moronic" command in all coders is the transition to
next output cycle.
Those. Or it looks like this:
Out(c),X
Ret - as many as ten clock cycles with 12 outputs
or
Out(c),X
.. - here are some calculations for the transition, which by definition is greater or
equals 4 measures
Jp (HL) - 4 more bars, total 8
So I thought for a long time how to get rid of it - and came to the only conclusion - it’s simple
remove Ret.
:-D
Now the sound output goes without Ret!
And for this, the encoder program generates a ready-made Z80 code - i.e. Out commands
(c),X NOP and others for stuffing with clocks for clock intervals:
Out (c),d ; speaker rise
nop ; delay 4 ticks until it reaches the desired position
Out(c),c ; lowering
Inc hl ; pause 6 clock cycles, hl is not used at all - only registers C and
D are popular
Out (c),d ; here, immediately after the rise, there should be a descent without a pause
Out(c),c ; it is
Nop
nop ; pause 8 bars for lowering
Out (c),d ; another rise
etc. - this is exactly what the encoder program will generate
The only thing holding me back is that this code will be terribly suboptimal -
about 2-3 seconds of playback for the whole body in memory of about 1 meter - but it
will be as accurate as possible. In addition, unlike previous versions, it hasthe ability (at least theoretically) to unpack after downloading, i.e.
in fact, a full disc will take about 20-30 seconds of sound, after each
shipment will be unpacking into memory and playing itself.
Yeah, I almost forgot
The trick is that almost all previous (except Baba Yaga's song) samples were in
constant loop size, no. Here the cycle size is not constant, but very
That is the discreteness is as follows:
The first output to the port, so of course the length with the duration of the cycle size
equal to 1 equals 12 clock cycles - Out (c),X
Cycle duration for 2 - 16 bars - Out (c),X and Nop
and then there is an addition under two measures -
3 size - 18 measures
4 - 20
5 - 22
6 - 24, etc., and since ready-made code is generated, there are restrictions on
there is no cycle size - at least 493859836986th size ((((((-; Huge gaps (they
possible only theoretically, in practice they simply do not occur) it is possible
even code with loop commands like ld b,12 djnz $
From
Mark Antonov
→
To
All
11 February 2007
Hello,GriV
Not everyone's M1 clocks are rounded in real life...