Dickie
ZXNet echo conference «real.speccy»
From Andrey Isaev → To All 24 December 1998
ëءث-شد 21 Dec 98 × 02:22:02 ذزدةعدغإج ثدخئجةثش
Vova Bakum ة Eudgine Palenock سذدزةجة خء شإحص Dickie
ٌ زإغةج ذزدؤدجضةشط ـشدش سذدز:
EM>> َذإثشpصح شرخإش ثءث حةخةحصح 33600. "ًpد×إpإخخد
EM>> ـجإثشpدخةثدت". :)
VB> نءضإ آدجإإ شداد - 57600 جإاثد, آإع شصزآظ. Hد... هسشط دؤخد Hï.
VB> يإجدخ زءآدشءإش _âهْ_ ذزإزظ×ءخةت دش حدؤإحء, ةع-عء قإاد ة
VB> "ةسقإعءہش" آءتشظ, ذزةغإؤغةإ س حدؤإحء. ل س ذزإزظ×ءخةرحة -
VB> ذزدآجإح إسشإسش×إخخد خإش...
Hإش, خص ر ×سإشءثة سدحخإ×ءہسط × شءثدت سثدزدسشة ة ص حإخر إسشط خء شد دسخد×ءخةإ, شد
قشد ثشد شد اد×دزةش ـشد دؤخد, ء ×دش شد قشد ر خءآجہؤءہ ص سإآر ـشد ؤزصادإ.
---€€€ ² َ ص×ءضإخةإح, لخؤزإت ¯ €€€€--
From Eudgine Palenock → To All 25 December 1998
Once, 21 Dec 98, someone Vova Bakum wrote to Eudgine Palenock,
on the topic 'Dickie'...
VB> Even more than that - 57600 easily, without a turbo. But... There is one BUT.
VB> Melon works _WITHOUT_ interruptions from the modem, which is why
VB> the bytes that came from the modem “disappear”. And with interruptions -
VB> there are naturally no problems...
My Melon always works on 57600, there is no turbo, NMI is not connected and
bytes do not disappear... But before complete buffering, this phenomenon was sometimes
observed...
Regards, Evgeniy aka EVP.
From Kirill Frolov → To All 26 December 1998
It was 21 Dec 98 and 02:22:02, Vova Bakum wrote to Eudgine Palenock
on the topic Dickie
Not seeing a moderator nearby, I decided to insert a word:
VB> I don’t know what will hang and what won’t. Just get the idea of attaching modem interrupts to NMI out of your
VB> head. I have never seen a more crappy
VB> solution. Hang on INT and ALL! First
VB> programmatically disable interrupts from the ULA.
VB> It works without problems - tested.
And if the computer does not have a ULA?
You try to explain this to the software writers.
With best wishes, Kirill Frolov.
From Evgeny Milun → To All 28 December 1998
AI> No, well, I still doubt such speed and I have a reason for that
AI>, what someone says is one thing, but what I observe in myself
AI> is something else.
Do you doubt about Melon or “in general”? :) If at all, then leave any doubts.
In the next week I'll finish a new version of S-Terminal (on vacation I'm now just a wagon), I'll throw it here, and you'll see everything for yourself. If the modem, of course,
you have more than 14400.
2 Alex Noman: Well, tell people how you snooped around on 33600 on the BBS...
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 Evgeny Milun → To All 28 December 1998
EP> My Melon always works on 57600,
It’s your port on 57600 that works. More precisely, it works at a much lower
speed, but is locked to a maximum speed of 57600... And here, as far as
I understand, we are talking about the connection speed.
EP> there is no turbo, NMI is not connected and the bytes do not disappear... But before full
EP> buffering, such a phenomenon was sometimes observed...
It was your leads. Melon has nothing to do with it.
From Alex Noman → To All 29 December 1998
Monday December 28 1998 16:06, Evgeny Milun wrote Andrey Isaev:
EM> 2 Alex Noman: Well, tell people how you snooped around on 33600 on the BBS...
Oh, youth... You used to lock a port like that on 115200... %)
EM> Good luck! Evgeny.
With respect, Alex Noman.
From Dmitriy Timokhin → To All 29 December 1998
EM> snooping...
I'll set myself a Kondratyev and try at 57600...
Good bye !
Here waz Dmitriy AKA Raven.
From Andrey Isaev → To All 30 December 1998
EM> Do you have any doubts about Melon or “in general”? :) If at all, then leave
EM> doubts.
Well, to be honest, then in general.
EM> In the next week I’ll finish a new version of S-Terminal (I’m on vacation now -
EM> just a wagon of time), I’ll throw it here, and you’ll see everything for yourself. If the modem, of course,
EM> you have more than 14400.
They let you use 33600 for a while...
EM> 2 Alex Noman: Well, tell people how you snooped around on 33600 on the BBS...
No, well, at least it’s funny! what does ^^^^^^^^^^^^^^^^^^^^^^^ mean? How do you know that 33600? the fact that when connecting he writes 33600 and then in the statistics it also
indicates 33600 should not be taken seriously, it seems to me that you can find out the speed as such only by downloading some file and then looking at the DSPs, on 33600
there should be ~3700, but with the help of Melon and the 'turbo' button I managed to accelerate
to 3100.
---───══════════════╡ Best regards, Andrey ╞══════════════────--
From Alex Noman → To All 1 January 1999
Wednesday December 30, 1998 23:46, Andrey Isaev wrote to Evgeny Milun:
AI> No, well, at least it’s funny! what does ^^^^^^^^^^^^^^^^^^^^^^^
AI> mean? How do you know that 33600?
And my honest and noble is not enough? ;)
AI> the fact that when connecting he writes 33600 and then
AI> the statistics also indicate 33600 should not be taken seriously, as it seems to me
AI> you can find out the speed as such only by downloading some
Speed of what? Connection or file transfer? Don't get confused. ;)
AI> file and then looking at the DSPs, at 33600 there should be ~3700 of them, but for me
You think it’s bad if we are talking about maximum DSPs and unpacked data... I
can have a kilobyte DSP with a 2400 Momed. It depends on _what_ and _how_
to convey...
Besides, you and EM are talking about different things.
AI> with the help of melon and the 'turbo' button we managed to accelerate to 3100.
Congratulations. But what do melon and button have to do with it? :)
AI> -+-───══════════════╡ Sincerely, Andrey
With respect, Alex Noman.
ps/ Happy New Year everyone...
From Andrey Isaev → To All 4 January 1999
AN> You think badly if we are talking about maximum CPU and unpacked data...
AN> I
AN> I can have a kilobyte CPU with a 2400 momed. It depends on _what_ and _how_
AN> to transfer...
I said that it is the packed file that is to be transferred.
AN> Besides, you and EM are talking about different things.
what do you mean about different?
From Vova Bakum → To All 5 January 1999
EP> My Melon always works on 57600, there is no turbo, NMI is not
EP> connected and
EP> bytes do not disappear... But before complete buffering, this phenomenon
EP> was sometimes
EP> observed...
What modem? And what is called "full buffering"?
Good Bye, Eudgine Palenock!
With best wishes, Vova Bakum aka (R)soft.
>>> Sixfitander'95 >>> Tiamat'94 >>> My Dying Bride'93 <<<
From Vova Bakum → To All 5 January 1999
AI> for that reason, then
AI> that someone says is one thing, but what I observe in
AI> myself is something else.
I meant 57600 - the port locking speed. And my modem is
UMC 14400.
If you are interested in my circuit design for interrupts,
I can share...
Good Bye, Andrey Isaev!
From Vova Bakum → To All 7 January 1999
KF> And if there is no UL in the computer?
Of course there is no UL. I put it figuratively. I meant to cut off
interrupts that go to INT 50 times/sec.
In principle, I tried to simply “mix” modem interrupts with
INT - it also works. But at high speeds there will probably be troubles. Haven't checked it yet.
KF> You try to explain this to software writers.
Explain what? Maybe I'll try. ;)
Good Bye, Kirill Frolov!
From Eudgine Palenock → To All 8 January 1999
Once, 05 Jan 99, someone Vova Bakum wrote to Eudgine Palenock,
on the topic 'Dickie'...
VB> What modem?
USRobotics Sportster 14400, Model No.276
From Klim Gromov → To All 8 January 1999
Once on 05 Jan 99, when it was 03:12:43 in Moscow, Mr. Vova Bakum wrote to
Andrey Isaev:
VB> I meant 57600 - the port locking speed. And my modem is
VB> UMC 14400.
VB> If you are interested in my circuit design for interrupts -
VB> I can share...
What kind of computer do you have? I have Scorpio and for some reason my subj doesn’t
work, I suspect that my interrupts are implemented correctly, but just
nailed software.
SY, Klim.
From Kirill Frolov → To All 9 January 1999
VB> Of course there are no ULs. I put it figuratively. I meant to cut off
VB> interrupts that go to INT 50 times/sec.
And if you cut them off, how will the keyboard work and how will time move forward?
The idea of reading the keyboard without interruptions is not the best, and counting time by processor cycle
is a more crazy idea than connecting interrupts to NMI.
VB> In principle, I tried to simply “mix in” modem interrupts to
VB> INT - also works. But at high speeds there will probably be
VB> troubles. I haven't tested it yet.
I tried it too - it works. But I'm 99% sure that at high speeds, frame interrupts will be missed. But this already happens when
using NMI - there, after all, IFF1 is reset in the processor, and by the time the processor
reaches the INT processing program, it will already be over.
I simply distinguished interrupts - I asked the mother. If momed wants, then it's
an interruption from momed, otherwise the frame ticker.
But those who like the magic button don't need to press it -
I don't know how it is on other computers, but in Scorpio the shadow just hangs on
endless interruptions.
From Andrey Isaev → To All 10 January 1999
AI>> Hإش, خص ر ×سإشءثة سدحخإ×ءہسط × شءثدت سثدزدسشة ة ص حإخر إسشط
AI>> خء شد دسخد×ءخةإ, شد
AI>> قشد ثشد شد اد×دزةش ـشد دؤخد, ء ×دش شد قشد ر خءآجہؤءہ ص
AI>> سإآر ـشد ؤزصادإ.
VB> ٌ ةحإج ××ةؤص 57600 - سثدزدسشط عءجدقثة ذدزشء. ل حدؤإح ص حإخر -
VB> UMC 14400.
ْءجدقةشط ةحبد ة خء سدشخہ حدضخد شدجطثد آصؤإش جة شدجث?
VB> هسجة ةخشإزإسصإش حدإ سبإحخدإ زإغإخةإ ذد ذد×دؤص ذزإزظ×ءخةت -
VB> حداص ذدؤإجةشطسر...
ëدخإقخد ؤإجةسط, ×ؤزصا قإ خد×إخطثدإ.
From Alex Noman → To All 10 January 1999
VB> INTу - also works. But at high speeds there will probably be troubles.
Let you talk about the pros, and I’ll talk about the cons? ;)
VB> With best wishes, Vova Bakum aka (R)soft.
With respect, Alex Noman.
From Evgeny Milun → To All 15 January 1999
AI> No, well, at least it's funny! what does ^^^^^^^^^^^^^^^^^^^^^^^ mean?
AI> how do you know that 33600? the fact that when connecting he writes 33600 and then in
Well, no, if he writes “CONNECT 33600”, then that’s how it is... The channel speed
DCE-DCE is really 33600 baud. Even worse, if protocols
support compression are enabled, then the speed of the DTE-DTE channel is often even higher.
AI> statistics also indicate 33600 should not be taken seriously, it seems to me
AI> you can only find out the speed as such by downloading a file and
AI> then looking at the CPUs,
1) CPS for different programs are calculated differently.
2) CPS are usually calculated for “clean” data, i.e., for example, with the ZModem file protocol, all service frames do not fall under the CPS calculation.
3) CPS _strongly_ depends on the lower-level protocol used, the data itself
and the noise level of the line (and in simpler terms - the number of repetitions of any
block/window).
4) CPS is an indicator of the speed of the program_transmitter-program_receiver
channel (in other words, the highest network level - the application level), and
therefore, cannot be used as the “supreme true."
AI> on 33600 there should be ~3700 of them, but with the help of
AI> melon and the 'turbo' button I managed to accelerate to 3100.
1) CPS is not an indicator :))
2) That's it“we managed to overclock the turbo buttons”... but here there’s no need to overclock anything... everything works just the same. And with the turbo button you can “overclock” to 57600 and
more.
From Vova Bakum → To All 15 January 1999
I decided to add some heat to this dialogue...
VB>> :) For a hundred of what? Bucks?;) If at 115200, then this is for 33600
VB>> modems. Modems
VB>> on
VB>> 14400 do not support a login of more than 57600.
VB>> But the point is only in the gain in speed.
AI> this IMHO on the PC there will be a gain in speed, but with us, alas:(
You install some Acorp 33600 for yourself and calmly work with
the login 57600 (or maybe 115200 - I didn’t check).
After that, say that there is no gain in speed.
Only in my terminal with a connection speed of 14400 and a port lock speed of 57600, I was able to fully climb the BBS with
Melon in the turbo, the maximum lock is 19200, and even then. letters
sometimes go into nirvana. I’m not convinced yet?
My terminal has been a bit slow with the protocols lately
I’ve been too lazy to complete the product. Maybe inspiration will come, I don’t know... ;)
Then I’ll tell you the real cps
at different speeds. Then you will need to check with the modem
336000.
From Oleg Pritula → To All 16 January 1999
EM>>> I'm on vacation now -
EM>>> there's just a lot of time),
EM> By the way, I never did... :(((
EM> Problems-problems-problems... There's no time
EM> for the computer at all...
Yes... all the troubles come from women... (c)
Zhen, well, that's font that returned to its previous state?
From Alex Noman → To All 17 January 1999
EM> button you can “overclock” to 57600 and more.
Overclock what? What does the turbo have to do with it? Are you overclocking the channel/modem?
From Alex Noman → To All 17 January 1999
Saturday January 16, 1999 8:37 pm, Oleg Pritula wrote Evgeny Milun:
OP> 8E~~ ;)
And the weakest? ;)
OP> o(@ @)o -=POWer/WDG=-
C regards, Alex Noman.
From Vova Bakum → To All 18 January 1999
AN>>> Let you talk about the pros, and I will talk about the cons?
AN>>> ;)
VB>> :) Where do we start? ;)
AN> On the plus side, of course. ;)
What were we talking about anyway?
Good Bye, Alex! With best wishes, Vova Bakum aka (R)soft.
From Andrey Isaev → To All 18 January 1999
AI>> this IMHO on the PC there will be a gain in speed, but with us, alas:(
VB> You install some Acorp 33600 for yourself and calmly work with
VB> a login of 57600 (or maybe 115200 - I haven’t checked).
VB> After that, say that there is no gain in speed.
I WILL SAY I recently had one usr33600 and I somehow didn’t notice the difference between the lock
at 57600 and 19200.
VB> Only in my terminal with a connection speed of 14400 and a port lock speed of 57600, I was able to fully access the BBS.
But what about Melon, as a witness of the events, can I say that from it with a lock? at
57600 you can climb bbs without damage.
VB> Melon in the turbo has a maximum lock at 19200, and even then the letters
VB> sometimes go to nirvana. Still not convinced?
Is there a buffer on the tire?
From Oleg Pritula → To All 18 January 1999
AN> What about you yourself? ;)
No, but only after I have S-Terminal not in the development process,
i.e. not the one that I have now for testing.
And then maybe I won’t have to change anything ;)
And the question is not whether it’s weak or not weak, but that the basic one, the main one, was
Eugene left the same.
I already told him by voice that it’s too small and there is a psychological barrier
when switching to it after active work with other analogues of his program.
Therefore, I would like to know the opinion of the respected All. regarding its relationship to a font
similar to that used in ZED.
From Evgeny Milun → To All 18 January 1999
And in the Kondratieff scheme, there is an interrupt key specifically for this...
But if you want, I’ll tell you what this idea of yours will lead to. Don't think that you are an innovator. A year ago a similar idea occurred to me. A couple of minutes later, when I checked it...
From Evgeny Milun → To All 18 January 1999
AN> What to overclock? What does the turbo have to do with it? Are you overclocking the channel/modem?
Wah-wah, who would say... :)) Have you forgotten that in this situation
is the main limitation? You and I thought together - for normal
work, the NMI handler must “pull” bytes from the modem in the shortest possible time. For speed 33600 - ~40 clock cycles. This is all without internal modem buffering. Buffering gives us 13-14 times more time... But
turbo - another two times, regardless of buffering.
From Alex Noman → To All 19 January 1999
VB> What were we talking about anyway?
Hmm... You kind of suggested running irq4 on int...
VB> Good Bye, Alex! With best wishes, Vova Bakum aka (R)soft.
With respect, Alex Noman.
From Alex Noman → To All 19 January 1999
AI>>> Well, I still don’t understand why int is better than nmi?
VB>> The fact is that if you go to TR-DOS and at that moment an interruption comes from
VB>> the modem... And then you will tell me yourself.;)
From Alex Noman → To All 19 January 1999
Monday January 18, 1999 21:14, Oleg Pritula wrote to Alex Noman:
OP> I already told him by voice that he is too small and
OP> there is a psychological barrier in switching to him after active
OP> work with other analogues of his program. Therefore, I would like to know your opinion
Otherwise you don’t know _how_ we correct the author’s work. You come to his home
and forcibly destroy the source codes... ;)))
2ALL: I'm exaggerating...
OP> respected All regarding his attitude towards a font similar
OP> used in ZED.
Negative. I'm generally for 512*192... Will anyone ever send a diagram for
scorp?
From Andrey Isaev → To All 19 January 1999
ëءث-شد 18 Jan 99 × 21:14:03 ذزدةعدغإج ثدخئجةثش
Oleg Pritula ة Alex Noman سذدزةجة خء شإحص Dickie
ٌ زإغةج ذزدؤدجضةشط ـشدش سذدز:
OP> ًدسإحص بدقإشسر صعخءشط حخإخةإ ص×ءضءإحداد All'ء ذد ذد×دؤص إاد دشخدغإخةر ث
OP> font'ص
OP> ذدؤدآخداد ةسذدجطعصإحoحص × ZED'إ.
ل قإ شصش صعخء×ءشط? ذدحدإحص دؤخدعخءقخد ـشدش ئدخش جصقغةت 64 سةح×دجطخظت.
From Kirill Frolov → To All 19 January 1999
AI> Well, I still don’t understand why int is better than nmi?
1. You can simply ban it.
2. It won’t glitch.
3. Read the manuals.
From Kirill Frolov → To All 19 January 1999
VB>>> interruptions that go to INT 50 times/sec.
KF>> And if you cut them off, how will the keyboard work and
KF>> time to move forward?
VB> You know, if you say that... :)
VB> The keyboard is polled when you need it. And not by INT.
And you press the button, and there are 10 letters on the screen?
Have you seen SABOTEUR (game)?
VB> Time has always moved forward and will continue to move - this is
VB> not needed in the terminal. The most reliable clock is CMOS.
~~~~~~~~~~~~
Well, well.... How to calculate timeouts? In terms of delays on the processor ?
+/- 1000 (thousand)% ? MASDAI.
VB> Everything works...
Only on your computer, but on mine it will go into the garden. And on a sprinter too.
KF>> The idea of reading the keyboard without interruptions is not the best, but counting
VB> What is the argument?
Write to me how you will determine whether a key is pressed or released and how
you will do auto-repeat? Lameness is everything.
KF>> time per clock
KF>> processor is a more crazy idea than connecting
KF>> interrupts to NMI.
VB> Yes? Count time WHAT? (or WHOM?;)
Timeout in the file transfer protocol.
KF>> set to INT and
KF>> knead - no need to disable anything. But if it’s too much
VB> Still, I think it should be turned off. Although...
Why??? It's very disturbing. Try. You'll definitely be left without keyboard.
And if you don't have keyboard, but an adapterfor Scorpio - 3.1415...here is everything.
VB> At the moment of modem interruption, set your
VB> vector to the data bus? Next is a table of vectors - for the modem and for the ticker.
VB> You can try. Maybe you should even try.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
And here you need to disable int and make int with your own vector!
VB> By the way, I remembered. Do you know how to use TR-DOS with IM2?
It is possible, but through ()(). Why is this necessary?
VB> Otherwise, in the terminal there is a small problem (a brake, or rather) it turns out.
VB> You need to switch to IM1 for TR-DOS.
8 cycles is a pity? :-( )
From Igor Turashev → To All 20 January 1999
AI> I WILL SAY I recently had a usr33600 and I didn’t notice the difference between the
AI> lock on 57600 and 19200.
I confirm, you look at the clock cycles: at a speed of 57600 you need to spend only 62
cycles on each received byte, and also poll the keyboard and display it on the screen
it would be desirable... Or is someone already so upset??? Then I’m no longer a coder... I didn’t even know that you can output 1152 characters per int, even more than the screen (well, with 512x192
there’s less screen, but the output there is even slower). So, in my opinion, without a pipe, a speed
of about 17kbps is only possible. For data reception - no more than 38400, then
in the future it simply won’t reach 57600 and won’t give any winnings.
[chomp-chomp]
From Alex Noman → To All 20 January 1999
EM> Wah-wah, who would say... :)) Have you forgotten that in this
EM> situation the main limitation is? We thought together with you -
EM> for normal operation, the NMI handler must “pull” bytes from the modem
EM> in the shortest possible time. For a speed of 33600 - ~40
EM> cycles.
We were all lamer. ;) You yourself know very well that I said this without writing a single line for the NMI handler. And this turned out to be the very place where
theory diverges from practice. When using any protocols, data from the modem arrives in portions. I would never dare to assume that at some
discrete moment in time the intensity of the incoming data flow could be
equal to the flow at any other moment in time. :)
And for a speed of 33600, neither 40 clock cycles nor 80 (in a turbo) are acceptable.
;))
EM> This is all without internal modem buffering. Buffering gives us 13-14 times more time...
Tell me how you calculated it? ;)
Firstly, more than 14, and maybe even 15-16 times. You forget about the
processor in the ROM, which seems to be skipped.
Secondly, let’s count further. Let the handler process the incoming byte from the COM port in time X. Even if we assume that X is equal to 10-15 clock cycles, then the internal FIFO buffer gives us 15-16 times more time. Multiplied? :)Time
is given to process the interrupt, but the interrupt itself is cleared after reading
the very first byte. A simple calculation will show that _such_ a handler is able to process a stream of 5000 and even 10000 bytes per second, which is through the roof. Will you do the calculations yourself or help? :). Software must be written with straight hands, and not rely on the turbo. Otherwise it has reached the point of insanity: games built on animation alone want a turbo. :( Do they throw LDIRs at the screen or even more cunningly - in cycles? :)
From Alex Noman → To All 20 January 1999
Problem? ;)
From Alex Noman → To All 22 January 1999
KF> 1. You can simply ban it.
KF> 2. It won’t glitch.
KF> 3. Read the manuals.
4. Think
5. Think again.
NMI can be banned without it. NMI does not bug people with straight hands.
Read the manuals. If things are really bad, read the manuals from Zailog. Perhaps your glitch will be mentioned there.
KF> With best wishes, Kirill Frolov.
With respect, Alex Noman.
From Andrey Isaev → To All 22 January 1999
ëءث-شد 19 Jan 99 × 05:54:45 ذزدةعدغإج ثدخئجةثش
Kirill Frolov ة Andrey Isaev سذدزةجة خء شإحص Dickie
ٌ زإغةج ذزدؤدجضةشط ـشدش سذدز:
AI>> Hإ خص ر ×سإ ضإ خإ ذدخةحءہ قإح int جصقغإ nmi?
KF> 1.هاد حدضخد ذزدسشد عءذزإشةشط.
nmi شدضإ حدضخد خد خإحخداد سجدضخإت.
KF> 2.ïخ خإ آصؤإش اجہقةشط.
س ثءثدت سشءشة?
KF> 3.ًدقةشءت حءخصءجظ.
ëءثةإ ةحإخخد?
From Vova Bakum → To All 22 January 1999
AN> Hmm... You kind of suggested starting irq4 on int...
Ahhh, exactly! So I talked to Andrei Isaev about this here. He defends NMI, and I - INT.
Pros - no need to change the ROM (I don’t really want to;). INT can
be disabled programmatically. If you write (not slow) procedures for working with DOS under IM2, then this will allow you _at all_ not to lose
a single byte that came from the line.
I don’t know about the disadvantages. Maybe you can help?
This whole thing has been working for a long time, but we need to discuss something.
And I can only discuss it when I have a modem
for 33600, for example, so that the port can be locked to 115200 -
to check the speed and some hardware things in terms of
connecting the Internet.
The ideas work, but development is needed.
I once heard that you I climbed on BBCs on Speck at immeasurable speeds. Is this true?
From Vova Bakum → To All 22 January 1999
EM> You CANNOT process interrupts of
EM> ASYNCHRONOUS ADAPTER using IM2.
EM> THEORETICALLY!!! By this “kneading” you create some kind of mutant monster...
:)
Oh! Hello! Yes, we have been arguing about this for a long time. The fact is that
this is half an idea and you missed the most important thing. This is what I said
a very long time ago. From the very beginning, when I took up this problem, my circuit
consisted of 2 parts. After writing the terminal, everything worked fine. Then I got tired of this mixture
of modem interrupts and system clock. I decided to programmatically
cut off system interrupts. The interruption procedure has become much simpler, and the problem of possible bugs due to the simultaneous arrival of two interrupts has disappeared. I should have tried to experiment with setting the interrupt vector to the data bus,
but I haven’t done it (yet).
By the way, there’s no need to shout. I can hear normally. And most importantly -
explain (I am a lamer in life) to me, as a novice hardware worker,
what an “asynchronous adapter” is. When you explain to me, I
will answer you what and how I can process using IM2.
From Vova Bakum → To All 22 January 1999
IT> I confirm, you look at the clock cycles: at a speed of 57600
IT> you need to spend only 62
IT> clock cycles for each received byte, and also poll the keyboard,
IT> and display it on the screen
IT>, it would be desirable... Or has someone already gone so crazy??? Then I
IT> am no longer a coder... I didn’t
IT> know that you can output 1152 characters per int, more than the screen
IT> even (well, with 512x192
IT> there is less screen, but the output there is even slower). So
IT> in my opinion, without a pipe, a speed
IT> of about 17kbps is only possible. For data reception - no
IT> more than 38400, in
IT> in the future it simply won’t reach 57600 and won’t give any winnings.
Well, what can I say about this?
1. I already answered his letter, so I won’t repeat it.
It seems that when connecting to his acorp 33600, the connection speed
is very low and therefore there is no difference. And when I use BBS with a connection speed on line 14400 and put a lock
at 19200 and 57600, the difference is already visible - in the speed
of characters “flying out” onto the screen. I won't start any more flames about this. The gain in speed is obvious and no one can convince me of what I see with my own eyes. And if
some people's hands.sys are not configured, then it's not my fault.
2. You are right about your logical calculations. But we are talking about modems with suspended interrupts. Aabout the speed
of displaying symbols on the screen. This can be solved by buffering the data
coming from the modem and by well-written software. By the way, you can
try to output several characters from the buffer at once, which
I will do in one of the next versions of my terminal.
3. Are you saying that there is no point in purchasing a
33600 modem? I just want to check the maximum speeds on
Spec, but (yet) there is no such opportunity.
IT> [chomp-chomp]
From Oleg Pritula → To All 23 January 1999
\\|// ╟─┤asta la vista !!!
o(@ @)o -=POWer/WDG=-
-----ooO-(_)-Ooo-----
From Alex Noman → To All 23 January 1999
OP>>>> Therefore, I would like to know the opinion of the respected All about
OP>>>> his
OP>>>> attitude towards a font similar to that used in ZED.
AI>>> What is there to find out? In my opinion, this font is definitely the best 64
AI>>> symbolic.
From Valerij Kozhevnikoff → To All 23 January 1999
18 Jan 99 at 21:14:03, Oleg Pritula => Alex Noman:
OP> Therefore, I would like to know the opinion of the respected All regarding his attitude to
OP> font
OP> similar to that used in ZED.
Best! I have it inserted everywhere!
WBR, Jason.
From Kirill Frolov → To All 23 January 1999
Go to zx.spectrum and tell stories. Everything worked for me.
EM> think that you are an innovator. A year ago, a similar idea occurred to me.
From Oleg Pritula → To All 24 January 1999
AN> I was not mistaken. So far, not a single person in the echo has spoken
AN> against the Zedov font (except for you, of course ;)).
(To clarify: not against the Zedov font, but against its use in the terminal)
Well, while 2 people are for, 2 are against (including you;) not such a big
problem. ;)
Actually, this whole survey is not needed by me, but by Zhenya Milun, based on the results of which
he will make his final choice about which font will remain in
S-Terminal.
From Kirill Frolov → To All 24 January 1999
AN> 4. Think
AN> 5. Think again.
AN> NMI can be banned without it. NMI does not bug people with straight
AN> hands.
AN> Read the manuals. If things are really bad, read the manuals from Zailog.
Perhaps
AN> your glitch is mentioned there
AN>.
Think for yourself. If the momed produces feces, and the Z80 generates NMI every time,
then your stack will run out. I don't have this, but it happens. Against this, you can
use a free trigger from a Kondratiev circuit, but INT is still
better.
2All: I hope you don’t need to include the circuit as a trigger?
From Vova Bakum → To All 25 January 1999
KF> 8 bars is a pity? :-( )
No, it’s not a pity. I will explain briefly, but no more. If you continue
to only flame about the problems of interruptions
from the modem, I will have no desire to continue communicating
in this spirit. If we are solving (or trying to solve) this
problem, then please take it seriously.
In short. I want to make sure that all (if possible) data
coming from the modem when accessing the DOS is not lost.
I noticed that at the moment of accessing the DOS (in IM1, of course)
even with DI, my terminal hangs at the moment when a byte arrives from the modem. The only thing that saved me was the prohibition of interruptions from the modem, which is not a buzz. While I'm writing/reading the file, the bytes
go to nowhere. So I got the idea to use DOS in IM2 mode. I haven’t done this, but according to guy
RST7, you can quickly read/write DOS from IM2. So,
when we, for example, write a received file to disk, the service
bytes (frames, other protocol information) are buffered. This
will give an additional benefit in terms of file transfer speed
(when there are a lot of them and they are small in size). Moreover,
with decent DSP and such files, I think the drive will only slow down.
There is an idea to make simultaneous reception/transmission of information by the modem and
writing/reading by the drive (as ifmultitasking). The IM2 mode will allow you to do all this.
What ideas will you have about this?
As for vectors, that’s really an idea.
Good Bye, Kirill! With best wishes, Vova Bakum aka (R)soft.
From Alex Noman → To All 27 January 1999
How are you, Kirill?
Sunday January 24, 1999 06:31, Kirill Frolov wrote to Alex Noman:
KF> Think for yourself. If the momed produces feces, and the Z80 generates NMI
KF> every time, then your stack will run out.
That’s where you should have started. The simple fact is that you, apparently, did not write a
_normal_ nmi handler, and therefore you have no idea how everything works.
KF> I don’t have this, but it happens.
It can be treated.
KF> Against this, you can adapt a free trigger from the Kondratieff
KF> circuit, but INT is still better.
Good. I'll explain it in my fingers if you insist. But first, tell me, is int used for any other needs in your program (let it be a mythical program with a modem handler on int)?
KF> 2All: I hope you don’t need to turn on the circuit as a trigger?
No need.
From Alex Noman → To All 27 January 1999
VB> I haven’t done this, but according to the guy
VB> RST7, you can quickly read/write a DOS from IM2.
HMIs are poured in at intervals of a hundred clock cycles. Try it. ;) Alka has
procedures for tr-dos in im2, but they can only really be used for playing music.
VB> As for vectors, that’s really an idea.
Forward. Then we'll compare. ;)
VB> With best wishes, Vova Bakum aka (R)soft.
With respect, Alex Noman.
From Alex Noman → To All 27 January 1999
How are you, Vova?
Friday January 22 1999 13:09, Vova Bakum wrote Alex Noman:
VB> Pros - no need to change the ROM (I don’t really want to ;).
Accepted. :) But now most computers don't need anything. ;)
VB> INT can be disabled programmatically.
HMI can also be disabled. There is a key. In cycles, naturally, longer than DI. :))
VB> If you write (non-braking) procedures
^^^^^^^^^^^^
Have you written brake ones before? :)
VB> working with DOS under IM2, then this will allow _at all_ not to lose
VB> not a single byte coming from the line.
Maybe. Although this is practically unrealistic.
VB> I don’t know about the disadvantages. Maybe you can help?
VB> This whole thing has been working for a long time, but we need to discuss something.
VB> And I can discuss it only when I have a modem
VB> for 33600, for example, so that the port can be locked to 115200 -
VB> to check the speed and some hardware things in terms of
VB> connecting the Internet.
That's the whole point. The program will work with int, but you can completely forget about the direct purpose of int or anything else. Let's say that the program needs time accounting to calculate the CPU. If in a scheme with HMI the nth number of synchronizing
halts flies, I won’t tell you where, and time tracking, albeit with errors, is successful,
then in a scheme with int you don’t have to remember about time. (No need to remind me about
all sorts ofhardware gadgets. I don’t have them and never will.) In addition, int
is also used to synchronize output. You can, of course, analyze the ports and
guess who generated the interrupt. You can use a single handler for
everything, but then precious tactics will be lost. But the most important thing in the scheme with
HMI is that it is possible to process interrupts according to priorities and the int handler (the same accounting
of time) will always be overlapped by the NMI handler.
So, as you can see, there are a lot of “buts”. I don't want to say that your AI option doesn't deserve attention. I just showed +/-. The choice is up to the spektrumists. But my
opinion is that Kondratiev’s scheme is the best today.
VB> The ideas work, but development is needed.
VB> I once heard that you were climbing BBS on Speck with
VB> immeasurable speeds. Is this true?
Yes. When I wrote bbs software/terms.
VB> Good Bye, Alex! With best wishes, Vova Bakum aka (R)soft.
With respect, Alex Noman.
From Vova Bakum → To All 27 January 1999
AN> Zailoga. Perhaps your glitch is mentioned there
AN>.
Ours? I haven’t had any glitches with Int yet... And as far as I understand,
the glitches were in the subject, which is on NMI... If I’m not confusing anything.
From Andrey Isaev → To All 27 January 1999
ëءث-شد 25 Jan 99 × 10:32:42 ذزدةعدغإج ثدخئجةثش
Vova Bakum ة Kirill Frolov سذدزةجة خء شإحص Dickie
ٌ زإغةج ذزدؤدجضةشط ـشدش سذدز:
VB> هسشط ؤزصادت سذدسدآ, ذزةحإخ£خخظت × حد£ح شإزحةخءجإ.
^^^^^^^^^^^^^^
ôظ دقإخط قءسشد ةسذدجطعصإغ ـشص ئءزءعص, شءث حدضإش عءثةخإغ سہؤء س×دت شإزحةخءج?
From Andrey Isaev → To All 27 January 1999
AI>> the difference between the lock
AI>> at 57600 and 19200.
VB> It depends on the connection speed _on_line_ and whether there is MNP or
VB> V42. If you have a 33600 modem, a connection on a line for example
VB> 4800, then of course there will be no difference. We need to at least understand this.
If by 'line' we mean a telephone line, then the speed was really 33600
and naturally v.42b
VB>>> was turned on. Only in my terminal with a connection speed of 14400 and
VB>>> the port lock speed at 57600, I was able to fully access
VB>>> BBC.
VB>>> S
AI>> What about Melon? as a witness to the events, I can say that with
AI>> it, when locked to
AI>> 57600, you can safely access the bbs.
VB> I repeat once again (for the last time) that everything depends on the speed
VB> of the connection on the line.
So I don’t mind, just read your lines above, you’re trying to
convince me that you can only surf BBQs fully in _your terminal_ although
in fact this is far from the case! You probably think that the soaper has been on the Spectrum since its birth? if so, then you are very mistaken, and before many people, including me,
climbed bbscs quite fully.
VB> I have in Melon in turbo mode at a speed of 14400 in the line the maximum
climb
VB> -
VB> 19200 (and even then sometimes symbolsare lost)
VB> And with such a lock and speed on the line, you don’t feel complete comfort and
VB> speed.
Well, if your hands are a little “crooked” and you can’t make sure that
the symbols don’t fly out, then this doesn’t mean that interruptions on int rule.
From Alex Noman → To All 28 January 1999
VB> Ours? I haven’t had any glitches with Int yet... And as far as I understand,
VB> the glitches were in the subject, which is on NMI... If I’m not confusing anything.
The glitches in the subject are due to the fact that the author forgot to click a key somewhere. HMI has nothing to do with it. And for those whose NMI is still buggy, this only means that the Kondratiev circuit was assembled incorrectly. ;)
VB> Good Bye, Alex! With best wishes, Vova Bakum aka (R)soft.
With respect, Alex Noman.
From Valerij Kozhevnikoff → To All 28 January 1999
generate,
KF> then your stack will run out. I don't have this, but it happens. Against this, you can
KF> use a free trigger from the Kondratieff circuit, but INT is still
KF> better.
I was thinking: after all, trdos has EI commands... Although if you turn on IM1 before trdos
then it’s probably not scary.
In general, INT is better. It will be completely wrong if, in the presence of IRQ from the modem and INTA
from the D0 processor, you plant it on the ground. In order to slip another interrupt vector (#FE) onto the bus, so that the processor goes to take a byte from moden. And on vector #FF keep
a standard ticker.
WBR, Jason.
[Team Obituary] [Team Friday 13th] [Team Evil Maniacs] [Team Huge
Axes]
From Vova Bakum → To All 28 January 1999
AN> HMIs are pouring in at intervals of a hundred clock cycles. Try it.
I won’t have NMI.
AN> ;) Alk has
How to contact him. Get the sources. I don’t want to do this dos
under im2... I had enough under im1. ;)
AN> procedures for tr-dos in im2, but they can really only be used for
AN> playing a muse.
This is not a fact. But we need to check... Everyone will write differently.
From Vova Bakum → To All 28 January 1999
VB>> plan
VB>> connecting int.
AN> This is exactly the point. The program will work with int, but you can completely forget about
AN> the direct purpose of
AN> int or anything else. Let's say
AN> in the program you need to take into account
AN> time to calculate the CPU.
It was this problem that worried me. :)
AN> If in a scheme with an HMI the n-th number
AN> of synchronizing
AN> halts flies, I won’t say where
:)
AN> and time tracking may be with
AN> errors, but it is possible,
AN> then in a scheme with int you don’t have to remember about time.
No, well, why... It’s from the system int and synchronize.
AH> (No need
AN> to remind me about
AN> all sorts of hardware gadgets. I don’t have them and never will.)
It depends. ;)
AN> In addition, int
AN> is also used for output synchronization.
I agree.
AN> You can, of course,
AN> analyze the ports and
AN> guess who generated the interrupt.
That’s exactly what I do. At the moment of interruption, I keep getting to
the modem and asking “did he make an interrupt?”.
AN> You can use a single
AN> handler for
AN> everything, but then precious tactics will be lost.
For now, everything is enough.
AN> But
AN> the most important thing in the scheme with
AN> HMI is that it is possible to process interrupts by priority and
AN> int handler (that oraccounting
AN> time) will always be overridden by the nmi handler.
Do you mean nested interrupts?
AN> So, as you can see, there are a lot of “buts”. I don’t want to say that
AN> your version with AI is not
AN> worthy of attention.
Well, well, thanks for that. :)
AN> I just showed +/-. The choice is up to
AN> spektrumists. But my
AN> opinion is that Kondratiev’s scheme is by far the best
AN>.
I will not support (you know why;), but I will say - time will tell.
From Evgeny Milun → To All 29 January 1999
VB> :)
VB> Oh! Hello! Yes, we have been arguing about this for a long time. The thing is that
[.....]
VB> worked. Then I got tired of this mixture of modem interruptions and system
VB> clock. I decided to programmatically disable system interrupts.
Why? And how can you “cut them off programmatically”? You can only make an empty handler, or DI (but then your modem interrupts will also slow down). You can’t do anything else with IM2.
VB> The interruption procedure has become much simpler, and the problem of possible bugs
VB> due to the simultaneous arrival of two interrupts has disappeared.
Uffff... Tough... What do you mean by “became simpler” and “the problem of possible bugs”?
In my opinion, Noman and I have been proving to you for a whole month now that when
using NMI such problems never arise at all...
VB> I should have tried
VB> to experiment with setting the interrupt vector to the data bus, but
VB> I have not done this (yet).
Why? Well, explain to me - why? Why make mutants first and then “lick” them? After all, there have been normally working schemes for a long time? Or do you definitely need your own, even if it’s crooked?
VB> By the way, there’s no need to shout. I can hear normally. And most importantly -
VB> explain (I’m a lamer in life) to me, as a novice ironworker,
VB> what is"asynchronous adapter".
Of course, I said it a little incorrectly... More correctly - the interface of
asynchronous input-output.
VB> When you explain it to me, I
VB> will answer you what and how I can process using IM2.
Nope, you can’t explain... The point is that such garbage implies the presence of at least a simple interrupt controller. In the case of NMI, we have it. In
the case of IM2 - no.
From Evgeny Milun → To All 29 January 1999
KF> generate, then your stack will run out.
And if you think about it again? No power can come from the modem - at most from a crookedly made matching circuit. This is if by the word "feces" you mean
"too frequent empty interruptions." But if, simply, “frequently arriving bytes,” then I must disappoint you - if the programmer is not crooked, then the stack will never overflow... Moreover, such a ban on “overflow” will lead to the loss of bytes. And if you still do so that the bytes do not disappear,
then... then again, according to your words, a “stack overflow” situation is possible.
KF> I don’t have this, but it happens. Against
KF> you can use a free trigger from the Kondratiev scheme, but INT
KF> is still better.
“- The Armenians are better than the Georgians.”
- Well, than ???!!! What????!!!!
- What are the Georgians!?"
(C) anecdote.
From Evgeny Milun → To All 29 January 1999
1) Modem IRQ connected to NMI can be disabled in 3-4 ways. Starting
from the modem itself, and ending with closing the key in the Kondratiev scheme.
2) If you are making a very, very simple terminal, then this will do. And if
it’s more complicated, then you will need INT for a bunch of things and you won’t have the
opportunity to disable them only to disable interruptions from the modem...
VB> If you write (not slow) procedures for working with DOS under IM2, then this
VB> will allow _at all_ not to lose a single byte coming from the line.
1) If you don’t have crooked ones hands, and you have correctly implemented the file protocols,
then the situation when there is a reception and you need to write something to disk will never
appear.
2) What does “not slow” mean? I already wrote that at a speed of 33600 you only have ~50-60 clock cycles. Will your dos-processor complete?
From Denis Dmitriev → To All 29 January 1999
VB> At what connection/locking speeds? I'm wondering if
VB> can Speck work without a turbo at a connection speed of 33600 (the
VB> lock is naturally not lower than 115200)?
With the right interruptions, it's easy. Well-written protocols for receiving/transferring files are well within this speed, and the vast majority of BBSes operate in “page” mode, i.e. Even if the output to the screen
does not keep up with the modem, during pauses between pages everything will
catch up just fine.
ps: I personally am not satisfied with either NMI or mixed INT. nada 8259, on which
to hang the original INT, modem, VG93 (it seems to be able), CMOS clock (why should you constantly climb on
them? Let them climb on their own :). Then everything will be OK, and work
with the disk, without losses from the modem, etc. (but I'm afraid that such a load of
interruptions will drive the z80 into a deep stack hole ;)
With best wishes, Vova!
... I'll buy a moonshine still. intermediary phone number 02.
From Vova Bakum → To All 29 January 1999
VB>> There is another method used in my terminal.
AI> ^^^^^^^^^^^^^^
AI> You use this farase very often,
Don’t think anything bad, I’m not bragging... :)
AI> maybe you’ll drop
AI> here your terminal?
Very crude version, designed for INT. There are no reception/transmission protocols in it.
So, there are some small
conveniences in it, but for now giving such a product means... it’s better not to
give it. The thing is that I haven’t decided on the hardware yet. This means
in view of where and how to hang up the modem data, so the program is only
test for now.
Good Bye, Andrey! With best wishes, Vova Bakum aka (R)soft.
From Vova Bakum → To All 29 January 1999
VB>> speed
VB>> connections on the line.
AI> So I don’t mind, just read your lines above you
AI> there you are trying to convince me
AI> that you can fully climb bbsks only in
AI> _your terminal_ although
Because in Melon, by definition, in turbo mode at a speed of
14400 in the line the maximum locking speed is 19200. This is so that
bytes don’t were lost when displaying text. And if you use
file reception/transfer protocols, then you can lock on 33600.
All this can be confirmed by Dis, who himself wrote to Melon and
told me about this. If you still don’t understand this, then
sorry... I’m tired of repeating it.
AI> in fact, this is far from true! You probably think that the
AI> Spectrum has had a soaper since its birth? If so, then you're very wrong before
I don't think anything. When Rst7 and I first connected my Spec with the Amiga, it was a
modem similar to Vicom. Back then there were no modems
on the Spectrum at all, not to mention hackers. Hayes
were chic on pussies back then.
Then I tried an external IDS-1200 modem with a BB51 port and realized
that I couldn’t get much speed out of this hardware, and it was impossible to communicate
with the BBS. Time has passed. Before temporarily leaving Speck, I
hinted to V.M.G. (to our hardware guy) about connecting haes. What was needed was just this diagram of connecting
Haes to Speckon 2 microcircuits. Which is what G. Shepelev was the first to do here in Kharkoy. He even had software, and I even managed to buy this floppy disk (the price was a gimmick, but...), although I had never bought software. Well, later such cool men as Vic and Disa appeared and brought it to mind. I mean the software for this
scheme (by the way, the hardware has been tweaked a little).
This is briefly about your hint about soapers on Spec...
AI> many, including me
AI>, climbed the BBC quite fully.
What software? Which gland? Previously - what year?
From Alex Noman → To All 30 January 1999
Friday January 29, 1999 10:43, Evgeny Milun wrote Vova Bakum:
EM> Why? Well, explain to me - why? Why make mutants first and then “lick” them? After all, there have been normally working
EM> circuits for a long time? Or do you absolutely need your own, even if it’s crooked?
Come on. :) If he can lick it - good, no - the circuit will die. How
AU-mouse died. It’s just that no one supported this glitch programmatically. Thank you RML for guiding
everyone on the right path. ;)))
EM> 4) A request for processing via IM2
EM> is accompanied by the setting of a processing vector. And this means that
EM> relocability is lost - the vector is specified by the piece of hardware.
Yes, just the low byte of the vector. :)
By the way, what about the relocatability of handler im2 in your programs? Or is your data bus unstable? ;)))
EM> Good luck! Evgeny.
With respect, Alex Noman.
From Alex Noman → To All 30 January 1999
EM> What trigger? Why did he surrender to you?
I don’t even ask anymore. :) I just sit quietly and listen. :))) Here someone else is catching some kind of buffer. This is where imagination has no limits :(
EM> 2AN: I have a feeling that it’s just that none of the defenders of IM2
EM> have implemented the Kondratiev scheme correctly. Naturally, they don’t like NMI
EM> - the scheme is buggy...
But remember our (Samara) spektrumists. How much did they suffer? Rostovets and
haven’t connected it yet :( HMI is a delicate thing. ;)))
From Alex Noman → To All 30 January 1999
VB> This is not a fact. But we need to check... Everyone will write differently.
Yes, there is no difference in the dosa. Just pieces of ROM are used. :)
VB> Good Bye, Alex! With best wishes, Vova Bakum aka (R)soft.
With respect, Alex Noman.
From Alex Noman → To All 30 January 1999
VB>> this will allow _at all_ not to lose a single byte that came from the
VB>> line.
EM> 1) If you are not crooked, and you have correctly implemented the file
EM> protocols, then the situation is when there is a reception and you need to write something to the
EM> disk - never at all will not appear.
Exactly. Almost all file protocols pay attention to this. Especially in the Z-modem...
EM> 2) What does “not slow” mean? I
EM> already wrote, at a speed of 33600 you have only ~50-60 clock cycles.
Again, EM and I have differences in calculations. ;)))
From Alex Noman → To All 30 January 1999
VB> we need to talk about this in ZX.HARDWARE.
Forward, if anything interesting happens. :)
AN>> HMI can also be prohibited. There is a key. In cycles, naturally, longer
AN>> than DI. :))
VB> :) I understand. But this is the same as removing (as I am currently doing
VB> ;) interruptions with ULA. ;)
Where did you get Yulu and what does it mean to “remove interruptions”? :)
VB> The thing is that I saw this in demos a long time ago. So, while
VB> playing music from the disk, the
VB> data for the next part of the demo was pumped up very slowly. Well, you understand what I mean...
Doesn't this make you think? If there are interruptions from the modem, writing to the disk will also slow down. Here you need to choose between loss of data from the modem and slowdowns during recording. :(
AN>> and time tracking, albeit with errors, is possible,
From Vova Bakum → To All 30 January 1999
[skip]
VK> I was thinking: but in trdos there are EI commands... Although
VK> if you turn on IM1 before trdos
VK>, then it’s probably not scary.
VK> In general, INT is better. It will be completely wrong if, in the presence of
VK> IRQ from the modem and INTA
VK> from the D0 processor, you put it on the ground. In order to slip another interrupt vector
VK> (#FE) onto the
VK> bus, so that the processor goes to take a byte from the modem. And
VK> on vector #FF keep
VK> a standard ticker.
This is exactly the best solution so far.
For now, but this is not the last idea. Let's think. ;)
Good Bye, Valerij! With best wishes, Vova Bakum aka (R)soft.
From Vova Bakum → To All 30 January 1999
VB>> I'm confusing.
AN> Glitches in the subject are due to the fact that the author forgot to click a key somewhere
AN>. HMI here
Why think about the fact that you have to click some kind of key?
AN> has nothing to do with it. And for those whose NMI is still buggy, this only means
AN> that Kondratieff’s circuit
AN> was assembled incorrectly. ;)
I can agree with this, you just need to first make
working hardware, and preferably not with crooked hands. And
then write serious programs. Otherwise, it turns out that
the hardware is defective, and a lot of time and effort have been spent on the software
and in order to rewrite it for new hardware, it’s better to write
again. That's why I'm not in a particular hurry... not even afraid that they will get ahead of me.
Good Bye, Alex! With best wishes, Vova Bakum aka (R)soft.
From Vova Bakum → To All 30 January 1999
DD> With the right interrupts, it’s easy. Well-written
DD> protocols for receiving/transferring files are well within this
DD> speed, and the overwhelming
Well, get me a 33600 int modem for a while to check.
At least for one day.
DD> number of BBSes operate in “page” mode, i.e. if
DD> even the output to the screen
DD> does not keep up with the modem, during pauses between
DD> pages everything will catch up just fine.
I agree.
DD> ps: I personally am not satisfied with either NMI or mixed INT. nada
DD> 8259, on which to hang the original INT, modem, VG93 (she
2All: Here's a new idea for you! ;)
DD> seems to be possible), CMOS clock (why bother constantly climbing to them?
DD> let them climb on their own :) . Then everything will be OK, and the work will work
Theoretically, it will rule, but this is again special. piece of hardware, which
not everyone has.
DD> with a disk, without losses from the modem, etc. (but I'm afraid
DD> such a load of interrupts will drive the z80 into a deep
DD> stack hole ;)
Anything can happen... ;)
I'll need to talk to you about the int circuit. I'll write
in netsoap.
Good Bye, Denis! With best wishes, Vova Bakum aka (R)soft.
From Evgeny Milun → To All 30 January 1999
Thursday January 28 1999 00:33, Valerij Kozhevnikoff ─── Kirill Frolov:
KF>> then your stack will run out. I don't have this, but it happens. Against this, you can
KF>> use a free trigger from the Kondratieff circuit, but INT is still
KF>> better.
VK> I was thinking: after all, trdos has EI commands... Although if you turn on IM1 before trdos
VK>, then it’s probably not scary. In general, INT is better.
You, I hope, remember that with IM1 the handler address is ALWAYS fixed? In
this case, what does your phrase “in general INT is better” mean?
VK> It will be completely wrong if, in the presence of IRQ from the modem and
VK> INTA from the D0 processor, you put it on the ground. In order to slip another
VK> interrupt vector (#FE) onto the bus, so that the processor goes to take a byte from the moden. And on the vector
VK> #FF keep the standard ticker.
As they say in one currently popular program - “Guess”. Write a terminal, and we will compare it with those that use NMI. :)
From Evgeny Milun → To All 30 January 1999
Bpppp... I don’t understand you at all... Absolutely. Correct me if I'm wrong, but asynchronous I/O should have maximum
priority (I'm already tired of talking about the possibility of banning them...). By default.
This (maximum possible interruption priority) follows from the very
concept of “asynchronous input/output”...
And your words for me personally look like... like... well, I don’t even know...
something like “why is the water not dry, but wet? It’s a mess, we need to urgently
redo it.” :))
From Alex Noman → To All 31 January 1999
VB> I can agree with this, you just need to first make
VB> obviously working hardware, and preferably not with crooked hands.
This is what we are telling you about. You proposed a scheme - develop the idea. ;) If everything turns out to be simpler and more reliable than in the MK version, the people themselves will support the scheme with software.
VB> And then write serious programs. But it turns out that
VB> the hardware is defective, and a lot of time and effort was spent on the software
VB> and in order to rewrite it for new hardware, it’s better to write
VB> again.
This is only true for fundamentally different connection schemes. For example, the Kharkov version without the use of interruptions. In other cases, rewriting
software is a matter of 10 minutes. ;)
VB> That's why I'm not in a particular hurry... not even afraid that they will get ahead of me
VB>.
But there may be another reason for the rush. :(
VB> Good Bye, Alex! With best wishes, Vova Bakum aka (R)soft.
With respect, Alex Noman.
From Alex Noman → To All 31 January 1999
fifo-buffer. ;)
DD>> number of BBSs operate in “page” mode, i.e. even if the
DD>> output on the screen does not keep up with the modem, during pauses between
From Vova Bakum → To All 31 January 1999
EM> 2AN: I have the feeling that simply none of the
EM> IM2 defenders have implemented Kondratiev’s
EM> scheme correctly. Naturally, they
EM> NMI don't
EM> like it - the circuit is buggy...
:))))) This is worse than the joke about Georgians and Armenians...
I have _never_ connected a modem using this circuit. And I’m not going to...
And you don’t have to write what you feel or what you think.
You just have to be realistic. And the problem with ints... I think it will soon
be resolved. Towards INT or NMI? Let's see...
I think people will say themselves...
Good Bye, Evgeny! With best wishes, Vova Bakum aka (R)soft.
From Vova Bakum → To All 31 January 1999
AN> Come on. :) If he can lick it - good, no - the
AN> scheme will die. How
AN> died AU-mouse. It’s just that no one supported this glitch programmatically.
AN> Thank you RML for guiding
AN> everyone on the right path. ;)))
The idea of an AU-mouse was good, but it didn’t work because there was already a mouse - Kempston Mouse. Moreover, it was an international
standard. When this scheme appeared, I already had a Kempston.
And I thought - why the hell do I need a second mouse? ;)
From Vova Bakum → To All 31 January 1999
AN> Remember our (Samara) spektrumists. How long did you suffer? But the Rostovite has not yet connected
AN>. :(HMI is a delicate thing. ;)))
:) Yes, especially when the data and address bus is connected to the modem with a half-meter wire, and it is soldered with a 200-watt stupid soldering iron.... ;) well and
something like that. And then they think that their bus is overloaded... :) they start attaching AP6, some other rubbish to the data bus... and complain that it is very buggy. ;)
From Vova Bakum → To All 31 January 1999
AN> Yes, you can contact me through EM. ;) But will he
AN> provide source codes from the future
AN> deme? :)))
I think I can get it here too, you just need to look hard and
ask around. Disu, RST shake... ;)
From Vova Bakum → To All 31 January 1999
EM> 1) Modem IRQ connected to NMI can be disabled in 3-4
EM> ways. Starting
EM> from the modem itself, and ending with closing the key in
EM> the Kondratiev scheme.
So what? Clicking a key? Well, well... I've already said everything about this.
EM> 2) If you are making a very, very simple terminal, then
EM> this will do. And if
EM> is more complicated, then you will need INT for a bunch of things and you will not
EM> have the
EM> ability to prohibit them only to prohibit interruption from
EM> the modem...
:) Nonsense. I'm not going to ban them at all, but about what I said earlier... it was for the old master scheme
- there's another idea. Without any switches or interrupt prohibitions.
From Vova Bakum → To All 31 January 1999
EM> 1) See above.
EM> 2) If you have a software clock (and not everyone has hardware clocks), you
EM> will simply have terrible conflicts when processing timer
EM> interrupts and interrupts
EM> I/O.
I don’t agree.
EM> 3) The interrupt priority system is completely absent.
EM> (Actually, (2) -
EM> is just a consequence of its absence)
Priority has nothing to do with it.
EM> 4) Request for processing via IM2 is accompanied by setting
EM> and the processing vector.
This is what the modem will do.
EM> And this means that relocatability is lost - the vector is set
EM> by the piece of hardware.
EM> 5) ... is that enough for now?
:) Enough is enough.
From Vova Bakum → To All 31 January 1999
AN> Move, and we will push. ;)
You know, sometimes I’m so lazy, well, just apathy and that’s all...
I spend my free time with a soldering iron with more pleasure than with a computer. And other problems, work, etc. Oh well... I'll take my time studying. I no longer have the same passion and zeal as I had 5 years ago. But I still don’t want to abandon the project I started, like I abandoned the others that were not brought to fruition.
Good Bye, Alex! With best wishes, Vova Bakum aka (R)soft.
From Vova Bakum → To All 31 January 1999
EM>> protocols, then the situation when there is a reception and something needs to be
EM>> written to a
EM>> disk - it will never appear at all.
AN> Absolutely right. Almost all file protocols
AN> pay attention to this. Especially in the Z-modem...
I know that. I just have an idea to speed up the modem in such a way that it does not wait for a flop, but continues to download the file while recording. This can be done if you can make the DOS work with IM2.
From Denis Dmitriev → To All 31 January 1999
Once on 29 Jan 99 at 10:46:00 comrade Evgeny Milun noticed comrade EM> 2AN: I have the feeling that simply none of the IM2 defenders have implemented Kondratiev’s
Kirill Frolov about
EM> scheme that's right. Naturally, they don’t have NMI
From Denis Dmitriev → To All 31 January 1999
Kondratiev's NMI scheme itself is also a new piece of hardware, and if it
contained 8259, such questions would not have arisen. This scheme was just created
a long time ago, when no one needed any interruptions...
With the best, Vova!
From Andrey Isaev → To All 31 January 1999
VB> :))) I've already heard about this... from dummies. I don’t want to say that you’re a dummy.
Well, thank you.
VB> It’s just that when connecting, some modems display
VB> not the line speed, but the _port_locking_ speed.
Well, come on, you will teach me what modems produce and when!
so that you know usr33600 on ati6 seems to write after connection the _real_ speed
of the connection.
VB> Believe me, I
VB> notice the difference between the speed of the connection at 19200 and 57600.
I sympathize.
VB> And with you don't need to think about such perversions. The bytes
VB> automatically end up in the receive buffer.
VB> What now?
And with NMI they don’t end up there?
From Denis Dmitriev → To All 1 February 1999
AN> Mutant. Sachs even theoretically. You will need to forget about many things that
AN> are used to using. :(
What, for example? The old INT will remain the same, except that it will be impossible
to emulate an unstable data bus :)
But many of the opportunities that will appear will allow you to do more
powerful things in working with peripherals than is being done now.
I am thinking about a problem like games with a connection via a modem. Already here
there are troubles with playing background music - if INT and NMI
arrive at the same time, then INT is not processed at all :(
An interrupt controller that sets vectors for IM 2 on the bus (it seems to be able to do this) allows you to avoid such troubles. Plus, it will be elementary
to work with the disk together with background music and the work of the main
program (effects, etc.) .
And the circuit itself, I think, will not be much more complicated than connecting the same CMOS
clock.
There are, of course, also disadvantages - after turning on the power (in fact, after reset)
it is necessary to initialize the controller to work with INT (it is enough to
initialize just once after turning on the machine), which will require
reflashing the ROM But once you do this, you can forget about this trouble.
C. best, Alex!
From Evgeny Milun → To All 1 February 1999
I don't understand. Let's break it down point by point.
1) For normal operation of this music, its handler is called 50 times per
second. And, here, the modem is at least 2400. Do you feel the difference? 48 times! How much
everything will slow down, imagine?
2) Where does this music “hang”? During interruptions, i.e. periodically interrupts the operation of TR-DOS procedures. So ? So. Have you ever seen the TR-DOS disassembly? What procedures are there? That's right - those that cannot be interrupted (for example - procedures for writing/reading a data array to/from the VG93 data register). How is this
achieved? That's right - with the DI command. What will you get from this? That's right -
the byte that arrived during the execution of such a procedure will be lost.
Conclusion? The conclusion is simple - on a Spectrum PC you will not be able to combine reception/transmission of bytes and reading/writing to disk. Because its disk drive controller is designed this way...
The question following from the conclusion is - is it worth reinventing the wheel if
your scheme is no better in terms of byte loss than Kondratieff's?
VB>>> of working with DOS under IM2, then this will allow _not_ at all
VB>>> lose
VB>>> not a single byte coming from the line.
AN>> Maybe. Although this is practically unrealistic.
VB> Well, why? Interrupts are not prohibited, which means the
VB> modem can send a byte to the buffer at any time. Well, etc.
Read above...
AN>> This is exactly the point. The program will work with int, but you can completely forget about
AN>> the direct purpose
AN>> of int or anything else. Let's say
AN>> in the program you need to take into account
AN>> time to calculate the CPU.
VB> It was this problem that worried me. :)
Then forget about it - if you hang IRQ4 on IM2, then there can be no talk of any other
application of IM2.
From Evgeny Milun → To All 1 February 1999
Saturday January 30 1999 12:12, Alex Noman ─── Vova Bakum:
EM>> 1) If you are not crooked, and you have correctly implemented the file
EM>> protocols, then the situation is when there is a reception and you need to write something to
From Evgeny Milun → To All 1 February 1999
Friday January 29 1999 19:32, Vova Bakum ─── Andrey Isaev:
AI>>>> It’s easy: if you don’t know, then the Kondratiev scheme provides
AI>>>> disabling interrupts.
VB>>> And the bytes that arrive from the line go to nirvana?
AI>> what to do.
VB> I want to make sure that this doesn’t happen. And this can be done.
On the Spectrum - it is impossible. Now, if you change its architecture and introduce RDP, then it’s easy. And now - in no way.
VB> Until I decide on the hardware, I won’t write anything specific. For the
VB> test, the terminal suits me.
What does it do for you? That's when your terminal can compare its pi...
sorry... capabilities with at least my S-Terminal v0.1, then you can
talk about "everything works fine." :)
VB> Yes, it is protocol-free, but that’s it for now. A
VB> mailer, if there is one, will be a separate program. However, like the
VB> program for supporting voice mode.
Oh, don’t say “gop”...
From Vova Bakum → To All 1 February 1999
EM> Bpppp... I don’t understand you at all... Absolutely.
[Response sent to NETMAIL]
Good Bye, Evgeny! With best wishes, Vova Bakum aka (R)soft.
From Vova Bakum → To All 1 February 1999
VB>> write
VB>> again.
AN> This is only true for fundamentally different
AN> connection schemes. For example,
I agree, even if Disa had allowed me to redo a couple of procedures for int in his Melon, then yes... I agree,
in principle there is nothing to redo there. ;)
AN> Kharkov version without using interrupts. In
AN> other cases, rewriting
AN> software is a matter of 10 minutes. ;)
I agree.
Good Bye, Alex! With best wishes, Vova Bakum aka (R)soft.
From Vova Bakum → To All 1 February 1999
DD> The Kondratiev circuit with NMI itself is also a new piece of hardware, and
DD> if it contained 8259, such questions would not have arisen.
DD> This circuit was just created
DD> a long time ago, when no one needed any interruptions
DD> there was...
And Shepelev’s circuit? (by the way, he is now a node, I don’t remember which one)
Why was there no int there? Kondratiev's scheme came to us later. That’s why it didn’t develop here (in Kharkov). I assembled it according to Shepel's Scheme. And everyone else too.
Good Bye, Denis! With best wishes, Vova Bakum aka (R)soft.
From Vova Bakum → To All 1 February 1999
AN> A day may not be enough. You forget about writing a
AN> handler using a
AN> fifo-buffer. ;)
It is already present in my modem. Now we need to manage to find a modem without a fifo buffer. Is it just an old modem for 1200 or 2400 on port 8250? I have one like this (given as a gift;). And modern modems all have a fifo buffer.
From Evgeny Milun → To All 2 February 1999
EM>> 1) The modem IRQ connected to the NMI can be disabled in 3-4 ways.
EM>> Starting from the modem itself, and ending with closing the key in the Kondratieff
EM>> scheme.
VB> So what? Clicking a key? Well, well... I've already said everything about this.
Me too. The modems themselves, for your information, are designed so that their interruptions can be prohibited. Take a closer look at the interrupt control registers and the line control register (that’s what it seems to be called).
And I already wrote to you about clicking the key yesterday - FORGET. The very circuit
of the ZX-SPECTRUM computer will not allow you to “not click”.
EM>> 2) If you are making a very, very simple terminal, then
[.....]
VB> :) Nonsense. I'm not going to ban them at all, but about what
VB> I said earlier... it was for the old master scheme
VB> - there is another idea. Without any switches or interrupt bans.
See above + my letters from yesterday.
VB>>> If you write (non-braggy) procedures for working with DOS under IM2, then this
VB>>> will allow _at all_ not to lose a single byte coming from the line.
From Evgeny Milun → To All 2 February 1999
VB> :))))) This is worse than the joke about Georgians and Armenians...
VB> I _never_ connected a modem using this scheme. And I’m not going to...
VB> And you don’t need to write what you feel or what you think.
Hmmmm... What could we do without this? :))) You vehemently attack the NMI scheme,
and you yourself, nevertheless, have not even dealt with it.
From Evgeny Milun → To All 2 February 1999
VB> Ty, so any others are syst. interruptions. And I can ignore them at
VB> at any time. However, just like with a modem. ;)
I'm afraid you still don't understand the meaning of the phrase "interruption precedence". This does not mean that _YOU_ will ignore it, it means that _PROCESSOR_ will
ignore it. Do you see the difference? :))
From Evgeny Milun → To All 2 February 1999
VB> I know that. I just have an idea to speed up the z-modem specifically
VB> in such a way that it does not wait for the flop, but continues to download the file
VB> during recording.
1) To do this, you need to implement DDP on the spectrum.
2) The ZModem protocol allows you to increase the speed using only pure
program methods (though, I repeat, this requires that If only the programmers
were not crooked hands...).
VB> This can be done if you can make the DOS work with IM2.
This can be done with a bunch of software solutions, using only the capabilities
of ZModem itself...