DOS REVIEW # 01
But the conversation about
non-traditional operating systems are not ends. Case
that the last time I
very fond of study formats
different drives using Disk Doctors, emulators, and most
importantly - literature. I have studied and I hope I will
continue to study, different formats of disks. In
particular it: CP / M PC PROFI,
"Corvette", ROBOTRON-1715 and others,
OS PC "Agat", "Radio-86RK,
ORION-128, BK-0011M, UKNZ.
I must say, found a lot in common and interesting. But not
always information was final and
detailed, and often vice versa -
extremely obscure and
controversial, as with the IS-DOS.
Nevertheless, since these
computers, it seems, still supported by some amateurs.
And just as in the case of
SPECCY, they can and should take advantage of the HRC
as a source of otsifrovok different
species as well as handy text editor and graphics, well
memory bank for archives programs.
To begin, I will tell about the little-known, in my opinion,
wheelbarrows. But Here's a description they were the most
detailed.
PC AGAT
All data on it, I learned in
Book:
Mymrin MP Design,
application programming and
Repair PC "Agat".
M: Mechanical Engineering, 1990
This book is very detailed and
contains complete information about
this PC, including the scheme, and different
refinement, as well as texts koykakih prog.
Its features are:
1) Built in spite of
national origin, in
import procedure 6502. Nevertheless, it is compatible with PC
APPLE-] [, in my opinion, almost
zero.
2) The controller drives its
hardware - software. Scheme
only reads some bytes, and
decoded all the software - any protection - no problem; Iron
only reads the current byte, and
all there label sector, FM
MFM has already dealt with or software driver.
3) Original Graphics:
256 * 256 mono, 128 x 128 - 16 colors (8 KB) 64 * 64 (!!!) - 16
Flowers (!!!) (2 KB !!!).
It is noteworthy that in the package
attached color display, but
it displays only eight (8)
colors.
4) His memory is expandable up to
768 KB
It would seem that its controller
drive allows you to copy
any protected drives. Well,
may be so, but first
it would be necessary to connect the modern
drives, but is not yet known
Do cope with them equipment and
have time to consider whether the processor
dense stream of data. After
actually supported such a
disk format: 35 tracks (and perhaps physically, then all
40), each with 10 sectors
256 bytes. And, most likely,
one side.
Well, and of these tracks is zero, the first and second takes
DOS and the directory is located in the most
middle of the disc - for the 17th track. Moreover, all
indications are, sectors that it goes in the opposite
order: it begins on the 15th
sector and, if it is placed on
one path ends in
0th.
At the beginning of the sector are
Three important bytes of data: the first - a sign
extension directory, if it
is zero, then the process of reading sectors catalog can stop
it. Otherwise, in the second and the third byte contains the
path and continue the directory sector. So, if the directory is
only one path, then in all sectors of the second byte
refers to the 17th track, and
third byte older sector - at a junior: second
byte of the 15 th sector is 14,
indicating that the next sector
directory is located on the 14th sector. Similarly, the 14th
Sector refers to the 13th, 13th
on the 12th, etc., but the 0th
Sector refers to the 15th, though
be looped directory. (But I
I hope that his first byte is zero. ) Otherwise, the second and
third bytes of sector zero contain the path and continue the
directory sector.
After these three bytes are 8
reserved bytes, and then
is a field descriptor files.
Each file is given at 36
bytes, as follows:
1 byte - number of tracks and 1
bytes - the number of sector allocation
file.
In addition, the first byte of the descriptor remote file is
increased by 160 and the data on it preserved. This shows that
theoretically can be used
and drives for 80 tracks, or
bilateral in 40, but not
80TR/DS, or so files at the same time
removed in another way.
1 byte - file type:
2 (first bit) - BASIC
4 (the second bit) - Binary
0 - text
7th bit - write protection
30 bytes - file name
2 bytes - length of the file in the sectors.
1 byte - reserve
Only here do not know: whether
a file descriptor can
located in different sectors, the
Do remain free bytes.
And what about segmentation. Catalog
clearly can be segmented. But here's the files ... The above
book contains not quite comprehensible explanation. The first
two bytes of the descriptor can refer to this link location
file. That is, they indicate location (path and number)
the sector, in bytes, of the 13th and
14th which provides track and sector where the start or
ongoing data. But then
as it is to discern how to identify employment sectors when
writing new file, and in general why the 13th and 14th bytes of
the sector reserved for file data used for other purposes.
Maybe this particular sector,
contain only references, or
is used by the missing bytes
sectors in the directory? However,
issue of segmentation of files, although it is most difficult,
is also the least illuminated in the literature.
Radio-86RK
Will continue consideration of disk systems. Now we will go
on a very simple and fairly described in detail the system DOS
2.6 from the old, nearly coeval ZX,
PC RADIO 86RK. The main
advantage is its detailed description of the mass
magazines. And his description of the DOS
found there:
RADIO 93g., No. 1, p. 13-16.
Well ... 80 tracks: even (0,2,4 ...) - on top, odd - from the
bottom. Five sectors 512 bytes - FM recording method. The order
of the sectors: 0, 3, 1, 4, 2.
Map and directory of the drive is on the 32nd track. Map - to
0th its sector. It is 160 bytes,
describing the employment sectors
on the appropriate track. Each of the five bits of the
responsibility for its sector.
For example, the first five tracks.
They correspond to the first five
bytes of the sector. Let the value of a null byte is equal to #
1E (11 110 bin). This means that
engaged in sectors 1, 2, 3, 4, but not
0. Value # 1F (11111 bin)
means that all sectors of employment. # 0B (01011 bin) - Sector
0, 1, 3, etc.
Then comes the directory of the drive. On
Each file is allocated 28 bytes:
Offset Value
0 track
1 sector next sector directory if the 0th byte
is zero, this means that the continuation will not
2.5 Reserve is filled with # 00
7-16 File name, the rest is filled with # 00
17 The so-called zero file - if the file is deleted, the first
byte
his name is # FF, but here is written the first letter
his behalf.
18-20 File Extension
21.22 Track and sector allocation of so-called T / S LIST (see
below)
23.24 Load address
Length 25.26 in sectors
27 File attributes
T / S LIST, or more precisely
TRACKS / SEKTORS LIST - a list of tracks and sectors on which
contains the file. The first
two bytes of this sector include
reference to the continuation of this
list, otherwise it is zero. Next
attending a number of pairs
bytes (or more precisely the number of
contained in a file descriptor).
Each pair of tracks and
number of the next sector of the file.
Well, as a sign of the end of the list
are two zeros.
I can only say how
are file descriptors
Sector: whether to butt, and
Then one descriptor can be
on two different sectors, or
in every sector of the directory remain unused bytes.
However, in any case directory
leaves a lot of bytes for each of the secret use.
SP-DOS
And another is described in detail
but a very exotic system of
RADIO magazine. This SPDOS for
Orion-128 computer. About her
described in number 2 for
1993.
This system was intended
quick diskofikatsii ORION'a
for compatibility with old software.
Later it was replaced by
on a more widespread system CP / M. But the question of its
professionalism, consistency and progressiveness too remote
from the subject, and further can be found only on the disc
format. And yet it goes about its predshestvenitsu.
Two sides, 80 tracks. Five
sectors of 1024 bytes. All
Dead reckoning is in the blocks -
sectors of 1024 bytes and the position on the disc is given by
the displacement of in these blocks. All the separate line is
reserved - blocks 09 is not used. In the first there are two
directories with card drive (for 2K): Reserve at Sectors 1 and
2 (units 10 and 11) and on the main sectors
6 and 7 (blocks 15 and 16). And
tracks from the second to 79 th (blocks
20 - 799) placed the region
Data - 780 KB.
The catalog is up to 78
file descriptor of 16 bytes in
each, namely:
Bytes 0-7: File name, if
his first byte is # E5, then
This file is deleted, and if - # 00;
it means that directory over.
Bytes 8 and 9: Load address
file.
Bytes 10, 11: Size of
bytes.
Bytes 12: File attributes:
7th bit - write protected
4th bit - file a fake
- Only in the directory.
Bytes 13, 14 and 15 are reserved.
I note that 78 * 16 = 1248. This
means that the directory is left another 800 bytes of space.
And so, 780 of them are used for
placement allocation table
files.
If it's bytes are conventionally numbered from 20 to 799,
then we obtain a direct correspondence between each byte and
the block on the disk. If the value of any byte
well # E5, then the corresponding
his unit is free, and if it
value - # FF, then it is defective.
Otherwise, its value will be from 1
to 78, according to those which file the block belongs to, or,
more precisely, the position number this file in the directory.
Thus, it is not needed
record position of the first
sector (block) file, or
create table location
sectors of each file. To read this file to determine its
serial number in the directory if it is not known, and then
scan the table of file locations, and finding the required
number, download block corresponding offset from the beginning
of the table, not forgot to add 20. And continue
This scan-reading,
until the entire file is loaded.
And for the record a new file, you need this table to look
for free blocks, the corresponding bytes will be equal to # E5.
Naturally, it is necessary to miss classes and bad blocks. And
when verifying the recorded file can be even parallel to mark
bad sectors detected!
Noteworthy is the ability to create a dummy file - only
in the directory. But this bit must be taken into account so as
not to look for blocks that belong to a nonexistent file. It
should also be do not forget about the large number of
free space in the initial
tracks. Free space can be
sensibly be used for a variety of protections and even viruses,
although, unfortunately, most possible size of the sectors is
not allows you to format the sectors
or alter any data in the
memory is hidden from prying eyes.
As a result, one can only say:
Why use the old system CP / M, if the system
compatible with the old achievements and its development could
lead to better results. This I mean that, at the same Specchia
The situation with OSes, and if
so who wants to make a new one,
let him take into account this situation.
BC-0011M
We now turn to computers, I have studied with
emulator on the IBM PC. Particularly noteworthy is the fact
that they exist for domestic
computers.
These are the computers and
BC series. Some who called them
primary source of demos and electronic newspapers. As for me, I
studied the emulator itself powerful PCs in this series,
referred to as BK-0011M (v0.7 (C) 1995 by Vicious). Do not know
how it at the expense of newspapers and the hard drive, but
almost all the demos in its complete
transferred from the Spectrum, if not
completely as LIRA] [, then by
At least, the idea and music.
Here are some examples of what was to
this disc:
"NEWN2M",
"MAXAMIZZ",
"DYNA BLASTER",
"NO LIMIT"
"POPCORN"
all COPYRIGHT XPEHSOFT and FUXOFT,
after each was:
SONG COMPILER COPYRIGHT (C)
RDC SOFTWARE 1993y ...
Interesting to see Lear or
play CYBERNOID 2, in four colors, but from a palette of 16 and
each point in a different color.
In short, if at loggerheads, then
Suppose further peredirayut, but
already with the HRC and amenities. And for
This ought to know how. K
Fortunately, in a set was
virtual floppy disk with documentation. I really can not say
how much time I spent on the
something that would write a decent
viewer of such discs with conversion of texts from the local
variety KOI-8. But as a result I have achieved perfect
view all of the available I
available texts. And I
it remains only to learn some codes of graphic symbols
When my hard drive a little bent and I lost all the sources
this program. But something I had written.
At BC, as it turns out, there are many operatsionok, but
they are compatible with each other.
An application to an emulator disk subsystem description
AO-DOS version 2.02.
Format of its catalog is compatible with
MicroDOS, NORTON, NORD, MK-DOS -
refers to other BK'shnye
system.
The disc can be 40/80-ti
TRACK 1 / 2 sides. 10
or 9 sectors of 512 bytes.
The problem is that there are two options for disk
Format: Enhanced and Standard. The latter format as
time was investigated, and it seems
that this is only used
specific breakdown: 10 sectors.
Another problem was that
that the main system for BC
is octal, and each
just that you need to pay attention.
Position on the disc is given in
biases in blocks of 512 bytes.
Recount conducted by the formulas:
PATH = INT (SMESCHENIE/10)
SECTOR = OFFSET-TRACK * 10
However, the position on the disk
easily determined by eye:
The first two digits of the decimal
number - the track, and the latter -
sector.
On the zero block (0 dor. 0
sects. ) Hosted system
information and the beginning of the catalog.
The first four bytes are used
only for the boot disk, the
him: 0th byte - code 160 bytes
2 and 3 - codes transition team on
loader.
Fourth byte defines the type of format: if there is 26, the
format advanced, and in the target I
there were a number of disk 32.
Therefore, talk about the differences.
As evidenced by documentation, and extended format fifth byte
describes the breakdown of the disc. It contains the size of
disk tracks in sectors, plus set the seventh bit, if the disk
one-sided. Bytes 6 and 7 at This contains the size of the
sector in bytes. Byte 8 - number of tracks and the 10th for
some reason reserved.
In my version of the format, I saw on the site of the byte
string "AO-DOS".
Next line is restored. Starting at byte 12
placed the name of the disc (12
bytes), which shows
shell for the DOS SHELL
system. Byte at offset 24
contains a number of records in
directory Bytes 26 and 27 - the number of
first free block on disk.
Notable for the bytes at offset 256 and 257 on the same block.
It contains the bytes # 2E and # A7 -
number 123456 in octal. This is a sign of the OS.
Also found an undocumented couple of bytes at offset
310 - Number of free blocks on the disk.
Well, starting with the 320-th bytes
Further, we find directory.
Its structure is very original. Despite the fact that
system can be created directories with nesting level as
to at least 128, all records of
all files on the disk are in
single directory. Each subdirectory, regardless of the level of
nesting has its
individual number recorded
descriptor in the directory. AND
Each file or subdirectory is
link to its parent directory.
At entry in the directory assigned
24 bytes:
Bytes 0 and 1: How they
called the word signs (16
bits). If the record describes
subdirectory, then lower seven bits
zero bytes contain the serial number of this subdirectory
otherwise, it involved only
zero, the first and seventh beats.
Then their value is as follows: 0th
bit - a sign of a protected file,
1st - hidden, and the 7th bit -
sign of bad blocks.
Younger seven bits of the first byte
contain the number of parent
subdirectory, regardless of
of what the record: the file or
directory. 7th bits of this byte
indicates that this file is deleted. Deleted directories scrub
physically and the standard they should not contain files. A
newly created directories are physically not be placed in the
bottom of the list all files, and after the last
record of the directory.
In practice, it turned out that when
deleting files, these two bytes
take the value # FF.
Bytes 2-15 contain only
file name. Enlargement as such do not exist. These bytes can be
contain the codes of any signs and
digits, including a point that can separate psevdorasshirenie,
which may be of any length.
In general, these bytes are used for
visual identification of the file.
Bytes 16 and 17 contain the number of
the former deals with the file block. For it is always a
subdirectory number # 14.
Bytes 18 and 19 contain a number of blocks being spent on
file. For subdirectories, it is always zero.
Bytes 20 and 21 contain the address
BitTorrent, which is always
reduced to an even number.
Finally, bytes 22 and 23 contain the length of the file, which
must be less than 32768.
As you can see, there is no indication that the files and
directories can be be segmented. And in
its description says: "System
uses an algorithm to write the file, allowing optimal use of
disk space without resorting to compression utility, and
removing the need for control over the state directory
disk. Mystery of the algorithm
I have not been disclosed. No hard drive
anything resembling a map of the disk.
Perhaps, the system attempts to write the new file to a remote
location, appropriate size, and which is part of the disk
disappears in vain.
Indeed, erasing and
writing files, I realized that
smaller files
recorded on the site has already removed, their large size.
If the file is not placed, the recording took place in the new
sector, reducing the available free disk space, and the record
is appended to the directory. And if recorded small files, then
their descriptor ranked
remote, and if after this
operations remained a place of
remote file, the record
placed the new file is added after the old one. Thus, the files
were in the order of their relative beginning of the disc. The
rest of the remote file "hole" between the blocks could be used
for records fit in her files, though the catalog of her
recordings was not.
In addition, the catalog
was found by a such a final file.
The first two bytes of it were equal to
# FF. Bytes 16 and 17 in its descriptor contained a number of
the first free block, and bytes 18 and
19 - Number of free blocks. Can use this information to the
disk.
It remains only to say that
the system automatically creates
a complete copy of the zero track
which is located on the track
Number 1. Moreover, at both the last sector seems not used
because it is filled with byte # 00, while the unused
place in the catalog is filled with byte # F6.