; Possible DOS+ Incompatibilities with CPM 2.2 ; - The IX and IY registers are used, and restored to user values ; on function exit. Bios calls from DOS+ are protected. DOS+ ; does not use the alternate register set. Interrupt systems ; that modify and do not restore IX & IY will cause failure. ; - SYS (T2) attribute automatically marks files non-writable. ; - The CTL-S pause mechanism always works. Programs that depend ; on 2 char input buffering (DOS buffer and hardware) may fail. ; - Console output chars 0fch and 0fdh are now input on function 6. ; Compatibility mode inhibits this feature. ; - Buffered console input (function 10) treats DEL/RUBOUT as BS, ; and does not implement the ^R repeat line operation. Will not ; end a line when full, refuses chars until entered. Marks ; line end with a 0 byte. Thus max length 1 less than original. ; - Version returned is 2x, where x is DOS+ revision (4 up). Values ; in hex. This allows discrimination against CPM2.2, and avoids ; confusion with CPM3. The compatibility bit forces 2.2 value. ; Note that call #210 with e = 0 will always return a non-zero ; value, so that DOS+ can be detected in compatibility mode. ; - Files written with more than 65536 records will not be legible ; to CPM2.2 systems (but will be to CPM3 systems). ; - Time stamp directory entries may appear as peculiar file names ; on user 33 to some utilities. CPM2 and 3 will not access them. ; - The date/time file stamp format is INCOMPATIBLE with CPM3. ; dates will be garbage data if read there (and vice-versa). ; This is caused by maintenance of 3 (not 2) dates with DOS+ ; NOTE: The following do not agree with CPM2.2, but DO agree with ; Digital Researchs CPM 2.2 documentation ; - Console status call returns 0ffh for ready, rather than 01 ; - SYS files on user area 0 are visible to all users ; ; Added features can be enabled/disabled by the following data: ; - Enable PATH by putting address of PATH in offset 14H. If this ; value is 0 no path is used. Suggested value 046H. ; NOTE power-on cold-boot should clear the PATH string (0 at Path^) ; - Enable DOS+ time and date stamping with a suitable (non-zero) ; data address at offset 16H. Suggested value 040h (5 bytes used). ; - Enable other features with the flag byte at offset 18h: ; MSB 76543210 LSB ; ^^^^^ ^---- 1 = Echo console to list. ^P complements ; ||||| (this locn allows applications to control) ; ||||^------- 1 = compatibility bit. Causes verno call to ; |||| return 2.2. Disables fc/fd operand on DCIO ; |||^-------- 1 = do file access time stamp (timeat <> 0) ; ||| (disable caters to wrt-protected disks) ; ||^--------- 1 = enable break on DCIO (if following bit) ; |^---------- 1 = enable user break, 0 = disable (see 19h) ; | When disabled ^C will not abort either. ; ^----------- 0 = time address is location of time array ; 1 = time address is location of routine ; (when non-0 address in offset 16h only) ; (value x10x1000b for maximum CPM2 compatibility) ; - If user breaks enabled, the char at offset 19h will break. ; - CCP+ can access wheel byte, suggested location 045h. This allows ; path/wheel to be initialized by "lxi h,0ffh; shld 45" in bios. l{