Port FF

ZXNet echo conference «zx.spectrum»

From Maxim Tarasov To All 28 November 1997


Greetings, Andrey!

I see that Andrey Romanenko Friday November 21, 1997 at 20:54 jotted down a couple of lines for
Vladimir Yudin:

VY>> Come on! Synchronization via an attribute port is such a slow
VY>> and prehistoric technique that is used only in a dozen
VY>> ancient toys. Nowadays you can’t go far without counting cycles.
AR> Well, here you are raising a fuss about some kind of synchronization??? Can you at least
AR> imagine how it’s done, huh ???? If so, then an example right in the echo
AR> plz....

Hmmm... Hot est... Ukrainian guy. When necessary, VY will throw an example into the echo. In the form of an echo tag emulator.
And you (with your poor English and abundance of veiled swear words) turn to the
echo rules.

AR> With best regards.

Nu-nu.

Best wishes, Maxim.

From Vitaly Samoylov To All 29 November 1997


Greetings, Andrey!

──────────────────────────────────── ─────────────────────── ────────────────────
In ancient times (21 November 97), Ser Andrey wrote on a scroll Alex Letaev,
Bequeathing "Port FF", and today (29 November 97) I decided intervene:
────────────────────────────────── ──────────────────────── ─────────────────────

VP>>> Port FF is the port of the current attributes of the screen.

AR> Folks, is anyone wondering how in practice you can use this feature? ???
AR> Examples please.... if possible ;)

In order not to write a lot - read the ZX review, there’s a hell of a lot written about this!

All the best. /──────────────────────\ [ Fantasy World - Rulez ]
Sincerely, │ Wanderer 'Sagacious' │ [ Getting up early - Must Die]
─────────────────── ────\──────────────────────/ [ Station 106.8 - Rulez ]
... It’s hard in the village without a revolver ...

From Vitaly Samoylov To All 29 November 1997

All the best. /──────────────────────\ [ Fantasy World - Rulez ]
Sincerely, │ Wanderer 'Sagacious' │ [ Getting up early - Must Die]
─────────────────── ────\──────────────────────/ [ Station 106.8 - Rulez ]

From Vyacheslav Mednonogov To All 29 November 1997

AR> Well, here you are raising a fuss about some kind of synchronization??? Can you at least
AR> imagine how it’s done, huh ???? If so, then an example right in the echo
AR> please.... Well, if not, then there’s no $#%# here to powder your brains...

From Max Romanoff To All 29 November 1997


Andrey is that you?
...why did you tell Alex Letaev about Port FF?

AR> Folks, is anyone wondering how in practice you can use this feature???

From Max Romanoff To All 29 November 1997


Andrey is that you?
...why were you telling Roman Rakitin about Port FF?

AR> Another one.... can you even imagine this picture:
AR> "...synchronization via port #FF..." ??? Example in the echo please...

This is what the ego was used for. Those. it turned out by accident (i.e. in
a branded computer, there is no such device, and when reading, the
bus is read), and it was used in some programs for synchronizing
images.

SHORT CIRCUIT
GRYZOR
lightPen. (light pen - drawing)

In the first two I saw releases without FF. We worked. There were practically no differences. (find the uncracked ones and look.)

Good Luck...


... All wiyht. Rho sritched mg kegtops awound?

From Roman Petrov To All 29 November 1997


Hello! Dear Andrey!

At 15:23, Saturday November 22, 1997 there was such a thing that
Andrey Romanenko wrote a letter to Roman Rakitin:

AR> Another one.... can you even imagine this picture:
AR> "...synchronization via port #FF..." ??? Example in the echo please...
I can imagine it very well. By the way, this FF port is a very useful feature.
Using it you can determine the following computer parameters:
Number of clock cycles in a line
Is there a slowdown when accessing memory?
How many clock cycles does it take to draw the upper border

In general, synchronization via the FF port is used in such cases when
you simply cannot allow interruptions, but it is necessary to synchronize the output
of the image at the beginning of the frame reconstruction. This is done very
simplely:

L1 IN A,(#FF)
INC A
JR Z, L1
...Rebuilding the screen...

As soon as FF is not received from the port, therefore the screen restructuring has begun,
and to be even more precise, the upper border has already been drawn and the screen area began to be drawn.
For example, I also used the FF port for this effect: the 2 upper thirds of the screen (with border) are blue, the lower third is black. Of course, this can be done
with an arbitrary delay, but if the procedures that are executed
during the drawing of the upper two thirds constantly change their
execution time,then you need to either align the procedures or synchronize via FF
In addition, this method allows you not to define machine parameters and works
on any computer that has a correctly implemented FF port.

I hasten to finish my little lecture here. Regarding such applications of the FF port as determining the timing characteristics of a computer (cycles in a line
etc.), I can only give a theoretical detailed explanation, since the source codes have long been lost.

With respect, Roman aka Megus of Brain Wave corp.

[Team ZX-Spectrum] [Team Agatha Christie] [Team Metallica] [Team Iron Maiden]


From Vladimir Yudin To All 30 November 1997

What is there to imagine? You read the port, if there is no FF there, then at this
time the beam is drawing an area of ​​the screen (or such an attribute on the screen)
and vice versa. And if you don't need it, then don't use it. At least
he doesn't bother anyone.

Example:
In A,(#FF)
Inc A
Jr(n)z ???


Sincerely
┬ ┬┌┐┬┐ ┐┬┬
╨ґ╨╙ґ╨╙ ╨ ╨


From Alex Letaev To All 30 November 1997


Hello Max Romanoff! In a message of 29 Nov 97 Max Romanoff wrote to Andrey Romanenko:

MR> SHORT CIRCUIT

It slows down without a port in a place with music, on machines with a small number of cycles in
interruption, with the port everything is OK. It's not cracked.

MR> GRYZOR

You're not talking about the Softball version. It hangs and glitches constantly, and without a port
there the sprite will fall under the beam and flicker properly.

MR> lightPen. (light pen - drawing)

I didn’t have a chance to try it.

MR> In the first two I saw releases without FF. We worked. Practically no
MR> differed. (find the uncracked ones and take a look.)

Arcanoid 1 hangs tightly. Captain America hangs too.

Sincerely, Alex from FFC COMPUTERS.


From Max Romanoff To All 1 December 1997


Alex is that you?
...why were you telling me about Re: Port FF?

AL> It slows down without a port in a place with music, on machines with a small number
AL> of interrupt cycles, with the port everything is OK. This is uncracked.

I didn’t notice the brakes. and the differences between the FF version and the simple one.

AL> I didn’t have a chance to try it.

yes? In vain. A very cool device. The main thing is that it works :)

AL> Arcanoid 1 hangs dead. Captain America also hangs.

What are you talking about? I'm talking about the fact that removing the FF port does not lead to the death of the patient.

Good Luck...


... Is that an XT or are you running Windows?

From Andrey Romanenko To All 1 December 1997

RP> I can imagine it very well. By the way, this
RP> FF port is a very useful feature. Using it, you can determine the following parameters
RP> of the computer:
RP> Number of clock cycles in a line
RP> Is there a slowdown when accessing memory?
RP> How many clock cycles does it take to draw the upper border

Yes, but all this is only a theory because It will work only on branded Spectrums or with the #FF port, and there are less than 5% of them... But this is not the main
argument against using the #FF port. IMHO the main arguments:

1. There are less than 10 common spectrum configurations. Therefore, most programs set already known delay constants for
each speck model and are synchronized only by INT.

2. To determine the main required delays (such as How many clock cycles does it take to draw the upper border), most write a small SETUP (well, you probably know which one... with the lines on the border and on the paper which must coincide). IMHO this setting is much more reliable than any other.

3. At a time when every clock tick counts... synchronization like:
RP> L1 IN A,(#FF)
RP> INC A
RP> JR Z, L1
RP> ...Rearranging the screen...
is like death... IMHO only if every cycle of the processor is used
optimally possible at speed 67000-70000 cycles/second write a program corresponding to a given timeкачества. ;)

With best regards.
Andrey.


From Andrey Romanenko To All 1 December 1997

VM> What, you don’t know that screen attributes and
VM> border contents are read from it??
Yes, I’m all up to date...
But have you at least once used this feature in your programs???
Or maybe you could argue that you can’t do without it???
IMHO, it just so happens that this port has only one a spectrum of
twenty is not worth using such a feature...

2ALL:
I apologize, of course, for my bad tone in previous letters. I just came after .... and not weakly &.... and then the beloved echo began to walk again. (This is after a 2-month break).

With best regards.
Andrey.


From Alex Gofman To All 1 December 1997


Hello Andrey !

Fri Nov 21 1997, Andrey Romanenko writes to Vladimir Yudin:


RR>>> Come on, let’s not run programs on any other emulator
RR>>> written by fans of cool synchronization:-(

VY>> Come on! Synchronization on the attribute port is so slow
VY>> and a prehistoric technique that is used only in a dozen
VY>> ancient toys. Now you can’t get far without counting cycles.

AR> Well, here you are raising a fuss about some kind of synchronization??? Do you even have an idea how this is done? powder your brains...

From Alex Letaev To All 2 December 1997

MR> didn't notice the brakes. and the differences between the FF version and the simple one.

What computer did you try it on, the Pentagon?

AL>> I didn’t have a chance to try it.
MR> yes? In vain. A very cool device. The main thing is that it works :)

OK.

From Max Romanoff To All 2 December 1997

AL> Which computer were you on, the Pentagon?

the mutagenic zone. Those. from the old 48th modified the devil knows what
. Including the port was made for the sake of experiment...

AL> I had in mind that the uncracked version on a computer without the #FF port hangs,
AL> the cracked version works.

ah, that’s how it should be. I meant removing the port - in the sense of
the code.

Good Luck...


... IBM: I've Been Mauled.

From Evgeny Milun To All 3 December 1997

AR> Yes, but all this is just a theory because... It will work only on branded
AR> spectra or with the #FF port, and there are less than 5% of them...
Well, first of all, this is far from a theory. For example, this is exactly how our Oberon is automatically configured (using the #FF port). And
the percentage of Spectrums with the #FF port is more than 5%, somewhere in the region
30-40. If not all 70-80.
AR> But this is not the main
AR> argument against using the #FF port. IMHO the main arguments:

AR> 1. There are less than 10 common spectrum configurations. Therefore, most
AR> programs set up already known delay constants for
AR> each speck model and are synchronized only by INT.
It is precisely INT synchronization that is less reliable... But, nevertheless, more
preferable. In a word, #FF is needed not for synchronization, but for
determining the parameters of int synchronization.

AR> 2. To determine the main required delays (such as How many cycles does it take-
AR> to draw the upper border), most people write a small SETUP (well
AR> you probably know which one... with the lines on the border and on the paper which
AR> should coincide). IMHO this setting is much more reliable than any other.
Yeah. But only the one who configures this on his computer should know these parameters himself.

Good luck!Evgeny.

■ The night is shorter than the day... The day will kill me... The world of illusions burns down in it. (C) Aria.


From Alex Letaev To All 4 December 1997


Hello Max Romanoff! In a message of 02 Dec 97 Max Romanoff wrote to me:

MR> in the mutagenic zone. Those. from the old 48th modified the devil knows to
MR> what. Including the port was made for the sake of experiment...

Strange. I have Leningrad 1, modified to 128, etc. I'm stuck with
"Short Circuit", which has been removed from the code to work with #FF.

From Max Romanoff To All 4 December 1997

AL> Strange. I have Leningrad 1, upgraded to 128, etc. I'm slowing down
AL> "Short Circuit", in which the work with #FF has been removed in the code.

the topic is that it shouldn't slow down, because... no waiting for the required
value from FF.

Good Luck...


... Southern DOS: Y'all reckon? (Yep/nope)

From Andrey Romanenko To All 4 December 1997


AG> And you, without this port, launch Short Circuit-2 and a couple of other toys
AG> (I don’t remember the exact names - if necessary, I can remember), but
AG> then write that “... the #FF port is not fucking needed.” If you want
AG> all the ancient programs to run for you - set the port #FF.
In short, to stop this conversation, I’ll explain my position:

Good qualities of subj-a:
1. Some old programs run without problems.
2. Easy to do (10-15 minutes and ready).
3. Some additional features.
4. Doesn't interfere with anything.

The bad:
1. There is no point in using it in modern programs.
2. NOT DISTRIBUTED.
3. Any program that requires the #FF port can be relatively easily
remade. (And we must take into account the fact that there are many already remade
versions).

It seems to me that the arguments AGAINST are more convincing... THAT'S ALL...

With best regards.
Andrey.


From Vladimir Kacev To All 5 December 1997


Good afternoon (morning, evening, night), Alex!

Once on December 04, 97 at 08:13, Alex Letaev wrote to Max Romanoff...
...and then it was skipped...
AL> Strange. I have Leningrad 1, modified to 128, etc.
AL> is slowing me down due to the “Short Circuit”, in which the work with #FF has been removed from the code.
I have seen the only machine on which the “short circuit” works as it should.
It was a “Narkom 2” computer. A small board with two chips, which have
paws on all four sides. I still don’t know who released it. On the drawings
there is the inscription FORM Co.Ltd.

Bye, Vladimir :)

... Now the computer power can be turned off...

From Alex Letaev To All 6 December 1997


Hello Max Romanoff! In a message of 04 Dec 97 Max Romanoff wrote to me:

MR> the topic is that it should not slow down, because... no waiting for the required
MR> value from FF.

It slows down. Why, it’s not clear.

From Max Romanoff To All 9 December 1997


Vladimir is that you?
...why did you tell Alex Letaev about Re: Port FF?

VK> I saw the only machine on which the “short circuit” goes as it should
VK>. It was a Narkom 2 computer. A small board with two chips, which have legs on all four sides. I still don’t know who released it
VK> to this day. On the drawings there is the inscription FORM Co.Ltd.

I wonder how you knew that it was going 'as it should'?

Good Luck...


... 1: "AMIGAS suck!" 2:"Why?" 1:"Ummm erm.. they.. they just do!" 2:"Oh"

From Vladimir Kacev To All 11 December 1997


Hello Max!

09 Dec 97 21:42, Max Romanoff wrote to Vladimir Kacev:
VK>> I saw the only machine on which the “short circuit” goes
VK>> as it should.
MR> I wonder how you knew that it goes as it should necessary' ?
Hy, if on one machine the game slows down, on another it hangs in a certain
place, and on a third it plays further, then the conclusion suggests itself!

Bye , Vladimir :)

... ...Hey, if you're in Taganrog, come in!...

From Max Romanoff To All 14 December 1997


Vladimir is that you?
...why were you telling me about Port FF?

VK> Well, if on one machine the game slows down, on another it freezes in a certain
VK> place, and on a third it continues to play, then the conclusion suggests itself myself!

I’m still not sure about the brakes... I’ll have to look at
them... True, there is no FF there - as unnecessary ;)

Good Luck...


... IBM: Inertia Breeds Mediocrity.