


Type P to Pause, S to Stop listing

NEWDOS/80, Version 2, Model III ZAPS     04/08/83.


CAREFULLY STUDY chapter 11 of NEWDOS/80 documentation for instructions on how
to apply zaps.

Some modules have multiple versions with the zaps different in each version. 
Use the verify to determine which version you have and apply the appropriate
zap(s).  If you have a version different from any listed (i.e., the verify(s)
do not match, contact the program's distributor or Apparat).  Apparat is trying
to get the program creator/maintainer/distributor to create and distribute the
necessary zaps to run with NEWDOS/80, Version 2, but where this does not occur
and for widely used programs, Apparat will generate any necessary zaps.  If
Apparat decides to generate the zaps and does not have your particular version,
you will be asked to send the version you have on a diskette to Apparat (as a
gift to Apparat, see chapter 11) so that Apparat may determine the appropriate
zaps; Apparat will not seek out your version from another source, and will not
create a zap from a paper listing.



* * *  NEWDOS/80 Version 2.0 Model III ZAP Index * * *
(Index listed in order of Filename) Current to Zap 088.
                                   
 ZAP#   Type       Area    Program       Reference                        
 ---  ---------   ------  ----------   -----------------------------------
                                                                          
  75  Mandatory   Utility ASPOOL/MAS   *ASP,S function                    
  50  Mandatory   User    BASCOM/CMD   Microsoft BASIC COMPILER v.5.23    
  16  Mandatory   BASIC   BASIC/CMD    Marked & Fixed Item File Processing
  48  Mandatory   BASIC   BASIC/CMD    CLOSE command                      
  82  Mandatory   BASIC   BASIC/CMD    CMD"O" function                    
  85  Mandatory   BASIC   BASIC/CMD    RBA Extended to 16,777,215         
  50  Mandatory   User    BRUN/CMD     Microsoft BASIC COMPILER v 5.23    
  50  Optional    User    BRUN/CMD     Microsoft BASIC COMPILER v.5.23    
  13  Mandatory   Utility CHAINBLD/BAS Version 1 Format                   
  70  Mandatory   Utility CHAINBLD/BAS Non-Displayed Character            
  50  Optional    User    DIR/SYS      Microsoft BASIC COMPILER v.5.23    
  22  Mandatory   Utility DISASSEM/CMD RTD Option                         
  72  Mandatory   User    EDIT/CMD     Microsoft FORTRAN                  
  30  Information Utility EDTASM/CMD   Documentation errors               
  30  Information Utility EDTASM/CMD   Tape I/O for Mod III not available 
  17  Mandatory   Utility EDTASM/CMD   Cursor Display                     
  41  Mandatory   Utility EDTASM/CMD   Filespec Response & <Sh-Lf-Arrow>  
  81  Mandatory   Utility EDTASM/CMD   File Close Problem                 
  83  Mandatory   Utility EDTASM/CMD   Drives stopping                    
   3  Optional    Utility EDTASM/CMD   Disable LC to UC Conversion        
  72  Mandatory   User    F80/CMD      Microsoft FORTRAN                  
  46  Mandatory   User    INIT         PROFILE v 3.0                      
  50  Mandatory   User    L80/CMD      Microsoft BASIC COMPILER v.5.23    
  72  Mandatory   User    L80/CMD      Microsoft FORTRAN                  
  50  Optional    User    L80/CMD      Microsoft BASIC COMPILER v.5.23    
  53  Mandatory   Utility LMOFFSET/CMD Object Code Block Load             
  76  Mandatory   Utility LMOFFSET/CMD Appendage                          
  28  Mandatory   User    RSCOBOL/CMD  Ryan-McFarland Corp COBOL v 1.3B   
  28  Mandatory   User    RUNCOBOL/CMD Ryan-McFarland Corp's COBOL v 1.3B 
  77  Mandatory   User    SCR17/CTL    R. S. Model III SuperScripsit V1.0 
  84  Mandatory   User    SCR17/CTL    R. S. Model III SuperScripsit V1.1 
  87  Mandatory   User    SCR17/CTL    R. S. Model III SuperScripsit V1.2 
   1  Mandatory   User    SCRIPSIT/CMD SCRIPSIT for Model III (TRSDOS 1.2)
  42  Mandatory   User    SCRIPSIT/CMD SCRIPSIT v 3.1 (TRSDOS 1.1 or 1.2) 
  43  Mandatory   User    SCRIPSIT/CMD Correction to Zap 1, 42            
  77  Mandatory   User    SCRIPSIT/CMD R. S. Model III SuperScripsit V1.0 
  84  Mandatory   User    SCRIPSIT/CMD R. S. Model III SuperScripsit V1.1 
  87  Mandatory   User    SCRIPSIT/CMD R. S. Model III SuperScripsit V1.2 
  78  Mandatory   User    SCRIPSIT/CMD Model III Scripsit v 3.2           
   2  Mandatory   User    SCRIPSIT/LC  Radio Shack's Model I SCRIPSIT     
  14  Mandatory   User    SCRIPSIT/LC  Radio Shack's Model I SCRIPSIT     
   2  Mandatory   User    SCRIPSIT/UC  Radio Shack's Model I SCRIPSIT     
  14  Mandatory   User    SCRIPSIT/UC  Radio Shack's Model I SCRIPSIT     
  12  Mandatory   Utility SUPERZAP/CMD DM,P functions                     
  27  Mandatory   Utility SUPERZAP/CMD DM & F functions                   
  65  Mandatory   Utility SUPERZAP/CMD DMDB function                      
  15  Mandatory   DOS     SYS0/SYS     ROUTE command                      
  20  Mandatory   DOS     SYS0/SYS     Sector Write Retries               
  34  Mandatory   DOS     SYS0/SYS     ROUTE command                      
  38  Mandatory   DOS     SYS0/SYS     Remove Unreleased Zap              
  39  Mandatory   DOS     SYS0/SYS     Disk Write Precompensation         
  54  Mandatory   DOS     SYS0/SYS     AM Disk Controllers                
  54  Mandatory   DOS     SYS0/SYS     8 Inch Disk Operation              
  56  Mandatory   DOS     SYS0/SYS     4445H call to DOS                  
  31  Mandatory   DOS     SYS2/SYS     Directory Entries                  
  29  Mandatory   DOS     SYS3/SYS     CLOSE & KILL commands              
  37  Optional    DOS     SYS3/SYS     'JKL':  Graphics to Epson Printers 
  88  Mandatory   DOS     SYS5/SYS     DEBUG:  I & C functions            
   9  Mandatory   DOS     SYS6/SYS     COPY Format 5                      
  11  Mandatory   DOS     SYS6/SYS     COPY & FORMAT:  DDSL parameter     
  18  Mandatory   DOS     SYS6/SYS     Granule Lockout Table in Directory 
  19  Mandatory   DOS     SYS6/SYS     FORMAT & COPY commands             
  20  Mandatory   DOS     SYS6/SYS     Sector Write Retries               
  23  Mandatory   DOS     SYS6/SYS     FORMAT:  PFST parameter            
  25  Mandatory   DOS     SYS6/SYS     TRSDOS 2.3B (I) or TRSDOS 1.3 (III)
  26  Mandatory   DOS     SYS6/SYS     TRSDOS 2.3B (I) or TRSDOS for Mod 3
  35  Mandatory   DOS     SYS6/SYS     SYSTEM:  BM parameter disabled     
  39  Mandatory   DOS     SYS6/SYS     Disk Write Precompensation         
  40  Mandatory   DOS     SYS6/SYS     PDRIVE:  8 Inch, Double Density    
  49  Mandatory   DOS     SYS6/SYS     Disk Write Precompensation         
  51  Mandatory   DOS     SYS6/SYS     COPY:  CBF param & Model III TRSDOS
  52  Mandatory   DOS     SYS6/SYS     COPY command                       
  74  Mandatory   DOS     SYS6/SYS     COPY:  TRSDOS 2.3B or Higher       
  80  Mandatory   DOS     SYS6/SYS     COPY Format 5                      
   7  Optional    DOS     SYS6/SYS     Double Density Format Sensitivity  
   8  Optional    DOS     SYS6/SYS     To allow COPY of TRSDOS 1.2 (Mod 3)
  73  Optional    DOS     SYS6/SYS     Model I TRSDOS 2.7DD Diskettes     
  44  Mandatory   DOS     SYS8/SYS     DIR $ or DIR $0                    
  55  Optional    DOS     SYS8/SYS     DIR:  Remote Terminal Operators    
  59  Mandatory   DOS     SYS9/SYS     Chaining:  /./5Y function          
  85  Mandatory   BASIC   SYS10/SYS    RBA Extended to 16,777,215         
  33  Mandatory   BASIC   SYS11/SYS    RENUM function                     
  36  Mandatory   BASIC   SYS12/SYS    REF$ function                      
  15  Mandatory   DOS     SYS14/SYS    ROUTE command                      
  64  Mandatory   DOS     SYS14/SYS    CREATE:  Old File's EOF            
  45  Optional    DOS     SYS14/SYS    PRINT & LIST:  Control Characters  
  10  Mandatory   DOS     SYS16/SYS    PDRIVE error                       
  25  Mandatory   DOS     SYS16/SYS    TRSDOS 2.3B (I) or TRSDOS 1.3 (III)
  40  Mandatory   DOS     SYS16/SYS    PDRIVE:  8 Inch, Double Density    
  35  Mandatory   DOS     SYS17/SYS    SYSTEM:  BM parameter disabled     
  52  Mandatory   DOS     SYS17/SYS    COPY command                       
  36  Mandatory   BASIC   SYS18/SYS    REF$ function                      
  58  Mandatory   DOS     SYS18/SYS    Bad Sector Information             
  71  Mandatory   BASIC   SYS18/SYS    REF= statement                     
  62  Mandatory   BASIC   SYS19/SYS    Dynamic MERGE                      
  66  Mandatory   BASIC   SYS21/SYS    CMD"O" function                    
  82  Mandatory   BASIC   SYS21/SYS    CMD"O" function                    
   5  Mandatory   User    VC/CMD       VISICALC Model 3 (TRSDOS 1.2)      
   6  Mandatory   User    VC/CMD       Radio Shack's Model I VISICALC     
  21  Mandatory   User    VC/CMD       Radio Shack's Model I VISICALC     
  63  Mandatory   User    VC/CMD       Model III VISICALC v.VC-150Y0-T83  
  67  Mandatory   User    VC/CMD       Model III VISICALC v.VC-160Y0-T83  
   4  Information DOS     Command      ATTRIB:  LRL=xxx Parameter         
   4  Information DOS     Command      ROUTE:  display of routes          
   4  Information DOS     Command      COPY:  DFO parameter               
   4  Information DOS     Command      FORMAT:  RWF parameter             
   4  Information DOS     Command      TRSDOS $RAMDIR & $FILPTR           
  24  Information DOS     Command      Model I & Model III Data Exchange  
  24  Information DOS     Command      COPY:  Formats 5 & 6 discussed     
  30  Information DOS     Command      Documentation Correction           
  32  Information DOS     Command      ROUTE:  Documentation Correction   
  32  Information BASIC   Command      CMD"O":  explanation               
  32  Information DOS     Command      SYSTEM:  AX parameter correction   
  47  Information DOS     Command      SYSTEM:  AJ=N explanation expanded 
  57  Information DOS     Command      DIR & FREE Error Messages          
  57  Information User    Command      Program Parameters                 
  59  Information User    Command      Program Parameters                 
  60  Information DOS     Command      COPY:  Format 6                    
  60  Information DOS     Command      GAT Overflow & CBF with FMT COPY   
  60  Information DOS     Command      LIST & PRINT:  no graphics         
  68  Information DOS     Command      Accessing files on Model III TRSDOS
  69  Information DOS     Command      Accessing Model I TRSDOS 2.3B & Up 
  79  Information BASIC   Command      CMD"O" & Multi-Dimension Arrays    
  57  Information BASIC   Command      BASIC Line Number Sequence         
  57  Information DOS     Features     Main Memory, High Memory, MINI-DOS 
   4  Information DOS     General      Reserved Zap Areas in Newdos/80    
  32  Information DOS     General      Cassette I/O                       
  32  Information DOS     General      Automatic Density Recognition      
  47  Information DOS     General      TRSDOS 2.3B (I) & TRSDOS 1.3 (III) 
  47  Information DOS     General      Chain Filename & /JCL Entension    
   4  Information DOS     Mini-dos     Illegal under DOS-CALL             
  24  Information BASIC   Utility      RENUM usage                        
  32  Information DOS     Zap 25       Documentation Correction           
  60  Information DOS     Zap 54       AM Disk Controllers                
  86  Information DOS     Zaps         NEWDOS/80 VERSION 2.5              

The ZAPS for the Model III/IV are numbered from 01 to 88. Check the Index (by
Filespec or Number) to find the one(s) you wish.




******** ZAP 001 ******** 08/10/81 ******** V2M3 ********

Mandatory zap to Model III TRSDOS 1.2 Version of SCRIPSIT to run under
NEWDOS/80 Version 2.  This zap module will not run on other DOSs.  If you are
running NEWDOS and files appear to load short one sector, be sure these zaps
are in.  The first two zaps allow for the difference between NEWDOS/80 and the
older TRSDOSs in the FCB NEXT and EOF fields.  The next 2 zaps move the stack
area down so MINI-DOS can be used.

SCRIPSIT/CMD,11,3E     change   01 05 4F   to   01 00 4F

SCRIPSIT/CMD,11,C9     change B7 C4 D8 5D 79 32 FC 7B 11   to   B7 32 F9 7B C4
D8 5D 00 11

SCRIPSIT/CMD,00,1E     change   31 FF 41   to   31 E0 41 SCRIPSIT/CMD,00,B2    
same as above

SCRIPSIT/CMD,04,11     change   31 FD 41   to   31 DE 41 Perform the same for
locations  06,C0  12,35  17,33  18,E1  27,ED  and  30,0D




******** ZAP 002 ******** 08/10/81 ******** V2M3 ********

Mandatory zap to the old Model I versions of SCRIPSIT/UC and SCRIPSIT/LC to run
under NEWDOS/80 Version 2 on the Model III.  This zapped module will not run on
other DOSs.  The first 3 changes are necessary because of the different way the
FCB's NEXT and EOF fields are maintained.  If you are running NEWDOS and files
appear to load short one sector, check to make sure these zaps are in.  The 4th
zap causes DOS' HIMEM address value in 4411H - 4412H to be used as SCRIPSIT's
high memory.  The 5th zap re-enables the interrupts so MINI-DOS can be invoked
from SCRIPSIT.  The 6th through 9th zaps cause parallel printer output to go to
port 0F8H.  The 10th zap allows for the Model III treating each shift key as an
individual code.  The 11th through 13th zaps change the stack ptr to allow for
MINI-DOS.

SCRIPSIT/UC,11,75  and  SCRIPSIT/LC,11,75 change   47 00 CD 6E 7A 4F   to   47
00 3A B9 7C 4F

SCRIPSIT/UC,11,FB  and  SCRIPSIT/LC,11,FB change   B7 C4 EF 5D 79   to   B7 32
B6 7C C4

SCRIPSIT/UC,12,00  and  SCRIPSIT/LC,12,00 change   32 B9 7C 11   to   EF 5D 00
11

SCRIPSIT/UC,00,63  and  SCRIPSIT/LC,00,63     change 7C 21 FF 00 25 7E 2F 77 AE
20 F9 22   to 7C 2A 11 44 00 00 00 00 00 00 00 22

SCRIPSIT/UC,00,C3  and  SCRIPSIT/LC,00,C3 change   57 F3 ED   to   57 00 ED

SCRIPSIT/UC,00,47  and  SCRIPSIT/LC,00,47     change 0A 32 E8 37 AF   to   0A
D3 F8 00 AF

SCRIPSIT/UC,20,B1  and  SCRIPSIT/LC,20,B1     change 0D 32 E8 37 32   and   0D
D3 F8 00 32

SCRIPSIT/UC,21,79  and  SCRIPSIT/LC,21 79     change 0D 32 E8 37 D3   to   0D
D3 F8 00 D3

SCRIPSIT/UC,41,3A  and  SCRIPSIT/LC,41,3A     change 20 32 E8 37 08 C3 74 5F 32
E8 37 C3   to 20 D3 F8 00 08 C3 74 5F D3 F8 00 C3

SCRIPSIT/UC,15,43  and  SCRIPSIT/LC,15,43     change 10 CB 08 30 34 FD 34 4E FD
35 4E 20 2C C6 20 18 28 D6   to 10 57 78 E6 03 28 33 FD 7E 4E B7 20 2D CB EA 18
29 D6

SCRIPSIT/UC,00,43  and  SCRIPSIT/LC,00,43     change 31 FC 41   to   31 E0 41

SCRIPSIT/UC,00,D3  and  SCRIPSIT/LC,00,D3     change 31 FC 41   to   31 E0 41

SCRIPSIT/UC,04,32  and  SCRIPSIT/LC,04,32     change 31 FA 41   to   31 DE 41 
(perform the same for the following six locations:  07,00  12,63  17,52 28,CD 
30,ED  and  40,E5





********* ZAP 003 ******** 08/10/81 ******** V2M3 ********

Optional zap to EDTASM/CMD to disable the lower case to upper case conversion
done by EDTASM's keyboard input routine.  Most functions within EDTASM will
still require upper case, but comments and operands enclosed in single quotes
(for DEFM and DEFB) will accept lower case.

EDTASM/CMD,28,DD     change   FE 61 D8   to   FE 80 D8



******** ZAP 004 ******** 08/10/81 ******** V2M3 ********

This is information rather than an actual zap.

1.  Where possible, the NEWDOS/80 modules have reserved zap areas.  Apparat
purposely did not mention them in its documentation as it did not want to draw
attention to them.  Users are hereby warned that Apparat will preempt these
areas without preliminary notice and in its zap verifies will expect these
areas to contain zeroes.  Users who apply non-Apparat zaps into these areas
should carefully maintain logs of what they have done to compare against future
NEWDOS/80 zaps for area conflicts.

2.  The DOS command ATTRIB (see section 2.3) has an additional optional
parameter, LRL=xxx, not specified in that section.  LRL=xxx specifies the new
logical record length of records in the file where xxx is an integer between 1
and 256.  This record length is used now only by DIR, but if user processing
assumes a file has a given record length, some users may want the DIR display
to reflect it.

3.  MINI-DOS (see section 4.2) is illegal under DOS-CALL (see section 4.4).  If
the DFG keys are depressed while DOS is under DOS-CALL, the triple key
depression will be ignored.

4.  DOS command ROUTE (see section 2.43) has been altered such that existing
routes are displayed only if the ROUTE command has no parameters.

5.  DOS command COPY (see section 2.14), format 6 (CBF) has a new optional
parameter DFO (Destination Files Only).  If DFO is specified, then file
contents are copied if and only if the file previously existed on both the
destination and source diskettes.  DFO is mutually exclusive with FMT.

6.  DOS command FORMAT (see section 2.22) has a new optional parameter RWF (RaW
Format).  If RWF is specified, all errors are ignored and each track is
formatted once, whether or not the format actually takes.  RWF is used when the
user wishes to obliterate the information on a damaged diskette and doesn't
have a magnet.  RWF is mutually exclusive with  KDN, KDD, DDSL, DDGA and PFST.

7.  NEWDOS/80 Version 2 does not have the equivalent of Model III TRSDOS's
$RAMDIR or $FILPTR functions.




******** ZAP 005 ******** 08/10/81 ******** V2M3 ********

Mandatory zap to allow the TRSDOS 1.2 Model III VISICALC to operate with Model
III NEWDOS/80 Version 2.  The first zap sets the proper BREAK key enable
address.  The 2nd zap disables VISICALC's directory search feature.

The directory search capability of VISICALC is disabled as NEWDOS/80 does not
have the RAMDIR facility that Model III TRSDOS does.  However, it is possible
to use MINI-DOS to search the directory by (1) typing in the /SL command, (2)
pressing DFG to enter MINI-DOS, (3) perform the MINI-DOS functions, (4) clear
the display, (5) exit from MINI-DOS, (6) back in VISICALC, press three or more
CLEARs to clear the command state, (7) execution one of the /T commands to
restore the VISICALC display.

VC/CMD,00,F7     change   52 AE 42 36   to   52 78 44 36

VC/CMD,72,0D     change   E5 CD 90 42 FD   to   E5 3E 08 B7 FD




******** ZAP 006 ******** 08/10/81 ******** V2M3 ********

Mandatory zap to allow the old Model I VISICALC to operate with Model III
NEWDOS/80.  The resulting zapped module will not run with TRSDOS or NEWDOS21;
so maintain 2 different versions.  The first 3 zaps deal with the different
handling by NEWDOS/80 of the user 25ms interrupt routines (see sections 3.8 and
3.9).  The 4th zap adjusts for NEWDOS/80's difference from TRSDOS on a returned
error code causing VISICALC's directory search to hang if any of the 4 drives
are not present or have no diskette mounted.  The 5th and 6th zaps adjust for
the different HIMEM location in the Model III.  The 7th zap disables the 4315H
disable of DEBUG (not used on Model III).

VC/CMD,03,2B     change 09 3E 00 21 20 03 22 51 9F C9 79   to   09 18 BB 00 00
08 08 C3 EF 9B 79

VC/CMD,75,15     change   11 28 9C 22   to   11 1E 55 22

VC/CMD,75,21     change CD 10 44 C9 3E 03 C3 13 44 CD 4E 53 F5 CD 16 9C 28 0E
3E   to CD 7B 44 C9 11 1E 55 C3 13 44 CD 4E 53 CD 16 9C C8 00 3E

VC/CMD,73,01     change   C9 FE 18 20   to   C9 37 C9 20

VC/CMD,00,18     change   2A 49 40 7D   to   2A 11 44 7D

VC/CMD,00,DC     change   2A 49 40 11   to   2A 11 44 11

VC/CMD,00,F2     change   00 77 01   to   00 00 01



******** ZAP 007 ******** 08/10/81 ******** V2M3 ********

Optional zap to increase or decrease the sensitivity of double density diskette
formatting.  One of three byte patterns can be chosen, depending on the
reliability of your interface, drive and diskettes.  The more sensitive the
byte pattern, the greater the probability a marginal diskette will fail format
and the lesser the probability that having formatted successfully, the diskette
will fail later (under normal careful handling).  The less sensitive the byte
pattern, the lesser the probability a marginal diskette will fail format and
the greater the probability that having formatted successfully, the diskette
will fail later.  The byte patterns are:


1.  E5 E5  =  least sensitive during formatting.  This was and is the single
density standard pattern.

2.  5B 5B  =  intermediate sensitivity during formatting.  This is the TRSDOS
Model III pattern.

3.  6D B6  =  most sensitive during formatting.  This pattern strains the disk
formatting and if the interface, drives and diskettes are not in first class
condition, 30% or more of the diskettes will fail formatting.


Depending upon the frequency of format failures to diskette failures at other
times, the user chooses which of the three 2 byte patterns to use and inserts
them in the following locations, first checking that one of the three patterns
is already at those locations.  Each location receives both bytes, and as a
check on each location, the preceding byte is F5.

SYS6/SYS,31,E3

SYS6/SYS,31,FD



******** ZAP 008 ******** 08/10/81 ******** V2M3 ********

Optional zap to allow the COPY function to use Model III diskettes in the
TRSDOS 1.2 or earlier directory format instead of the TRSDOS 1.3 format the
COPY command is prepared to handle.  The zap must be backed off when the user
wants to re-enable COPY to handle TRSDOS 1.3 format Model III diskettes.

SYS6/SYS,14,75     change   01 00 7B   to   01 01 7B

SYS6/SYS,14,C8     change   01 00 1D 4E 01 13 00   to   01 13 1D 4E 01 00 00

SYS6/SYS,20,EA     change   61 C8 5E   to   61 C9 5E




******** ZAP 009 ******** 08/18/81 ******** V2M3 ********

Mandatory zap to correct error in format 5 COPY where the BOOT sector was not
receiving the correct directory starting lump number if this differed from the
PDRIVE specification.  The error would manifest itself by directory read error
in DIR.

SYS6/SYS,05,96     change   64 01 00 01 18   to   64 CD 80 5C 18

SYS6/SYS,15,46     change 00 00 00 00 00 00 00 00 00 00 00 00 00 00   to 01 00
01 B7 C0 13 13 1A 32 BC 64 1B 1B C9




******** ZAP 010 ******** 08/18/81 ******** V2M3 ********

Correct error in PDRIVE causing SYSTEM PROGRAM NOT FOUND error when the second
drive number is specified wrongly as greater than 9.

SYS16/SYS,00,6A     change   C3 1A 52 CB   to   C3 3C 50 CB





******** ZAP 011 ******** 08/18/81 ******** V2M3 ********

Mandatory zap to correct error in COPY and FORMAT where DDSL parameter was
being erroneously rejected.

SYS6/SYS,01,FA     change   CB 70 20   to   CB 52 20




******** ZAP 012 ******** 08/25/81 ******** V2M3 ********

Mandatory zap to SUPERZAP to correct an error where the DM,P functions was not
sending the correct memory contents to the printer.

SUPERZAP/CMD,00,04     change 00 00 00 00 00 00 00 00 00 00 00 00 00   to 3A 91
54 CB 5F C0 2A B4 54 22 95 54 C9

SUPERZAP/CMD,03,43     change   54 3A 91 54 CB   to   54 CD 00 52 CB



******** ZAP 013 ******** 08/25/81 ******** V2M3 ********

Mandatory zap to correct next-without-for error occuring when CHAINBLD is
saving a file in version 1 format and the last line starts with a /./ sequence.

Add to the end of line 126 of CHAINBLD/BAS the following eight characters:  
:GOTO130



******** ZAP 014 ******** 08/25/81 ******** V2M3 ********

This zap is an extension of ZAP 002.

SCRIPSIT/UC,00,28   and   SCRIPSIT/LC,00,28     change
56 49 53 49 4F 4E 20 4F 46 20 54 41 4E 44 59 20 43 4F 52 50 4F 52 41 54 49 4F
4E 31
to
56 20 4F 46 20 54 41 4E 44 59 20 43 4F 52 50 3A 80 38 CB 4F C8 F6 01 C9 00 00
00 31

SCRIPSIT/UC,15,08   and   SCRIPSIT/LC,15,08     change 0B 3A 80 38 FD   to   0B
CD 33 52 FD

SCRIPSIT/UC,15,34   and   SCRIPSIT/LC,15,34     change 0D 3A 80 38 47   to   0D
CD 33 52 47




******** ZAP 015 ******** 08/28/81 ******** V2M3 ********

Mandatory zap to DOS to allow ROUTE of the display to cause the BASIC PRINT of
a numeric value to not output the value twice.

SYS0/SYS,07,61     change   28 39 CD   to   28 5D CD

SYS0/SYS,07,9A     change
C9 23 7E 23 66 6F 7C B5 C8 7E BB 23 20 02 7E BA 23 20 EE E5 D5 C5 7E A0 23 23
23 5E 23 56 D5 DD E1 7A B3 C4 8B 06 C1 D1 E1 CB 40 28 D4 B7 28 D1 C9 CD
to
C9 7E BB 23 20 02 7E BA 23 20 1A E5 D5 C5 7E A0 23 23 23 5E 23 56 D5 DD E1 CD
8B 06 C1 D1 E1 CB 40 28 02 B7 C0 23 7E 23 66 6F 7C B5 20 D3 C3 9D 4C CD

SYS0/SYS,09,7F     change C9 00 00 00 00 00 00 00 00   to   C9 CB 40 C0 79 C9
49 4B 00

SYS14/SYS,02,86     change   43 00 00 43   to   43 A1 4C 43



******** ZAP 016 ******** 08/28/81 ******** V2M3 ********

Mandatory zap to BASIC to correct error during marked item and fixed item file
processing causing strings greater than 127 characters to be written
erroneously and IGEL expressions of the form  (len)#  and  (len)$ to
malfunction.

BASIC/CMD,10,F1     change   CD BA 61 79 DD   to   CD A8 65 00 DD

BASIC/CMD,14,B1     change 00 00 00 00 00 00 00   to   C5 CD BA 61 79 C1 C9




******** ZAP 017 ******** 08/28/81 ******** V2M3 ********

Mandatory zap to EDTASM to cause the cursor display to be forced every time the
* prompt is displayed, waiting for the next command.  This allows the cursor to
be turned back on after a return from the DEBUG 123 function, which turns it
off.

EDTASM/CMD,05,12     change   CD 39 59 0E   to   CD 00 57 0E

EDTASM/CMD,03,1A     change 40 7D E6 3F C0 11 C0 FF 19 C9   to   40 CD 39 59 3E
0E C3 39 59 C9



******** ZAP 018 ******** 08/28/81 ******** V2M3 ********

Mandatory zap to DOS to ease some of the problems caused by the fact that
NEWDOS/80 Version 1 always used a granule lockout table in the directory GAT
sector whereas Version 2 many times does not, leaving that part of the GAT
sector for use by the extension for the free/allocated table.  Early in the
development of Version 2, the rule was that if the PDRIVE specification for GPL
was greater than 2, then the lockout table was not used.  Later on, the rule
was changed to be if the number of lumps is greater than 60H (96 decimal) or if
relative byte 60H of the GAT sector = 0FFH, then the lockout table is not used.
Some code in SYS6 was not changed to reflect this rule change, causing either a
lock out table to not be created or to not be properly extended when the
destination diskette has more granules than the source diskette.  This change
corrects this.  However, users are warned that diskettes with GPL greater than
2 (such as 8 inch or double sided, single density 5 inch diskettes coming from
Version 1) converted previous to this zap may have trouble with DIRCHECK, on
either Version 1 or 2, complaining that one or more granules are locked out but
free or locked out but allocated to a file.  The diskettes can still be used as
it is only DIRCHECK that has the problem, but sooner or later the diskettes
should be re-copyied using CBF with FMT so this lockout table conflict will be
straightened out and DIRCHECK will stop complaining.

SYS6/SYS,10,0A     change 3A CA 59 FE 02 C0 7D   to   3A C6 59 FE 61 D0 7D



******** ZAP 019 ******** 08/30/81 ******** V2M3 ********

Mandatory zap to DOS to:

1.  Correct error in format 5 and 6 COPY where destination verify error was
causing erroneous END OF FILE ENCOUNTERED or INPUT PAST END error to be
triggered for the next sector.

2.  Allow FORMAT with BDU option and format 5 COPY with FMT and BDU options to
format the destination diskette even though the destination has PDRIVE TI flag
M set  (TRSDOS model III diskette).  The BDU option prevents any NEWDOS/80
system control data from being written on the diskette during format, and thus
allows the Model III diskette to copied via format 5.  ***** Warning, the
resulting diskette is no more processable by NEWDOS/80 than was the source
diskette; the purpose here is to allow a NEWDOS/80 format to occur as would
have happened had TI flag L been set instead of M (which also implies I for
Model III TRSDOS diskettes).  Remember, this is not a TRSDOS Model III format.



SYS6/SYS,07,1E     change   C6 22 1A 5B 3E   to   C6 CD 8E 5C 3E

SYS6/SYS,15,54     change 00 00 00 00 00 00 00 00   to   22 1A 5B DD CB 01 F6
C9

SYS6/SYS,27,6A     change   6F C2 47 67   to   6F C4 51 67



******** ZAP 020 ******** 08/31/81 ******** V2M3 ********

Mandatory zap to DOS to eliminate an excessive number of sector write retries
due to LOST DATA.  Usually the error retry worked, but efficiency suffered as
one diskette revolution (200ms) was lost each time.

SYS0/SYS,02,BD     change C5 06 A2 28 03 04 3E 08 32 E1 46 78 32 AC 46 32 B1 46
to C5 01 02 A2 28 05 01 97 A3 3E 08 32 E1 46 79 CD AB 46

SYS0/SYS,03,62     change
02 3A 87 46 CB 6F 28 07 DB F0 A2 28 FB ED A3 DB F0 A2 28 FB ED A2 7B D3 F4 ED
A2 20 FA 18 FE AF
to
02 DB F0 A2 28 FB ED A2 10 FE 05 7B D3 F4 ED A2 20 FA 18 FE 32 8F 46 78 32 9E
46 32 A6 46 C9 AF

SYS6/SYS,15,5C     change 00 00 00 00 00 00 00 00 00   to 32 A6 46 3E 02 32 8F
46 C9

SYS6/SYS,30,C9     change 3A F4 45 32 AC 46 32 B1 46 21   to 3A F5 45 32 9E 46
CD 96 5C 21




******** ZAP 021 ******** 09/01/81 ******** V2M3 ********

This mandatory zap is an extension to zap 006 for the old Model I VISICALC
being used on the Model III.

Changes to enable use of the right shift key. VC/CMD,03,69     change   E6 01
28   to   E6 03 28

VC/CMD,03,B3     change   E6 01 28   to   E6 03 28

Change to enable directory search feature.  Note, to work, the directory must
start at diskette relative sector 170 and contain only 2 granules (this is the
standard when GPL=2, DDSL=17 and DDGA=2 are in effect). VC/CMD,68,B8     change
90 80 40   to   90 82 40



******** ZAP 022 ******** 09/02/81 ******** V2M3 ********

Mandatory zap to DISASSEM to correct causing the RTD option to write extraneous
data to the diskette and correct a wrong specification in the manual.

On page 6-9, 6th paragraph, change  "1st byte = low value, 2nd = high."  to be 
"1st byte = high value, 2nd byte = low.".

DISASSEM/CMD,04,11     change   5A D5 DD E1 DD   to   5A CD E0 6D DD

DISASSEM/CMD,24,60     change 00 00 00 00 00 00 00   to   D5 DD E1 21 A0 6F C9




******** ZAP 023 ******** 09/02/81 ********  V2M3 ********

Mandatory zap to DOS to specify the mutual exclusivity of the FORMAT parameter
PFST and to correct the rejection of the combination of the Y and the PFST
parameters in FORMAT (see 4th format example on page 2-26).

Append to the end of the PFST=tn3 paragraph on page 2-25 the following:

PFST is mutually exclusive with N, DDND, ODN, KDN, KDD, DDSL, DDGA and RWF.

The user will notice that neither KDD or RWF were specified in the FORMAT
command; however, KDD is a legal parameter and RWF was defined in zap 004.

SYS6/SYS,03 BE     change   02 F9 86   to   02 B9 86

SYS6/SYS,04,90     change   00 02 4E   to   00 00 4E



******** ZAP 024 ******** 09/02/81 ******** V2M3 ********

Information only.

1.  Chapter 12 failed to make it clear that though diskettes are content
interchangeable under NEWDOS/80 Version 2 between the Model I and Model III,
there is a problem dealing with a format control byte for directory sectors of
single density diskettes.  Carefully read SYSTEM options BK and BN (even though
you have only Model III) on page 2-49, WRDIRP command on page 2-52 and the W
function of DIRCHECK on page 6-14.


1.  For Model III NEWDOS/80 Version 2 users, single density diskettes coming
from the model I can be processed on the Model III by setting SYSTEM option
BK=Y, setting up the proper single density PDRIVE and then for each such
diskette, execute once either the DOS command WRDIRP or the W function of
DIRCHECK.  After this is done, the diskette can be used as any other diskette
under Model III NEWDOS/80 Version 2.  Subsequently, this diskette can not be
processed by the Model I TRSDOS 2.3, but it can be processed by the Model I
NEWDOS/80 Version 1 provided the format of the diskette is not changed to one
of the variety of formats available on Version 2 but not available on Version
1).  However, once this diskette is used back on the Model I NEWDOS/80 Version
1 and a directory sector is updated, the diskette cannot be reused on the Model
III without performing again the WRDIRP or DIRCHECK function on that diskette
on the Model III (remember, NEWDOS/80 Version 1 does not have either of these
two functions).

2.  For users that have NEWDOS/80 Version 2 for both the Model I and III and
wish to use single density 5 inch diskettes interchangeably between the model I
and model III, set SYSTEM options BK=Y and BN=Y on the Model I and BK=Y on the
Model III.  Then, for each such single density diskette, execute once either
WRDIRP or the W function of DIRCHECK.  This can be done on either the Model I
or III and all such diskettes do not have to be done at the same session.  Each
such diskette can now be used interchangeably between the Model I and Model III
under NEWDOS/80 Version 2 (don't forget the proper PDRIVE specifications), but
the diskette cannot be processed by TRSDOS 2.3



2.  For BASIC function RENUM (see section 7.9 on page 7-5) the 4th and 5th
formats listed ( RENUM X  and  RENUM U,X ) are not valid and should be deleted
from the middle of page 7-5.  If the  X  parameter is to be used, it must be
done via the 1st format listed as X is meaningless unless specific values for
ppppp and/or qqqqq are also specified.


3.  Some users have asked for more distinctions between full diskette COPY
(format 5) or Copy By File COPY (format 6), both specified in section 2.14.


1.  Format 5 copies a full diskette sector by sector and is generally faster
than format 6, which copies files individually.  However, if the source
diskette is relatively empty, format 6 may be faster.

2.  In format 5 the source directory becomes the destination directory,
including the same size and relative sector position on the diskette, while in
format 6, the two directories are considered separate just as in a format 1
through format 4 COPY.

3.  Generally, if format 5 is used, both the source and destination PDRIVE
specifications for GPL, DDSL and DDGA must be the same (though only the
restriction on GPL is enforced, but not if BDU is specified); the other PDRIVE
parameters may be different provided the destination diskette is to have
atleast as many sectors as the source diskette (though the format 5
specifications say that sectors per track must be the same; this is not so in
Version 2 where it was in Version 1).

4.  Format 5 with the BDU option allows some alien diskettes to be copied that
otherwise could not be copied.

5.  Format 6 allows a diskette's contents to be copied between diskettes having
a different number of granules per lump (GPL), the directories positioned
differently on the diskettes, the directories of different sizes, or the
destination diskette having less sectors than the source.

6.  Format 6 copies all of a source diskette's files or a selected subset of
those files.

7.  Both format 5 and 6 allow the option of formatting the destination diskette
(FMT) or not (NFMT).  Formatting a diskette magnetically initializes the entire
diskette including the inter-sector control bytes used only by the drives and
the controller.  Many users prefer to do this everytime a back up is done.  Of
course, formatting a diskette destroys the previous contents.

8.  If format 6 is being used to copy a NEWDOS/80 Version 2 system diskette,
the FMT option must be specified.  This assures the correct BOOT, SYSTEM and
PDRIVE control informat is stored on the destination diskette, and the correct
positioning of SYSTEM files which, excepting for BOOT/SYS and SYS0/SYS, are all
positioned on the destination diskette in same position relative to the
directory that they are on the source diskette.

9.  In format 6 where NFMT is specified, system files are NOT copied to the
destination diskette if they are not already existing in the destination
directory.  This is because system files usually use specific FDEs in the
directory, and only FMT can assure that these FDEs are available.

10.  Format 5 without BDU and format 6 with FMT both assume the possibility of
the destination diskette being used later as the system diskette and the
destination drive or one like it being used later as drive 0; therefore both
initialize the BOOT/SYS file to contain the proper BOOT code and drive 0 PDRIVE
specifications.





******** ZAP 025 ******** 09/10/81 ******** V2M3 ********

Mandatory zap to DOS to allow files to be copied from and to diskettes used by
Model I TRSDOS 2.3B and higher as well as from and to diskettes used by Model
III TRSDOS 1.3 or higher.  After applying the documentation changes given
below, see section 12.5.1 on page 12-7, the 'flag  M' paragraph on page 2-35
and the bottom half of page 2-15.

This enhancement expands the definition of PDRIVE TI flag M (see page 2-35). 
When the M flag is specified and the TD field specifies double density (i.e.,
TD=E), the PDRIVE specification is assumed for a Model III TRSDOS diskette and
TI flag I is implied (see example 3 on page 2-38).  When the M flag is
specified and the TD field specifies single density (i.e., TD=A), the PDRIVE
specification is assumed for Model I TRSDOS 2.3B or higher diskette, and TI
flag I is not implied and must not be specified (see example 1 on page 2-38
with TI=AM).

Radio Shack has started distributing certain new programs (i.e., COBOL) with or
on Model I TRSDOS 2.3B or higher diskettes with that system being somewhat
different than Model I TRSDOS 2.3, including the use of RBAs as discussed in
section 12.1 for the Model III.  These diskettes are NOT compatible with
NEWDOS/80 diskettes, and, as with Model III TRSDOS diskettes, COPY is the only
function of NEWDOS/80 that can be used with the Model I TRSDOS 2.3B diskettes
(though FREE and DIR (except EOF and special flags) appear to work).

Files on either Model III TRSDOS or Model I TRSDOS 2.3B diskettes that are to
be used either by NEWDOS/80 or user programs executing with NEWDOS/80 must be
copied to NEWDOS/80 diskettes.  FORMAT or COPY with FMT option cannot be used
to format a diskette in either the Model III TRSDOS or the Model I TRSDOS 2.3B
format; however, format 5 COPY with the BDU option can be used to make copies
of those diskettes.

***** ZAP 008 must NOT be installed in a NEWDOS/80 that is used to copy Model I
TRSDOS 2.3B files.  ZAP 008 must be used for Model III TRSDOS 1.1 or 1.2
diskettes.

Insert the following notes in the outside margin of the specified paragraph:


1.  Page 2-9, next to last paragraph:  "For Model III TRSDOS and Model I TRSDOS
2.3B diskettes, see ZAP 025."

2.  Page 2-15, "The COPY command" paragraph:  "This section applies also to
standard 35 track, single sided, single density diskettes for Model I TRSDOS
2.3B or higher."

3.  Page 2-15, "The user must" paragraph:  "See examples 1 and 3, section
2.37".

4.  Page 2-35, "Flag  M" paragraph:  "Expanded to include Model I TRSDOS 2.3B
or higher diskettes.  See ZAP 025

5.  Page 2-38, example 1:  "For Model I TRSDOS 2.3B diskettes, use TI=AM (see
ZAP 025)."  Also in this paragraph, change the last two words to read "option
BN" instead of AN.

6.  Page 12-7, paragraph 12.5.1:  "See ZAP 025."


SYS6/SYS,00,7D     change   CD B3 63 21   to   CD 9F 5C 21

SYS6/SYS,15,65     change
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 EA
5C 00 00 00
to
CD B3 63 3A BE 59 47 3A B9 59 4F 3A CC 59 57 3A C7 59 5F 79 A3 CB 6F 28 06 78
AA 0F DA 47 67 78 CB 69 20 04 CB 6B C8 7A 0F D8 21 5B 5B 22 F7 55 21 B1 5B 22
5D 5B 21 00 5C 22 61 5B AF 32 7F 61 67 6F 22 BF 61 22 B5 5B 3E 18 32 01 00 EA
5C 2D 61 C9

SYS6/SYS,22,6B     change   CD B3 63 CD   to   CD 9F 5C CD


SYS16/SYS,01,E9    change   05 28 02 3E 03 CD   to   05 00 C4 7E 51 CD

SYS16/SYS,02,A0    change CB E3 DD 7E 05 FE 06 C0   to   CB 43 3E 06 C4 78 51
C0

SYS16/SYS,04,8B    change 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   to 00
CB E3 DD BE 05 C9 DD CB 0F 56 C8 3E 03 C9



******** ZAP 026 ******** 09/10/81 ******** V2M3 ********

Mandatory zap to DOS to:

1. prevent COPY from setting file update flag on in Model I TRSDOS 2.3B and
Model III TRSDOS diskettes when that bit is used differently in those systems.

2. enable /ext type CBF file selection when the source is a Model I TRSdos 2.3B
or Model III TRSDOS diskette.


SYS6/SYS,10,83     change   C3 39 44 DD   to   C3 ED 5C DD

SYS6/SYS,15,B7     change 00 00 00 00 00 00 00 00 00 00 00 00 00 00   to 3A 82
42 CB 6F 28 04 DD CB 02 EE C3 39 44

SYS6/SYS,16,F0     change   61 20 0D 3A 96 59 CB   to   61 3A 96 59 20 0A CB




******** ZAP 027 ******** 09/10/81 ******** V2M3 ********

Mandatory zap to correct error in SUPERZAP during the DM function and during
the  F,  find function.

SUPERZAP/CMD,00,11     change 00 00 00 00 00 00 00   to   6B 63 4B 22 C3 54 C9

SUPERZAP/CMD,05,0B     change   00 6B 63 4B CB   to   00 CD 0D 52 CB





******** ZAP 028 ******** 09/11/81 ******** V2M3 ********

Mandatory zap to the Ryan-McFarland Corp's COBOL version 1.3B distributed by
Radio Shack to allow it to run with NEWDOS/80 Version 2 for the Model I and
Model III.  This zapped version will not run under TRSDOS.  Users must copy the
COBOL multiple files onto NEWDOS/80 diskettes (see zap 025).

RSCOBOL/CMD,99,7D   change   44 24 3E 40 49   to   44 82 27 44 49

RSCOBOL/CMD,99,CF     change   44 13 1F 44   to   44 82 27 44

RUNCOBOL/CMD,115,82     change 44 3E 40 49 40 24 17   to   44 27 44 49 40 82 17

RUNCOBOL/CMD,115,99     change 02 1F 44 11 44 13 0A   to   02 27 44 11 44 82 0A




******** ZAP 029 ******** 09/13/81 ******** V2M3 ********

Mandatory zap to DOS to correct a directory clobbering error that occurs when
either CLOSE or KILL frees up a FPDE or FXDE that occupies the first FDE slot
in a directory sector.  This error was missed during BETA testing as it was
caused by a late adjustment to handle the TRSDOS Model III diskettes.  A few
persons were complaining about directories being clobbered, but only on
September 12th was an error report made that lead to the discovery.  Though the
problem would appear to affect many users, apparently to date it has not.

SYS3/SYS,01,A9     change 00 7D D6 17 BB 30 1D   to   00 7B C6 16 BD 38 1D




******** ZAP 030 ******** 09/13/81 ******** V2M3 ********

Information zap.

1.  Documentation correction for EDTASM.  Tape I/O is NOT available for the
Model III.  If it is attempted, BAD PARAMETER(S) error will be given.


1.  Place in the outside margin of the "2.  L T=nnnnnn" paragraph of page 6-15
the following restriction:  "Model I only"

2.  Place in the outside margin of the 2nd line of page 6-16 of page 6-16 the
following restriction:  "Model I only"


2.  Correct the "A list of all" paragraph on page 1-3 to read  "NWD80V2/ILF and
NWD80V2/XLF" instead of "NWD82V2/ILF and NWD82V2/XLF".

3.  Delete the words "sectors per track, " from the "Format 5 is a full"
paragraph of page 2-11.

4.  The MM=addr1 function of ROUTE requires the main memory location addr1 to
be greater than 51FFH.  In the "Any of the devices" paragraph of page 2-43,
insert the words "greater than 51FFH" after the word "location" in the phrase
"memory location of a user".





******** ZAP 031 ******** 09/29/81 ******** V2M3 ********

Mandatory zap to DOS to correct rare occuring error that could, if the same HIT
code is used more than 31 times in a directory, cause file open to not find a
file and to put two files with the same name/ext on the diskette.

SYS2/SYS,01,CB    change   FE CD 28   to   FE CC 28





******** ZAP 032 ******** 09/29/81 ******** V2M3 ********

Information and manual corrections.

1.  A number of users have had trouble with tape I/O under NEWDOS/80 Version 2.
Some of the early copies of NEWDOS/80 Version 2 had errors due to undetected
RAM errors during duplication and in maybe as many as 20 cases this affected
the EDTASM or LMOFFSET module.  However, if these modules were bad, they
usually also had problems with disk I/O as well as cassette I/O and so if disk
I/O works fine, we assume it is not a bad copy of NEWDOS/80.  Tape I/O has long
history of trouble, varying from computer to computer and especially from tape
unit to tape unit such that any particular tape will fail on somebody's
cassette unit.  This has always been an exasperating problem and the main
reason why cassettes are not used at Apparat (though we do act as a retai
ler/distributor for products distributed on cassettes produced by others). 
Because cassettes are not used at Apparat, NEWDOS receives very little testing
with cassettes, and in the future we are considering withdrawing all support
(i.e., LMOFFSET and EDTASM) from cassettes.  Cassette support for EDTASM for
the Model III has already been withdrawn and will probably soon be withdrawn
for the Model I (since the purpose of our EDTASM was to give disk support, not
cassette).  For now though, we will restrict our error study to those problems
presented to us on a diskette containing the actual NEWDOS system used.  If the
user presents us with a cassette along with the diskette we will test that as
well; otherwise we will test with simple programs from disk in-house.  Neither
the diskette nor the cassette will be returned to the user.  Lastly, if you can
avoid use of cassettes, DO!!!!!

2.  The specifications for ROUTE using the MM=addr1 operand are in error in the
manual.

1.  Page 2-43, 3rd paragraph, 3rd line, change  "12"   to   "16". 2.  Same
paragraph, 5th line, change   "13th"   to   "17th". 3.  Page 2-44, top line,
change     "0FE8CH"   to   "0FE90H".


3.  A number of users has asked why Automatic Density Recognition (ADR) was not
used in NEWDOS/80 Version 2.  We wanted to included ADR but found it
impractical unless we limited or expanded other capabilities made available by
PDRIVE.  Since we were already two months late in releasing Version 2, we
decided to release without it.  Part of the problem is in providing a second
SPT parameter and an extra indicator for track 0 useage (remember, Version 2
operates with double density diskettes that may or may not have track 0
reserved for single density).  We also felt that if we included ADR, we should
also include ASR (automatic side recognition).  For now, we will remain without
ADR and ASR, but will not rule it out for a subsequent NEWDOS/80 version.


4.  For BASIC CMD "O" and multi-dimensional arrays, a few users have asked for
clarification of term REN used in the documentation for on pages 7-14 through
7-17.  CMD"O" does not care whether an array is single or multi-dimensional as
CMD"O" only concerns itself with the relative positioning in main memory
between array elements and not with the actual subscripts for a given element,
except for determining the main memory position of the first element
participating in the sort as specified in the CMD "O" statement.  As an aide to
the programmer to understand the sort order, a formula was given for two and
three dimensional arrays to determine the REN of any array element given its
subscripts.  The following working BASIC program demonstrates the relationship
between REN and subscripts for a three dimensional array, using R1, R2, R3, X1,
X2 and X3 to correspond with the useage at the bottom of page 7-14 and top of
page 7-15.


10 R1=3: R2=4: R3=2: DIM A(R1,R2,R3) 20 REN=0: FOR X3=0TOR3: FOR X2=0TOR2: FOR
X1=0TOR1  'CREATE ARRAY IN REN ORDER 30 IF REN <> X1+X2*(R1+1)+X3*(R1+1)*(R2+1)
THEN PRINT"ERROR": STOP 35 '   THE ABOVE ASSURES THE FORMULA COMPUTES TO THE
CURRENT REN NUMBER 40 A(X1,X2,X3)=REN: REN=REN+1: NEXT X1,X2,X3  'STORE THE REN
NUMBER IN THAT ELEMENT 50 CMD"O",0,A(0,0,0)    'SORT ARRAY IN ASCENDING NUMERIC
ORDER 60 '     THE ARRAY ORDER SHOULD NOT HAVE BEEN CHANGED. 70 FOR X3=0TOR3:
FOR X2=0TOR2: FOR X1=0TOR1   'LIST ARRAY IN SAME ORDER STORED 80 PRINT
A(X1,X2,X3);: NEXT X1,X2,X3   'AND THIS SHOULD BE ALSO THE SORTED ORDER


Elements with one or more zero subscripts do participate in the sort if that
element is within the main memory range of elements sorted, i.e., has a REN
greater than or equal to the REN of the 1st sort element and less than or equal
to the REN of the last sort element.


5.  Correct the last paragraph of page 2-27 by deleting the 3rd sentence and
changing the 4th sentence to read "Hex codes less than 20H or greater than the
SYSTEM option AX value will be displayed as periods.".


6.  ZAP 025 has in its 7th, 10th, 11th and 12 paragraphs, references to ZAP 031
which must be changed to refer to ZAP 025.



******** ZAP 033 ******** 09/30/81 ******** V2M3 ********

Mandatory zap to correct error in BASIC's RENUM function giving SEQ # OVERFLOW
when large programs, say over 26,000 bytes of text, are renumbered.  Though a
number of users called on this problem, it wasn't until a user sent us a
written error report with the problem program on a system diskette that we
finally had enough to go on.

SYS11/SYS,03,BB     change   0F ED 42 DF 38   to   0F CD 9D 51 38

SYS11/SYS,04,A5     change   00 00 00 00 00   to   ED 42 D8 DF C9





******** ZAP 034 ******** 10/07/81 ******** V2M3 ********

Mandatory zap to DOS to correct omision from ZAP 015 (ROUTE) which caused
SYSTEM option BA to cause hang on reset.

SYS0/SYS,00,B9     change   FF 00 00 00   to   FF A1 4C 00




******** ZAP 035 ******** 10/07/81 ******** V2M3 ********

Mandatory zap to DOS to disable SYSTEM option BM.  SYSTEM option BM=N caused
the full diskette verify to be bypassed when the user felt the track verify
that occurred immediately after a track was formatted was sufficient.  However,
if the user is formatting more tracks that the drive can physically handle,
FORMAT with SYSTEM option BM=N will not detect the error whereas it will with
SYSTEM option BM=Y.  Therefore, SYSTEM option BM is dropped, and the full
diskette verify will always be done.

On the outside margin of the BM=yn paragraph of page 2-49, write the following:
"eliminated by ZAP 035".

SYS6/SYS,10,35     change E1 3A 8D 42 CB 5F C8 3E   to   E1 00 00 00 00 00 00
3E

SYS17/SYS,02,55     change   FE 31 FE   to   FE FE FE





******** ZAP 036 ******** 10/07/81 ******** V2M3 ********

Mandatory zap to correct BASIC function REF$ to (1) avoid occasional misses of
printer line advance and (2) disable printer operations after the function.

SYS12/SYS,04,BA     change   FE 38 30   to   FE 35 30

SYS18/SYS,03,2F     change   D2 B5 57 3D   to   D2 31 55 3D

SYS18/SYS,03,41     change   00 00 00 00 00   to   11 1E 64 D5 EF




******* ZAP 037 ******** 10/09/81 ******** V2M3 ********

Optional zap to DOS to allow 'JKL' to print graphics on the EPSON printers that
use graphic codes 0A0H - 0DFH.  This is done by converting hex codes 80H
through 0BFH to 0A0H through 0DFH.

SYS3/SYS,04,9A     change   30 02 3E   to   30 07 3E

SYS3/SYS,04,A3     change 00 00 00 00 00 00 00 00   to   FE 80 38 F7 C6 20 18
F3

Use next zap if 0BFH rather than SYSTEM option AX is to govern as high ASCII
for JKL. SYS3/SYS,04,94     change   47 3A 90 42 B8   to   47 00 3E BF B8




******** ZAP 038 ******** 10/21/81 ******** V2M3 ********

Mandatory zap to remove a part of a unreleased zap that inadvertently was
placed on some master diskettes.  If the 'before' contents do not exist on your
master diskette, ignore this zap.  If the 'before' contents do exist, then this
zap must be done before zap 039 as 039 uses some of the affected area.  Please
note that 4 bytes of loader control information remain unchanged by this zap.

SYS0/SYS,09,87    change
DD E5 E1 11 E5 41 DF 28 0A 1E ED DF 01 00 B0 4C 28 07 0E 0C 3E E3 EF 3C 4F DD
77 03 79 C9
to
00 00 00 00 00 00 00 00 00 00 00 00 01 00 B0 4C 00 00 00 00 00 00 00 00 00 00
00 00 00 00



******** ZAP 039 ******** 10/21/81 ******** V2M3 ********

Mandatory zap to DOS to correct an error where disk write precompensation was
not being done for high numbered tracks if the PDRIVE TC parameter was an odd,
vice even, number (i.e., TC=35)

SYS0/SYS,02,FE     change   FE 3A   to   FE CD

SYS0/SYS,03,00     change   83 42 0F BA   to   A4 4C 00 BA

SYS0/SYS,09,87     change   00 00 00 00 00 00   to   3A 83 42 CB 3F C9

SYS6/SYS,29,63     change   4F 3A 83 42 0F B9   to   4F CD A4 4C 00 B9



******** ZAP 040 ******** 10/21/81 ******** V2M3 ********

Mandatory zap to correct DOS handling of 8 inch, double density, single or
double sided, single volume drives (PDRIVE TD=H) where the computer hardware is
modified to handle double CPU speed and 8 inch, double density, single or
double sided, single volume operations.  The PDRIVE SPT maximum values are 30
for single sided and 60 for double sided.  The PDRIVE GPL must be atleast 3 for
single sided and atleast 5 for double sided; however 8 is recommended in both
cases.  This zap does NOT mean that your particular computer can handle this
type of drive; for now we know of no Model III's that can, but 8 inch double
density support was included in anticapation that eventually some would.

SYS6/SYS,27,C9     change   E6 41 DD   to   E6 C1 DD

SYS6/SYS,31,FF     change   34   TO   13

SYS6/SYS,32,00     change 0A 26 0A 86 01 9C 27 44 00   to   0A 14 0A 53 01 BA
27 26 00

SYS16/SYS,04,1E    change   12 1A 24 34 82   to   12 1E 24 3C 82




******** ZAP 041 ******** 10/21/81 ******** V2M3 ********

Mandatory zap to EDTASM to correct error occurring when shift-left-arrow is
used to erase a filespec response.

EDTASM/CMD,30,EC     change 58 C5 CD 2F 59 E1 E5 3A AA 53 F5 0E 01 CD 47 5B F1
32 AA   to 58 D5 C5 CD 2F 59 E1 06 1F CD 40 00 DA D7 58 D1 7E C9 AA




******** ZAP 042 ******** 11/09/81 ******** V2M3 ********

Mandatory zap to Version 3.1 of SCRIPSIT for TRSDOS 1.1 or 1.2 to run with
NEWDOS/80.                                   SCRIPSIT/CMD,11,43     change   01
05 4F   to   01 00 4F

SCRIPSIT/CMD,11,CE     change B7 C4 BE 5E 79 32 E2 7C 11   to   B7 32 DF 7C C4
BE 5E 00 11




******** ZAP 043 ******** 11/09/81 ******** V2M3 ********

Correction to ZAP 001, in the SCRIPSIT/CMD,11,C9 zap, change the 3rd byte of
the 'to' part from FC to F9 if it not already F9.  This was not a fatal error.

Correction to ZAP 042, the 3rd byte of the 'to' part of the SCRIPSIT/CMD,11,43
zap is to be changed from 45 to 4F if not already 4F.  This was a fatal error
not allowing SCRIPSIT to run.

Correction to ZAP 042, the 3rd byte of the 'to' part of the SCRIPSIT/CMD,11,CE
zap is to be changed from E2 to DF if not already DF.  This was not a fatal
error.




******** ZAP 044 ******** 11/09/81 ******** V2M3 ********

Mandatory zap to DOS to correct error in  DIR $  or DIR $0  command where DOS
hangs if any response other than ENTER is given to the diskette mount requests.

SYS8/SYS,02,B8   change   20 FC C9   to   20 F9 C9




******** ZAP 045 ******** 11/09/81 ******** V2M3 ********

Optional zap to DOS to allow the DOS PRINT and LIST commands to accept all
control characters in the hexidecimal range 00 to 1F instead of just 0D (end of
line).  If this zap is used, users must assure that files used with PRINT and
LIST do not contain control characters the display or printer cannot handle. 
Remember, the high bit of all characters is zeroed, thus display graphic
characters 80 - 9F will be transmitted as 00 - 1F.

SYS14/SYS,04,6C     change   20 D0 FE   to   20 C9 FE




******** ZAP 046 ******** 09/11/81 ******** V2M3 ********

Mandatory zap for PROFILE Version 3.0 being issued to run with TRSDOS 1.3. 
This zap disables some of the error checking being done to determine if a drive
is available.

INIT,00,65     change FE 02 28 19 FE 1B 28 1F C3 47 52 38   to FE 1B 28 23 18
17 00 00 00 00 00 38

Note, during some testing, PROFILE did not have enough space on drive 0 to
initialize the files.  You may find that some files must be deleted from drive
0 to have enough room.




******** ZAP 047 ******** 11/09/81 ******** V2M3 ********

Information zap.

1.  Users must remember that the Model I TRSDOS 2.3B or higher and Model III
TRSDOS 1.3 or higher, amongst other things, both went to using RBAs in the NEXT
and EOF fields of the FCB, thus intentionally or unintentionally restablishing
compatibility with NEWDOS21 and NEWDOS/80 in the use of those two fields (which
many user programs use), even though the EOF fields in the directories (which
most user programs don't use) are now incompatible.  Though files from those
systems must be copied to NEWDOS diskettes, assembly language programs upgraded
to run with those TRSDOS systems are more like to run with NEWDOS without
change then they were before.  For example, on the Model III, SCRIPSIT Version
3.2 has been found to work as-is.  So, before calling Apparat to see if zaps
exist for a given program, try it out, giving special attention to the file
I/O.

2.  The manual failed to explain that when SYSTEM option AJ=N or when the
up-arrow key is held down during reset/power-on, DOS loses the ability use the
lower case driver (Model I only) or to actually input keyboard characters from
the chain file during chaining as these functions depend upon DOS's keyboard
intercept routine being enabled.  SYSTEM options AU=N and BF=N (Model I only)
and are also forced.  DOS will think it is activating chaining, but actually
the input characters will continue to come from the keyboard; the DOS READY
prompts will not be seen as DOS thinks it is chaining.  For LCDVR (Model I
only), the command will execute but the key input functions for lower case
drive will not be done.  Insert the note  "see ZAP 047, part 2" in the outside
margin at the following places in the manual.

1.  Page 2-7, the "CHAINING is discussed" paragraph.

2.  Page 2-29, the "In NEWDOS/80" paragraph.

3.  Page 2-47, the "AJ=yn" paragraph.

4.  Page 4-9, the "If a DOS recognized" paragraph.


3.  Chain files must always have a name-extension.  When creating a CHAIN file,
you must always specify a name-extension in the filespec, excepting that
CHAINBLD/BAS will assume name extension /JCL if you don't give one.  If the
filespec given in a DO or CHAIN command does not specify a name-extension, then
/JCL is assumed; therefore it is recommended that the name-extension /JCL be
used on chain files when created.  Place the note "See ZAP 047, part 3" in the
outside margin in the following places in the manual.

1.  Page 2-7, the "When the system" paragraph.

2.  Page 4-8, the "Chain file creators" paragraph.





******** ZAP 048 ******** 11/09/81 ******** V2M3 ********

Mandatory zap to BASIC to correct CLOSE without explicit fan(s) where filearea
2 and up was not being closed if filearea 1 was not open and the V parameter
was specified in the BASIC invocation sequence.

BASIC/CMD,08,A1     change   66 11 2D 01 7E   to   66 CD AF 65 7E

BASIC/CMD,14,B8     change   00 00 00 00 00   to   ED 5B 9E 64 C9



******** ZAP 049 ******** 11/09/81 ******** V2M3 ********

Mandatory zap to DOS to extend ZAP 039.  After that zap, we found that
precompensation was going on all of the time during diskette format.  Some
users were complaining about this, but our test routines were just not seeing
it.

SYS6/SYS,29,60     change   3A 74 6C 4F   to   3A 24 6B 4F




******** ZAP 050 ******** 11/09/81 ******** V2M3 ********

Part mandatory and part optional zap to MICROSOFT's BASIC compilier Version
5.23 for the Model I (the release Version for a long time)(the first line a
/LST file created by the compilier gives the compilier version number) to allow
it to run with NEWDOS/80 Version 2 on the Model III.  This zap has been
provided to Apparat by MICROSOFT and if there are questions with this zap,
please contact MICROSOFT.  Once these zaps are applied, this compilier and the
compiled programs cannot be used with TRSDOS!!!  Future enhancements to the
compilier may require the optional changes below to be backed off; therefore
users should maintain copies of the compilier (1) as it existed before the
mandatory changes below were applied, (2) after the mandatory changes but befor
e the optional changes below are applied and (3) the final result.  Also,
remember, the BASIC compilier's L80/CMD is not for use with FORTRAN, assembler,
etc., but only with BASIC.  Lastly, remember it is the model I compilier that
is being zapped.

The production of this zap required a large amount of research and testing by
MICROSOFT, and APPARAT sincerely thanks MICROSOFT for this extensive effort to
make the BASIC compilier operate with NEWDOS/80, Version 2.

****** Mandatory section

BASCOM/CMD,00,08     change   32 15 43 2A 13 43   to   00 00 00 2A 79 44

BASCOM/CMD,00,14     change   22 13 43   to   22 79 44

BASCOM/CMD,31,C0     change   95 5B A0   to   95 5E A0

BASCOM/CMD,62,9E     change   2A 49 40   to   2A 11 44

BASCOM/CMD,66,15     change   32 15 43   to   00 00 00

BASCOM/CMD,66,1B     change   22 13 43   to   22 79 44

L80/CMD,00,07     change AF 32 15 43 2A 13 43 22   to   AF 00 00 00 2A 79 44 22

L80/CMD,00,13     change   6D 22 13 43 C3   to   6D 22 79 44 C3

L80/CMD,00,2A     change   44 2A 49 40 F9   to   44 2A 11 44 F9

L80/CMD,07,0D     change C3 32 15 43 2A A0 6D 22 13 43 E1   to   C3 00 00 00 2A
A0 6D 22 79 44 E1

BRUN/CMD,00,04     change   EB 2A 49 40 F9   to   EB 2A 11 44 F9

BRUN/CMD,01,13     change 52 32 15 43 2A 13 43 22   to   52 00 00 00 2A 79 44
22

BRUN/CMD,01,1F     change 52 22 13 43 2A 49 40 2B   to   52 22 79 44 2A 11 44
2B

BRUN/CMD,01,F1     change C3 32 15 43 2A 00 53 22 13 43 C3   to   C3 00 00 00
2A 00 53 22 79 44 C3

BRUN/CMD,02,0C     change   52 11 46 40 CD   to   52 11 1C 42 CD

BRUN/CMD,02,A9     change   56 21 46 40 06   to   56 21 1C 42 06

BRUN/CMD,10,1D     change   46 0B 70   to   46 00 70

BRUN/CMD,40,DC     change
E1CA 537A FE1C CA46 7AFE 1DC2 6955 3A81 7DB7 CA65 7ACD 3944 C35D 7A3A 817D B7C2
to
E1C2 6955 3A81 7DB7 2805 CD39 4418 03CD 3644 2814 FE1D 2810 FE1C C269 5518 09C2


Note, in the above zap both the before and after portions contain a CD 39 44
sequence, which is a sector-write-without-verify-read.  If the sequence is CD
3C 44, then it is really a sector-write-with-verify-read (which uses an extra
disk revolution (200 ms) per sector write).  Thus the old contents may have the
3C and you may optionally use the 3C in the new sequence if you want the verify
read.



BRUN/CMD,41,D8     change   E1 3A 0F 43 E6   to   E1 C3 44 7B E6

BRUN/CMD,42,16     change   B7 CA 7F   to   B7 C3 7F


******* Optional section

The following optional zaps are for:

1.  The LOF function is changed to work like NEWDOS/80, rounding up the
returned value if EOF is not integer divisible by the logical record length
used in the OPEN statement.  Further, if the result exceeds 32767, BAD RECORD
NUMBER error results.

2.  PUT and GET without explicit record number works correctly.

3.  LOC functions correctly for the logical record length in the OPEN
statement.



DIR/SYS,xx,yy      Search the directory for BRUN/CMD's directory entry, the
associated line on the SUPERZAP display should look something like this:

1020 0062 0042 52 55 4E20 2020 2043 4D44  ...b.BRUN....CMD

change the 62 (the 4th) byte to F6.

BRUN/CMD,40,4A    change 21 0C 00 09 5E 23 56 EB D1 C1 C9 CD   to DD 21 6E 8A
CB 23 DD 19 C3 2E 8A CD

BRUN/CMD,40,63     change   00 C3 AD 79 E1   to   00 C3 37 8A E1

BRUN/CMD,40,B3     change   C5 21 0C 00 09   to   C5 C3 00 8A 09

BRUN/CMD,40,CE     change   1B 42 4B  to   CD 11 8A

BRUN/CMD,42,7F     change   CD 17 58   to   CD 1B 8A

BRUN/CMD,56,84     change   02 02 00 52  (the rest is immaterial)
to
016D 008A CB23 DD21 6E8A DD19 DD5E 00DD 5601 C317 7ADD 7300 DD72 011B 424B C9C5
CB21 DD21 6E8A DD09 DD70 00DD 7001 C1C3 1758 DD6E 00DD 6601 D1C1 C9C5 DDE1 DD6E
0ADD 660E DD5E 0FDD 4E0B AFB9 281D AF06 18ED 6ACB 1317 9130 0181 3F10 F4ED 6AB7
2801 23D1 C1CB 7CC8 C39A 7D6C 6318 F402 0200 52

L80/CMD,00,7A     change   00 8A 22   to   00 8B 22

Note, the above zap to L80/CMD changes the default data address for compilied
BASIC programs from 8A00H to 8B00H to allow an extra 256 bytes for BASIC system
use.  If the -R switch is issued during the linking process, the -D switch must
be reset to 8B00 instead of 8A00 as mentioned in the compilier manual.




******** ZAP 051 ******** 11/29/81 ******** V2M3 ********

Mandatory zap to DOS to allow COPY with CBF option to allocate space on Model
III TRSDOS diskettes beyond track 23.

SYS6/SYS,25,FB     change   CD 57 4C DD   to   CD FB 5C DD

SYS6/SYS,15,C5     change 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
to DD CB 02 6E 28 04 DD CB 07 46 CA 57 4C 3E 03 C3 59 4C



******** ZAP 052 ******** 11/29/81 ******** V2M3 ********

Mandatory zap to DOS to correct directory errors created during format 5 COPY
when copying to a destination diskette that is to contain more granules than
the source diskette and when the source diskette has less than 61H (97 decimal)
lumps and the destination diskette is to have more than 60H (96 decimal) lumps.
In NEWDOS/80 Version 2, in order to allow a maximum of C0H (192 decimal) lumps
in the granule allocation table, that table (normally in 00 -5F of the GAT
sector) expands into and supercedes the granule lockout table (normally in 60
-BF of the GAT sector.  This error was leaving the GAT granule lockout table in
existence in the destination directory (remember, it is transferred over from
the source diskette in format 5 COPY) when it should have been done away with
to make room for the expanded granule allocation table.  The error is
immediately detectable by DIRCHECK after the format 5 COPY by the presence of
one or more BAD "GAT" SECTOR BYTE errors.  Otherwise, the error is not seen
until TRACK # TOO HIGH error occurs when writing to the diskette and a granule
beyond those allowed for the diskette is erroneously allocated; the file
getting the error will NOT have had its EOF increased to include the erroneous
sector.  DIRCHECK will, in addition to the GAD "GAT" SECTOR BYTE errors, then
display EXTENT SPACE OVERFLOWS DISKETTE for that file, but since EOF does not
include that bad granule, single file COPY or format 6 COPY will still be able
to copy the file.  Therefore, any bad diskettes should be recoverable by using
a format 6 COPY with FMT option to copy the contents of the bad diskette onto
another diskette.  You can then use either format 5 or 6 COPY with FMT option
to copy it back.

This zap is large as part of SYS6/SYS is being moved to SYS17/SYS to make more
patch area available in SYS6/SYS.

SYS6/SYS,07,79     change   52 CD 35 55 ED   to   52 C3 2C 50 ED

SYS6/SYS,21,85     change   3E E6 28   to   3E F3 28

SYS17/SYS,00,0C    change   2A C2 81 4E 78   to   2A C0 00 00 78

SYS17/SYS,03,3C   through  AE  was all zeroes, change to
CD 35 55 ED 5B C1 59 CD 84 57 ED 4B 94 59 CB 49 20 5E CD F9 56 1E 61 3A C6 59
BB 38 0E 3A B8 59 BB 30 08 1D 6B 36 FF 1D 23 20 FA CB 68 28 06 2A 81 59 22 CE 
43 79 E6 0C 01 10 00 11 D0 43 21 83 59 20 07 21 8B 59 1E D8 0E 08 ED B0 2A D1
59 ED 5B C3 59 B7 ED 52 EB 38 11 28 0F 2A C3 59 3A BC 59 CD 59 4C 26 43 4F CD
62 57 CD C4 48 C2 CB 54 C3 2D 55



******** ZAP 053 ******** 12/01/81 ******** V2M3 ********

Mandatory zap to LMOFFSET to correct error occuring when a object code block's
load point is in the range 3F00 to 3FFFH.

LMOFFSET/CMD,01,36     change 78 05 85   to   78 3D 85




******** ZAP 054 ******** 12/28/81 ******** V2M3 ********

Mandatory zap to DOS to correct I/O timing loop found to be too long to support
8 inch disk operations on the Model III.

SYS0/SYS,02,C3     change   01 97 A3   to   01 40 A3

************ On 03/15/82 it was observed that AM disk controllers have a
CPU-hold-for-DRQ one shot delay interval that is shorter than the Radio Shack
standard of 1000 microseconds, and this zap causes LOST DATA DURING WRITE
errors.  If you have this type of controller, do not apply the above zap, and
if it is applied, back it off.



******** ZAP 055 ******** 12/28/81 ******** V2M3 ********

Optional zap to DOS to cause DIR to actually read ENTER and BREAK from the
keyboard rather than just look at the keyboard matrix.  This zap allows BREAK
to work for that function only if the BREAK key is enabled.  This zap allows
remote terminal operators of NEWDOS/80 to perform the DIR function when more
than one display page will be involved.  NEWDOS/80 was not designed to be run
from remote terminals and at many places in its code looks directly at the
keyboard matrix rather than actually accepting an input key when looking for
BREAK, ENTER, UP or RIGHT ARROW.  This zap changes only one of these
situations, but a number of users have said they would be happy with that.

SYS8/SYS,02,94     change   0A 16 0F CD 6B 50 CB   to   0A CD 6B 50 16 0F CB

SYS8/SYS,03,8A     change 50 3A 40 38 E6 05 28 F9 0F D2 2D 40 3E   to 50 CD 49
00 3D CA 2D 40 FE 0C 20 F5 3E


******** ZAP 056 ******** 01/12/82 ******** V2M3 ********

Mandatory zap to DOS force the 4445H call to DOS (back up one record) to set
bit 6 of the FCB 2nd byte (disables EOF truncation).

SYS0/SYS,07,F2     change   38 31 2B 18 1D CD   to   38 10 2B 18 0D CD


******** ZAP 057 ******** 01/18/82 ******** V2M3 ********

Information zap.


1.  NEWDOS/80 V2 BASIC functions LOAD, RUN and MERGE implicitly require that
the text file being read be already in ascending sorted line number order
whereas NEWDOS/80 Version 1, NEWDOS/21, TRSDOS, VTOS, LDOS, DOSPLUS and the
other DOS's do not.  Normally, the BASIC program files are in sorted line
number order; so this difference was not noticed for some time into Version 2's
release.  Some users prefer to create text files in random line number order,
relying on the implicit sort (not in NEWDOS/80 V2) done during LOAD, MERGE or
RUN to sort the lines.  These users must find some way or pre-sorting the text
files, and since leading zeroes are suppressed from line numbers (causing line
5000 to sort before line 51), normal sorts won't work.  The following sort
program (known as CODESORT/BAS) will perform the sort, sorting the input text
file into a different output text file.


10 CLEAR 2000: DEFINT A-Z: NR=0 20 PRINT"FILESPEC OF BASIC PROGRAM TO BE
SORTED?": LINEINPUT FS$
30 OPEN"I",1,FS$: BC!=LOC(1)% 40 IF EOF(1)=0 THEN NR=NR+1: LINEINPUT #1,A$:
GOTO 40 50 A$="": CLOSE 60 DIM CD$(NR), IX(NR), SN(NR): CMD"F=SASZ",BC!-NR+200 
70 OPEN"I",1,FS$: X=1: K=1 80 IF X>NR THEN 170 90 LINEINPUT #1,CD$(X):
Y=LEN(CD$(X)): Z=1: W=0: SN!=0: K=K+1 100 IFY=0 THEN 160 110 IF Z>Y THEN 130
ELSE J=ASC(MID$(CD$(X),Z,1)): Z=Z+1: IF J=32 THEN 110 120 IF J>=48 AND J<58
THEN W=W+1: SN!=10*SN!+J-48: GOTO 110 130 IF W>0 AND SN!<65530 THEN
SN(X)=SN!-32768: X=X+1: GOTO 80 140 PRINT K;"TH LINE HAS BAD OR MISSING LINE
NUMBER.  BYPASS IT?  (Y/N)  ";
145 INPUT A$
150 IF A$="N" THEN END ELSE IF A$<>"Y" THEN INPUT"BAD REPLY";A$: GOTO 150 160
NR=NR-1: GOTO 80 170 CLOSE: IF NR=0 THEN PRINT"NO RECORDS TO SORT": END 180
CMD"O",NR,*IX(1),SN(1) 190 PRINT"SORTED OUTPUT FILESPEC?  ";: LINEINPUT FS$
200 OPEN"O",1,FS$
210 FOR X=1 TO NR: PRINT #1,CD$(IX(X)): NEXT 220 CLOSE: PRINT"DONE":END


2. In BASIC, RENUM does not renumber the CMD"F",DELETE statement properly.  No
zap will be issued to correct this.


3.  The manual failed to inform programmers building programs to be executed
that the command keyword or program name (filespec) is the first parameter of
each DOS command and that, on entry to that program or DOS command function,
register HL points to the parameters following the program name (filespec) in
the DOS command statement that invoked the program.  Examples:


1.  XXXXXX     This DOS command causeu@kMII=I5BuiT$],Yloaded
from whichever drive it is found on into memory and program execution commenced
at its entry location.  At that time, register HL points to the EOL character
(0DH) since there are no parameters following the program's filespec.  Note, in
absence of a name-extension for the filespec XXXXXX, /CMD was substituted. 
Also, since no drive number was given, the drives were searched, starting with
the drive 0, looking for the first occurrence of XXXXXX/CMD.

2.  YYYY/OBJ:1,5,JJJ:1   This DOS command causes user program YYYY/OBJ:1 to be
loaded into main memory from drive 1 and program execution commences at its
entry location.  At this time, register HL points the character  5  in the
above command, as this is the first character of the first parameter following
the program filespec.  The user program may interrogate the parameter(s) with
the EOL character (0DH) indicating the end of parameters.

3.  ZZZ,Y,N,MYFILE   This DOS command causes user program ZZZ/CMD to be loaded
into main memory and execution started at its entry location with HL pointing
to the character  Y  .


3.  A number of users have asked why NEWDOS/80 Version 2 lacks features that
other DOS's have.  For the most part and for obscure reasons, we just elected
to exclude them, but in many cases the main problem is that sufficient resident
main memory space or overlay main memory space or both is not available.


1.  In the DOS main memory region, 4000H thru 51FFH, NEWDOS/80 has 256 bytes
less resident (always in memory) code/data than other DOS's have as it uses
this 256 bytes to make the DOS overlay programs (i.e., SYS1/SYS) bigger.

2.  Some DOS's have taken part of their resident code/data into high memory in
order to gain more resident memory for DOS.  For NEWDOS/80 Version 2, it was
decided to remain out of high main memory, with the exception of the spooler,
which was already there.                                    
3.  NEWDOS/80 has MINI-DOS which most oe"ujUR.H2o not.  This means that most
of the DOS commands (DIR, FREE, LOAD, etc.) that execute in the 5200H thru
6FFFH region of main memory (and may call overlay routines that execute in the
4E00H thru 51FFH region) in other DOS's must execute in NEWDOS/80 entirely
within the 4D00-51FFH DOS overlay region.  This complicates the effort to
extend the capabilities of any given DOS command.


4.  A number of users have asked why DIRECTORY READ ERROR or DIRECTORY WRITE
ERROR appear as the DOS error message when an error occurs with a directory
sector.  Why not display the regular error code?  We did this in order that
normal file processing, the user would know that the directory, rather than
his/her file, was the source of the error.  At the time the error code
substitution takes place, the system does not know whether or not the directory
I/O was subsidiary to file I/O.  We do apologize for the confusion created when
the directory I/O was the main I/O (i.e., in DIR, FREE, etc.).  The user can go
to SUPERZAP and step through the directory (via DD, DTS or DFS (on DIR/SYS) to
determine which sector is bad and what is the actual complaint.  VDS mode can
also be used.


******** ZAP 058 ******** 01/21/82 ******** V2M3 ********

Mandatory zap to DOS if and only if the following two verifies exist.

SYS18/SYS,02,A9   59 00 0F 30 06 SYS18/SYS,02,FC   54 5B 5B 5B

If these two conditions do not exist, then ignore this entire ZAP.  During
production of the NEWDOS/80 Version 2 diskettes for the Model III, the master
diskettes, dated 01/12/82, were found to be bad on 01/21/82, after some 100 to
300 NEWDOS/80 diskettes had been created and shipped with the bad sector.  We
don't understand how this alteration of the master diskette appeared, but it
did, must be corrected , and we apologize.

SYS18/SYS,02,A9   change
59 000F 3006 CDE4 2BCD F81A C1E1 D12B C3A7 1A52 454E 4557 C001 0152 454E 554D
C04F 0152 4546 C02E 0144 49A1 0000 4455 A000 0041 80F5 5444 80EE 5445 80E9 544C
80E3 5400 044C 4953 540D 0445 4449 5406 4445 4C45 545B 5B5B
to
59 C1D5 3E00 0F30 06CD E42B CDF8 1AC1 E1D1 2BC3 A71A 5245 4E45 57C0 0101 5245
4E55 4DC0 4F01 5245 46C0 2E01 4449 A100 0044 55A0 0000 4180 F554 4480 EE54 4580
E954 4C80 E354 0004 4C49 5354 0D04 4544 4954 0644 454C 4554



******** ZAP 059 ******** 02/15/82 ******** V2M3 ********

Mandatory zap to DOS to cause the /./5Y function of chaining (see page 4-11) to
properly exit the current DOS-CALL level, if any, under certain circumstances
where it was not.  This problem can also be avoided by using CHNON,Y instead of
/./5Y if DOS is awaiting its next command at that DOS level.                   
SYS9/SYS,01,8E     change   42 B7 20 06 CB   to   42 CD 1B 51 CB

SYS9/SYS,04,2F     change 00 00 00 00 00 00 00 00 00 00 00 00 00   to B7 C2 90
4E 78 E6 50 FE 40 CA 2D 40 C9



******** ZAP 060 ******** 02/15/82 ******** V2M3 ********

Information zap.

1.  When COPY format 6 (CBF) is used to copy a system diskette and the system
files are to be copied, the FMT parameter MUST be specified!!!!  On page 2-14,
last paragraph, is stated "If NFMT is specified, ...... system files are not
copied unless already existent in the destination file directory.".  This is
not true; if NFMT is specified or implied, the files are copied, but (1)
SYS0/SYS will usually be in the wrong position causing BOOT to fail and (2)
other system files may be in the wrong directory slots, eventually causing even
worse trouble.


2.  Some users have had GAT OVERFLOW error occur when using CBF with FMT to
copy a system diskette.  The system files SYS1/SYS through SYS21/SYS on a
system diskette are positioned near the directory, some file aboves and some
below, to enhance system efficiency.  During the CBF COPY, the each system file
is assigned space on the destination diskette in the same position relative to
the directory as on the source diskette, and if that position is beyond either
end of the diskette, GAT OVERFLOW error occurs.  The solution to the problem is
to cause the directory to be positioned nearer the center of the diskette.  Two
of the destination diskette's PDRIVE parameters are involved in the directory
positioning: GPL and DDSL.  Compute the number of lumps on the diskette and
compare against DDSL to determine which end of the diskette the directory is
too close to.  You can take one of three actions to cause the directory to move
closer to the diskette center: (1) change the DDSL value, (2) decrease the GPL
value if the directory was too near the end of the diskette, or (3) increase
the GPL value if the directory was too near track 0.


3.  A number of users have complained that the LIST and PRINT commands do not
allow for graphic characters.  This was done so purposely as the intent with
both LIST and PRINT was to provide a rudimentary, emergency method of listing
or printing regular text files (files whose printable characters are between
20H and 7FH ASCII or that modulate to those values).  These two commands were
seldom used in NEWDOS+ or NEWDOS/80 Version 1, and we have been surprised by
the increased useage in Version 2.  For a subsequent release of NEWDOS80, we
will try to add more capabilities to allow for graphics, but for now we simply
apologize that the capability is not there.

4.  ZAP 054 causes Model III's with AM disk controllers to malfunction with
LOST DATA DURING WRITE.  This is because the AM controller CPU-hold-for-DRQ
interval is too short compared with the standard Radio Shack interval, which is
specified at 1000 microseconds.  If you have this type of disk controller, back
off ZAP 054.



******** ZAP 061 ******** 07/22/82 ******** V2M3 ********

Non-existent ZAP.  Never created or issued.




******** ZAP 062 ******** 03/16/82 ******** V2M3 ********

Mandatory zap to BASIC to correct error in dynamic MERGE occuring when the old
text has lines within the range of the merging text (though not matching line
numbers, which is not allowed).  This is an unusual condition but nevertheless
legal. This error was causing string variables whose strings are in the text
area to not be properly repointed into the resulting text.

SYS19/SYS,00,DA     change   C5 21 3E 54 22   to   C5 CD 20 56 22

SYS19/SYS,02,9D     change   C1 D1 E1 C9 2A   to   C1 C3 2A 56 2A

SYS19/SYS,02,E2     change   CD F2 54 CD   to   CD 38 56 CD

SYS19/SYS,03,76     change 00 ED 52 38 2E 21 00 00 ED 52 30 27 AF   to 00 00 CD
41 56 21 00 00 09 CD 49 56 AF

SYS19/SYS,04,34     change
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000 00
to

2100 0022 4256 213E 54C9 2A42 56ED 5B7A 5519 2242 56D1 E1C9 474F ED43 4256 C3F2
5401 0000 09ED 5218 03ED 523F D0F1 C399 55




******** ZAP 063 ******** 03/25/82 ******** V2M3 ********

Mandatory zap to allow the TRSDOS 1.2 Model III VISICALC Version VC-150Y0-T83
to operate with Model III NEWDOS/80 Version 2.  This zap disables VISICALC's
directory search feature.

The directory search capability of VISICALC is disabled as NEWDOS/80 does not
have the RAMDIR facility that Model III TRSDOS does.  However, it is possible
to use MINI-DOS to search the directory by (1) typing in the /SL command, (2)
pressing DFG to enter MINI-DOS, (3) perform the MINI-DOS functions, (4) clear
the display, (5) exit from MINI-DOS, (6) back in VISICALC, press three or more
CLEARs to clear the command state, (7) execution one of the /T commands to
restore the VISICALC display.

VC/CMD,86,CA     change   E5 CD 90 42 FD   to   E5 3E 08 B7 FD

******** ZAP 064 ******** 04/13/82 ******** V2M3 ********

Mandatory zap to DOS to correct an error in CREATE whereby the old file's (not
the new) EOF was not being set = 0 when REC=0 parameter spec'ed or defaulted
to.

SYS14/SYS,03,14     change   28 47 78   to   28 41 78




******** ZAP 065 ******** 04/13/82 ******** V2M3 ********

Mandatory zap to DOS to correct error in the DMDB function of SUPERZAP where
the F, function was not displaying the correct dump location.

SUPERZAP/CMD,05,12     change   03 2A B2 54 CD   to   03 CD 14 52 CD

SUPERZAP/CMD,00,18     change   00 00 00 00 00 00   to   3A B3 54 67 18 F6





******** ZAP 066 ******** 04/23/82 ******** V2M3 ********

Mandatory zap to BASIC to correct an error in CMD"O" sort of floating point
values and, to a much lesser degree, of characters strings.  It is astonishing
that this error was finally reported 8 months after Version 2 release; we
simply refused to believe it as this meant virtually no one is using the
floating point sort feature.  The reporting user was persistent, however,
sending in a very detailed problem report even so far as providing the zap! 
Well done!!!  We thank this user and all others that persist in proving their
point.

SYS21/SYS,03,1E     change   18 29 B7   to   18 2B B7




******** ZAP 067 ******** 05/04/82 ******** V2M3 ********

Mandatory zap to VISICALC Version VC-160Y0-T83 for Model III TRSDOS 1.3 to
operate with Model III NEWDOS/80 Version 2.  Refer to ZAP 063 as this zap
performs the same functions as that zap did for the TRSDOS 1.2 version.

VC/CMD,86,EB     change   E5 CD 90 42 FD   to   E5 3E 08 B7 FD




******** ZAP 068 ******** 05/04/82 ******** V2M3 ********

Information zap on Model III TRSDOS diskettes.

Despite explicit and implicit statements in the manual and the zaps, users
continue to think that Model III TRSDOS type diskettes are directly useable
with NEWDOS/80 Version 2.  NEWDOS/80 Version 2, with two exceptions, CANNOT,
repeat, CANNOT operate with TRSDOS Model III system or data diskettes.  Please
believe us; this is so!!!!  DO NOT ATTEMPT to use Model III type diskettes
(data or system) with NEWDOS/80 except for the special conditions of COPY and
SUPERZAP wherein PDRIVE TI flag M is used!!!!!!  If you must use the DIR
command to determine what is on a Model III TRSDOS type diskette, do so under
TRSDOS, not NEWDOS.

The directory for Model III TRSDOS system and data diskettes is markedly
different from the directory used on Model I TRSDOS 2.3 and all NEWDOS
diskettes.  For NEWDOS/80 Version 2 on the Model III, Apparat elected to remain
with the old style directory so that data diskettes (once the address mark had
been adjusted; see WRDIRP command and SYSTEM option BN) could be used
interchangeably between the Model I and Model III under NEWDOS/80 Version 2 on
both computers.

Most programs generated for Model III TRSDOS will operate under NEWDOS/80
Version 2.  Try each program out using replacable data before using valued
data.  If in doubt, ask your program vendor.

Realizing that data files and program files must be transferable between TRSDOS
Model III type diskettes and NEWDOS/80 Version 2 type diskettes, NEWDOS/80's
COPY command, formats 1 - 4 and 6, allow, via special PDRIVE conditions, files
to be copied from a Model III TRSDOS type diskette to a NEWDOS/80 Version 2
type diskette and from a NEWDOS/80 Version 2 type diskette to a Model III
TRSDOS type diskette (note, COPY formats 1 and 2 filespecs for Model III TRSDOS
files must have an explicit drive number).  The special PDRIVE state is given
in PDRIVE, example 3, page 2-38, and provides only for Model III TRSDOS type
diskettes that are single sided, double density, 40 track.  On your master
Model III NEWDOS/80 system diskette, PDRIVE display slot # 4 was initialized to
the correct value to use with these Model III TRSDOS 1.3 type diskettes (see
zap 008 for TRSDOS 1.2 or 1.1 diskettes; see zap 025 for Model I TRSDOS 2.3B
diskettes).  For the remainder of this discussion, we will assume PDRIVE
specification 4 contains the following values:


TI=AM,TD=E,TC=40,SPT=18,TSR=3,GPL=6,DDSL=17,DDGA=2


There are many variations available for copying to/from Model III TRSDOS
diskettes which the more experienced NEWDOS user will adapt for his/her own
uses.  The following examples are to get the novice through the first anxious
moments.


1.  To copy file XXX/DAT from a Model III TRSDOS type diskette to a preformated
NEWDOS/80 Version 2 diskette, the following command will work:

COPY,XXX/DAT:0,XXX/DAT:1,SPDN=4

NEWDOS/80 will ask for the mount of the source diskette (the Model III TRSDOS
type diskette) and the system diskette (the NEWDOS/80 system diskette) on drive
0 as necessary.

2.  To copy multiple files from a Model III TRSDOS type diskette to a
previously formatted NEWDOS/80 type diskette, the following command will work:

COPY,0,1,,NFMT,CBF,CFWO,SPDN=4

NEWDOS/80 will ask for the mount of the source diskette (the Model III TRSDOS
type diskette) and the system diskette (the NEWDOS/80 system diskette) on drive
0 as necessary.  The user will be asked, one file at a time, which files are to
be copied, except that files marked as system files are excluded automatically
from the copy.  To copy a system file, use the single file copy example above.

3.  To copy file XXX/DAT from a NEWDOS/80 Version 2 diskette to Model III
TRSDOS diskette, the following command will work:

COPY,XXX/DAT:1,XXX/DAT:0,DPDN=4

NEWDOS/80 will ask for the mount of the destination diskette (the Model III
TRSDOS type diskette) and the system diskette (the NEWDOS/80 system diskette)
on drive 0 as necessary.

4.  To copy multiple files from a NEWDOS/80 type diskette to a previously
formatted (under TRSDOS) Model III TRSDOS type diskette, the following command
will work:

COPY,1,0,,NFMT,CBF,CFWO,DPDN=4

NEWDOS/80 will ask for the mount of the destination diskette (the Model III
TRSDOS type diskette) and the system diskette (the NEWDOS/80 system diskette)
on drive 0 as necessary.  The operator will be asked, one file at a time, to
select which files are to be copied, excepting that any files marked as system
files are automatically excluded from the copy.  To copy a system file, use the
single file copy example given above.


NEWDOS/80 Version 2 does not provide a method of copying to/from DOS's other
than itself and TRSDOS.  It is our intention that the TRSDOS diskette remain
the common media for moving data between non-TRSDOS DOS's which is why we took
the extra trouble to be able to copy TO a Model III TRSDOS diskette.


For the experienced user, SUPERZAP modes DD and DTS can be used to inspect
Model III TRSDOS type diskettes provided the PDRIVE specifications are set
correctly.  The command

PDRIVE,0,1=4,A

will activate the drive #4 specifications as drive #1's specifications, thus
allowing SUPERZAP to inspect a Model III TRSDOS type diskette on drive 1.  When
done, don't forget to change the PDRIVE specifications for drive 1 back.  The
Model III TRSDOS directory is 18 sectors long, starting at relative sector 306;
remember, the directory format is different than that for NEWDOS/80.




******** ZAP 069 ******** 05/04/82 ******** V2M3 ********

Information zap on Model I TRSDOS 2.3B and higher diskettes.  Refer also to ZAP
025.

Some time ago Radio Shack announced a double density modification to the Model
I TRSDOS.  To date, this modification is not available and Apparat does not
know what zaps will have to be issued to operate with the new Model I TRSDOS
2.3B or higher double density diskettes.  We assume that the new Model I TRSDOS
will continue with the implementation of RBA format in the FCBs and the
directories (which make the new TRSDOS diskettes incompatible with the old
TRSDOS and with NEWDOS diskettes), and that like Model III TRSDOS diskettes,
the new Model I TRSDOS diskettes will useable with NEWDOS/80 Version 2 only
with COPY and SUPERZAP (see above zap) when the PDRIVE setting includes TI flag
M.  However, for now, use of flag M does not allow access to Model I TRSDOS
double density diskettes as a TD code for double density implies Model III.



******** ZAP 070 ******** 05/12/82 ******** V2M3 ********

Mandatory zap to CHAINBLD/BAS to eliminate an unintended and non-displayed
CLEAR character that causes trouble during PRINT of an ASCII copy of the
program.  This character is non-displayed but is the character in text
immediately following the GOSUB36 of line 92.  Load the program under BASIC,
delete the character, and SAVE the CHAINBLD/BAS file back.  Line 92 should
display exactly the same after the character delete as before.




******** ZAP 071 ******** 05/12/82 ******** V2M3 ********

Mandatory zap to BASIC to correct memory-wipe-out error caused in certain
circumstances by a REF= statement containing a  '  character.  The actual error
is at 1A8B - 90 in the ROM and can be triggered in non-disk BASIC by keying in
twice the direct command sss' where sss is three spaces.  By making a change to
NEWDOS/80's BASIC, the problem with REF is avoided.

SYS18/SYS,02,14     change 36 20 23 DF 38 FA 2B 36 FF 18 3A EB   to 36 FF 23 DF
30 3F 36 20 23 18 F8 EB




******** ZAP 072 ******** 06/13/82 ******** V2M3 ********

Mandatory zap to Microsoft's FORTRAN sold by Radio Shack as Catalog # 26-2200 
(EDIT/CMD version 2.02, L80/CMD version 3.43, F80/CMD version not specified) to
run with NEWDOS/80 Version 2 on the Model III (and no longer with TRSDOS 1.3). 
This change deals with the insert-default-extension vector being 4473 in NEWDOS
as opposed to being 444B in TRSDOS.  User having other versions can search the
EDIT/CMD, F80/CMD and L80/CMD modules using the SUPERZAP display mode command
L,CD,4B,44 to find the occurences of this call.


EDIT/CMD,22,36     change   CD 4B 44   to   CD 73 44

F80/CMD,42,6D     change   CD 4B 44   to   CD 73 44

F80/CMD,42,90     change   CD 4B 44   to   CD 73 44

F80/CMD,42,AE     change   CD 4B 44   to   CD 73 44

F80/CMD,46,99     change   CD 4B 44   to   CD 73 44

L80/CMD,14,91     change   CD 4B 44   to   CD 73 44



******** ZAP 073 ******** 06/18/82 ******** V2M3 ********

Optional zap to allow COPY formats 1, 2, 3, 4 and 6 to copy files from or to
Model I TRSDOS 2.7DD double density diskettes when the PDRIVE for that diskette
is:

TI=xM,TD=E,TC=tc,SPT=18,TSR=3,GPL=6,DDSL=dt,DDGA=2

where:

x = A for the standard Radio Shack disk controller, and D for Apparat's disk
controller. tc = diskette track count, 35, 40 or whatever.  This track count
includes the single density track 0. dt = the directory track number (the
standard is 17).  NEWDOS/80 must be given the correct value as it does not
obtain the value from the diskette's boot sector in the single density track 0.

See example 3, page 2-38.  If ZAP 008 is applied to the diskette receiving this
zap, ZAP 008 must be taken out before this zap is applied.  Once this zap has
been applied, the zapped diskette cannot be used to copy to/from Model III
TRSDOS diskettes or to/from Model I TRSDOS 2.3B diskettes; this zap should only
be applied to a special NEWDOS/80 system diskette whose sole function is to be
used when copying files to/from Model I TRSDOS 2.7DD double density diskettes.

A Model I TRSDOS 2.7DD double density diskette cannot be formatted by
NEWDOS/80, and it cannot be format 5 copied by NEWDOS/80, not even via the BDU
option.  Further, remember, format 6 (CBF) COPY does not copy system files
to/from TRSDOS diskettes; formats 1 through 4 do, however.

Users must be aware that Model I TRSDOS 2.7DD double density diskettes are
written with track 0 in single density and all other tracks in double density;
the directory information assumes track 0 is in double density and counts its
information from track 0's 1st sector.  Note, that track 0 is allocated on all
diskettes to BOOT, a file that contains 10 sectors, not 18.

SYS6/SYS,14,25     change 00 E8 45 01 A8 EC 45 01 A9 E7 46 03 C3 0B 5C DC 47 01
0D 1C 48 03 C3   to 00 4A 48 01 3E 93 48 01 00 98 48 07 ED 5B B9 42 CD 0B 5C 8A
5B 00 C3

SYS6/SYS,14,67     change   01 50 D0   to   01 80 D0

SYS6/SYS,14,76     change   00 7B 4F 01 1A AF   to   00 38 50 01 C9 AF

SYS6/SYS,14,82     change 00 61 50 03 3E 1A B7 D6   to   00 67 50 03 36 80 23
D6

SYS6/SYS,14,8E     change 5C 12 51 01 1A 55 51 04 21 EF 5C C9   to   5C 0E 51
01 00 55 51 04 21 CD 40 C9

SYS6/SYS,14,A2     change   00 3E 4E 01 0D 49   to   00 6C 4E 01 80 49

SYS6/SYS,14,B1     change 5B 18 CC 4E 02 35 56 B7 4E 01 2F 68 4E 01 18 4F   to 
5B 28 CC 4E 02 35 56 C6 4F 02 36 00 00 5C 00 4F

SYS6/SYS,14,D0     change 00 FB C1 20 0A 3A 87 46 E6   to   00 21 08 00 19 7E
12 C9 E6

SYS6/SYS,14,E9     change   3E 05 CD   to   3E 08 CD

SYS6/SYS,14,FB     change   3E 30 CD   to   3E 20 CD

SYS6/SYS,15,21     change   06 50 7E   to   06 80 7E

SYS6/SYS,20,11     change   01 EF 5C 23   to   01 CD 40 23

SYS6/SYS,20,97     change   3E 50 20   to   3E 80 20




******** ZAP 074 ******** 06/27/82 ******** V2M3 ********

Mandatory zap to DOS to correct error occurring when a file with EOF = 0 is
copied (via single file COPY) to a NEWDOS/80 diskette from TRSDOS diskette
other than the old TRSDOS 2.3 (or as now being called TRSDOS 2.3A) diskettes.

SYS6/SYS,05,C5     change 52 3A 14 53 B7 C8 CD 35 55 2A   to   52 CD 35 55 3A
14 53 B7 C8 2A




******** ZAP 075 ******** 07/19/82 ******** V2M3 ********

Mandatory zap to NEWDOS/80's ASPOOL program to correct error in the *ASP,S
function where the computer is forced to DOS READY after the remaining spooled
print completes printing.  Instead, the delayed completion of the function
should simply continue the interrupted program.  To make room for this
correction, the SPOOL PURGED message is no longer displayed.  To determine that
the spooler is gone, simply execute the *ASP command asking for spooler status.
If the response is FILE NOT IN DIRECTORY, the spooler is gone.

ASPOOL/MAS,02,E8     change 44 C2 09 44 21 8A 58 CD 67 44 C3 2D 40 01   to 44
C1 21 08 44 B7 ED 42 C8 C3 15 55 00 01



******** ZAP 076 ******** 08/17/82 ******** V2M3 ********

Mandatory zap to LMOFFSET to correct error where the first program is stored
with a disable-DOS appendage and the second program is stored with an appendage
that does not disable DOS.  This error causes the 2nd stored program to have a
bad appendage.

LMOFFSET/CMD,00,34     change   53 21 40 5A CD   to   53 CD 17 5D CD

LMOFFSET/CMD,09,91     change 00 00 00 00 00 00 00 00 00   to   3E 50 32 C5 58
21 40 5A C9



******** ZAP 077 ******** 09/02/82 ******** V2M3 ********

Mandatory zap to Radio Shack's Model III SuperSCRIPSIT to enable it to work
with the Model III NEWDOS/80 Version 2:


1.  Allow the Main Menu Directory function to work with NEWDOS/80.  An actual
NEWDOS/80 directory is executed via DOS-CALL; so the display will look
different from that for TRSDOS.

2.  Allow the program to determine the number of 1024 byte page units of
diskette space are available on the target drive.  To do this, the DOS command 
DIR x,/Q9Q  (where x is the drive #) is executed via DOS-CALL as NEWDOS/80 does
not have the RAMDIR function.  This causes an extra directory display to appear
for during Main Memory function O that opens a document (appears after you have
adjusted the document control data).  This extra directory display may also
appear at other times.


This zapped SuperSCRIPSIT must only be used with NEWDOS/80 Version 2 for the
Model III.

With SuperSCRIPSIT, users may use DOS functions DFG (MINI-DOS) and 123 (DEBUG),
but they must be very careful when pressing the three keys as SuperSCRIPSIT is
likely to receive one or more of them.  When a page of text is displayed, using
the control-H command (HELP) puts the users where DFG or 123 may be pressed. 
Upon executing DOS command MDRET (to exit Mini-DOS back to SuperSCRIPT) or
DEBUG command G (to exit DEBUG back to SuperSCRIPT), press BREAK to return to
the page.  If HELP was not available, you will additionally have to press
control-T followed by BREAK to get back the full display.  From the main menu,
use option D to display a directory; then while the program is awaiting BREAK,
you can press DFG or 123.  WARNING!!!!  Do not exit directly to DOS from
Mini-DOS or DEBUG without giving SuperSCRIPSIT its chance to write data from
memory and close its files; this can be disastorous to your document file.

SCRIPSIT/CMD,09,06     change
AB47 0EFF 219B ACCD 9042 C023 2346 2103 00CD 7166 0604 CD51 667D 3222 7EAF 0102
005B C900 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000
to
ABC6 3032 225B 211E 5BCD 1944 C006 0411 333C 21DC AC1A 7713 D630 FE0A 3001 0102
005B 2310 F436 84CD B268 0605 CD71 6606 04CD 5166 7D24 2528 023E FF32 227E AFC9
4449 5220 302C 2F51 3951 0D00

SCR17/CTL,02,3A     change 69 FE 30 38 F9 FE 34 30 F5 CD E5 75 0E 00 32 71 42
CD 19 44 3E 0F CD 33 00 21

69 32 70 8D 21 6C 8D CD 19 44 28 05 F6 C0 CD 09 44 18 06 44 49 52 20 30 0D 21




******** ZAP 078 ******** 09/03/82 ******** V2M3 ********

Mandatory zap to Model III SCRIPSIT Version 3.2 to enable it to run with
NEWDOS/80 Version 2.

SCRIPSIT/CMD,11,4A     change   5E 13 30   to   5E 00 30

SCRIPSIT/CMD,11,DE     change   FE 13 38   to   FE 00 38





******** ZAP 079 ******** 09/17/82 ******** V2M3 ********

Information zap.

1.  Most users are still puzzled about using multi-dimension arrays with
BASIC's CMD"O".  Please refer to section 7.21 in the manual and ZAP 32.4. 
CMD"O" was intended for single dimension arrays only, but it was found that a
multi-dimension array could also be sorted if the user understands that the
arrays items sorted (directly or indirectly) actually occupy consecutive memory
locations (as assigned by BASIC during execution of the associated DIM
statement) starting with the element specified in the CMD "O" statement.  For
single dimension arrays, this is the same order as ascending order of
subscript, but for multi-dimension arrays, the order of elements used in the
sort is COMPLEX and is given by the REN formulas.  If you are going to sort a
multi-dimension array, it is highly recommend that the sort start with the
array's first element (i.e., the array's item specified in the CMD"O" statement
should have all zero subscripts (i.e.,  A(0,0,0)  for a 3 dimension array)). 
If you use anything other than zero subscripts for the sort of a
multi-dimension array, you must be very clever to figure out which elements
actually participate in the sort.

The REN formulas given on pages 7-14 and 7-15 show how to compute the REN for a
given element in the array.  Following are the formulas for computing the
element subscripts corresponding to a given REN value (remember, the first REN
value is zero).


1.  For a single dimension array whose DIM statement is  DIM A(R1)  and for
array element  A(X1):

X1 = REN


2.  For a two dimension array whose DIM statement is  DIM A(R1,R2)  and for
array element  A(X1,X2):

REN/(R1+1)  gives a quotient that is X2 and a remainder that is X1.


3.  For a three dimension array whose DIM statement is  DIM A(R1,R2,R3)  and
for array element  A(X1,X2,X3):

REN/((R1+1)*(R2+1))  gives a quotient that is X3 and remainder M2 such that 
M2/(R1+1)  gives a quotient that is X2 and a remainder that is X1.


For an n dimension array (where n is not 1) the calculation involves REN being
divided by product of all the ranges (a range is 1 greater than the value given
in the DIM statement) except the nth, giving a quotient that is the nth
subscript and a remainder that can be used as the REN value for calculating
n-1th subscript as if the array had only n-1 dimensions.  Continue this loop
until n is reduced to 1.



2.  Manual correction for ATTRIB, section 2-3, page 2-4.  Place a note there to
indicate that parameter  LRL=len1  exists, allowing the user to alter the
Logical Record Length of the file to the value len1 ( 1 to 256 ).  This value,
kept in the file's FPDE in the directory, is hardly ever used except by DIR,
but some people want DIR to show the correct value.  Remember, in NEWDOS/80
OPENs of a file, the LRL value is taken from register B rather than from the
directory (in BASIC, it comes explicitly or implicitly from the OPEN
statement).




******** ZAP 080 ******** 11/29/82 ******** V2M3 ********

Mandatory zap to DOS to correct error that was allowing a format 5 COPY to
occur when both diskettes had the same number of sectors but different GPL
values.

SYS6/SYS,22,36     change   5A 28 0E CB   to   5A 00 00 CB





******** ZAP 081 ******** 12/17/82 ******** V2M3 ********

Mandatory zap to EDTASM to correct error where an error flag was not being
reset after failure of a file open, thus causing the next file operation to
fail to CLOSE a file properly.

EDTASM/CMD,30,5F   change   CA F8 01 CD   to   CA 08 57 CD

EDTASM/CMD,03,23   change   C9 3A 28 52 F6 08 32   to   AF 32 F2 75 C3 F8 01




******** ZAP 082 ******** 12/21/82 ******** V2M3 ********

Mandatory zap to BASIC to correct error in CMD"O" direct sort where an array is
specified twice in the command sequence (i.e., two parts of a string supply
independent sorting criteria.

SYS21/SYS,01,14     change   04 DD 77 04 D7   to   04 CD B4 65 D7

SYS21/SYS,01,7F     change   DF C2 4A 1E F1   to   DF CD B9 65 F1

SYS21/SYS,01,8E     change   01 32 02 4F F1   to   01 CD EB 65 F1

SYS21/SYS,02,88     change   DD 7E 04 B7 28   to   DD CB 04 7E 28

SYS21/SYS,03,EE     change   C9 DD 5E 13 DD   to   C9 CD F4 65 DD

SYS21/SYS,04,2C     change   14 19 10 FD C9   to   14 C3 FF 65 C9

SYS21/SYS,04,B5     change 0C 28 05 2B 1B ED B8 13 DD 73 09 DD 72 0A DD   to 0C
EB B7 ED 42 DD 75 09 CD 08 66 20 22 00 DD

BASIC/CMD,14,BD     change
00 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000
to
DD CB04 FEC9 C24A 1E3A 0251 B7FD 2100 4328 04FD 2117 43E5 DD6E 05DD 6606 FD5E
05FD 5606 DF20 04DD CB04 F611 1700 FD19 FD7E 00B9 38E8 E1C9 DDCB 0476 C032 024F
C9DD 5E13

BASIC/CMD,15,00     change 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000 00
to DDCB 0476 C8F1 09C9 DDCB 0476 C019 10FD C9DD 740A 09EB DDCB 0476 C078 B128
042B 1BED B8AF C9




******** ZAP 083 ******** 02/26/83 ******** V2M3 ********

Mandatory zap to EDTASM to disable a faulty attempt to keep the drives rotating
which was actually causing the drive motors to stop.  A number of users had
complained of this, and finally a user from Australia showed us a disassembly
of exactly what was wrong.

EDTASM/CMD,29,2D     change   80 C0 32   to   80 C9 32






******** ZAP 084 ******** 04/25/83 ******** V2M3 ********

Mandatory zap to Radio Shack's Model III SuperScripsit Version 1.1 to enable it
to work with the Model III NEWDOS/80 Version 2.  This zap is identical in
function to ZAP 077 for SuperScripsit 1.0.

SCRIPSIT/CMD,09,0A      change
AB47 0EFF 219B ACCD 9042 C023 2346 2103 00CD 5166 0604 CD31 667D 3222 7EAF C900
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000
to
ABC6 3032 225B 211E 5BCD 1944 C006 0411 333C 21DC AC1A 7713 D630 FE0A 3001 2310
F436 84CD B468 0605 CD51 6606 04CD 3166 7D24 2528 023E FF32 227E AFC9 4449 5220
302C 2F51 3951 0D00

SCR17/CTL,00,2F      change
7D 69FE 3038 F9FE 3430 F5CD 8975 0E00 3271 42CD 1944 3E0F CD33 0021
to
7D 6932 728D 216E 8DCD 1944 2805 F6C0 CD09 4418 0644 4952 2030 0D21

Following is an optional zap which will correct the SuperScripsit display to
read NEWDOS instead of TRSDOS.

SCR17/CTL,02,61      change   20 5452 5344   to   20 4E45 5744





******** ZAP 085 ******** 05/03/83 ******** V2M3 ********

Mandatory zap to BASIC to (1) correct error where an RBA exceeds 8,388,607
(uses the 24th bit) and (2) to extend the allowable range for record numbers
from 1 - 32767 to 1 - 16777215 (even though the file itself is limited to 16
million bytes).  The extension of the record number range was needed as FF and
MF processing using RBAs was generating bad record number errors when BASIC
converts the RBA to record number to assure that the RBA was on a record
boundary and the resulting record number was greater than 32767.  This zap is
especially important to NEWDOS/80 2.5 users.

BASIC/CMD,07,C8     change
0620 0FCD EF0A 7C55 5906 9821 5763 E5C3 6909 DDCB 0056 CAA9 5DCD E95E 2157 63E5
6069 C39A 0AAF 456C 67ED 5B02 573E 1118 07B7 ED52 3001 193F
to
06C4 3466 C4E1 5ECD EF0A 594C 5506 0021 2441 3698 2336 80CD 6507 C357 63EB 2100
0079 ED4B 0257 083E 1808 87EB ED6A EBED 6A38 06B7 ED42 0938

BASIC/CMD,08,00     change CB11 CB10 CB15 CB14 380B 3D20 EC7C B528 0103 CB78
C8C3
to 04B7 ED42 3C08 3D20 E808 EB4F 7AB3 C80C C023 7CB5 C0C3

BASIC/CMD,15,25     change
00 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
00
to
CD 2366 E5C3 174E CD90 61E1 E3E5 C3E4 4DB5 B1CA B25D 79B7 C9DD CB00 56CA A95D
C9

SYS10/SYS,00,E4     change   C5 CD 90 61 28   to   C5 C3 1C 66 28

SYS10/SYS,00,FD     change   6F 18 2B   to   6F C9 00

SYS10/SYS,01,1D     change   F0 E5 C5   to   F0 C9 C5

SYS10/SYS,01,26     change   CD E9 5E 7C B5 20   to   CD E1 5E 00 00 20

SYS10/SYS,01,68     change
CD90 6128 A1CD 7F0A EB7A B7FA B25D B3CA B25D 1BDD CB00 56CA A95D ED4B 0257 7821
0000 0611 CB3C CB1D 1FCB 1930 0119 10F4 2425 C2B2 5D65 6FC3
to
CD23 667C CD2C 6620 012B 0DDD CB00 56CA A95D EB79 ED4B 0257 2100 0008 3E19 08CB
3CCB 1DCB 1ACB 1B1F 3001 0908 3D20 EF7C B5C2 B25D 08EB 4FC3




******** ZAP 086 ******** 06/02/83 ******** V2M3 ********

Information zap.  For those users with the Hard Disk Operating System NEWDOS/80
Version 2.5, be sure to apply zaps separately to each of NEWDOS/80 Version 2.0
and to NEWDOS/80 Version 2.5.  Do NOT just apply the patch to one of the two
systems and copy the module over to the other as you may eliminate some 2.5
zaps or end up applying some 2.5 zaps to 2.0, which can be disastorous.

A separate series of ZAPs will be issued for Version 2.5 and if a zap therein
also applies to 2.0, the corresponding Version 2 zap number will be stated.






******** ZAP 087 ******** 07/31/83 ******** V2M3 ********

Mandatory zap to Radio Shack's Model III SuperSCRIPSIT Version 1.2 to enable it
to work with Model III NEWDOS/80 Version 2.  The first two patches for this zap
are identical to the first two of ZAP 084 (so apply those 2) and the 3rd patch
is:

SCR17/CTL,02,68     change   20 54 52 53 44   to   20 4E 45 57 44




********  ZAP 088  ******** 09/08/83 ******** V2M3 ********

Mandatory zap to DOS DEBUG to correct error I and C functions handling of OUTI,
OTIR, OUTD and OTDR Z-80 instructions.  This zap should be applied to the hard
disk version, NEWDOS/80 Version 2.5, if you have it.

SYS5/SYS,04,B3    change  E6 07 FE   to   E6 87 FE

Type Selection or L for list, <CR> to exit: 