Advices
ZXNet echo conference «real.speccy»
From Dmitry Pavluhin → To All 18 June 1999
There are several proposals for NeOS:
1. Make it possible to replace any drivers and devices. That is,
I soldered myself, say, a PS keyboard controller and hung it on
some of my own ports, wrote a driver for it, installed it,
and after that any calls to the keyboard went through my
driver - I press the buttons and am happy :).
2. I wanted all the programs to work not in the Spekov screen, but, for example, in 512 x 192. I wrote a driver and connected it.
After that, everything started working on my screen.
In short, the point is the following - to make it possible to replace any
drivers, devices (from ROM) on the go, with external ones. So that
programs that previously worked with ROM drivers do not notice the substitution. If this is already implemented, then chew on how it’s done -
system help does not provide programming examples.
Sincerely, Dmitry.
From Roman Petrov → To All 20 June 1999
On Friday June 18 1999 Dmitry Pavlukhin wrote to Roman Petrov:
DP> 1. Make it possible to replace any drivers and devices. That is,
There is such a possibility.
DP> 2. I wanted all the programs to work not in the Spekovsky
DP> screen, but, for example, in 512 x 192. I wrote a driver and connected it.
This is also possible. All graphical functions have been moved to the library.
DP> programs that previously worked with ROM drivers are not replaced -
DP> system help does not provide programming examples.
There is only a problem with disabling ROM drivers. It works out, but with
small perversions.
Bye, Dmitry! Megus/Brainwave^X-Project. [ZX] [NeOS] [LMDF!]
From Valentin Pimenov → To All 21 June 1999
DP> After that, everything began to smell on my screen.
Imho, this would be problematic in HeOS. Everything in the kernel is already tailored for a standard screen. If the program uses those points, then the extended ones - fall off! And if he doesn’t use it, then why the hell are these points needed? :) In short, the most common Spectrum model is encapsulated in the kernal
+- All the best, Dmitry!
|I was with you
|Valentin Pimenov aka Valker/Style_Group
+---------------
From Valentin Pimenov → To All 21 June 1999
RP> There is only a problem with disabling ROM drivers. It works, but with
RP> minor perversions.
When the number of such problems, and especially their perverted workarounds
exceeds a critical mass, imho, the system will cease to be
effective enough while maintaining its flexibility, or
will cease to be flexible while maintaining its effectiveness.
+ - All the best, Roman!
From Dmitry Pavluhin → To All 23 June 1999
DP>> programs that previously worked with ROM drivers are not replaced -
DP>> system help does not provide programming examples.
RP> There is only a problem with disabling ROM drivers. It works out, but with
RP> minor perversions.
From Roman Petrov → To All 25 June 1999
VP> When the number of such problems, and especially their perverse workarounds
VP> exceeds a critical mass, imho, the system will cease to be
VP> sufficiently effective while maintaining its flexibility, or
VP> will cease to be flexible while maintaining its effectiveness.
So it seems there are no more perversions, except for location restrictions disk
drivers (in lower memory).
Bye, Valentin! Megus/Brainwave^X-Project. [ZX] [NeOS] [LMDF!]
From Roman Petrov → To All 25 June 1999
DP> Is it possible to go into more detail, preferably with examples of programs (at least small
DP> ones). Still, the authors must have a good understanding of their brainchild.
So, I won’t write a program now, but I’ll explain the technology. If you need a program -
let's go to the soap.
The technology is this: the address of the beginning of the driver chain is reinstalled
(initially points in ROM) to the address in RAM. In accordance with the original chain
a new one is built (the names of the drivers and their flag bytes are saved). And instead of the
drivers themselves, JPs are placed in RAM at ROM addresses. Thus, we get
the opportunity to disable ROM drivers using standard driver removal functions.
In most cases, you won’t have to do such perversions, because many drivers
are very standard, but in the case of keyboard, when you want to disable the standard one and
enable the new one; mouse and possibly some other drivers, you may have to use this perversion. Although there is another option: make your drivers
standard in the installer :) True, there is no installer yet :)
From Dmitry Pavluhin → To All 26 June 1999
VP> Imho, in HeOS this will be problematic. There, already in the kernel, everything
VP> is tailored for a standard screen. If the program
VP> uses those points, then the extended ones - fall off! And if he doesn’t use it, then
VP> why the hell are these points needed? :) In short, the most common Spectrum model is encapsulated in the kernal
VP>.
If this is not possible, then it’s a shame. The simplest thing that can happen is that tomorrow someone will get a video card for Speck and everything
that has been developed for NeOS will not work on it.
Sincerely, Dmitry.
From Dmitry Pavluhin → To All 26 June 1999
But there is no need to directly “save” it into memory - in my opinion, this contradicts the concept of such a system. Example - Amiga. Old programs
directly accessing the chipset do not work with new video cards.
Sincerely, Dmitry.
From Dmitry Pavluhin → To All 27 June 1999
RP> The technology is this: the address of the beginning of the driver chain
RP> is reinstalled (initially points to ROM) to the address in RAM. In accordance with the original
RP> chain
RP> a new one is built (the names of the drivers and their flag bytes are saved). And
RP> instead of
RP> the
RP> drivers themselves are placed in RAM by JPs at ROM addresses. Thus, we get
RP> the ability to disable ROM drivers using the standard
RP> driver removal functions.
“...I understand everything, boss...”. There are no questions about this. However, this is somehow a pain in the ass (more precisely, not a problem, but does not correspond to the concept of the system (as
I understood it)). Could it be possible to remove the drivers from the ROM? Those. during the initial
initialization (when turning on the computer), perform actions similar to those described by you, but with the only difference that the drivers themselves would be transferred from ROM to RAM. I understand that this is not a very beautiful option, but it would be
more flexible (followed by a pleading emoticon).
Sincerely, Dmitry.
From Roman Petrov → To All 28 June 1999
On Sunday June 27 1999 Dmitry Pavlukhin wrote to Roman Petrov:
DP> "...I understand everything, boss...". There are no questions about this. However,
DP> it’s somehow crap (more precisely, it’s not crap, but it doesn’t correspond
DP> to the concept of the system (as I understood it)). It was impossible to remove the drivers
Such perversions will rarely be required, only when you want to replace the driver
temporarily. If you will constantly use a driver, then
it is better to flash it into ROM.
DP> the difference is that the drivers themselves would be transferred from ROM to RAM. I understand
DP> that this is not a very beautiful option, but it would be more flexible (followed by
DP> is a pleading emoticon).
You can, in principle, do it this way...
Bye, Dmitry! Megus/Brainwave^X-Project. [I ZX] [NeOS]
From Alex Letaev → To All 28 June 1999
DP> come on - tomorrow someone will give birth to a video card for Speck and everything
DP> that has been developed for NeOS will not work on it.
Even from another point of view, people have a bunch of graphic
modes, Pentagon 512, Pro mode, ATM mode, etc. If they are supported at least somehow, it won't be bad. But this should only be done if programs that can work in these modes will
have a mandatory default rollback to standard mode.
With respect, Alex from FFC COMPUTERS.
>E-MAIL: asde...@softhome.net ICQ: #13064553
From Valentin Pimenov → To All 29 June 1999
RP> So, it seems there are no more perversions, except for restrictions on the location of disk
RP> drivers (in the lower memory).
Imho, (I repeat) the perversion is the question of forming kernal points according to the type “whoever needs what, we’ll stuff it in.” In my opinion, the kernel
should contain, if possible, the _minimum_number_of_entry_points_
and all extensions should be implemented not by adding new
entry points, but by using external libraries _loaded_into_RAM_!
How many points are there now???
Imho, more than 30 - unnecessary.
From Valentin Pimenov → To All 29 June 1999
RP> drivers in RAM are placed JP's on ROM addresses. Thus, we get
RP> the ability to disable ROM drivers using the standard
RP> driver removal functions.
From Valentin Pimenov → To All 29 June 1999
DP> But there is no need to directly “save” it into memory - in my opinion, this contradicts the concept of such a system. Example - Amiga. Old programs
DP> that directly access the chipset do not work with new video cards.
I'm talking about the same thing. Who uses the functions “address of the next
line”, “address of attributes by pixel address :) “???
An ordinary program cannot use them, since the screen is, in theory, a resource
encapsulated in the screen driver and all changes on it
should be made by this driver. If so, then it is not clear why these points are in the kernal? After all, _only_ the driver
uses them and there is nothing to add them there.
+ - All the best, Dmitry!
From Roman Milukov → To All 30 June 1999
Hello, Roman!
Mon 28 Jun 1999 you wrote here:
RP> temporarily. If you will constantly use any driver, then
RP> it is better to flash it into ROM.
Is it possible to have TWO screen drivers in ROM so that either one can be called without problems?
(And the second font can be loaded if everything won’t fit into ROM...)
From Roman Petrov → To All 1 July 1999
On Tuesday June 29 1999 Valentin Pimenov wrote to Roman Petrov:
VP> If my driver creates more than 26 logical devices,
VP> or there are more than 26 drivers loaded, then either we
Hmm... Sorry, but where can 26 devices be useful??? Although, if you think about it, then
theoretically it is possible to support 256 devices (limited by one byte).
VP> Just a quick question: why only 26??? What does the letter
VP> of the Latin alphabet have to do with it???
Are you suggesting a few letters? There was an idea, but it temporarily disappeared... The system will be
improved.
VP> And if the graphics library is monochrome, what address will you
VP> substitute as the attribute address???
See. previous message. There I hope I answered your questions about the graphic
driver.
VP> How many points are there now???
60, if I haven’t miscalculated :)
Bye, Valentin! Megus/Brainwave^X-Project. [I ZX] [NeOS]
From Roman Petrov → To All 1 July 1999
RP>> drivers in RAM are placed JP's on ROM addresses. Thus
RP>> we get the opportunity to disable ROM drivers with standard
VP> Explain, please, what is the point of flashing drivers if they can be used with the same
VP> from RAM??? On top of that, the problem
VP> of updating driver versions is eliminated.
There are drivers that must be present in the system
_immediately_. For example, this is a disk device and file system driver.
From Roman Petrov → To All 1 July 1999
DP>> contradicts the concept of such a system. Example - Amiga. Old
DP>> programs that directly access the chipset do not work with new
VP> I'm talking about the same thing. Who uses the functions "address of the next
VP> line", "address of attributes by pixel address :) "???
We use it sometimes :) If there is, then why not give them to the user? You just need to
note that they work only in 256x192.
VP> You can’t use them with a regular program, since the screen is, in theory, a resource
VP> encapsulated in the screen driver and all the changes on it
Yes, I agree, but on the Spectrum, unfortunately, system methods (i.e.
via drivers) are fast and effective working with the screen cannot be achieved :(
That's why _YET_ the standard is 256x192. In the next versions, multitasking will appear, and then working with the screen directly is simply contraindicated,
that's why it's there that all the action will take place through driver.
From Dmitry Pavluhin → To All 1 July 1999
AL> Yes, even from another point of view, people have a bunch of graphic
AL> modes, Pentagon 512, Pro mode, ATM mode, etc. If they
AL> are supported at least somehow, it won’t be bad. But it is worth doing this only
AL> in
AL> if programs that can work in these modes will
AL> have a mandatory default rollback to the standard mode.
You did not quite understand my point. The program should not know which graphics mode it should work with. Her job is to access the functions of opening a window, draw frames, draw buttons, display inscriptions and do her work, but only through the functions of the system. And in what mode/resolution it is visible on the screen, this is no longer a problem for the program and its author. Also with color
- if the graphic mode allows you to draw color pictures - then
draws, and if the program tries to display a 16-color image in
512 x 192 monochrome mode, then it is up to the system to draw it all in mono-
chrome or in chunks or through deuteration.
Therefore, there is no need for any rollbacks to the standard mode, you just need
EVERYTHING to be done through system calls, without direct calls to the iron. And then
terrorize the authors of the system by shouting that your program works in all graphic modes except Pentagon 512x192 and that this is not at all in order :-[ ].:-))).
Sincerely, Dmitry.
From Alex Letaev → To All 3 July 1999
DP> Therefore, no rollbacks to standard mode are necessary, just
DP> you need
DP> EVERYTHING must be done through system calls, without direct calls to the hardware. A
Probably I didn’t express myself correctly, everything is clear with the program, it works
through the system, and in the case of the absence of a driver, the system should have a
default driver built in, and if anything happens, it rolls back to it.
From Roman Petrov → To All 3 July 1999
On Wednesday June 30 1999 Roman Milukov wrote to Roman Petrov:
RM> Is it possible to have TWO screen drivers in the ROM, so that any
RM> can be called without problems? (And the second font can be loaded if everything
RM> won’t fit into the ROM...)
It’s possible. The switch is done in the following way:
open the desired library and enter the received data into the appropriate
variables.
Bye, Roman! Megus/Brainwave^X-Project. [I ZX] [NeOS]
From Valentin Pimenov → To All 4 July 1999
RP> Yes, I agree, but on the Spectrum, unfortunately, using system methods (i.e.
RP> through drivers) fast and efficient work with the screen cannot be achieved
RP> :(
Why is this??? And if you use a graphics library???
Calling the library is equivalent in time to CALL.
RP> Therefore _YET_ the standard is 256x192. In the next versions,
RP> multitasking will appear, and then working with the screen directly is simply
RP> contraindicated,
RP> so that’s where all the action will take place through the driver.
And all the unwritten programs at this point will fall off. themselves (i.e. they
will have to at least be recompiled and redistributed
to users).
+ - All the best, Roman!
From Valentin Pimenov → To All 4 July 1999
RP> Hmm... Sorry, but where can 26 devices come in handy??? Although, if
RP> you think about it, then
RP> it is theoretically possible to support 256 devices (limited by one byte).
If you think about it, you can support the number of devices limited
by the physical memory of the computer. Why might this be needed?..
1. testing the system “in harsh conditions”.
2. for example, on a local network, the disks of all computers connected to the
network. What will you call them to access them from the
user program.
From Valentin Pimenov → To All 4 July 1999
RP> There are drivers that absolutely must be present in the system
RP> _immediately_. For example, this is a disk device and file system driver.
I don’t think anyone will argue with this. But I don’t see any reason to load them
from ROM, instead of loading them along with the entire system image (and
loaded drivers/libraries/programs) from
a floppy disk/screw (except for speed, of course).
From Dmitry Pavluhin → To All 4 July 1999
Why build a fence today if we will tear it down tomorrow? It’s okay to do, to do like this
all right. And if some program needs all the resources of the computer and it
cannot afford such luxury as accessing through drivers, then for
this it can turn off the entire system in RAM and work directly with the hardware.
And in general, for demos and cool games you can leave TR-DOS, I think you can
leave it and not erase it from ROM :-)).
Sincerely, Dmitry.
From Dmitry Pavluhin → To All 4 July 1999
VP> must produce this driver. If so, then it is not clear
VP> why these points are in the kernal? After all, _only_ the driver and
VP> uses them and there is nothing to add them there.
You give in NeOS 2.0 only an analogue of the Amiga EXEC in ROM :-[ ], :-).!!!!!!!
But seriously, then:
There is a proposal to the authors: to install not only the drivers/libraries offered by the authors, but also those written by the user himself. And make the entire system machine-independent of Spectrum. All this is needed for the following: in the country
there are still many people who are keen not only on Spectrum, but also on Specialist, Orion,
Vector. Many of these cars are already equipped with the Z-80. And if, thanks to HeOS, software compatibility between eight-bit platforms is achieved, then in my opinion no one will be offended. And such universality fits perfectly into the ideology of the system. Moreover, plus we will get a bunch of friends from
other platforms, many of whom write programs themselves (and not bad ones, by the way).
Sincerely, Dmitry.
From Roman Petrov → To All 5 July 1999
RP>> (i.e. through drivers) fast and efficient work with
VP> Why is this??? And if you use a graphics library???
This means that it is impossible to achieve high efficiency in programs where graphics are used very actively and speed is needed _maximum_ (which
is achieved by using a stack), and using a stack in libraries is not the same. For system programs/utilities and the like, which are not particularly demanding on
graphics performance, library functions will be more than enough.
From Roman Petrov → To All 5 July 1999
RP>> There are drivers that absolutely must be present in the
RP>> system _immediately_. For example, this is a disk device driver and
VP> I think no one will argue with this. But I don’t see any reason to load them
VP> from ROM, instead of loading them together with the entire system image (and
VP> loaded drivers/libraries/programs) from a
VP> floppy disk/screw (except for speed, of course).
That is. are you proposing to move the OS into RAM?.. How many times have I already been offered this,
even KF suggested it, saying that they say that memory is not a pity, and then later he was indignant
that NeOS has little continuous memory...
From Roman Petrov → To All 5 July 1999
VP> If you think about it, you can support the number of devices limited
VP> by the physical memory of the computer. Why could this be
VP> 1. testing the system “in harsh conditions”.
Explain, please. Checking the system for stability?
VP> 2. For example, on a local network, the disks of all computers connected to the
VP> network. What will you call them to access them from the user's
VP> program.
Hmm, but here you might actually need more devices...
From Roman Petrov → To All 5 July 1999
On Sunday July 04 1999 Dmitry Pavlukhin wrote to Valentin Pimenov:
DP> You give in NeOS 2.0 only an analogue of the Amiga EXEC in ROM :-[ ],
Translate :) I’ve never seen the Amiga, so I don’t know anything about it.
DP> There is a proposal to the authors: make installation of not only drivers/libraries offered
DP> by the authors, but also those written by the user himself. And
So, what were you thinking? :) What is the installer written to? Why did I indicate the format of the driver libraries in the documentation? :) And one more thing, there is such an interesting idea. There may be drivers that require _mandatory_ settings before installation into the system (in ROM, that is). So, I myself won’t be able to keep track of all the drivers, so there’s this idea: make a set of functions to organize the settings (well, there’s a window to display, menus, etc.) of the drivers that the unit being configured can use. Now I'm translating into Russian :) If the driver requires some kind of individual preliminary configuration (for example, the Kempston Mouse driver may require detection of the left-right button, the Profi memory driver may require detection of missing pages), then We place the driver
not in the driver library, but in a special file with a specific format. This file contains a configuration procedure, written according to certain
rules, to which the installer provides some functions, withwith the help
the setting can be made convenient.
DP> they install Z-80. And if, thanks to HeOS, we get compatibility for
DP> software between eight-bit platforms, then
DP> in my opinion no one will be offended. And such universality
This idea exists and will exist :) I will _definitely_ consider the second version.
From Kirill Frolov → To All 6 July 1999
04 Jul 99 20:23, Dmitry Pavlukhin wrote to Roman Petrov:
DP> Imagine in a couple of years a Spectrum with a Z380 and a video card and you
DP> you will understand how such requests will end.
I can’t imagine.
Just imagine how easy this You can put a Z380 in the Spectrum.
And how easy it is to buy it... And most importantly - imagine the price,
in bucks it will be more than in megahertz.
And there is no point anyway - like in >386 there is no protected mode.
Therefore, the best option is to hide a Pentium inside the Spectrum and
emulate whatever you want on it Z80..180..280..380...
DP> Why build a fence today if tomorrow we will break it down?
So that all sorts of strangers do not walk here...
DP> Doing it, doing it like that is all right. And if some program needs all
DP> resources of the computer and cannot afford such luxury as
DP> access through drivers, then to do this it can turn off the entire
DP> system in RAM and work directly with the hardware. And in general, for demos and cool
DP> games you can leave TR-DOS, I think you can leave it and not erase it from the
DP> ROM :-)).
More likely, you even _need_ to leave it. And everything else makes sense to be placed in RAM ONLY. If you overclock the Spectrum further, then you won’t have enough high-speed
ROMs...
Kirill Frolov. [ZX]
From Valentin Pimenov → To All 6 July 1999
VP>> 2. for example, on a local network, the disks of all computers connected to the
VP>> network. What will you call them to access them from the user's
VP>> program.
From Valentin Pimenov → To All 6 July 1999
RP> This means that it is impossible to achieve high efficiency in
RP> programs, where
RP> graphics are very actively used and _maximum_ speed is needed (which
RP> is achieved by using a stack), and using a stack in libraries is
RP> is no longer
RP> that. For system programs/utilities and the like, which are not particularly demanding of
RP> graphics performance, library functions will be more than
RP> sufficient.
1. I don't see any difference between calling a point in the kernal and
calling a point in the libraries because both of them are implemented as "CALL"
in the user program (only the kernal is non-movable, and its
pointers, respectively, too, and library points
are configured once when opening the library).
2. The less you use the stack, the less problems you will have with multitasking.
From Valentin Pimenov → To All 6 July 1999
RP> That is are you proposing to move the OS into RAM?.. How many times have I already been offered this
RP>,
not to take it out, but to put it in :)
RP> even KF suggested it, saying that they don’t mind memory, and then later
RP> he was indignant,
RP> that NeOS has little continuous memory...
Yeah, me too I'll say the same thing. I propose to move not the entire OS, but a part (replaceable) - drivers/libraries/etc. and not into continuous
memory, but into page memory. We need to get used to working with distant
pointers. On the Spectrum you won’t be able to make progress without this.
From Artur Ishmurzin → To All 10 July 1999
DP>> system in RAM and work directly with the hardware. And in general, for
DP>> demos and cool games you can leave TR-DOS, I think you can
DP>> leave it and not erase it from the ROM :-)).
There’s nothing to think about here. trdos has been a de facto standard and will remain so. but
an alternative would not hurt, such as isdos or neos, but not tspm.
KF> More likely, even it _needs_ to be left. And everything else makes sense to make
KF> placed in RAM ONLY. If you overclock the Spectrum further, then
KF> you won’t have enough high-speed ROMs...
you install one Sojik at 512K with a battery - and no problems. connecting
it, IMHO, will not be difficult.
Best wishes, Artur. [ZX]
From Roman Milukov → To All 10 July 1999
Hello, Valentin!
Sat 3 Jul 1999 you wrote here:
RP>> Do you offer some letters? There was an idea, but it temporarily disappeared... The system
will
RP>> be improved.
From Roman Milukov → To All 10 July 1999
Hello, Kirill!
Tue 6 Jul 1999 you wrote here:
KF> placed in RAM ONLY. If you overclock the Spectrum further, then you won’t have enough high-speed
KF> ROMs...
Then you can install FLASH.
And then you can forget all the problems of flashing.
If you talk about the price, then they offered me 128 KB flash drives for $2.5.
From Kirill Frolov → To All 11 July 1999
KF>> Pentium and emulate on it whatever Z80..180..280..380...
AI> or maybe PPC right away?
And count the $$$. Spectrum is a CHEAP computer.
~~~~~~~
AI> There’s nothing to think about here. trdos was the de facto standard and will remain so
AI>. but an alternative would not hurt, like isdos or neos, but
AI> is not a cpm.
CP/M is a real operating system, you can run different
programs there. What can you do in is-dos? Texts to edit?
Don’t write nonsense. But there is no NEOS yet. And it won’t.
Or rather, NEOS will be, but there will be nothing there other than a pathetic attempt to remake the PC
Norton Commander.
It’s interesting in general the thinking of all the authors of all kinds of OSs, why they
want Norton Commander on the Spectrum, as if there is nothing better. Pisism...
AI> you install one sojik at 512K with a battery - and there are no problems.
AI> connecting it, IMHO, will not be difficult.
It is difficult to come up with a more crazy idea. If you install it, then the ROM is 2kb
with a download program. Everything else is in RAM from the screw. If there is no screw,
then you can put a flash drive a couple of meters away (yes, it stands like a screw!).
Well, where did you see the high-speed ROM? Yes, in the PC everything is copied to RAM to
increase speed, probably since 386.
Kirill Frolov.[ZX]
From Dmitry Pavluhin → To All 12 July 1999
AI> you install one Sojik at 512K with a battery - and there are no problems.
AI> connecting
AI> it, IMHO, will not be difficult.
Sojik, as far as I know, needs to be regenerated, so installing it
is not an option. In my opinion, at the moment the speed of ROMs is quite enough for many computer systems, why come up with various perversions?
Sincerely, Dmitry.
From Valentin Pimenov → To All 12 July 1999
KF> CP/M is a real operating system, you can run different programs there
KF>.
KF> What can you do in is-dos? Texts to edit?
KF> Don’t write nonsense. But there is no NEOS yet. And it won’t.
KF> Or rather NEOS there will be, but there will be nothing there other than a pathetic attempt to redo the PC
KF> Norton Commander.
real’ but I use is-dos to edit and print _large_ texts. + you can also stuff different zips, because... more disk than in tr-dos. Whoever has a PC nearby doesn’t need IS-DOS, because...
KF> It’s interesting in general the thinking of all the authors of all kinds of OSs, why they
KF> want norton-commander on the Spectrum, as if there is nothing better. Pisism...
"... and I’ll ask you not to hurt our bird!" (ts) ...
and in addition, do not generalize!
+-All the best, Kirill!
From Roman Petrov → To All 13 July 1999
VP> Yeah, I’ll say the same thing. I propose to move not the entire OS, but the
VP> part (replaceable) - drivers/libraries/etc. and not into continuous
VP> memory, but into page memory. You need to get used to working with distant
VP> pointers. On the Spectrum, without this progress it will not be possible.
Almost everything can already be put into pages, except perhaps for drivers for working
with disk/file systems.
From Roman Petrov → To All 13 July 1999
VP> 1. I don’t see any difference between calling a point in the kernel and
VP> calling a point in libraries because both of them are implemented as "CALL"
VP> in the user program (only the kernal is non-movable, and its
VP> pointers, respectively, too, and the library points
VP> are configured once when opening the library).
To call the library, you also need to switch pages, but to call the kernal -
no, hence the savings in the program (by the way, the graphics library in NeOS
can sit on any page).
VP> 2. The less you use the stack, the less
VP> there will be problems with multitasking later.
We know this very well :) IMHO, the two main problems with multitasking
are the following: working with the disk and restarting functions (the ability to access the same function from
different programs).
VP> ps/ explain, please, how to send you soap (maybe there is an e-mail).
There is an e-mail, but I rarely check it: bw_...@mail.ru
VP> Otherwise I’m on I threw out the fidosh address, so it was turned around on the way -
VP> it says “loop detected” :-/
Try again... What can you do, glitches in Fido sometimes occur. Loops have a
habit of disappearing.
From Roman Petrov → To All 13 July 1999
RP>> Hmm, but here you really might need more devices
RP>>...
VP> More than what???
More than 26 :)
From Roman Petrov → To All 14 July 1999
On 07/12/99 you wrote:
VP> real' but I use is-dos to edit and print _large_ texts
VP>. + you can also stuff different zips,
VP> because more disk than in tr-dosa. Whoever has a PC nearby
VP> does not need IS-DOS, because...
IMHO, they used iS-DOS only because there was no other alternative.
From Kirill Frolov → To All 14 July 1999
10 Jul 99 15:19, Roman Milukov wrote to Valentin Pimenov:
RM> I am afraid that due to the desire for “maximum flexibility” we will get
RM> another brake, and not a really functional AXIS. :( We need
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Or we won’t get one that works.
From Kirill Frolov → To All 14 July 1999
RM> Then you can install FLASH.
RAM+screw of the same volume was always cheaper.
Kirill Frolov. [ZX]
From Artur Ishmurzin → To All 14 July 1999
AI>> problems. connecting it, IMHO, will not be difficult.
KF> It’s hard to come up with a more crazy idea.
Let’s see what you came up with...
KF> If you install it, then a 2kb ROM with a loading program. Everything else in
KF> RAM is from a screw.
Is your idea, or something, brilliant?
KF> If there is no screw, then you can install a flash drive a couple of meters away (yes, it costs the same as a
KF> screw!).
flash drive for two meters?! how much will this cost? - Spectrum is a “_cheap_
car”. Whose words are these?
KF> Well, where did you see the express ROM? Yes, in the PC everything is copied to RAM to
KF> increase the speed, probably even from 386.
What does ROM have to do with it? I wrote about Sojiki (SOJ), i.e. PC video memory. I think
its speed will be enough for you...
From Roman Milukov → To All 14 July 1999
That's a PC, but we have a Spectrum. And on the Spectrum, the speed in ROM is still higher than in RAM. Simply because the screen is in RAM.
And instead of real ROM you can have both flash and cache...
From Kirill Frolov → To All 15 July 1999
12 Jul 99 19:55, Dmitry Pavlukhin wrote to Artur Ishmurzin:
DP> installation is not an option. In my opinion, at the moment the speed of ROMs in full
DP> is enough for many computer systems, why come up with different
DP> perversions?
And that’s why in my Spectrum only 150 new ROMs work, _WITHOUT_ turbo
mode...
Kirill Frolov. [ZX]
From Kirill Frolov → To All 15 July 1999
13 Jul 99 17:04, Roman Petrov wrote to Valentin Pimenov:
RP> To call the library, you also need to switch pages, but to call
RP> the kernel - no, hence the savings in the program (by the way,
RP> the graphics library in NeOS can sit on any page).
A screen on another page. This screensaver is called...
Kirill Frolov. [ZX]
From Valentin Pimenov → To All 15 July 1999
RP> We know this very well :) IMHO, the two main problems with
RP> multitasking
RP> are the following: working with the disk and restartability of
RP> functions (the ability of
RP> different programs to access the same function).
Roughly speaking, problem_1 is not a problem multitasking.
this is a Spectrum problem. If there is an extra-spectrum with
dma+interrupt controller, then this problem will not arise.
Problem_2 is officially called “reentrant” (from “re
enter”), i.e. this means that the code must ensure
that multiple occurrences of a single
function are executed correctly (for example, recursively). To prevent glitches, people usually reserve space on the stack for local variables each time a procedure is called, and the stack is cleared when it exits. That. The size of the stack becomes a critical parameter for the functioning of a multitasking system (ie, so that the stacks of different programs do not go beyond the limits). Plus,
_all_ local process stacks should be located in lower
memory, because a process's execution thread can move from
one page to another, and if the stack is in a page, it
will contain incorrect information :)
+-Good luck, Roman!
From Valentin Pimenov → To All 15 July 1999
RP> IMHO, they used iS-DOS only because there was no other alternative
RP>.
Incorrect remark. Tell me, please, why do so many people
use MS-Windows(tm)? Is there no alternative?
Is-Dos is still unrivaled on the Spectrum in terms of
text processing.
[skip]
RP> By the way, I don’t understand where KF saw NC in NeOS Commander??? The
RP> interface was made
RP> based on Directory Opus on the Amiga.
I like it. And who said “I’ve never seen an Amiga!” ?
By the way, how are things going with HeOS?
Is the installer ready?
Then I had an idea why few programmers
made programs under IS-DOS. Because all these documents/helps/articles in
Format are still quite vague. The Iskrasoft team needed to
release most of the programs in source form with detailed
comments. It’s no secret that it’s much easier to understand the logic of work this way than by formally listing entry points or describing the intricate data structures inside the system (a.k.a. vectors_in_isdos). Example of a printer driver, virus :), monitor
com.line and g_men.com does not count, becauseThese are very
primitive programs. Now, if only they opened filecopy.com, or
arzt+.com would be cool :)
You did you get the hint???
From Pavel Hoteev → To All 16 July 1999
I completely agree with this!
AI> hm.. I’m not arguing, but the CPM is not even yesterday, it’s the last
AI> century.
AI> just don’t say that Spectrum is not this morning either. here
AI> the difference is obvious - Spectrum is still developing, but the digital computer has been gone for a long time...
And here you are wrong! SR/M has developed and is developing in the form of MS-DOS!!!
don’t you really not know this???? and on the basis of SR/M such OSs as
RT-11 for PDP-11 (DVK, SM) were made... the most interesting thing, I believe, is that we will observe many features of
SR/M in NEOS... because the principles of constructing operating systems
for processors like Z80 ARCHITECTURE of its processor defines!!!
After all, no one will ever put MSDOS on KREI!!! it has its own operating system that allows you to use the processor resources at 100%! (parallelization of
processes!) and how will you parallelize processes in NEOS?? You will lose in
performance, although you can use context substitution,
fortunately there are two sets of registers in the network....
BUT IMHO, rather than writing again, repeating what has been done, and stepping on the same rake,
it is better to develop something that already works!
From Roman Petrov → To All 16 July 1999
KF> And the screen is on another page. This is called a screensaver...
Is the first screen located with #c000? Monarch, this is already insanity :) Who said
that it is necessary to shove the library into the page and work with the second
page? You already contradict yourself sometimes...
Bye, Kirill! Megus/Brainwave^X-Project. [ZX] [NeOS]
From Roman Petrov → To All 16 July 1999
On 07.16.99 you wrote:
AI>> just don’t say that the Spectrum is also not this morning. here
AI>> the difference is obvious - the Spectrum is still developing, but the digital computer has been gone for a long time...
PH> And here you are wrong! SR/M has developed and is developing in the form of MS-DOS!!!
On the Spectrum? They were talking about Specky.
PH> don’t you really know this???? and on the basis of SR/M such OS
PH> RT-11 for PDP-11 (DVK, SM) were made ... the most interesting thing, I believe, is that many
This is again not a Spectrum. On the Spectrum, CP/M is developed only on Pros, which
not everyone has.
PH> BUT IMHO, rather than write again, repeating what has been done, and stepping on the same
rake,
PH> it’s better to develop something that already works!
They could have developed it a long time ago, but they didn’t developed...
From Renat Mamedov → To All 16 July 1999
July 16, 1999, Roman Petrov writes to Pavel Hoteev:
[...]
PH>> WHY INVENT THE BICYCLE!!! It’s better to upgrade it
RP> CP/M can’t be installed on all Speckies, most require hardware
RP> modification. NeOS can be installed on _any_ Spec.
Ha! When it starts loading from the disk even into the 48th machine - then these words
will be true :) Conversion to access the RAM downwards - if your arms are straight -
5 sec. If your arms are crooked, you can stick the beanie upside down (there was a case!) :)
From Kirill Frolov → To All 16 July 1999
15 Jul 99 23:44, Valentin Pimenov wrote to Roman Petrov:
RP>> restartability of functions (the ability to access the same function from different programs
RP>>).
VP> Problem_2 is officially called “reentrant” (from "re-enter
VP>"), i.e. this means that the code must ensure
VP> that multiple occurrences of a single
VP> function are executed correctly (for example, recursively). To prevent glitches, usually
VP> reserve space on the stack for local variables every time
VP> the procedure is called, and when it exits, the stack is cleared.
You can set the BUSY flag and have someone wait until
the first program finishes. Those. in order for it to work.
Moreover, with many functions, for example, with a disk, this is the ONLY way it will work.
VP> So. The stack size becomes a critical parameter for
VP> the functioning of a multitasking system (i.e.
VP> so that the stacks of different programs do not go beyond the limits). Plus,
VP> _all_ local process stacks must be located in the lower
VP> memory, because a process's execution thread can move from
VP> one page to another, and if the stack is in the page, it
VP> will contain incorrect information :)
Stacks must be separated. System to mainMemory, process stacks don’t care,
and when switching all sorts of things, you also need to switch stacks. And let the system use its
in main memory. And when it gets full, let ^^^ whatever it says
put it in queue and don’t start anything new.
Kirill Frolov. [ZX]
From Kirill Frolov → To All 16 July 1999
15 Jul 99 23:54, Valentin Pimenov wrote to Roman Petrov:
VP> “Format” is still quite vague. The Iskrasoft team needed
VP> to release most programs in source form with detailed
[...]
VP> primitive programs. Now, if only they opened filecopy.com, or
VP> arzt+.com would be rulez :)
VP> Did you get the hint???
Give Open Source! Under GNU !!!
So you look and there will be Linux for spec...
Kirill Frolov. [ZX]
From Roman Petrov → To All 17 July 1999
VP> I like this. And who said “I’ve never seen an Amiga!” ?
I spoke. And I’ll say this again :) I only have the appearance (panels, etc)
made by analogy with DOpus. I haven’t seen DOpus at work.
VP> By the way, how are things going with HeOS?
The commander (alpha version) is ready. Tomorrow I'll plug in the cursor control from the Sinclair joystick, test it and then upload it along with the slightly updated
firmware.
VP> Is the installer ready?
It's being written, but it's just started.
[ Skip ]
VP> command lines and g_men.com does not count, because it is very
VP> primitive programs. Now, if only they opened filecopy.com, or
VP> arzt+.com would be useful :)
VP> Did you get the hint???
Uh-huh :) Because. It's already been asked here, I'll soon upload the source code of the program that builds the
driver table from ROM. This is to disable ROM drivers.
I just need this kind of thing myself :) Back inDuring the process of writing an installer, a set of functions will appear for loading drivers from driver libraries. In general, I want to provide the complete NeOS package
with example sources.
From Roman Milukov → To All 17 July 1999
KF> RAM+screw of the same volume was always cheaper.
I do not suggest installing flash as _only_ memory! You need a screw, of course...
But instead of ROM, installing flash will be cool. And the RAM is SIMM.
From Artur Ishmurzin → To All 17 July 1999
PH> OS like RT-11 for PDP-11 (DVK, SM) ...
you should also remember the dinosaurs and the Ice Age.
PH> the most interesting thing, I believe that we will see many features of SR/M
PH> in NEOS... because the principles of constructing operating systems for
PH> of processors like Z80, the ARCHITECTURE of the processor determines it!!!
not, not like that, but in another way - ... because there are common principles for constructing an OS
of this type.
PH> After all, no one will ever install MSDOS on KREY!!! it has its own operating system
PH> that allows you to use the processor resources at 100%!
PH> (process parallelization!) and how will you parallelize
PH> processes in NEOS??
this question is not for me, but for the author. but as I understand it, no one is going to parallelize processes there. the principle of pseudo-multitasking will simply be implemented,
and even then not immediately, but “later”.
PH> You will lose in productivity, although you can
PH> use context substitution, fortunately there are two sets of
PH> registers in the socket.... BUT IMHO than to write again, repeating what has been done, and
PH> stepping on the same rake, it’s better to develop something, it’s already working!
again? dig up the corpse of the medical center, paint it and admire it, saying
"Oh, it's good that they didn't forget"
From Kirill Frolov → To All 18 July 1999
PH>> such OS RT-11 for PDP-11 (DVK, SM) ... the most interesting thing, I
PH>> I believe that many
RP> This is again not a Spectrum. On the Spectrum, CP/M develops only on
RP> Pros, which not everyone has.
Not true... For me, CP/M develops in my Pentagon-like Scorpio...
PH>> BUT IMHO, rather than write again, repeating what has been done, and stepping on the same
PH>> rake, It’s better to develop something, it’s already working!
RP> They could have developed it a long time ago, but they didn’t...
So they started inventing all sorts of isdos, Pink Floyd and other neos... :-(
From Kirill Frolov → To All 18 July 1999
RP> Is the first screen located at #c000? Monarch, this is already insanity :)
Yeah... Absolute insanity.
RP> Who said that it is necessary to shove the library into the page and
RP> work with the second page? You already contradict yourself sometimes...
Well, after all, all the fancy screens are sitting in banks. Even on a sprinter, but there
banks are connected anywhere. But you yourself wrote - the library can
be in ANY bank, but it turned out that it is not :-(
Kirill Frolov. [ZX]
From Kirill Frolov → To All 18 July 1999
16 Jul 99 21:55, Renat Mamedov wrote to Roman Petrov:
RM> Ha! When it starts loading from the disk even into the 48th machine - then these
RM> words will be true :) Reworking it to access the RAM downwards - if the hands
RM> are straight - 5 seconds.
Well, just put the screen up and there will be only 48kb TPA.
And from a 128 computer you can squeeze out ~60kb TPA.
RM> If the hands crooked, you can stick the beanie upside down
RM> (there was a case!) :)
And it will glow red like the terminator’s eye. Cool :-)
RM> Besides, this sipyem for speck was made a long time ago, if anyone
RM> is interested, I can shed light on this issue. As far as I know, Denis Sotchenko had a hand in it...
Well, yes... Everyone had a hand in it. Even MOA. And I even...
Kirill Frolov. [ZX]
From Roman Petrov → To All 18 July 1999
On 07/16/99 you wrote:
VP>> Did you get the hint???
KF> Give Open Source!
Source codes for what? NeOS?
KF>Under GNU !!!
Nu-nu...
KF> So you look and there will be Linux for spec...
Once again, nu-nu...
From Kirill Frolov → To All 18 July 1999
14 Jul 99 06:55, Roman Milukov wrote to Kirill Frolov:
RM> That's a PC, but we have a Spectrum. And on the Spectrum, the speed in ROM is still in any way
RM> higher than in RAM. Simply because there is a screen in RAM. And instead of a real
RM> ROM, you can have both flash and cache...
The ROM now works honestly. You can only set it to 150ns and even here
there are problems. In the sprinter, it seems to be copied to RAM too.
Kirill Frolov. [ZX]
From Valentin Pimenov → To All 18 July 1999
VP>> Thus. The stack size becomes a critical parameter for
VP>> the functioning of a multitasking system (i.e.
VP>> so that the stacks of different programs do not go beyond the limits). Plus,
VP>> _all_ local process stacks must be located in the lower
VP>> memory, because a process's execution thread can move from
VP>> one page to another, and if the stack is in a page, it
VP>> will contain incorrect information :)
From Valentin Pimenov → To All 18 July 1999
|once 17-07-99 at exactly 13:15:13
|Roman Petrov wrote to Valentin Pimenov about Advices...
+------------------------
VP>> I like this. And who said “I’ve never seen an Amiga!” ?
RP> I spoke. And I’ll say this again :) I only have the appearance (panels etc)
RP> made by analogy with DOpus. I haven’t seen DOpus itself at work.
Cool! I also saw a lot of fantastic computers on TV :)
[skip]
RP> Yeah :) Because. It's already been asked here, I'll soon upload the source code of the program that builds
RP> driver table from ROM. This is to disable ROM drivers.
RP> I just need this thing myself :) Even in the process of writing the
RP> installer, a set of functions will appear for loading drivers from
RP> driver libraries. In general, I want to provide the complete NeOS
RP> package with source codes and examples.
So the understanding comes that the drivers in the ROM should be
disabled. A little more, and you will place them in RAM.
+-All the best, Roman!
From Roman Petrov → To All 19 July 1999
KF> Uh-huh... Absolute insanity.
Okay, to hell with him, with insanity...
KF> Well, after all, all the fancy screens are sitting in banks. Even on a sprinter, but
KF> banks are connected anywhere. But you yourself wrote - the library
can
KF> be in ANY bank, but it turned out that it is not :-(
It can be located anywhere, the question is how it will
work with the screen.
These are problems of the library, but not the system. But for the rest, I
agree with you.
From Roman Petrov → To All 19 July 1999
KF> That's not true... I have CP/M developing in my Pentagon-like
Scorpio...
By the way, you once said that you wouldn't remake your computer in order for the program to work, but you remade your Scorpio? :)
And the fact that it is developing is only known to TKBK. If you hadn't said it, I wouldn't have known.
From Renat Mamedov → To All 19 July 1999
KF> Well, yes... All and sundry contributed to it. Even MOA. And I even...
Your data is not there. This sipem (its description) is lying on the CD...
Sincerely,
Renat
From Evgeny Milun → To All 19 July 1999
Friday July 16 1999 09:55, Pavel Hoteev ─── Artur Ishmurzin:
AI>> um.. I’m not arguing, but the CPM is not even yesterday, it’s the last century.
AI>> just don’t say that Spectrum is not this morning either. here
AI>> the difference is obvious - Spectrum is still developing, but the digital computer has been gone for a long time...
PH> And here you are wrong! CP/M has developed and is developing in the form of MS-DOS!!!
CP/M is an operating system of the 70-80s for 8-bit computers. MS-DOS -
at least the latest versions are for 16. As such, MS-DOS has already died and given way to 32-bit Windows... And where is the “development of CP/M” here? So,
after all, we can say that the Spectrum is nothing more than a “development” of BESM.
From Roman Milukov → To All 21 July 1999
KF> The ROM now works honestly. You can only set it to 150ns, and even
KF> here
KF> there are problems. In the sprinter, it seems to be copied into RAM too.
You're not reading carefully. I'm telling you: in the field of ROM, the computer's performance at
7 MHz is 200% (relative to 3.5). In the area of RAM - less.
And ROM with 150 ns is now full.
And it’s only you, it’s probably buggy. In most computers it works even with 200 ns. Although I won’t argue, 200 ns is the theoretical limit for the Z80 at 7 MHz.
And if you need more than 7 MHz, just install flash.
But it’s more difficult to raise megahertz in RAM.
From Roman Petrov → To All 23 July 1999
VP> So the understanding comes that the drivers in the ROM should be
VP> disabled. A little more, and you’ll place them in RAM.
No, thank you :) Excuse me, but I won’t throw _all_ drivers into RAM, let some
sit in ROM.