even-clocked
ZXNet echo conference «real.speccy»
From Dima Bystrov → To All 10 January 2002
I learned that most Scorpio commands are rounded up to the
nearest even number of bars. But there are teams that
slow down
by 2 clock cycles. I know one such command: JP.
What others?
I am especially interested in the execution time of LDI, POP, PUSH, LD rp,..., LD (...),A,
LD (...),HL, OUT (C),r, ADD HL,rp
We need verified information.
- Alone Coder [ZX-Guide] [AC Edit]
From Kirill Frolov → To All 11 January 2002
10 Jan 02 14:57, Dima Bystrov wrote to Scorpio players:
DB> I learned that most of the commands on Scorpio are rounded
On yellow Scorpio, without turbo.
DB> to the nearest even number of clock cycles. But there are commands
DB> that are slowed down by 2 clock cycles. I know one such command: JP.
How is it so slow? Did you measure well? :-/
From Aleksey Malov → To All 11 January 2002
Thu 10 Jan 2002, at 14:57:54 Dima Bystrov told Scorpio people about
even-clockwise
DB> I learned that most of the commands on Scorpio are rounded up to
DB> the nearest even number of clock cycles. But there are commands that
DB> are slowed down
DB> by 2 clock cycles. I know one such command: JP.
^^^^^^^^^^^
Nothing like that. The JP command on a scorpion is always executed in 10 clock cycles.
Proof: I once wrote a gigascreen viewer, the internal loop of which
consists of only even-clocked commands (including the “jp condition”). It
works the same on both pentagon and scorpion with a line length of 224 cycles.
Naturally, you just need to change the delay for drawing the upper border.
DB> What else?
DB> Of particular interest are the execution times of LDI, POP, PUSH, LD rp,..., LD (...),A,
DB> LD (...),HL, OUT (C),r, ADD HL,rp
DB> We need verified information.
There is only one rule: all even-clocked commands are executed in the same number of cycles
as written in the documentation. All odd-clock instructions take
one clock longer. The information has been verified - I wrote almost all of my multicolors in two versions - for scorpion and pentagon, with a corresponding correction of the command execution time. And you yourself know how many multicolor effects I wrote and how complex they are. ;))
Bye,Dima.
WBR, Vivid^Brainwave.
From Dmitry Lomov → To All 11 January 2002
Once, Thu Jan 10 2002 14:57, Dima Bystrov wrote to Scorpionists:
DB> I learned that most of the commands on Scorpio are rounded
DB> to the nearest even number of clock cycles. But there are commands
DB> that are slowed down by 2 clock cycles. I know one such command: JP.
Who told you that? IMHO, it's nonsense. If the current instruction has an odd number of
cycles, a wait is inserted into the next instruction's fetch loop for one clock cycle.
DB> else? Particularly interested in the execution time of LDI, POP, PUSH, LD rp,...,
DB> LD (...),A, LD (...),HL, OUT (C),r, ADD HL,rp We need verified
DB> information.
take it and check it ;) or is there no Scorp?
All the best.
Dmitry. [ZX] [Quake]
np: Zemfira - AIDS
From Kirill Frolov → To All 11 January 2002
11 Jan 02 17:02, Aleksey Malov wrote to Dima Bystrov:
AM> There is only one rule: all even-clocked commands are executed in the same number
AM> cycles as written in the documentation. All odd-clock instructions
AM> are executed one clock cycle longer.
Not really. The instruction following the odd-numbered clock is lengthened in the read cycle
KOP.
Well, it should be, but I don’t know how to check, it’s
difficult to catch the difference in just one cycle.
From Aleksey Malov → To All 12 January 2002
KF> Not really. The command following the odd-numbered clock is extended in the
KF> cycle of reading the KOP.
Well, okay. There is practically no difference for multicolors. Well, border
effects can be created with an accuracy of up to 8 pixels (4 clocks).
Bye, Kirill.
WBR, Vivid^Brainwave.
From Vassili Klimov → To All 12 January 2002
KF> Not really. The command following the odd-numbered clock is lengthened in the
KF> cycle of reading the KOP.
KF> Well, it should be so, but I don’t know how to check, it’s difficult to catch just one clock cycle of the difference
KF>.
Hmm, interesting. Although, in principle, it doesn’t matter whether the reading of the COP of the next command is lengthened or the previous command is lengthened by a clock cycle. It is not possible to programmatically calculate who this tact belongs to, and therefore there will be no glitches in the programs. The only thing is, if an interruption arrives on an odd-clock command, then this waiting cycle will turn into an interrupt confirmation, i.e. will be 20 instead of 19.
JseveN from the 4th Dimension...
From Dima Bystrov → To All 14 January 2002
AM> Nothing like that. The JP command on a scorpion is always executed in 10
AM> clock cycles. Proof: I once wrote a gigascreen viewer,
AM> the internal loop of which consists of only even-clocked commands (including
AM> including the “jp condition”). It works the same on both Pentagon and
AM> Scorp with a line length of 224 clock cycles. Naturally, you just need to change
AM> the delay for drawing the upper border.
thanks for the information.
Once again I was amazed by Mr. Zonov’s original circuit design ;)
From Dima Bystrov → To All 14 January 2002
KF> How does it slow down so much? Did you measure well? :-/
It was measured on some glitch without a name, I was not sure that it was a scorpion.
According to the information received, it is clear that it was not a scorpion, but much worse ;)
I thought that the brake goes on if the MREQ slips in the wrong clock. And he believed that a machine cycle could not be completed in two clock cycles. It turns out that in the JP and
similar commands it is executed in 2 clock cycles.
From Dima Bystrov → To All 14 January 2002
12 Jan 02 00:31, Kirill Frolov wrote to Aleksey Malov:
KF> Not really. The command following the odd-numbered clock is extended in
KF> the KOP reading cycle.
How does the scorpion circuit determine that a new command has begun?
From Dima Bystrov → To All 14 January 2002
DB>> LD (...),A, LD (...),HL, OUT (C),r, ADD HL,rp We need verified
DB>> information.
From Dmitry Lomov → To All 15 January 2002
DB> How does the scorp circuit determine that a new command has begun?
the time for the processor to access memory can only be every second clock cycle.
of all processor cycles, only in the M1 cycle does memory access last
one and a half clock cycles, in other cycles it is longer. if there is an odd number of clock cycles between adjacent M1
cycles, the second will hit the “wrong” mark, and based on the totality of
signals, the processor is set to wait.
From Kirill Frolov → To All 16 January 2002
14 Jan 02 03:19, Dima Bystrov wrote to Kirill Frolov:
DB> much worse ;) I thought that the brake goes on if the MREQ slips in the wrong
DB> clock cycle. And he believed that a machine cycle could not be completed in two
DB> cycles. It turns out that in the JP and similar commands it is executed in 2 clock cycles.
The brake occurs because the memory is ready
only
every 2nd time for the COP reading cycle of 1.5 clock cycles.
From Kirill Frolov → To All 16 January 2002
DB> How does the scorpion circuit determine that a new command has begun?
Or rather, the next cycle of reading the COP after an odd-clock command.
The reading cycle of the COP is 0.5+1.5+2.
From Aleksey Malov → To All 17 January 2002
Fri 18 Jan 2002, at 12:54:30 Serge Moscalev told Alexey Malov about cYa-R-a
aaRcRaai
SM> Y-a #R-Y aR! -oee cee?R<<-ieiaaie S -YcYa-RY aR-cR a aaRc, aR iaR Bye, Serge.
SM> cRS!R|-R.
SM> a! i -Y ?R<
WBR, Vivid^Brainwave.
From Serge Moscalev → To All 18 January 2002
Bonjour, mes chers amis, Dmitry Lomov & Alone Coder!
In a message of 31 Dec 69 Dmitry Lomov wrote to Dima Bystrov:
DL> Hello, Dima!
DL> o- |oee, R- -c 14 2002 03:23, Dima Bystrov ?"a << a Kirill Frolov:
KF>>> HY aRcaY!. < aY aR! -oee cee?R<<-ieiaaie S aR-cR a aaRc, ceeaRc-Y--RY - 4 "c-R a !Y-ie aaaRca ceecRo"aaie a aRc-Raaii oR S- aR!Yaa (8 Scorpion ZS-256 (|Y< LOOP INC BC R oRaa!Y-a ae"" oR<<|-R !eeai 10 a aaRc - ae"a<<. Y < ac |Y-"Y!, Gris.
DL> a aaY.
DL> "S caYa ae"a<
DL> ?R<
DL> 1
DL> -YcYa-RY aR<<"cYaacR a aaRc - caRaRc ?R? oYa "-Y aao ", " ?R
DL> aRcRaa?-Raa"
DL> a"#- <
(cYaeeaY). a<<" - ?Y-a #R-Y - ?"eaa !Raoia-ai !Y#aeai aaaRaa a aRc-Raaii
ceecRo oR 2 (ocaa) ?"aaY<
?"aaY<
?"aaY<
aaRc c ?aYaeec -"" ~72000 (aRc-R -Y ?R!-i, -R -Y !Y-ieY), aRaie -YaRaRaeeY
oY!ee ?a"aRa! |"c ia. Yaie<< a ! a a"! ae"a<
JP (HL)
From Serge Moscalev → To All 18 January 2002
AM> a c"<
AM> a aaRc, aaR<
Rca" aR#<< aY-.
AM> Ro"- a aa oR<
AM> cee?R<<-Y-"ie aR! -o. a| aee a ! S- Yei, aaR<
AM> - ?"a << " a aRc R-" a<
ceecRo oR ocaa "<<" aRaie !ee cYaeeana ?"aaY<
a! i -Y ?R<
From Aleksey Malov → To All 19 January 2002
SM> Amiga has nothing to do with it. I just changed the settings for this echo to the correct ones. Amiga is a cool computer. but you and I know that
SM> is better than
SM> in the world ;) I am more and more convinced that Spectrum is the best.
Specky rules!!!
SM> Only I think that the teams are equal in execution time
SM> not to the nearest even number, but by four clock cycles, i.e. 7->8; 6->8.
SM> 13(LD
SM> A,(NNNN))->16 And also, if on the Pentagon commands were executed without
SM> such
SM> alignment, then it would be
SM> possible to write a border line with scrolling precision up to two
SM> pixels or at least four, because it would be possible to select
SM> the appropriate delays with a difference of 1 or 2 clock cycles. If only there were
At the Pentagon, you can write a border effect with an accuracy of up to 2 pixels.
It’s just that in running lines, as a rule, to simplify synchronization
on halt, the discreteness of the movement of the running line is up to 8 pixels (4 ticks). If you don't
believe me, look at the Hidden part of "Insult Megademo" (in trdos type
RUN "INSULT".I LOVE CODEBUSTERS) or the last part of the RAGE.
SM> command in six bars (INC HL; LD SP,HL for example), then in an easy
SM> you could do this shit with an accuracy of four pixels.
SM> Bye for meno one was surprised by anything like this, and I think it never will be.
Look at the demos, the names of which I wrote to you, and you will be surprised.
SM> Thus, on both the Pentagon and on Scorpio, commands are executed with
SM> four-cycle alignment.
On the Pentagon nothing is aligned. On a scorpion it is aligned in up to 2 clock cycles.
But on a scorpion on the border you can create an image with an accuracy of up to 8 pixels.
Apparently, there the change in the color of the border occurs in increments of up to 4 clock cycles (I
I don’t know the circuit design).
SM> My Speccy:
SM> Scorpion ZS-256 (yellow)/5.25"Mitsumi/3.5"Panasonic/Yamaha 2149F/Covox/
SM> /cycles
SM> in a line: 232 (!) / cycles in an interrupt: ~72000.
232 cycles is crap. In Anemnesis and Emergency, multicolors will not
match.
Bye, Serge.
WBR, Vivid^Brainwave.
From Dmitry Lomov → To All 19 January 2002
AM> Nothing is aligned at the Pentagon. On the scorpion it levels out to 2
AM> clock cycles. But on a scorpion on the border you can create a picture with an accuracy of
AM> 8 pixels. Apparently, there the color change of the border occurs with
AM> discreteness of up to 4 clock cycles (I don’t know the circuit design).
that’s absolutely right, there during the border the video register is updated once every
familiarity.
From Serge Moscalev → To All 19 January 2002
AM> I don’t understand anything! Are there always such glitches with Fido software on the Amiga?
The Amiga has nothing to do with it. I just didn’t change the settings for this echo to the correct ones. Amiga is a cool computer. but you and I know that there is no one better in the world ;) I am more and more convinced that Spectrum is the best.
I am actually a realist, I just can’t go from my Scorp to FIDO due to the lack of an ISA modem, and most importantly
a power supply. And they gave me a modem to use for the Amiga.
It’s a shame - I filled so much canoe, but it looked like a mess. And
I said that I almost agree with you about the even clock cycle,
Only I think that the commands are aligned in execution time
not to the nearest even number, but by four clock cycles, i.e. 7->8; 6->8. 13(LD
A,(NNNN))->16 And also, if on the Pentagon commands were executed without such
alignment, then it would be possible
to write a border line with scrolling precision up to two
pixels or at least four, because it would be possible to select
the appropriate delays with a difference of 1 or 2 clock cycles. If there were
commands in six clock cycles (INC HL; LD SP, HL for example), then it would be easy
to do this crap with an accuracy of four pixels.
So far no one has surprised me with this, and I think it will never surprise me.
Thus, both on the Pentagon and on Scorpio there are commandsare performed with
alignment for four cycles.
My Speccy:
Scorpion ZS-256 (yellow)/5.25"Mitsumi/3.5"Panasonic/Yamaha 2149F/Covox/ /cycles
in line: 232 (!)/cycles in interruption: ~72000.
Regards, Gris.