IMMEDIATE Z-SYSTEM PROBLEMS by Richard Conn IF PROBLEM UNDER ZCPR 3.0/3.1/3.2 As many of you are aware, there are various versions of my original FCP floating around (version 1.4 is the latest I heard of). Somewhere along the way, Jay Sage decided to reverse the state of the program error flag. This is a fundamental change to the definition in the ZCPR3 Environment descriptor, and, as many of you who understand Z-System fundamentals are aware, such a change can have a ripple-effect over the entire Z-System. If you are going to reverse the program error flag (like Jay did), then you have to CHANGE EVERY PROGRAM WHICH USES THIS FLAG. As you can guess, I'm rather busy at this time (like all times, it seems), and I really don't have the time now to scan every program (over 70 programs with ZCPR3, plus DISCAT, plus TERM III, plus ...). Hence, Jay's action stands as-is for the time being. You will find some programs responding to the IF ERROR flag one way, others another, until I release ZCPR 3.3. At that time, because Jay's approach DOES provide more flexibility to the system, the IF ERROR flag will indicate no error if 0 and an error if not 0; if not 0, the specific value may have significance in further identification of the error. ZCPR3 CPR PROBLEM Jay has also taken it upon himself to play with the ZCPR3 CPR and modify the Environment Descriptor in other ways, particularly by making use of areas I had originally set aside for user (rather than system) definition. This impacts any user programs which were freely using the user-defined SYSENV areas (which, in particular, impacts some of my plans with TERM III). Hence, be warned that if you are using Jay's ZCPR3 CPR, it is possible that you may find things crashing down if some program comes in and modifies something in the user-defined area of SYSENV. GENERAL NOTE Both of these problems reflect the consequences of making changes to the base of the Z-System itself. Unlike conventional CP/M, the Z-System is integrated with its programs to a great extent. Any change to a definition in the Environment Descriptor has the potential of impacting EVERY PROGRAM, forcing a change to be required to EVERY PROGRAM. If I had not already begun work and plans on ZCPR 3.3, I would really have been disturbed by the disruption of the Z-System caused by Jay's actions. As it is, the creation of ZCPR 3.3 will naturally impact SYSENV, and I had already planned on making the required changes to EVERY PROGRAM and DOCUMENTING the nature of the change (so that others writing Z-System programs know what to look for). Now that I am working full-time on the Z-System, I plan to keep an eye out particularly for such disruptions in the future and stop them before they go too far (if necessary).