{ File name: ForkDisk.mc 
  Author: Lichtenberg
  
  Description: Stub to fork different versions of Lisp uCode so both SAx000 and Trident can be coresident
  
  This uses a very crude (very very crude) hack to determine disk type.  It looks at the IOCB page and at what would be the trident header operation.  If they do not match, it assumes Shugart.
  
  
  Comparison:  real memory location B0114 should = 117 for Trident, SAx000 otherwise.
  }
  
  
AnyDiskStart:
 
SetTask[4], StartAddress[AnyDiskStart],

	RHCnt ← 0B, c1;
	RCnt ← 1, c2;
	RCnt ← RCnt LRot8, c3;

	MAR ← [RHCnt,RCnt + 14], c1;
	RCnt ← RCnt + 17, CANCELBR[$,2], c2;
	RAdr ← MD, c3;
	
	[] ← RAdr xor RCnt, ZeroBr, c1;
	BRANCH[FShugart,FTrident], c2;
	
FShugart: GOTO[ShugartStart], c3;
	
FTrident: GOTO[TridentStart], c3;
	
	
   { E N D }