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