Inferno #07
31 мая 2005

Softinka - The problems and shortcomings package of tools to work with storage devices DNA_OS.

<b>Softinka</b> - The problems and shortcomings package of tools to work with storage devices DNA_OS.
      Problems and shortcomings DNA_OS
ZET-9



   This file will be added nedorabo
Schottky barrier, which must be eliminated, and the problems
which must be solved.


                 Problems


   The system works with the first copy of FAT,
why the HRC ScanDisk swears.

   Subdirectories are continuous, we can
but only access the first 128
files in a subdirectory. (If you connect the screw
to the PC, create a subdirectory there, copy it to
his 2000 files, then delete the first 150
files, then connect the screw to a Spectrum
boot the system, select the screw on the right
panel, go to that subdirectory, it will be
empty, or there will be a waste (if rolled
log on the PCs was highly fragmented, then
the second cluster subdirectory will be read
read the bill, regardless of what
second, where the second cluster rolled
log).

   In the left pane can display it
lko first 122 files in subdirectories (if
in a subdirectory of> 122 files, then they
"Extra" files will spoil the data for the kata
log, right panel). This error envelope.

   In the right pane may appear small
ksimum files that can span floor
chit from the core system - somewhere in 130-135, then
chno not counted.

   When you create a file used by all
cluster FAT - in fact the last 11
cluster numbers represent bad sec
tora.T.o., files created in the system
the end of a hard drive partition will not be available
when reading them on the PCs.

   In the system there are no options to create
and delete subfolders and delete function
file in the file system FAT12.

   All utilities, no interface
t.e.utility not display messages on the screen.

   When copying files to the date of the screw
lost.


         The difference file systems



  a) When you copy files from one fi
Lovoy system to another problem
redundancy of information, namely:

   Let the file name in the same file system
IU is 16 bytes (such as NEOS), in another - 8
B (TR-DOS). So, we must think of the standard
dart, how to convert a long file name in which
Rothko, as well - who will deal with this
(I mean, what driver - the driver
first file system (NEOS), driver
second file system (TR-DOS), or about
gramma-kommander/obolochka)?

   In the illustration: there is an option "for
weigh "these functions to the driver file
system (in this example - NEOS). Nap
Example, like this: when dealing with file indicates
file name length and the length of the file extension
- And let the driver understands.



  b) the inadmissibility of certain characters
in file names. All there :;.<=>?"+*/,
Russian letters in the TR-DOS, etc.
etc.

   Existing drivers do not pay attention
mania, and stupidly put the name in the directory.



  a) Copy files certain length
Ny.

   As everyone knows (surely), the system TRDOS length of the 
file can not be greater than 255 sectors, ie 65280 bayt.Pri 
copying Research file of greater length to the disk recording

multiple files - all except the last
length of 255 sectors. At the same time expanding
file change the first character (like
text.txt; text.0xt; text.1xt and so on).
Break a large file into small (on
255 sectors) engaged themselves programmykopirovschiki 
(MS-DOS-> TR-DOS and the like). 

   Option: place a procedure partition
file in the filesystem driver sistemy.Suschestvu
yuschy filesystem driver TR-DOS pro
belief: if the length of the generated file> 255
sects., then the file is not created. From this point
view, one can speak of unfinished
driver, but in terms of "classical"
TR-DOS everything is OK.



  d) Providing a directory for the programs.

   Each file system content
Catalog razlichno.A is that each file in
directory corresponds to a certain number of
B: in TR-DOS - 16 bytes, the iS-DOS, FAT12,
FAT16, FAT32 - 32 bytes, while in others - "plate
equation describing the 'length.

   For example: shell calls DNA
"Download directory". Catalog is loaded. Those
Now the shell should print a directory on
screen - and it begins: from the shell found
em, how many files in a directory, what is the length
file name, on any shift is
file length, creation date, etc.

   Devised and implemented such an option:
developed a directory format (a kind of universal
tallow form), and when you call "reading
of directory "points out: convert
directory in a universal form or net.Obo
hull will indicate that the need to transform
tion, and the file system driver for
download catalog for their needs transformation
zovyvat will not (as the driver himself
know where that is).

   The format itself, see the text DNAmake.

   Here: The length of directories and subdirectories
different, and the program that calls the function "for
ship directory, does not know how much memory
take katalog.Krome that may be variants of
ant that the directory on the screw (or CD) at all
not fit into memory (it has a length> 48k).

   Conclusion: when you call "load ka
Taloga "you must specify the buffer length,
which the program can allocate a kata
log and a file number from the beginning of the catalog, 
starting Naya with which it is necessary to download catalog

(That is, in fact, how many missed files
from the beginning of the directory). Processing Directory
program will be in parts, but the driver will
know about using the flag (one of the bi
cent).

   Example: suppose the program has a free
4k - buffer for the directory, then first of
gram loads 4k directory offset
0 (for example, these names fit 4k 123
files), processes (displays,
looking for there file, etc.) on the program
loads more 4k offset from the beginning
directory for 123 files - and so until
until it receives a message from the driver
file system "going beyond the file /
directory "- ie the entire directory has been zag
Disarmament Affairs.


               Gaps



   What should I finish, specifically on the elements
there. Well, as will be the time to optimize
everything.

TR_DFS16.H - file system driver TRDOS:

  - Add (?) In the function of creating a file:
creation of a group of files, if the length of the creation
File under consideration,> 255 sectors.

FDD_DRV7.H - drivers block I / O
for floppy disk:

  - To make the distinction between errors (this is not
concretized - just a mistake);

  - Make a version with straight
On appeal to VG93 (now attending treatment
to # 3D13 - specifically, that the driver worked
on RAM-disk and Skorpionovskom HDD);

  - Return the functions to work with MS-DOS'nymi
Floppy Disks (9 sectors per track, 512)
element to MS_HDD could work with the disk
Tami MS-DOS (FAT12).

MS_HDDE.H - driver file systems FAT12,
FAT16. Make a function:

  - Create a directory;

  - Delete the directory;

  - Remove a file (for FAT12).

HDD_DRV82.H - Driver HDD scheme NEMO:
 - To make the distinction between errors (this is not
concretized - just a mistake, "Used for
TVO is not ready ");
 - Remove the protection from false alarms
Port # 7ffd in writing to the port of NEMO # F0
(The size of the driver is substantially shorter, and
increase the recording speed).

SHELL.SEP - shell. Must:

  - Check if you delete - a directory
or file;

  - Remove a directory check is
whether the files in it;

  - Rename the file;

  - Embed a copyist in the shell;

  - Cursor control system;

  - Select the files to copy / delete
group of files;

  - That by pressing any key
(Eg "3") was called for VIEW_TXT.SEP
view any file as text;

   etc.



   A Brief History of versions of DNA.



          20.06.2005 DNA v0.431g
- New core: fixed a bug in the driver
FAT (shown at copying).
- COPY.SEP Georgia with the addition of islands due to
error envelope.
- TRD2DISK and SCL2DISK no longer expect Knoop
ku after the operation.
- SCL2DISK not copied from the HDD.
- TRD2DISK not work when booting from the DNA
Gluk.



         09.06.2005 DNA v0.431f3
- Kernel version-0.431f, lengthened by 256
B (to save the table settings
into sections). As a result, after zag
manual ultrasonic BASIC loaders HDDdrqS.B or
SLAVE.B with screw Slave apparently normal
tsya all sections.

In the emulator Unreal0.27 screw works
normal.



         06.06.2005 DNA v0.431f2
- The kernel from version 0.431f.
- Added an alternative version of the BASIC loader with the 
screw: 

  MASTER.B (for download from the screw Master) and
 SLAVE.B (for download from the screw Slave).

In the emulator Unreal0.27 screw works
OK, but: when the system boots Bay
Sik-loader HDDdrqS.B (or boot
SLAVE.B) with screw Slave not detected pa
Product has 4,5,7 (t.e.pervy, second and fourth
extras).



          30.05.2005 DNA v0.431f
- Kernel recompiled with the new mood
kami for the sections on the screw.

In the emulator Unreal0.27 screw works
OK, but: when the system boots Bay
Sik-loader HDDdrqS.B with no screws Slave
defined by sections 4, 5, 7 (ie the first
second and fourth extra).



          22.05.2005 DNA v0.431e
- The kernel from version 0.431d.
- Added Basic downloaders system
 screws (no boot in ROM):

  HDDdrqM.B (to boot from the HDD Master) and
 HDDdrqS.B (to boot from the HDD Slave).
- Installer Version 0 (fixed disk
doctor) and recompiled (version
2).

Both versions of the installer does not work for
Alone Coder'a [because of the conflicts in the decrypts
tion between AY and IDE-controller, which
were found and eliminated only 06/13/2005].
In Seregina installer (s?) Works mouth
certain established system boots every other time.
In the emulator Unreal0.27 screw works
OK, but: when the system boots Bay
Sik-loader HDDdrqS.B with no screws Slave
defined by sections 4, 5, 7 (ie the first
second and fourth extra).



          16.05.2005 DNA v0.431d
- The kernel recompiled with drive
rum screws included with the survey before the DRQ
each byte.
- Fixed: Now when you select absent
ing partition is not cleared (formerly community
generalization error message did not reach the driver
FS).

I Alone Coder'a is stable. In the emu
Unreal0.27 oscillator with a screw running rate
flax.



          15.05.2005 DNA v0.431b
- Changes in the shell (after removal
file on the FAT16 knotted directories on
this does not always remove the file).
- Fixed a viewer of text, is now looking
from the first 26.5k long texts.
- The installer cleaned up the file
SYSTEM.DNA the screw, because that was before the
duschaya version was not working (version 1).

I Alone Coder'a installer hangs after
select the hard drive [because of the same conflict
- See above]. In emulators Unreal0.27 and Z80
Stealth v0.503 screw works normal
but.



          21.04.2005 DNA v0.431
- Added function to delete a file on
FAT16 on the screw.
- Added an installer system to the screw
(Version 0).

The first version, which installed Seregin
(There was a bug in the installer, because of which
after loading with a screw system climbed to
Disk A). emulators Unreal0.27 and Z80 Ste
alth v0.503 screw works normalno.Na
Pentagon screw works fine.



          27.03.2005 DNA v0.430d
- Changed the resident system, not to transfer
opens up a memory location # 5b5c when working with
DOS 6.09e.

In the emulator Unreal0.27 screw works
normal.



          08.03.2005 DNA v0.430
- The three main sections, four
additional modes LBA / CHS;
- Supports FAT12;
- Supports 4-frames-ROM drive;
 - In shell added:

  Delete files from the TR-DOS by pressing 8;
 Released into the window BASIC128, TR-DOS, CACHE, STS and
 etc.;
 Preferences window: enable / disable mouse / joystick 
conditions tanovit color BORDER; save the settings

 body shell;
 paging arrow.
 - Fixed:

  deleting a file in the TR-DOS;
 curtailment of sockets in the shell, bug with subcategory
 Taloga when moving to another panel;
 function to load the specified offset
inside the file "in the TR-DOS.
- Various changes / fixes in the prog /
utilities.



          16.02.2005 DNA v0.429
- The three main sections, one
additional section in the modes of LBA / CHS.



          02.02.2005 DNA v0.428
- A new screw driver with support LBA and
new method for determining the partition in LBA results
regime.

Earned in Alone Coder'a (with poll and
without consulting the DRQ to each byte).



          10.01.2005 DNA v0.427
- Only one section of the screw, only CHS.

Did not work in Alone Coder'a for non
lnogo method for determining the beginning of the section.




Other articles:

Classics - Almanashnik. Alexander Pushkin.

For Coderz - Recognition and computation of arithmetic expressions on their character record.

Inferno - The authors of the magazine.

For Coderz - the discipline to create large projects.

Interview - Questions Konstantin Sviridov (Conan) on the site zxnext.narod.ru.

Likbez - The principles of converting graphics PC-ZX.

For Coderz - Programming disc changer / drive in Scorpio.

Softinka - DNA_OS v0.431 - package of utilities for working with hard drives, RAM-drives and floppy disks.

For Coderz - Programming under DNA_OS ZET-9, a package of tools to work with storage devices.

Softinka - The problems and shortcomings package of tools to work with storage devices DNA_OS.

Likbez - details about disk formats that are FAT.

Inferno - Entered from the editor.

Inferno - Errors in the previous numbers.

For Coderz - Small programmers' tricks.

Gameland - On the new games: Oneyroid, Dizzy forever, Dridlock.

For Coderz - Writing archive. Practical principles LZ packaging.

Gameland - Passage of new shipments for the game "Black Crow".

For Coderz - Programming for the video mode 384x304.

Inferno - Letters to the Editor.

Sound - Eden Megus'a about the tracker for the AY / YM.

Inferno - On the shell.

For Coderz - Fundamentals of optimization for the processor Z80.

Likbez - The location of partitions on your hard drive.

Gamedev - 3D projection of the floor / road in the games.

Sound - Wild ideas for AY trackers.

Advertising - Ads by Roman Chuunin.

Advertising - Ads by V. Bogdanovich

For Coderz - How a large Flexible Program.

Repair - Faults Pentagon 128 + and their repair.

Inferno - Content.

Miscellaneous - Thoughts on the contest for the best software.

Others - Transfer software on ZX Spectrum with a PC.

Video - On packaging for a video ZX Spectrum.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
arhivchiki - TAPPER.
Rest In Pain - On a glitch spoil life.
PC and Spectrum - Review of Spectrum Emulator ZX MAK v0.240.

В этот день...   21 November