NeOS
Operating system
for ZX-Spectrum
© 1998-2000, Megus/Brainwave
© 1998-2000, X-Project Association
|
|
NeOS - new operating system for ZX-Spectrum
A creation idea of absolutely new system for ZX-Spectrum
soared in mid air already quite a long time ago. It is possible, many embarked
in creation, but by not a great deal enough forces, patience, and can and
acknowledges to bring such serious work down to end. In 1997 year work over new
OS began Pavel Fedin, but later he, unfortunately, disappointed in
this idea. However by him remained good number of concrete
theoretical work, which later lied down in basis NeOS.
Therefore by conception author NeOS on right is Pavel Fedin, and
by idea development and realization of all ideas was engaged and am engaged
I, Roman Petrov (Megus/Brainwave^X-Project).
Decision to create new OS for ZX-Spectrum appeared not in
empty place, to this how me, so and Pavel Fedin (hereinafter simply elaborators)
urged on the following causes:
1. A Existing alternative TR-DOS (iS-DOS) became antiquated, so as
primordially was projected for machines with memory 48kb. Also in
iS-DOS exist some limitations, not giving real
freedom to programmer.
2. At present exists a great number of Spectrum models
with memory over 128kb, but management by this memory in each
machine done on own standard, that is
followed with certain difficulties by programmer.
3. Also there is a great number of supplementary periphery, however
and in this domain does not exist some becoming firmly established
standards, so as each elaborator aspires to get all
own way.
4. TR-DOS, per se, does not be by of full value operating
system. In fact this in all only emulator of of a tape recorder
operations on floppy disk.
5. A Lack of of full value file system (how in TR-DOS,
so and in iS-DOS) hampers using of external transmitters
given of big capacity (HDD, CD-ROM and etc.).
Exist and other causes, however those, which justly now
were enumerated, are most important. All of described
problems solved in NeOS.
Here short list of those possibilities, which NeOS grants
to programmer and to user:
- backing RAM by volume to 4Mb (in theory - to 1Gb);
- is realized a system of block memory apportionment, that
will ease hereinafter a multitasking realization (pseudo);
- is realized a drivers system, that takes off an incompatibility problem
of diverse periphery;
- is realized a functions libraries system;
- is possible a deal with any external data store;
- of full value directories system backing;
- is possible a deal with files of arbitrary length (to 4Gb);
- is realized files names backing by length to 16 symbols with
threesimbol expansion;
- is realized "transparent" backing of diverse file
systems.
Now about all this more in detail.
NeOS supports RAM by volume to 4Mb, here by
programmer does not arise no problems near deal with this
memory, so as work comes true by means system
functions NeOS, and a programmer already must not care of backing
of all of possible realization methods of extended memory. For
consequent multitasking realization in NeOS was realized
a memory management system: blok apportionment of page memory. A Dimension
of picked out/released block divisible by another number 1Kb.
For deal with external devices (and not only with them)
was realized a drivers system. Driver in memory
well-organized in "chainlet appearance": in beginning of each driver
is a pointer on following. This way, a general
quantity of drivers, established in system, limits
by only accessible memory. Each driver has own
appellation, on which and comes true search. Driver divide
by type: resident and unresident. To resident
behave driver, been followed with each interruption, to
unresident - driver, specially called by program.
Each of types has an own chainlet. From program a driver
can be called in the following manner: at first necessary to find
(to open) a driver by his name, whereupon on got to address
and to page to come with function in register A.
Since hereinafter plans a multitasking realization,
was realized a functions libraries system. On
given moment this system does not be especially important. Libraries
Organization in memory analogous to drivers ("chainlet") organization,
deal principles with libraries also analogous.
A Deal with external data stores comes true
by means two drivers levels: drivers of disc-shaped devices
and drivers of file systems (FS). Near deal with files
a programmer must use a driver FS, and that already, in its
turn, uses a driver of disc-shaped device. This way
comes true backing any FS on any type of disc-shaped
device. In NeOS is realized "transparent" backing diverse
FS. This means, that in system can be established
a few drivers FS, and NeOS will work with any of them.
Near choosing of disc-shaped device takes place treatment to each
driver FS for determination of disk belonging FS. How an only
some driver identified a disk how "its", this driver
becomes active for given device, and the further
operations with files on this disk will make by means
him. Therefore in NeOS falls off a necessity in type
copiers MS-DOS<->TR-DOS, so as a system herself can do the like
operations.
How and in any of full value DOS, in NeOS is possible a deal with
system subdirectory, which so is short on in TR-DOS. Also in
NeOS are lacking the limitations on file length, typical for
TR-DOS and iS-DOS, maximum file length in NeOS can be
equal 4Gb, that one can be not counted by limitation.
For realization of elementary contact with user in
NeOS is built-in a command interpreter, permissive to do
the base management commands by system and simplest disc-shaped
operations. Is a possibility to unite interpreter commands
sequence in so urgent packet files (batch files),
which are the usual textual files. Since
the possibilities of built-in interpreter very modest, was
brought in an installation possibility of external interpreter.
By Elaborators was primordially solved, that a system will be
accommodated in ROM in domain, occupied 128 BASIC. This permitted
to preserve a compatibility practically with all existing ON for
ZX-Spectrum (a given ROM page use the single programs,
the elaborators up to nows do not find not a single, which does not
work in presence ROM NeOS). In ROM disposes a system (Brainwave BIOS) kernel,
command interpreter, and also the very necessary driver, without which
system work impossible. So as to please all of users in point of selection
standard drivers recruitment impossibly, was solved to write installer
NeOS. With help of installer each user NeOS will be able
to influence a system so, how to him must. He can fix
on standard driver, computer (for deal with extended
memory) type, colour, language of system reports, keyboard
layout and etc. By work result of installer is ready image
ROM, which already one can be "sewn up" in ROM. Should mark, that
NeOS does not work with ROM TR-DOS 5.03, for normal deal NeOS with
disk necessary ROM TR-DOS, in which a possibility
has straightly to count a disk drive comptroller fortune register (port
#1F VG93). Recommends to use NeOS with TR-DOS 5.13,
which will add to system.
On today a system kernel fully ready and
passes stage of active beta-testing; parallel to conducts
spelling ON, without which system to exist does not can, and
also a drivers library grows. So as one group will not
be able in short dates to provide a system the very necessary ON,
the elaborators invite all of becoming interested by system to
collaboration. NeOS is freely expandable (freeware)
product, however for some money sum (she while not
definite) any can begin by registered user
NeOS. Each registered user will be from us
accorded full complete set NeOS (installer, drivers library, base
soft), full programmer documentation in appearance of small book,
and also we pledge to inform such users about going out
most interesting ON for NeOS and to help in his acquisition.
In elaboration NeOS took participation:
- Roman Petrov (Megus/BW^XPJ) is system elaboration,
kernel writing and greater part of drivers;
- Pavel Fedin is system elaboration;
- Andrew Miheev (MAV/BW^XPJ) is drivers spelling,
structural criticism;
- Andrew Isaev is driver spelling FDD, structural
criticism;
Immediate participation in elaboration do not take, but
helped by advices, criticism and morally supported:
- Roman Milukov is author of installer idea;
- Denis Dmitriev (Dismaster/XPJ) - structural criticism;
- Denis Sotchenko is structural criticism, advices on memory organization and
to multitasking realization;
- Jarek Adamski is structural criticism, useful advices;
- Eugene Malkov (Tim Kelly/KGS), Alexander Kormishin, Yuriy
Voynalovich, all Brainwave, all X-Project, Mihal Bukowski
(YERZMYEY/H-Prog), newsgroup REAL.SPECCY is moral backing.
© May 25, 1999. Megus/Brainwave^X-Project
According all of questions to apply on addresses:
- 424019, Russia, resp. Marij Al, Joshkar-Ola,
st. Festival, 77-13,
Petrov Roman.
- Phone: (8362)22-66-09, from 14:00 to 22:00 (Moskow time).
- FidoNet: 2:5052/7.37
- ZXNet: 500:8362/1
- E-mail: [email protected]
|