8500 Firmware History Summary		
10/8/91

NOTE:	The information contained herein, is solely for the use 
and benefit of EXABYTE customers.  It is not intended 
for distribution beyond the internal use of our 
customers.	
_________________________________________________________________


				85C0002 Release
				- Beta0063 Control
				- Rev1_030 Servo
				- EE_8500 EE

12/07/90  B0064
	-	Fix queued command handling during SCSI reset.
	-	Fix ER #K254, allow Rewind after 'hard' error.
	-	Correct setting of Information Bytes at pending LEOT.
	-	Fix Space/Locate remainders.
	-	Fix ER #K255, power on hang.
	-	Add retries for 'not tracking' error during read.
	-	Fix 8500 Mode being set when rewind 8200 tape.

12/11/90  KC000_65
-	Revise Read Position, Mode Select and Mode Sense per IUM) 
several minor changes).
	-	Fix ER#'s K262 & K258, tracking at LBOT.
-	FIX LEOT sizing (by Servo for measurable cartridges, by mode 
Select for not measurable cartridges.
	-	Add permanent read error handling in Space command.
	-	Add 'Elapsed Time' buffer flush.
	-	Fix ER #K223, missing data when no EOD (power down on write).
	-	Fix ER's #K271, K1043 & K1053, lose Amp Sense on read.

12/13/90  KC000_66
	-	Search Field detect improvements.
	-	Expand Receive Diagnostics command.
	-	Add DPORT Write FSCs 96 and 97.
	-	Add several variables to S/W Hang context save, fix error in 
PC save. 
	-	Ignore Motion Threshold when FM is in buffer.
	-	Revise VERSION/REVISION table for Monitor display.

		ADDR	EXTERNAL DATA MEMORY 	ASCII
		0150		...		(Controller code)
		0158		...		(Servo code)
		0160		...		(EEPROM)
		0168		...		Combined controller/servo/EEPROM)

(Controller date removed, Servo code and EEPROM moved up, 
Combined added).

12/18/90  KC000_67
- Fix ER #K297, Mode Select error.
	-	Fix ER #K283, Space after PEOT caused flush.

	-	Fix ER #279, K286, K1063, failure to handle 8200 tape 
correctly. 
	-	Buffer read errors (save Check condition with affected 
block).
	-	Enhance Send Diagnostics to get Servo data.

12/19/90  KC00067
	-	Add 8200 DPORT Write.
	-	Treat SFM and LFM.
	-	Fix error in orig. KC000_67 command decode.
	-	Fix ER #K1057, Space vs. BOT.

12/21/90  KC000_68
	-	Fix ER #K1066, 8C write hang.
	-	Add Write Enable signal on PPORT OUT bit 3.
	-	Add new format support for Read.
	-	Fix read/motion timer conflict.
	-	Add 8200 Space support.
	-	Fix ER #K333, Customer Unique Erase.
	-	Moved Rewind and Erase managers to Bank 1.
	-	Removed DB from $REVISION $ statement from some manager files 
-it is still in M8500.ASM
	-	Pack SHOE.ASM.

12/21/90  KC000_69
	-	Fix ER #K339, Mode Select reserved bit detection.
	-	Fix ER #K337, FM detection error.
	-	Correct Read Retry Count in Sense data.

12/27/90  KC000_70
	-	Fix ER #K340, Space failure.
	
1/04/91  KC000_71
	-	Change limit constant in Fcv Diags Xfr count check.
	-	Add BUSY status to TUR.
	-	Set INFO BYTES on fatal write errors.
	-	Enable DPath Parity Checking.
	-	Fix ER #K1067, Autoload.
	-	Fix ER #K354, extraneous read reconnect.
	-	Complete 'Load Your Brains' from SCSI.

1/08/91  KC000_72
	-	Set Illegal Rqst when FIXED and SILI set on read.
	-	Fix Rst Read Retry Count error.
	-	Add Customer Unique Ili reporting w/SILI set.
	-	Add Customer Unique parity error retry limit.
	-	Change 8200 backhitch to 38 tracks.
	-	Fix error in returning sense buffers in diagnostics.
	-	Add CRC check to 'Load Brains'.

1/10/91  KC000_73
	-	Fix error, Space Block misposition.
	-	Fix ER #K120, Space Block hang.
	-	Fix ER #K355, Space problem.
	-	Fix ER's #K334 & K351, Wrong LID.
	-	Add 8200 mode full buffer use.

01/11/91  KC000_74
	-	Revise RBC algorithm - fix ER # K214, K235, K247, K259,
	  K263, K266, K280, K352, K1042, K1058, K1065, K1066
	-	Limit FM/EOD write recovery attempts.
	-	Relax LBOT/EOD RBC criteria.
	-	Add 'one head bad' detection on read.
	-	Change Mode Sense density code reporting (remove RTF bit).
	-	Fix Erase hang at PEOT.

01/15/91  KC000_75
	-	Fix 8200 mode and KC000_74  errors (8C hang).
	-	Change backhitch after load to 9 from 18 tracks.
	-	Merge 8200 Read code.

01/18/91  KC000_76
	-	Fix write hang ER #K373, K374, K375, K377, K379, K381, K382
	-	Fix 8200 switch Read to Write
	-	Add 'Copy Brains to Tape'.
	-	Fix s/w hang.
	-	Add 'Write HDSYN Tape'.
	-	Add 'Make EEPROM Load Tape'.
	-	Add 'Read LBOT at 8500 load'.
	-	Fix ER #K371, Rewind.
	-	Fix ER #378, eject.
	-	Move Motion Trace Pointer Back where Monitor needs it.
	-	Fix ER #K363.
	-	Handle EOT/BOT intrp during HSS.
	-	Fix ER #380, REW Illegal Request.
	-	Correct Info Bytes at LEOT.
	-	Space saving changes (Put MACROS in CALLs, optimize MACROS, 
etc.).

01/22/91  KC000_77
	-	Change 8200 EOD Erase to 7.5 Sec (128.5mm) from 16 Sec.
	-	Add 8200 Short FM.
	-	Put RTF bit back in Mode Sense.
	-	Remove 'Resize' code.
	-	Attempt tracking only once at LBOT.

01/23/91  KC000_78
	-	Fix ER #K389, write hang (task Q full of EOS_FaceRs).
	-	Temp fix for 'backhitch' problem (remove KC000_75 fix).
	-	When Motion failure, attempt Recover Servo Sense Buffer and
	  Unload whether or not Servo Cmd in progress.
	
-KC000_79 thru KC000_82 see KC000_83

02/01/91  KC000_83
	-	Fix ER #K391, 8C - Watchdog Timer
	-	Fix ER #K298, Write hang at LEOT.
	-	Fix ER #K299, Prev/Allow Med Rem hang.
	-	Fix ER #K406, Read hang.
	-	Read LBOT at Load 8500 tape.
	-	Change Unit Attn to Load from Unload.
	-	Add some FSCs, correct DRAM Parity FSC.
	-	Differentiate DIF from SIF SCSI Intf.
	-	Add EEPROM spot checks (HEADSYNCH et al).
	-	Add Send Diags Streaming Write.
	-	Fix 'Load from Tape/Make Load Tape' problems.
	-	Stop Tape on fatal errors.
	-	Fix 8200 problem w/ .OT. 1K blocks.
	-	Add 8200 Adapt Track at LBOT
	-	Add BRT buffering of "Special' physical conditions.
	-	Clear BRT at 8200 Space File.
	-	Use Current PID to prevent Backhitch from passing LBOT.
	-	Slow synchronous xfer (to help Read miscompare problem.)
	-	Add temporary trap for extraneous timer zero interrupt.

02/05/91  KC000_84  
	-	TUR sets Sense Key 4 (H/W Err) when BROKEN bit set.
	-	Fix ER #K1109, WD Chip hang.
	-	Fix ER #429, Locate error.
	-	Fix ER #423, Read LBOT hang.
	-	Move 8200 tape read allow/disallow from code to EEPROM.	

				85C0030 Release
- KC000_84 Control
- Rev1_82A Servo

02/15/91  KC000_91
	-	Add write/read 8500 SFM.
	-	Synch Space Cmd w/ HSS steady state reached.

				85C0040 Release
				- KC000C91 Control
				- KS010872 Servo

2/28/91  KC000_92
	-	Remove debug traps put in KC000_85 for timer 0 problem.
-	Remove 'bluemoon' hang from SHUTOFF macro (Each module using, 
timer must check for timeout-event race).
	-	Enable 8200 mode read (any EEPROM).
	-	Fix ER #K1141, 8200 EOD problem.
	-	Fix PEOT handling.
	-	Optimize BUSIF for space reduction.
	-	Fix ER #K499, extra status on abort.
-	Turn off extraneous Servo Zones when shutting down in 8200   
mode.
	-	Fix ER #K492, EOT problem.
	-	Fix ER #707 Locate failure.

03/04/91  KC000_93
	-	Redefine some EEIMAGE bits per new spec.
	-	Execute Inquiry whenID Msg LUN is bad.
	-	Fix ER #720, valid bit.
	-	Fix ER # K707 (again), Space/Locate.

03/05/91  KC000_94
	-	Add F_FS_FAIL (95h) FSC when position for write fails.
	-	Stop tape motion on s/w hang (FSC 8C).
-	Increase Message System functionality to Customer Unique    
conformance.
	-	Align SHOE1 w/ SHOEO.
	-	Fix ER #K1146, Buffer Empty (99) error in 8200 mode.

03/06/91  KC000_95
-	Allocate code space for revised hardware (chip select    
  problem plus 200h more space).
	-	Allow erase if logically but not physically at BOT.
	-	8200 mode fixes.

v95_96
	-	Fix SETB_G clober message XM_SHUTDOWN in ACC - BOBL
-	Fixes to switch read to write handling for 8200 back space   
block.
-	Fixed bug where cleared buffer and set new read BEFORE  
killing the FILLMNGR.  This caused fill to get upset.  Also 
fixed I_NOT_SYNC handling for 8200 mode.
	-	RD_UP - Clear PEND_EC4.
-	Also added F_ERSGAP trigger if 8200 FM detected in Customer 
Unique Configuration.
	-	Make REPLYTRIG to a call routine
	-	Jump over test for WOQ_CNT =zero after load header to HW in  
wt err mode.
-	Fixed 8200 FM SF (AUG_BID SF not updated with FM block) at
  label FAUGUP.
- Fixed 8200 UNDERRUN caused by WRER occurred during EOS 
  iteration.  LD_PEND is scheduled because WOQ is empty.  Fix
  is at I6_NOT_PEND; if error, loads GAP to HW and don't pend
  the interrupt.
-	If error in 8200 mode, at EOS don't bother put anything in 
the WOQ. LD_HDR_R will erite GAPs to HW even the WOQ_CNT is 
zero.
-	If we are already stopped and we get a STOP8H command, we 
send back M_STOPBH_DONE instead of hanging.  this is to 
compensate for the servo accidently detecting BOT on HSS 
reverse, stopping, and then figuring out that the BOT sensor 
went off when it shouldn't have.
-	Fixed a carry bit bug in TRACK-BACKHITCH routine for 
calculating backhitch numbers for tracking retries.
-	Modified change of 21 Feb 91 so that we check for the 
TIMEDOUT bit being set when we actually start executing the 
QMC_TRKER1 routine to decide whether to continue executing it 
or not. this will hope fully eliminate the race condition 
window between timing out and receiving the ontrack primary 
status change rather than just narrowing this window as I 
believe the 21 Feb 91 change did.
-	Allow a change in status from C2 to 02 in the primary status 
change table.  This is to compensate for the servo accidently 
detecting BOT on HSS reverse, stopping, and then figuring out 
that the BOT sensor went off when it shouldn't have.
-	Fix for ER $K707 the customer unique bug.  Added _XS_ISBLOK 
to SP_BITS to decide if file locate code was actually part a 
block space and so it should ace (act) differently and when 
done return control to the block locate code.

v96_97
-	Added vars for handling of NOTBLANK in fill mgr.	
	-	SHUTDOWN not always cleared (ie. REWIND_NF) on rewind
-	Fix GOABORT bug SEND_CMD #MABORT clobered value in ACC-BL 
combined sending XF_RECON_TH and XF_LEOT trigger to common 
place to save space-BLSYMPTMP: DPORTW Underrun, Hang, PEOT 
problems, etc..
-	Fixed _MODE8500 to MODE8500. Should have no underscore. ER 
#K736 _BL.
-	Fix for handling of NOTBLANK
-	Put Mode Select Density Code back the way it should be and 
fixed minor switch bs
-	Added to the M_HDSYNCcommand.  If successful, we get 2 bytes 
of the headsync and write them to 3F80 and 3F81 (EE_IMAGE and 
EE_IMAGE +1)
-	Fixed 8200 space block bug.  In 8200 mode the FORE_CNT can be 
0 so a check was added to send an I_NOT_SYCN to get further 
data in the buffer so the search can start.

v97_000
-	Fixed F_POS_ERROR handler - BL
-	Patch for testing, Density code can not be changed if it's 
default is 8200 mode.
-	Increased the timeout to 45 seconds for MC_SRCHFR.
-	Allow a change in status from 46 to 5A in the primary status 
change table (M2_PRIMARY).
-	Changed the servo version format from KS xxx yyy to KS xx yyy 
x.

v000_010
-	Added vars for 8200 mode changes
-	Changed 8200 stop backhitch so that it does stop/ATMREV 
sequence only for long backhitches (HOLEMODE, DTM missed).  
For these cases it does STOP_BACKHITCH 6, then ATMREV 32 FOR 
A TOTAL OF BACK 38.
-	Fixed no disconnect problem during 8200 file searches.
-	Fixed 8200 filemark pid offset.

v010_020
-	Unit Attention setup when ejecting begins instead of when it 
finished.
-	Fix for ER #1156, must return FORE_IDX back to original value 
after illegal read to write mode switch.
-	Fix for ER #740, window for bit _FM_IN_BUF
-	Fix for shutdown/abort handling. ER #K652.
-	Added a subroutine to test for the, "at LBOT" condition.
-	Change Verify to perform a No Op when the count is zero.
-	Changed Test Unit Ready to fix reporting of Busy status all 
the time if no tape is present and we are configured for the 
"BUSY" option ER #K641.
-	Changed Mode Select to use a subroutine to test for the, "At 
LBOT" condition when updating P5. CT and ,MODE8500 bits.
-	Change Mode Select's Density Code reporting and a change to 
Test Unit Ready's reporting of Not Ready while ejecting.
-	Corrected the not setting Valid bit on fatal servo errors 
that hit PEOT.
-	DR_FILL_ANY - Move clearing of READBITS before call DR_ZONE 
HD_82ANY - Temp add TRACE s__state for debug - rew
-	When we are in motion state 5 and are trying to stop the tape 
because there was an error, we now expect either a command 
complete or a command reject.  
-	03-14-91 - Corrected syntax error at I_L+SPCLF via 
instructions.
-	Fix to space file special block handling. ER #K746.

KC010050 - KC010060
-	Added setting of AT_LBOT if we are switching read to write 
modes when logically at LBOT.  This will assure that LBOT is 
rewritten.
-	Added logical spacing to LBOT via the I_LOC_LBOT command, for 
customer unique configuration.  Prevented locate from 
returning an absolute value remainder under any 
circumstances.
-	Fixed special handling to adjust for redefined SPECIAL block 
types.
-	Changed the EEPROM Head Synch initial test limit from 07xx to 
OAxx to 07xx to 09xx.
-	Corrected bug with Unit Attention after an unload that 
prevented the M-State from being lowered correctly.
-	Comments on the Mode Select change were not correct.  This 
update to this files does not effect execution - comment 
only.
-	DR_TRACKING - Extend tracking timeout when D_RDFLS._FILLANY 
is active.  This prevents a bad DTM detection on timed 
backspace block operation.
-	Took out temporary jump that let LD_HDR_R load GAP to HW even 
WOQ_CNT is zero (8200).
-	Rework in 8200 EOS to handle WRER shutdown with no RBC 
interrupts at all making sure that the WOQ is fully "primed" 
if we are in WRER shutdown.
-	Added a check to WTER_RBC - if 8200 mode, check WOQ_CNT to 
make sure WOQ is "primed" in addition to looking at WOQ ptrs.
-	Added locate LBOT code which checks if LBOT can be found in 
the BRT.  This is for the customer unique configuration.
-	Fix format problem (last bit was not set when zero filling)
-	Fixed SPACE/LOCATE synchronization problem.

KC010060 - KC010070
-	Change FM retry count to 10.
-	Added constant XR_BLKTAPE.
-	Added new _SPECL_IN_BUF bit, removed rewind mngr bit.
-	Removed rewind mngr link for clearing the BRT
-	When BRT gets cleared, clear _SPECL_IN_BUF.
-	ER #673, no disconnect fixed to work if there are FMs or 
specials in the buffer.
-	Fix so that if read and tape is blank (IPORT not started), 
then return XR_BLKTAPE so BUSIF can decode differently
-	Fix so that PEOT is set when we logically encounter PEOT.
-	Rewind no longer clears the BRT (or buffer).
-	Issue new fillerup if special in the BRT, zero BRT for both 
8200 and 8500 mode if new_read is set.
-	Fix so that AT_PEOT is checked instead of PEOT.
-	Fix for customer unique space bug. 
-	Removed rewind mngr link for clearing the BRT,
-	Fixed byte addressing error.
-	Added new fail char sent to monitor.  If the boot is too old 
to support making a load tape, the drive will send a "o" to 
the monitor.
-	Added subroutine to copy the commands transfer length to the 
Info bytes.
-	Added a new subroutine to zero all the Read and Write retry 
counters.
-	Added additional tests to the power-on WD SCSI chip tests. 
Improved 20 MHz performance by setting constants to new worst 
case.
-	Changed Request Sense to use the new routine 
ZERO_EVERYBODYS_COUNTERS to clear some more Write counters 
during a clear counters operation.
-	Added new ending status for when a read is issued and we are 
at blank tape.  In this case the IPORT variables are not 
correct and BUSIF must copy the commands transfer length into 
the info bytes.
-	Buffer no longer cleared with BRT, removed rewind mngr link 
that is no longer used.
-	Removed unused rewind mngr link.
-	On a rewind command (MC_REWIND) added the servo command to 
get the tape configuration (MTNGCFG) and store it in the 
variable CARTMODE.  Fix for the REWIND problem.

KC10070 - KC10080
-	Added a new BUSIF command code for the customer unique change 
on SCSI ID command.  New development.
-	Added XS_BLNDCNT for use in directory support.  Removed bits 
for space zerobuf control.  (fill manager will be zeroing the 
buffer) so the bits were no longer needed.
-	Added DTM_DIF to DPORTR exts for future misposition recovery.
-	Added flag needed for space PEOT handling in 8500 mode.
-	Added comment for fill mngr bit.
-	Added new variable for the customer unique software write 
protect enabled flag.  This is all for new development and 
expanded features.
-	Removed the zerobuf link PUBLIC and EXTERN declarations.  
Space manager will no longer be zeroing the buffer.  (Fill 
manager will be doing that) so the links were unnecessary.
-	Fix for bug were _BS_DONE bit is left set even when we get 
False Blank this causes us to hang on a shutdown.
-	Set bit_CCBSENT in XX_BITS to prevent Rewind mgr to send 
another Currnet command begun to BUSIF again.
-	Removed zerobuf, because the fill manager is now handling 
zeroing the buffer for itself.
-	Added PEOT handling to the space manager.
-	Added code for customer unique special software write protect 
feature.
-	Added new code for customer's unique special change SCSI Bus 
ID command.
-	Added new code for customer's unique special change SCSI bus 
ID instruction.
-	Added new ending status for the Logical Read manager for 
hardware errors.  
-	Modified zerobuf background routine to only clear the brt 
pointers and counters for 8200 mode.  This change was needed 
because the buffer is now zeroed by the fill manager instead 
of the rewind 1read and space managers.
-	Save difference between DTM read from tape and expected DTM 
in external var DTM_DIF.
-	Move clearing of external RAM before call to DR_FLUSH to 
protect initialization of EOF_LID
-	Clear BB_CLEAR here since the BRT may be new.
-	Clear READBITS to insure SEEKLBOT is not left on following 
overwrite of an 8500 tape, rewind, then space file operation.
-	Fixed ER #K683 and K686 positioning to LBOT using I_LOC_LBOT.
-	Fixed problem with using IDMACRO instead of IDX2PTR MACROS 
for code optimization.

KC010080 - KC010090
-	Added vars for fatal error table.
-	Added fatal error table.
-	Added fatal error table 2 zeroes when new tape loaded.
-	Fixed 8200 switch read to write and get illegal position at a 
legal position bug.
-	ER #1176- when switch read to write is called in 8200 mode 
and it is not legal to write, leave drive in a clean state 
for reading.
-	Modified directory support code to allow a blind detect 
during the forward search at 10x during a resverse 
space/locate.
-	Added code to Unit Attention to set the FSC to a special 
value "77h" and also put the FSC in byte 13 of the check 
condition CDB.
-	Added code to handle the WD 40H interupt (internal failure). 
This code aborts any ongoing command (same as if an about 
message was received) and then puts the WD chip back into an 
operational mode.
-	Added code to handle the WD 40H interrupt.
-	Added code to Test Unit REady to not report BUSY when tape is 
unloaded but prevent was set so no eject occured.
-	Added temp code to catch SRVDLY set when it is not supposed 
to be.
-	Added test for max bad DTM stripe for 8200 FM.  Declare error 
if more than eight DTM tracks are bad.
-	Clear BAD_TRK1/2 at FM82_DTMSEQ.
-	CUT old change histroy into a file DPORTW.HIS because the 
AVOCET assembler gets confused when source file gets too big 
(GT 32000bytes).  See BOBL the keeper if the ancient change 
history is wanted.
-	Send F_SHUTDOWN to Flush Mgr F_MED_ERR to XFATALERR handler 
if nonrecoverable error discovered during the read part of 
Write Recovery.
-	Removed the use of RBC_CNT to determine "Real-End of Stripe" 
for non-data blocks and use the PID of the block in the WOQ 
instead.  In 8200 mode, this also relieves the confusion of 
the VRBC called by the EOS handler and prevents failure of 
non-data blocks from not being detected.

KC010090 - KC010100 
-	Added new mail M_SDIAG and M_SDIAG_DONE.
-	Gave the manager 40H bytes from DPORTW cause the manager to 
run out of space.
-	Added definitions needed for the space trace table. 
-	ER #754 - fix for load after space command
-	Fix Write Buffer FM command from BUSIF in 8200 to Write 
UNBUF- BOBL
-	Set M_PARAMETER to 0 for M_TRACK command so normat tracking 
will always be done.  Some old value in M_PARAMETER could 
cause multimode tracking to be done and that would not be 
good. 
-	Added a space/locate trace.
-	Added handling for steady state trigger from MOTION during 
HSS reverse and send DE_HSScrusin message to DPORTR so the 
blind criteria can be tightened. 
-	Added some defensive code to the WD chip command issuing 
sections.  If SCSI has gone out then this new code will try 
to get him back to work and it will put messages in the 
message queue telling us that SCSI is having trouble.  
Attempt to address the hardware problems exhibited in ER #759 
and ER #801.
-	Allow a primary status change (for untensioning) and a 
handshake/sync in the M_SDIAG command.
-	Added new motion command M_SDIAG for executing servo 
diagnostic program.
-	Added M_SDIAG command (MC_DIAG) to mail table.  Also increase 
the number of motion commands from 33 to 34.
-	Rmove hang which was added to test changes to meet format 
spec LAST-END)

KC010100 - KC010110 
-	Added new bit _EOFDONE to D_RDFLGS for Dportr. 
-	ER #754 - load will clear new read to force fill mngr to zero 
BRT.
-	ER #765 - fill mngr tries to clear BRT twice, introduced with 
fix to ER #754.
-	Added code to zero the Fault Symptom Code after a successful 
completion of an action command.
-	Added code to not process an abort message from a host other 
than the host who issued the present action command.
-	Changed the Mode Sense RTF (read tape format) field in the 
vendor unique page to the WTF field (Write Tape format.
-	In the TRK_BACKHITCH routine, in 8200 mode we were only 
backhitching 18h tracks when the retry count was equal to 4. 
It now backhitches 18h tracks when the retry count is greater 
than or equal to 4 (and less than 8).

KC010110 - KC010120 
-	Change XX_ZERO_BB to XX_ZERO_BRT and XX_ZERO_BUF
-	Added a new event, B_WD_CHIPSEL. This event message will be 
used to leave an indicator on the message trace that the WD 
chip was clobbered by a BEN chip select.  This is to flag the 
BEN chip select.
-	Added new mail M_ATMSTOPB and M_ATMST_DONE.
-	Gave 80H from DPORTW and 80H from IPORT to the manager for 
new space code.
-	Added bits for 8200 BADDTM recovery of space.  Also added 
counters for BADDTM recovery and for 8500 HSS blindness. 
-	Added var for spliting BRT and buffer clear routine.
-	Remove _EOFDONE and rename DTM_DIF to LAST_DTM.
-	Changed test describing P1.3
-	Add logic so that the buffer and BRT cab be cleared 
separately.
-	Partial fix to ER #1185.
-	Add separate clearing of buffer on unload.
-	Changed M_STOPB to M_ATMSTOPB so we can go back in both 8200 
and 8500 without worrying about running into an 8200 FM ATM.
-	RE-PUT this version, previous one was incorrectly PUT - BL.
-	Changed M_STOPB to M_ATMSTOPB so we can go back in both 8200 
and 8500 without worring about running into an 8200 FM ATM.
-	Change XX_ZERO_BB to XX_ZERO_BRT.
-	Fixes to 8200 BADDTM (09 sense code) recovery code. 
-	Added 8200 BADDTM recovery (the 09 sense error) to try to 
recover from a space command that miscounted ATMs.  Also 
added counters for BADDTM recovery and 8500 HSS blindness. 
-	Fix for ER #773. A block space back beyond lbot while in a 
file greater 0 will hang if the read after the high speed 
reverse does not read the filemark before the first reconnect 
threshold. 
-	Added link for clearing buffer.
-	Changed XX_ZERO_BB to BRT and BUF.
-	Added new event, B_WD_CHIPSEL.  Now send this event message 
to myself wheneve the WD chip fails any of its access tests 
(tests for the BEN chip select bug). This new message is 
necessary because the task schedule was getting covered up by 
the DPROTs. 	-	Added code to handle MState transition 
when selected by the same host you are currently trying to 
reselect (this is a host error but we did hang when it 
happened). 
-	Added code to clear the LUN is wrong bit after reporting it 
in Inquiry.  This bit was not being cleared immediately and 
it could cause a subsequent Test Unit Ready to report a Check 
Condition.  
-	Added in link for clearing buffer, saved space by removing 
siemens display routine .
-	Fixed SRVDLY bug, took out extra code to catch it.
-	Added link for clearing the buffer. 
-	Changed X_ZERO_BB to XX_ZER_BRT, removed EXTERN SIEMENS.
-	NO_82BLK - Create new subroutine (CHECKEOF) to consolidate 
end of file verification and add a check which will assume 
the file is complete if the last block released was a 
permanent error. 
-	HD_82FM - Save last DTM value instead of the difference .
-	Fixed bug in 8500 EOSCHK EOS_FakeR loop.  If WRER occured 
during the EOS_FakeR loop => call RBCERR, THEN loop back to 
finish untill no WOQ LAG. This essentially complements 
EOS_TK1 and mark blocks as bad for a Write Recovery process.
SYMPTOM: Task queue overflow with bunch of EOS_FakeR
-	Added test for error (C bit) returned from RBCPROC when 
called from PendTO_VRBC so the WRER bit get set.
-	Change 8200 consecutive bad blocks to 25 block from 56.
-	Fixed bug in RES_HOLD logic and update RES_HOLD in INITABID
SYMPTOM : HOLD_IDX is in invalid range  ER #K-762, K-690
-	Properly disable Deformatter when sending F_PS_FAIL in 
POSN_WT Disable formatter in LD_DPORT before turn in on for 
the 1st time.
-	Added new motion command M_ATMSTOP, which will determine 
whether we are in 8200 or 8500 mode.  If we are in 8200 mode, 
it does a STOP and then a search reverse ATM.  If we are in 
8500 mode, it does a STOPBH.
-	Added M_ATMSTOPB command to mail table (MC_ATMSTOP).  Also, 
increased the number of motion commands from 34 to 35.

KC010120 - KC010130
-	Added new bit _FANYDATA to D_RDFLGS for Dportr.
-	Added Xmemory for DPORTW's 8200 FM error handler.
-	Fixed bug with SW Hang where it was not always stopping the 
tape.
-	Fix for calculating underrun counter.
-	Fix for calculating overrun counter.
-	More fixes to 8200 file space bad DTM recovery.
-	Put the manager-2constant (40H) on the ending status, 
'XP_RP_DONE.  Not having this constant on this status caused 
us to skip the buffered Read Position data phase.
-	Eliminate the possibility of an incorrect FM or EOD BRT entry 
for LID and BID when doing BSF operation (DC_FILLANY) and we 
sync up on a rewritten block and no other blocks follow:
- HD_82ANY-	Prevent syncing on rewritten block, set _FANYDATA 
if a rewrite is detedted.
NO_82BLK -	Call PASTHOLE when _FILLANY and _FANYDATA are set.
-	Add GETIDX2BRT_AD as a secondary entry to GETBRT_ADD routine. 
No value needed to be passed in ACC and B.  Routine derive 
value from GET_INX then flow into the original famous 
GETBRT_ADD.
-	Added 8200 FM error handling.  If fail DTM RBC, then write 8 
more DTM tracks (up to 18 Tracks.).  If fail again ==>fatal 
error.
-	Added three equates at the end of the file to indicate the 
size used MOTION, the size in excess of allowed (if we have 
exceeded our allocated code segment size), and the allocated 
size remaining (if we have not exceeded our allocated code 
segment size).
-	Allow a primary status change (untensioning) when performing 
a HSS forward.

KC010130 - KC010131 
-	Add new mail XB_UNLOADNBF - no buffer clear.
-	Added new mail status M_STOPATM_MISS.
-	Renamed _FANYDATA to _FANYHITFM and add ?ANYHOLE to count 
hole searches while _FILLANY still set.
-	Added bit for unload mngr so that buffer is not cleared on 
load tape unload.
-	Added bit _XS_CCBACK to XS_BITS5. 
-	Add cmd to unload without clearing the buffer.
-	Fix to LOCATE immediate. 
-	Lines deleted/added/moved: 5/6/0 for load tape, unload 
without clearing buffer.
-	Corrected error that allow the 3rd party how the device was 
reserved for to release the reservation.  The 3rd party and 
the initial host both could release the reservation and only 
the initial host can release the reservation ER #1210.
-	HD_82ANY - Set D_RDFLGS._FANYHITFM if a FM or LBOT block is 
detected.
-	NO_82BLK - Prevent call to PASTHOLE when _FILLANY and 
_FANYHITFM are set. This will force a hole search if a 
rewrite or gap block is the only one seen. Also count hole 
searches during fill any in ?ANYHOLE.
-	Fixed RES_HOLD/HOLD_IDX got clobered problem. Temporarily 
added _ResHld_Vld and BD_RESHOLD's EQU to this file.  This 
should fix write Var problem in 8200 (large block size).
-	Commented out the embeded PVCS revision to make room.
-	In the stop search ATM command (MC_STPATM) we return a status 
of M_STOPATM_MISS when the servo thought it hit an ATM, but 
didn't.

				85C0050 Release
				- KC010131
				- KS011120


KC010131 - KC010140 
-	Fix for unload problem causing next read to hang.
-	ER #'s K810, K813, K814 bad HOLD_IDX caused disconnect w/o 
reconnect. Updating HOLD_IDX from BD_RESHOLD.
-	Moved X1_RTOW to bank 1 to make more space.
-	Added new constant (F_LD_SVER and F_LD_SVFAIL) for Servo RBC 
message to DPORTW - BOBL.
-	Moved X1_RTOW to bank 1 to make more space, added HW_TYPE 
assemblly flag, defaults to SYS5 hw.
-	Added bit for rewun mngr.
-	Added _XS_IGNEOD to XS_BITS5.  Part of fix for ER # K-778. 
-	Added SvoRbcCnt to DPORTW's XRAM.
- Added CONSBAD1 and CONSBAD2 - BOBL.
-	Moved X1_RTOW to bank 1 to make more space.
-	Moved X1_RTOW to bank1 to make more space reset after 
successful headsync tape fix to fatal error table.
-	ER #1206: fix so unbuffered writes won't hog SCSI bus.
-	After successful headsync tape, do reset.
-	ER #803: allow appending to tape even if mode select is set 
for other mode.
-	Fixed some directory support bugs.  Including 8200 directory 
support and the infinite loop for a space command to a non-
existant destination in.
-	Moved X1_RTOW to bank 1 to make more space.
-	Corrected segmentation processing problem with Max Burst 
processing.
-	A flag had its name changed and was not being cleared at the 
right time.
-	Corrected MState bug with Abort.  If the next command was 
anaction Immediate command with the disconnect privledge 
disallowed we queued the command but never would unqueue it.  
-	Moved X1_RTOW to bank 1 to make more space, added HW_TYPE 
flags for code specific to future development.
-	Fixed ER #K810, K813, K814 bad HOLD_IDX caused disconnect w/o 
reconnect. Correct bug in updating HOLD_IDX from BD_RESHOLD.
-	Allow a primary status change of 03H (cartridge in and 
untensioned) in the STOP and ATMSTOP commands.  Also, cleaned 
up a few comments that were incorrect.

KC010140 - KC010150 
-	Added BUSIF Var. for storing the Mode Select ASC to allow 
reporting the ASC of 1A on parameter list length errors.  
Also added new CF_BITS bits for customer unique no EOM bit at 
LEOT on reads and UNISYS fast reselection time-out.
-	Added variables (for dport read) for increased statistic 
gathering actions
-	ER #823: ND problem where we don't start flush.
-	Add handler for Servo RBC error message (F_LD_SVER and 
F_LD_SVFAIL).
-	Fixed write buffered FM after LEOT to unbuffered ER #K-1204 .
-	Added code to support customer unique feature of not setting 
the EOM bit at LEOT on reads. 
-	Added code to report customer unique new fault symptom codes. 
No ER #.
-	Added code to allow the reporting of an ASC of 1A (parameter 
list length error). This is used int the Mode Select command. 
ER #K-1221
-	Corrected bug with the suppression of the reporting of the 0D 
sense key at EOD.
-	Fixed SRVDLY again so it will turn off after SCSI reset.
-	Added handler for Servo RBC bad.
-	Fixed various bugs in detecting CONSBAD by head.
-	Fixed special BRT handling.  Fix for ER #K-812. 

KC010160 - KC010170 
-	Added new EE Image byte, CF_BITS12.  This byte is used for 
Sunlight to select which version or part number (3 possible 
today) the drive is.
-	Added new BUSIF Var. for setting up a Unit Attention on the 
button unload. We need to flag the button unload with a 
unique ASC and ASCQ for this case.
-	Added BUSIF variable to hold the decode of the Inquiry 
command configuration.  This is needed to implement the 
Sunlight version of the Inquiry command.
-	ER #1224: fix so that after erase, MODE8500 is always 
consistent  with servo/mode select mode.
-	Increment ?PASSES whenever we attempt "false blank" recovery 
.
-	Changes to directory support to allow 20M directories. 
-	Corrected the setting of the EOM bit on writes.  This bug was 
introduced in the customer unique special feature for EOM 
setting on Reads.
-	Changed the Data Protect and the Send Dog No Tape Fault 
Symptom Codes to match the new customer unique IUM. 
-	Corrected Mode Sense problem of not checking the DBD bit with 
a page code of 0.  Corrected problem with Send Diagnostics 
test 100 and 101 with a tape present and the ASC ASCQ.  Now 
we return the correct ASC ASCQ.
-	Added a test for the bit UNLOAD in the Test Unit Ready 
command. This is to correct a problem with EXPERT with Unload 
Immediates. No ER #.
-	Corrected M-State problem with the Load immediate command.  A 
window while waiting for the reselect interrupt and we 
received a B_REQCMD caused a hang.  We were already in the 
correct M_State, but the sanity check on the B_REQCMD didn't 
test for the correct state.  It does now! 
-	Added a new Unit Attention ASC ASCQ fro the button unload.  
R25APR-0...	HSS ------ Add ability to vote on shutting off 
ignore EOD during Directory searches. 
... DR_ALIGN -	Optimize initilization algorithm som more +FAST.
... DECIDE ---	At DE_TRASH, reverse timersetup, call to 
discard.
... DFBKCPLT -	On fast alignment path compare CBID,HBID instead 
of using the alignment bit.
... CODE_END -	Modify algorithm that detects segment allocation 
error.
... DR_ZCONT -	(Reference K790) Cease to use the modular call 
to TESTHOLE when establishing the global 
FETCHED, HOLEZONE bits, since the BRT is no 
longer cleared by manager at start of HSS.
... RE_TRACE -	(Reference K602&K617) When acquiring SF/DATA 
stream alignment, release block to the logical 
folks even if it has a permanent error (Removed 
some defensive code).
... DYMANIC --	Allow selection of offset into timer setup table 
to select from either an acceleration table or a 
constant velocity table, under control of 
DE_HSScruising event.
... PASTHOLE -	Keep statistics on holes/passes that outlive the 
SCSI reset counters commands (i.e. from reset 
on)
... DHDAVAIL -	Optimize a little; Add updating of CLONE bit.
... HD_USERD -	Change ?REWRITE counters to reflect rewrites, 
then go to new code to record more ECC 
statistics.
... DR_ALIGN -	Speed up initilization of variables to free up 
code space.
-	Move 'FREEHOLD' (Find oldest BBID in WOQ) routine into 
subroutine FINDHOLD and call it once per stripe pair (at end 
of stripe 1) rather than XEQ it after every valid rewrite 
RBC. Also call it at tape shutdown.  This fixes ER #'s K786, 
K796, K805, K808, & K817. 
-	Changed tracking retry backhitch distance from 9/18 to 10/20 
to prevent creeping toward EOT.

KC010170 - KC010180 
-	Added a new BUSIF bit, _STAT_SENT to aid in implementing the 
error checking that will be required by Sunlight. 
-	Changed normal backhitch distance to 11 tracks (from 9).
-	Fixed LOCATE tracing yet again this time for blank tape.
-	Fixes to space trace for blank tape and 0 space commands.
-	Fix to space 0 and blank tape space to assure LEOT is not set 
incorrectly.
-	Directory support fix.  Only need 10 blinds for 10x forward 
to cross the 20Meg gap worst case.
-	Added a new routine that is now used in detecting an illegal 
ITL nexus.
-	Changed the Prevent Media Removal command to be processed if 
the Prevent bit is set to allow media removal and the unit is 
reserved by another host.
-	Changed the transfer count range checking for Mode Select to 
use the SCSI-1 checking routines if the PF bit = 0. K-855.
-	Added code to detect an illegal Nexus. 
-	Corrected the setting of the Info bytes on a Write Filemark 
command that hits LEOT. They are now always set to zero. 
-	Added an 8500 mode switch to the PUT_82BRT routine.  With 
this change, the detection of a tape without a valid EOD is 
buffer up (as a media error) until read gets to that point.
-	Added path in block complete so 8200 mode will not execute 
the new 8500 mode fast alignment algorithm.
-	Made several minor changes to the R25APR-0 from last week.  
The most significant involves the new "fast alignment" 
algorithm and is essential to its correct operation.  A 
secondary changed removed several references to AUX_IDX 
which, while correct, unnecessarily used up code space since 
it is unlikely that this function will ever be implemented.  
The final changed was at the request of DAN and involved 
makeing the determination of when to stop a LOCATE LOGical ID 
in the forward direction dependent on an exact match as well 
as a greater than match. It is unlikely that this change 
could be observed in action for many years. 
-	Fixed Underrun problem following Position to Write interrupt 
timeout.
1) Added new variable LOADTIME, which will allow the timer to 
run for about 58 seconds.
2) Added new variable RESIZETIME, which will allow the timer 
to run for about 94 seconds.
-	Increased the maximum time to rewind (RWNDTIME) from 210 
seconds to 258 seconds.
1) For the LOAD command, changed the timeout from DRUMTIME 
(about 45 seconds) to LOADTIME (about 58 seconds).
2) For the STOP and ATMSTOP commands, changed the timeout 
from DRUMTIME (about 45 seconds) to RESIZETIME (about 94 
seconds) to give the servo a chance to resize the tape.
-	Fix for LOCATE at EOD.  Now always returns hit eod if 
positioned at EOD.

KC010180 - KC010190 
-	Added a new BUSIF bit for very slow asynchronous drivers. 
This is needed in the Receive Diag. command to setup short 
asynchronous transfers. A complaint about the ASC card having 
trouble with the large Memory dumps.  No other complaints.
-	Corrected problem with the, "INT_TO_BIT" host id number to 
bit conversion routine.  This bug left Host 0 uncovered, thus 
he wouldn't get Unit Attentions on Mode Select changes. 
-	Changed the Mode Sense value returned for the NBE bit to be a 
1.  This unused bit  that is included only for old drivers 
was not being set. 
-	Changed Mode Select for the SCSI-1 case to dynamically 
determine the value returned in the Block Descriptor Length 
field.
-	Changed the Receive Diags. command's Memory Dump routine to 
not setup data groupings when we see the host is "dumb" and 
asynchronous (the ASC card).  This change will prevent pauses 
of greater then 100 miliseconds, and therefore stop the ASC 
card from timing out for bus inactivity.  The normal path 
(the one for fast hosts) has not been changed.  This change 
slows down the transfer (by about 100%) but the bytes come at 
a steady rate.

				85C0201 Release
				- KC010190 Control
				- KS011230 Servo
				
				85C0207 Release
				- KC010191 Control
				- KS011230 Servo
 

KC010190 - KC010200
-	Add in mail messages for READ BUFFER
-	Added another constant to support the new Read Buffer 
command. 
-	Added constant required to implement the new Read Buffer 
command. 
-	Added STOREBACK macro for writing back a variable (saves 
space).
-	Add bits for Read Buffer
-	Add HW_LEVEL variable which has a bit per HW level 
SYS5,SYS6...
-	Added action command trace table and pointer declarations. 
-	Add in EEPROM definition for future development.
-	Add in links for read buffer, rearrange mngr2, mngr3 segments 
to make room.
-	Optimize for code space.
-	Add in read Buffer command.
-	Add in option to clear both BRT and Buffer with same command.
-	Add in future enhancements 2nd EEPROM.
-	Fixed bug in macro that caused hang on load.
-	Fix buffered FM to no buffer if past LEOT.
-	Add in Read Buffer support.
-	Optimize for code space.
-	Fixed 8200 block space handling of baddtm problem.
-	Fixes 8200 mode file space compare routine.
-	Added tests to assure we are not in write mode or at lbot or 
looking at a blank tape before checking if the motion 
threshold has been passed by a space.
-	dded test for write mode before looking for lbot in the 
buffer.
-	Rewrote the space trace so it is not so complicated and 
therefore can work under all conditions.
-	Added code to continue reading instead of going into HSS if a 
block is less than 16 away.
-	Added code to start a fill at the end of the command if the 
motion threshold has been passed.
-	Fixed the space trace (again).
-	Optimize for code space.
-	Added special customer unique code to only set the EOM bit on 
a backspace into PBOT.
-	Added new ending status for the new Read Buffer command.
-	Added the assembly control flag CDB_TRACE to control the 
assembly of the action command trace.  Default is ON.  This 
is needed to catch the "MISPOSITION" bug. 
-	Added the new Read Buffer command.  
-	Added action command trace table.  Under assembler control of 
CDB_TRACE declared in BUSIF.ASM.
-	Added the new Sunlight Inquiry commands. 
-	Added new ending statuses for the new Read Buffer (Spill your 
brains) command.  
-	Add links for Read Buffer command.
-	Add in HW_LEVEL update on init.
-	Aave space by commenting out unused schedule hi priority from 
bank 1.
-	Added links for READ BUFFER.
-	Fixed RBCERR2 handler: added handler for F_LD_LBER.
-	Modified the user timeout interrupt handlers- made them 
consistent with one another.
1) The tracking and tracking at LBOT handlers now do the same 
thing.
2) In the MC_WR_FM_TO handler, we don't check for timeout 
window because we will always timeout- there is no race 
condition with a shutoff.
3) The timeout routine for servo commands (SVOTO_ERR) also 
looks more like the tracking handlers.
-	For the STOP command, if the servo thought it hit BOT or EOT, 
but really didn't (primary status change of 02), then just 
ignore it and wait for command complete.
-	Removed link for bank 1 hi priority schedule.
					
KC010200 - KC010210
-	Added read buffer vars, fix EQU for EE_IMAGE2.
-	Added link for read buffer.
-	Fixes for read buffer.
-	Fixed 8200 block space back after write bug, by restoring the 
FILE_ID after the switch write_to_read. 
-	Corrected problem with the Unit Attention clearing code.  The 
carry bit was not being forced into the clear state 
(sometimes is was clear and sometimes it was set).  This made 
us sometimes clear the Unit Attention condition for more than 
one host.  
-	Corrected problem with Inquiry invalid LUN reporting. Inquiry 
reported the invalid LUN until cleared by a Request Sense 
command.  Changed Inquiry to immediately clear the invalid 
LUN condition.    
-	Changed the ASC and ASCQ setup in by the manager's ending 
status (FSC) to match new schema.
-	Added new ending statuses for the new Read Buffer (Spill your 
brains) command. 
-	Added link for read buffer.
-	Deleted the variable RESIZETIME.  There was a problem with 
the servo code and that is now fixed, so this longer time is 
no longer needed.
1) Added new variable LOADTIME, which will allow the timer to 
run for about 58 seconds.
2) Added new variable RESIZETIME, which will allow the timer 
to run for about 94 seconds.
-	Added the 8200 ATM threshold buffer to the table in the get 
servo sense buffer command (MTNSNSB).  There are now 9 
buffers.
-	Added code to handle future enhancements EEPROM bytes.  Load 
the first 20 servo bytes into EE_IMAGE (3F80 thru 3F93) and 
the remaining 108 servo bytes in EE_IMAGE2 (3E94 thru 3EFF).

KC010210 - KC010220
-	Add new message F_PS_TOr to DPORTW section.  Timeout on 
Position to Write OK to retry.  
-	Added M_STP_ATMFOUND to MOTION constant.
-	Added a trigger for switch rtow mngr, removed XG_NO_ ... 
fatal errors on read - are now buffered.
-	Added DPWT_BITS, _ATM_FOUND to DPORTW XRAM.
-	Added ITO_SRCHCNT to DPORTW XRAM.
-	Added in bit for log write mngr. 
-	Added BUSIF variables to help reduce the code size of Mode 
Select and to implement the new SUNLIGHT Mode Select.
-	Added some BUSIF variables needed to support data 
compression.
-	Added _WAIT_CC bit in MTN_BITS which is set when motion is 
waiting for a command complete and someone else is doing the 
timing.
-	REARRANGED AND RENAMED SEVERAL IPORT FLAGS AND VARS FOR 4MB/S 
SUPPORT.
-	Sent trigger if we need to move tape on switch rtow.
-	Fix so that var write is allowed at LEOT w/o reporting 
defferred error.
-	Will ignore X1_LONG_TIME.
-	Fixed byte addressing error.
-	Will ignore X1_Lwill ignore X1_LONG_TIME.
-	Set bit _CCBSENT in XX_BITS to prevent Rewind mgr to send 
another Current command begun to BUSIF again.
-	Fix shutdown after a blanksense.
-	Buffer media errors.
-	Fix so won't hang on X1_LONG_TIME.
-	Fix buffered FM to no buffer if past LEOT K-120.
-	Will ignore X1_LONG_TIME.
-	Fixes for read buffer.
-	Fix media error so it is buffered.
-	Fixed 8200 block space back for a large distances.  
-	Disconnect on switch read to write (don't hog bus).
-	Fixed bug in Unit Attention clearing code that allow host 0 
to select target 0 and clear stats for host 7.  The WD chip 
allows the selection of its bus ID by the same ID. 
-	Added code to dynamically set the synchronous negotiation 
values. Old H/W gets the slow settings and the new H/W gets 
the fast stuff.  This will allow 4 Megabyte to operate.  Also 
put in some optimization for Read/Write access times.  
-	Optimized command status phase code by adding a test for 
waiting tasks. 
-	Added code to support the Sunlight Synchronous Negotiations. 
-	Added code to try and recover from the BEN WD chip select bus 
hang.
-	Added support for the new Data Compression page 0F in Mode 
Select/Sense.
-	Optimized the command setup code by adding a test for waiting 
tasks. If no tasks are waiting then no longer break the task 
up by rescheduling. 
-	Compacted the zero byte send and receive of Mode Select/Sense 
data.  This change saved 400 bytes of space and has made 
enough room to add the new Data Compression page 0F. 
-	Updated the Test Unit Ready command to conform to the 
customer unique spec.
-	Changed Mode Sense Density Code processing to reflect the 
current writing mode - not reading mode. 
-	Corrected the setting of the DBR bit in the Mode Sense data. 
-	Again, removed 5 ending statuses per request.
-	Temporarily put back 5 fatal ending statuses.  These will 
come back out later when change is coordinated.
-	Removed 5 ending statuses (FSCs) from the sense data setup 
section. 
-	Changed the ASC and ASCQ setup in by the manager's ending 
status (FSC) to match new schema. 
-	ADD 4MB/S SUPPORT TO BLOCK COMPLETE INTERRUPT HANDLER.
-	; R17MAY-0 ... PUT_82BRT: Call expand in 8500 mode to ensure 
we have a block (Remove test code to allow this to fit).
-	Increased the maximum time to rewind (RWNDTIME) from 258 
seconds to 6 minutes.
-	Deleted the variable RESIZETIME.  There was a problem with 
the servo code and that is now fixed, so this longer time is 
no longer needed.
-	Changed all the RESIZETIMEs to DRUMTIMEs.  There was a 
problem with the servo code and that is now fixed, so this 
longer time is no longer needed.
-	REMOVES SPECIAL HANDLING OF 1KB BLOCKS FOR 4MB/S.
-	ADD CHANGES TO I_W_BKCMP TASKS FOR 4MB SUPPORT.
-	ADD 4MB/S TRANSFER RATE SUPPORT.
===================================

KC010230
-	Modified the ticktimes for the TIMEOUT macro to handle both 
the 16 and 20 Mhz boards.
-	Added FUNCTLIB segment. 
-	Modified the timeout macro so it now takes two ticktimes the 
first for 16Mhz and the second for 20Mhz.  If no ticktime is 
given the subroutine SETTICK is called to set it for the 10ms 
default. 
-	Corrected the ordering of some CF_BITS used for the message 
system control.  
-	This reording is to make the memory.asm filematch the EEPROM 
configuration document.
-	Added a BUSIF variable, "B_SYN_DONE" for holding which hosts 
have had their synchronous negotiation.  This is for a future 
enhancement.
-	Checked right file this time it adds a bit for FMK mngr.
-	Added new var for FMK mngr.
-	Improved the comments in the Mode Select variable section.  
Changed comments ONLY. 
-	Added the required variables to the EE Image and Mode Select 
areas for Data Compression.  This is the Defaults and the 
Mode Select working variables.  
-	Don't clear buffer pointers on rewind.
-	Will ignore X1_LONG_TIME.
-	Fix to space manager handling of high speed steady state 
message. 
-	Modified use of the TIMEOUT macro for the changes made to it 
for handling both 16 and 20 Mhz system boards. 
-	Corrected problem with the NCR no EOM at BOT.  SX_PBOT was 
mistyped as XS_PEOT.  
-	Corrected bug with NCR's special no EOM at BOT.  I misspelled 
SX_PBOT as XS_PEOT.
-	Added code for the Synchronous Negotiation feature.  Added 
code to initialize the Sense data after initialization when 
loading begins. This is for users who poll using the Request 
sense command (and never issue a Test Unit Ready). 
-	Added code to support the Synchronous Negotiations.
-	Added code for Inquiry Command.  Compacted code in Read and 
Write Buffer commands by combining CDB checking into one 
common called routine.
-	Added code to update the Sense data once loading has 
completed. This is for users that poll using only the Request 
Sense command.
-	Added the include of the FUNCTLIB.ASM file. 
-	Modified the use of the TIMEOUT macro for the changes to 
accomodate both the 16 and 20 Mhz boards. 
-	Modified timer stuff for the changes to the TIMEOUT macro 
which was changed to handle both the 16 and 20 Mhz system 
boards. 
-	Modified use of the TIMEOUT macro for the changes made to it 
for handling both 16 and 20 Mhz system boards.   Also fixed a 
bug in the servo timeout handler.
-	In both the HSSF and HSSR commands, while waiting for command 
complete, the bit _WAIT_CC is set.  When we get the command 
complete, _WAIT_CC is cleared.  Also clear the _WAIT_CC bit 
in the ABORT command.  This is to fix the problem where the 
HSS command was in progress, Dan's code timedout and sent an 
M_ABORT.  Since the HSS command was in progress, the ABORT 
was never executed.
-	Modified use of the TIMEOUT macro for the changes made to it 
for handling both 16 and 20 Mhz system boards. 
-	If we get an abort command and we are waiting for command 
complete while someone else is doing the timing, then we 
abort the motion manager.
-	REMOVED SPECIAL 1K BLK HANDLING FROM FITBLK ROUTINE.
-	REMOVES SPECIAL HANDLING OF 1KB BLOCKS FOR 4MB/S.
-	Added declaration for SETTICK which is used by the TIMEOUT 
macro for setting the ticktime.
===================================

KC010280
-	Added code to verify that the host's transfer length is 
correct when asking for the page version of Inquiry. 
-	Added code to the page version of the Inquiry command to 
correctly handle synchronous data set transfers.
-	DR_FILL_ANY: Use DR_FLUSH for initialization.
-	DR_READ_DTM: Call DR_FLUSH whenever state != S__NOBLK to init 
following space file operations.
-	1) Added another check for a primary status change of 0FFh 
(drum lost lock or relocked) in MC_WR_FM.
-	2) No longer ignore a primary status of 0FFh (drum lost lock 
or relocked)--always call MC_PLL.
-	3) In MC_PLL I get the previous primary status byte and 
restore it to the current status.
===================================

KC010300
-	Change NEW_START to trigger so it decodes on monitor 
correctly, commented out COPY messages so monitor will decode 
X1 messages correctly.
-	Added variable FIRSTPID to DPORT read area, for use by the 
fast alignment algorithm in versions subsequent to R03JUN-0.
-	Fix so XG_BUSY set as soon as mngr starts zeroing BRT.
-	Added message system code to support.  This was minor fixes 
to the basic target initiated synchronous negotiations. 
-	Added code to support the new Reserve, Release and Send 
Diagnostics commands.
-	Added code to the Test Unit Ready to support.
-	NEW_START changed to trigger.
-	R03JUN-0 ... RRTHRESH:    Use multiplication factor of 3 
instead of 4 to translate the motion/reconnect threshold from 
the SCSI values (0x20..0xD0) to buffer counts.
-	3 translates(0x60..0x290) - Inside forezone.
-	4 translates(0x80..0x380) - Ends past forezone end.
-	DFBKCPLT:  8500 mode - If buffer not aligned and a block past 
the hole is put in buffer, keep the prefetched block but 
don't consider it "fast aligned" status.
-	DECIDE: Enable an improved version of the Fast alignment     
algorithm (improved to no longer cause rereads).
-	06/03/91 - Changes to Revision 1.57 - Fix bug (introduced 
5/31) causing hard 8200 LBOT failures.  DPORTW ENGR Level 
W03JUN-0. 
-	Set the _SERVO_POPPED bit even if the attempt to unload the 
tape failed.
===================================

KC010320 TO KC010331:

-	Changed compile flags so that SYS5 and SYS6 are combined.
-	Gave the bank0 MANAGER 180H bytes.
-	Rearranged the Data Compression variables.  
-	Added algo to mark block for rewrite during NO_PLL.  Use 
PLL_PID to determine when to stop rewriting/clr NO_PLL bit.
-	Added PUBLIC for Erase Mgr's QXE_ERASE - BOBL.
-	No disconnect if rewind or load at LBOT.
-	Don't clear buffer pointers on rewind.
-	Added in SCSI action command trace table.
-	Fix so that var write is allowed at LEOT w/o reporting 
defferred error.
-	Fix Abort by adding XE_ABMOTION to Bankswitch table. 
-	Optimized for space.
-	8200 mode go back with ATMREV instead of backhitch.
-	If 1st blocks in buffer have permanent error, then don't hang 
but wait for for blocks nd then resume I_RD_SYNC.
-	Removes blank tape retries, optimized for space.
-	Fixed 8200 backspace block into FMK residule calculation.  
-	Fix problem where FM_IN_BUF bit not set by DC_PUT_?FM (8200 
mode).
-	Optimized for space.
-	Fix bug introduced with getting off SCSI bus, now will always 
clear ALRDY_WR.
-	Added code for abort handling.  Requires very special abort 
procedures.  
-	Corrected bug in the new Sub-productID field blank handling.  
-	Added code to the message system to handle some special 
cases. Requires that a message reject message sent in 
response to a none message bus phase abort the current 
command.
-	Added code to support the EEPROM data in the EEPROM selftest.
-	Added code to copy the BUSIF BEN state variable into a IPORT 
variable on aborts.  BUSIF must clear this byte when the 
abort completes but IPORT needs it to reset his BRT pointers. 
-	Added more synchronous negotiation code. 
-	Optimized the Write Access path. took out 15 bytes.
-	Added code to support the new Mode Select/Sense commands. 
-	Added code for the Mode Select/Sense commands.  This is the 
special handling of the RSDP bit and decoding of page codes.  
-	Added code to Mode Sense to return the total number of blocks 
on tape instead of the currently returned 00 00 00.
-	Added code to handle special case aborts.
-	Added code to clear the new density code state machine's 
control bit when tapes have loaded cleanly.
- Added XE_ABMOTION to Bankswitch Table.
-	Increase FMWTRECM from 03h to 10h.  Each time FM is retried, 
it physically moves 2 tracks down the tape (due to the way we 
save RECOVPID).  Therefore, we can "jump" over the bad part 
of tape that caused FM error.
-	Added code to enable CASI's primary interrupt (DPORT 1:6) 
inLD_DPORT.
-	Changed MOV A,#0 to CLR A.
-	Added code in POSN_WT to initialize formatter in the correct 
mode ie. 8200 VS 8500 mode.  SYMPTOM: F_PS_OVR trying to do 
POSN_WT.  We get EC4 interrupt in the wrong cycle of HDSYNC 
becauce R2 data was routed through the FIFO.
-	Removed unused counter PSN_RETRY out of commission.
-	1) Converted the MTNERROR #M_SVOSW macro to the subroutine 
MTNSWERR to save space.
-	2) In the start tracking at LBOT command (MC_1TRK) timeout 
for 36 track pairs instead of 18. 
-	Converted the MTNERROR #M_SVOSW macro to the subroutine 
MTNSWERR to save space.
===================================

KC010340:
-	Deleted old stop backhitch constant.
-	Added new constant for old stop backhitch cmd from XF_FLUSH.
-	Added in compression mail messages.
-	Fixed the location of the FUNCTLIB segment to FF00 in both 
banks.
-	Changed compile flags so that SYS5 and SYS6 are combined.
-	Moved CRC_TABLE definition here from XL_CODE for use by the 
background CRC check in FUNCTLIB.
-	Added in compression vars.
-	Added a BUSIF variable to save the BEN state for IPORT during 
aborts.  BUSIF must zero out this varibale when the abort 
completes but IPORT needs it to set his BRT pointers 
correctly.
- Rearranged DPORTW XRAM so we can use a loop code to init.
-	Added I2SegInEr in Direct RAM in place of TWOTIME.
-	Rearranged the Data Compression variables, combined into only 
one byte - Mode Select and EEPROM control values.
-	Clear out COMPRESS_MODE on each new load of tape.
-	Fix so that rewind in write mode with no blocks in buffer at 
LBOT will not write EOD onto tape.
-	No disconnect if rewind or load at LBOT.
-	Added in SCSI action command trace table.
-	Fixed assembly error.
-	Change the olde M_ATMSTOPB cmd and M_ATMST_DONE to M_StpBckH 
and M_StpBH_Done respectively.
-	Code optimization. Also rewrite some of the code to reflect 
readability and servicability. Gained 100H-.
-	Return media error on DS_UNDEFINED added in compression code.
-	Optimized for space.
-	Moved CRCTABLE defintion to MEMORY.ASM so it can be shared 
with the background CRC check.
-	Added in compression code.
-	If 1st blocks in buffer have permanent error, then don't hang 
but wait for for blocks nd then resume I_RD_SYNC.
-	Made space a model of SCSI efficiency.
-	Added in compression code.
-	Optimized for space.
-	Added abort handler code.
-	Added code for abort handling, it requires very special abort 
procedures.
-	Added Abort Qualification code.
-	Added code to the message system to handle some special 
cases, requires that a message reject message sent in 
response to a none message bus phase abort the current 
command. 
-	Added code to copy the BUSIF BEN state variable into a IPORT 
variable on aborts.  BUSIF must clear this byte when the 
abort completes but IPORT needs it to reset his BRT pointers. 
-	Added error checking for Mode Select/Sense and Inquiry.
-	Optimized the Write Access path. Took out 15 bytes. 
-	Corrected bug in Mode Select that was added on 6-10 as part 
of the upgrade.  Changed Inquiry to allow partial page 
transfers.
-	Rearranged the Data Compression variables.  Combined the Mode 
Select and EEPROM control bits into the same byte. 
-	Added code for the Mode Select/Sense commands.  This is the 
special handling of the RSDP bit and decoding of page codes.  
-	Added ending statuses (Fault Synptom Codes) for Data 
Compression. 
-	Changed the Sense key, ASC and ASCQ for the ending status 
XW_ILLEGAL.  
-	Added code for abort handling. 
-	Added code to handle special case aborts.
-	Added jump to background crc check in FUNCTLIB.ASM if 8500 is 
idle.
-	Change background clearing of BRT/Buffer so it will run for 
minimum amount of time.
-	Added BACKCRC code.
-	Put the old CMP3b macro back for a quick fix. To compare to 
sent LEOT problem.
-	Added test for MODE8500 before consider "TRACK?" from PID 
(R7).
-	Changed CMP3B macro to hard code compare (saved 64h bytes). -
DPORTW ENGR Level W07JUN-8.
-	Replaced usage of macro CMP3B with inline compare code in 
DNOPLL.  The macro destroy A_LSB, B_LSB,... bytes  SYMPTOM : 
Task queue overflow with lots of "FAKE RBC".
-	Redefine A_LSB, B_LSB, ...to be HD_PIDL, HD_BIDL, ..etc,  
Only to be referenced to locally for code readabilty.  
-	Rearrange F_WT_INIT to use loop to init variables.
-	Code optimization -- moving SENDEVENT to a called routine (90 
bytes).
-	Increase FMWTRECM from 03h to 10h.  Each time FM is retried, 
it physically moves 2 tracks down the tape (due to the way we 
save RECOVPID).  Therefore, we can "jump" over the bad part 
of tape that caused FM error.
-	Added code to enable CASI's primary interrupt (DPORT 1:6) in 
LD_DPORT.
-	Changed MOV A,#0 to CLR A.
-	Cleaned up some of the comments so they lined up better.
-	Changed M_ATMST_DONE to M_StpBH_Done for clarity.
-	Cleaned up some of the comments, so they lined up a little 
better.
-	Allow a change in status from 0xff to 0x62 (drum 
lost/regained lock to on track) in the primary status change 
table(M2_PRIMARY).






85C0331 Release
- KC010331 Control
- KS011410 Servo

KC0103D0 - KC0103F0:

-	07/11/91 - Now added the new and improved 3 byte LID test 
contents of P2. Changed the routine TEST_LBID to TEST_LID.
-	Fixed NO_PLL.  Added code to clear NO_PLL bit when RBC past 
PLL_PID if in non-data RBC mode.
-	Changed MTNSWERR to pop twice before the LJMP and got rid of 
the RET.  Fix for stack hang.

=================================================================
KC0103F1:

-	Gave 20h more to functlib in both banks for doing bacground 
CRC without using P2 register. The P2 register is modified by 
moni- tor an causes a CRC failure if the 8500 was in the 
process of doing the CRC. 
-	Added in compiled version number at 2000H for SYS7 or 
greater.
-	Added erlev_shadow to shadow the most recent initialized 
value of POSN_ERLEV. Use for debugging the F_PS_FAIL problem 
where servo goes off track when switch to write mode. Suspect 
counting too many HDSYN and ran into blank area.
-	Added another bit flag for BUSIF abort processing. This bit 
is for special case aborts when receiving a bad message 
during the data phase. 
-	Added an abort during disconnect fix for Rex.
-	Added in compression code.
-	Added code to support the message system requirements. 
-	Took the Sense data Mulit Initiator fix out. It broke 
immediate command pending check condition sense data stuff.
-	Added code to support the message system. 
-	Added code to handle the special case when, in a very large 
transfer, a SCSI abort command alligns exactly with a 
transfer complete. I get the wrong interrupt and this new 
flag then directs the code back to sanity. 
-	Added code to support the message system. 
-	Added code to copy the BUSIF BEN state variable into a IPORT 
variable on aborts. BUSIF must clear this byte when the abort 
completes but IPORT needs it to reset his BRTpointers.
-	Added code to support the message.  
-	Corrected error in reserved bit checking for CDB #6 in the 
Erase command. 
-	Added code to support the SUNLIGHT message system. 
-	Changed the error processor to start the Amber LED slow 
blinking if we have an unrecoverable hardware error. For and 
by default everybody else too. 
-	Added check for parity errors to ramtest. 
-	fix HW compatibility check so code will run on 2B11 where 
bytes not programmed are zeroes.

-	Resolved P2 problem by doing bacground CRC without using P2 
register.  The P2 register is modified by monitor an causes a 
CRC failure if the 8500 was in the process of doing the CRC. 
-	Disabled CRC until we get P2 problem resolved. 
-	Now added the new and improved 3 byte LID test 
-	Fixed NO_PLL stuff.  Added code to clear NO_PLL bit when RBC 
past PLL_PID if in non-data RBC mode.
 ===================================

KC0103F2
-	Gave 20h more to functlib in both banks for doing background 
CRC without using P2 register.  The P2 register is modified 
by monitor an causes a CRC failure if the 8500 was in the 
process of doing the CRC.
-	Added in compiled version number at 2000H for SYS7 or 
greater. 
-	Added erlev_shadow to shadow the most recent initialized 
value of POSN_ERLEV.  Use for debugging the F_PS_FAIL problem 
where servo goes off track when switch to write mode.  
Suspect counting too many HDSYN and ran into blank area.
-	Added another bit flag for BUSIF abort processing.  This bit 
is for special case aborts when receiving a bad message 
during the data phase.  
-	Switched order of tests for AT_LBOT and ALRDY_WR so we will 
flush the buffer if less than 1k is written with no FMKs at 
LBOT.
-	Changed stop backhitch decision to a jump table to save space 
and time.
-	Fix to 8200 no block recovery.  Now do STOPBH (length 0) 
before doing the ATMREV; because motion hangs if it is still 
tracking when it gets the ATMREV.  
-	Fix for abort - make sure BRT is done clearing before giving 
back abort done.
-	Added an abort during disconnect fix.
-	Added in compression code.
-	Fixed 8200 space block forward after backspace file residule 
bug. 
-	Fixed 8200 space block forward after backspace file bug. 
-	Added code to support the SUNLIGHT message system 
requirements. 
-	Took the Sense data Mulit Initiator fix out. It broke 
immediate command pending check condition sense data stuff.  
-	Added code to support the message system.
-	Added code to handle the special case when, in a very large 
transfer, a SCSI abort command alligns exactly with a 
transfer complete. I get the wrong interrupt and this new 
flag then directs the code back to sanity.
-	Added code to support the message system. 
-	Added code to copy the BUSIF BEN state variable into a IPORT 
variable on aborts.  BUSIF must clear this byte when the 
abort completes but IPORT needs it to reset his BRT pointers. 
-	Added code to support the message. 
-	Corrected error in reserved bit checking for CDB #6 in the 
Erase command.
-	Added code to support the message system. 
-	Changed the error processor to start the Amber LED slow 
blinking if we have an unrecoverable hardware error. For and 
by default everybody else too. 
-	Added check for parity errors to ramtest.
-	Fix HW compatibility check so code will run on 2B11 where 
bytes not programmed are zeroes.
-	Resolved P2 problem by doing bacground CRC without using P2 
register.  The P2 register is modified by monitor an causes a 
CRC failure if the 8500 was in the process of doing the CRC.  
-	Disabled CRC until we get P2 problem resolved. 
-	Now added the new and improved 3 byte LID test.
-	Changed the routine TEST_LBID to TEST_LID. 
-	Fixed NO_PLL stuff.  Added code to clear NO_PLL bit when RBC 
past PLL_PID if in non-data RBC mode. 
-	In the LOAD command, when we get a cleaning tape, set the 
JUST_CLND bit and clear the _CLEN_ME bit. Also, changed the 
name of the MC_PLL routine to MC_FF and in that routine check 
if the extended status byte is a 4, which indicates that the 
drive needs to be cleaned.  If the drive needs to be cleaned, 
set the _CLEN_ME bit.
-	Changed MTNSWERR to pop twice before the LJMP and got rid of 
the RET.  Fix for stack hang.
-	Changed M2_PLL to M2_FF, since a primary status change of 
0xFF doesn't just mean that the drum lost lock or relocked it 
could also mean that the drive needs to be cleaned.  Check 
for a primary status change of 0xFF after every status in 
case servo tells us that the drive needs to be cleaned.
-	Allow a change in status from 0x46 to 0xC6 in the primary 
status change table (M2_PRIMARY).  This indicates that the 
servo data read back check was bad.  A call to MC_SERVO_RBC 
is made if this change in status occurs.
===================================

KC3D03F0:

-	Added code to clear NO_PLL bit when RBC past PLL_PI if in 
non- data RBC mode.  CAR K-2142.
-	Functlib contains subroutines that are shared to promote code 
size reduction.  The segment is placed at the top of memory 
and any routines added to it should also be declared in 
OSEXTERN.ASM.
-	Disabled CRC until we get P2 problem resolved.
-	Changed MTNSWERR to pop twice before the LJMP and got rid of 
the RET.  Fix for stack hang. CAR K-1277.
====================================

KC3F03F1:

-	Removed briefs file ending charactor.  Epsilon doesn't do 
this to files.


-	Comment out zero checking for MODE SELECT number of blocks.
====================================

KC3F13F2:

-	Switched order of tests for AT_LBOT and ALRDY_WR so we will 
flush the buffer if less than 1K is written with no FMKs  at 
LBOT.
===================================

KC0103T0:

-	Changed compression specific code to HW_TYPE EQ SYS7. 
-	Hogging SCSI bus in 8200 mode switch read to write.
-	Don't hog SCSI bus.
-	Don't hog SCSI bus if we need to abort fill mngr.
-	Fix so that send dog accepts XG_FILL_DONE as well as 
XG_ABORT_DONE.
-	Refined BH distance during start/stop from 18 to 11 8500 
track pairs.  Modified this change when F_LD_DONE recieved 
from DPORTW.
-	Fix so that lbot retries on missed LBOT will set up mode 
according to what servo says on each retry.
-	Reduce normal holemade backhitch for firat 6 passes to 18 
track pairs; Passes 7-11 are still 200 track backhitch.
-	Fix for new function to make load tape with EEPROM from disk. 
Fix changes memory used from 2B00 to 3600; CRC used that 
space.
-	Added status for IPORT detects compressed block on non-
compression drive.
-	Added in one retry if tape is detected blank after a rewind.
-	Fixed special handling to handle new special numbering. 
-	Changed special handling to handle new special types. 
-	After illegal switch to write mode, always terminate the 
BUSIF before ending command.
-	Modifiy check for buffer not empty (don't use AVL_BLKS) 
remove unneeded READY check.
-	Changed compression specific code to HW_TYPE EQ SYS7 so that 
we can test STEAMBOAT/VAIL with the existing BEN.
-	On BROKEN or SOFT_BROK, uses B_LASTBROK for FSC, etc.  This 
fixes K-2389 and 2390 which set reserve bits in the CDB 
causing a new error to replace the one that actually broke 
it.
-	Fixed FSC generation for codes D2 and D3.  K-2330
-	Changed TUR so returns B_LASTBROK as FSC when BROKEN set. 
Fixes K-2389 and 2390.
-	Changed ASC to 24 when FSC is D4. 
-	When setting BROKEN or SOFT_BROK, set B_LASTBROK to FSC thus 
preserving it.  Fixes K-2389,90.
-	Changed FSC processing code to reduce space with fix to ASQs 
of F_LD_HSYNC and XF_ATM_FAIL.  
-	Change so buffer is inialized to FF instead of 00.
-	Check HW_TYPE ge SYS7 to determine location of stored CRC. 
-	Changed CRC memory length counter from hardcoded value to use 
the CTLBASE and CTLEND values defined in database. 
-	Change to Revision 1.89.
-	Change RBC criteria for FM (5 to 2), LBOT & EOD (3 to 1) good 
blocks per each stripe of every pair; Change max bad pairs 
for LBOT (32 to 80) and EOD (60 to 150); Change FM downtape 
track pair slip (8 to 4); Change FM retry max (16 to 11). To 
fix 96, 97 & B3 Errors.
-	Decrement PSN_2WT_CNT if the first Hdr Intrp on a Search is 
an overshoot.  CARs K2210 & K2285 (95 Downtape Overshoot 
Error) DPORTW ENGR Level W29JUL-5.
-	Clear NO_PLL bit at the begining of GO_TRACK command so we 
always start in the clean state.  Fix goes in at label 
C_TRACK (K2340).
-	Fix for CLR_LBOT_LOADED to save ACC.
-	Added IDXMACRO before call of I_SET_FLID so DPTR would be 
pointing at the brt.  Fix for CAR K-2355.
-	Changed compression specific code to HW_TYPE EQ SYS7 so that 
we can test STEAMBOAT/VAIL with the existing BEN.

===================================

KC0103U1:

-	Added B_LASTBROK in BUSIF xram area (K-2389,90).
-	Hogging SCSI bus in 8200 mode switch read to write.
-	Added status for IPORT detects compressed block on non-
compression drive.
-	Fixed bad FSC (0) bug. Now clear XS_SAVSTAT when rewinding on 
space block back because the LBOT ATM was seen. XS_SAVSTAT is 
used to determine what to do when the rewind completes. 
-	After illegal switch to write mode, always terminate the 
BUSIF before ending command. 
-	Added B_LASTBROK initialization for K-2389,2390.
-	On BROKEN or SOFT_BROK, uses B_LASTBROK for FSC, etc. This 
fixes K-2389 and 2390 which set reserve bits in the CDB 
causing a new error to replace the one that actually broke 
it.
-	Changed TUR so returns B_LASTBROK as FSC when BROKEN set. 
Fixes K-2389 and 2390.
-	When setting BROKEN or SOFT_BROK, set B_LASTBROK to FSC thus 
preserving it. Fixes K-2389,90.
-	Check HW_TYPE ge SYS7 to determine location of stored CRC.
-	Fix 96 (Wt FM Failure) Errors; GOODBLKS was not getting 
cleared between FM retries, dooming them all to failure. Add 
Clear GOODBLKS to RESETWOQ. * DPORTW ENGR Level W29JUL-8 *

8500 Firmware History Summary		
10/8/91

NOTE:  For internal use of EXABYTE customers only.
_________________________________________________________________
_


