Give the operating system a job!
ZXNet echo conference «code.zx»
From Ivan Mak → To All coders 20 March 1998
Hello All.
Subj!
This is an appeal to all programmers writing on Spectrum.
Please use disc #3D13.
In this case, of course, many questions arise with error handling and protection
programs from copying.
There's nothing you can do about the defense. I agree, you can’t do without non-standard ones
formats and I'm not against it.
But, if you are making a program for everyone, without copy protection, then just
it is necessary to use standard access in TR-DOS, at addresses #3D00,
#3D03 and #3D13. Many spectrists now have hard drives and RAM disks.
I believe that network drives will appear soon. When working with such
devices, many problems arise when the program runs in TR-DOS via
non-standard input.
After all, it wouldn't be bad if the user had a choice
disk operation mode. If you are working with a real disk, you can
use all TR-DOS entry points, if the program is launched from the hard drive
or RAM-Disk, then standard entry points are used.
If the program has such a choice, then it retains all the advantages of the programs
with turbochargers and at the same time can work with other devices
external memory.
Winchester and RAM-Disk will in any case work faster than a regular floppy disk with
turbo loading and, for example, the same POWER_UP would work without brakes with
RAM-Disk using #3D13.Question: How to choose the operating mode?
Answer: Ask the user. In a cooler program you can do
appropriate note in the program so that you don’t have to ask again and
again. You can have something like Setup to select the mode of operation with
disks.
I consider it undesirable to fully automatically select the disk operation mode,
because More and more new devices are appearing that use override
#3D13 is inside TR-DOS and it may not be detected by the program.
And one more note. Very often it turns out that a program with
The turboloader does not work normally if it is not launched from disk A. Imho,
It’s not at all difficult, when starting the program, take a variable, a copy of the port #FF
TR-DOS, save it if TR-DOS data is killed, and use
your copy everywhere in the turboloader.
Iva