Index: output/otp.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_Single_Mode/output/otp.dat	(revision 6510)
+++ /1121s/branch/mouse/mouse_public_Single_Mode/output/otp.dat	(working copy)
@@ -5790,18 +5790,93 @@
 3e
 aa
 55
-06
+02
 00
 38
 46
 b0
 04
+aa
+55
+01
+00
+12
+47
+0a
+aa
+55
+02
+00
+25
+47
+70
+17
+aa
+55
+02
+00
+3a
+46
 58
 02
+aa
+55
+08
+00
+13
+47
+04
+c9
+12
+00
+00
+00
+01
+1b
+aa
+55
+01
+00
+27
+47
+07
+aa
+55
+01
+00
+3c
+46
 64
+aa
+55
+01
+00
+1b
+47
+01
+aa
+55
+01
+00
+28
+47
+03
+aa
+55
+01
+00
+3d
+46
 64
 aa
 55
+01
+00
+29
+47
+01
+aa
+55
 1e
 00
 44
@@ -5896,22 +5971,6 @@
 02
 aa
 55
-0a
-00
-12
-47
-0a
-04
-c9
-12
-00
-00
-00
-01
-1b
-01
-aa
-55
 01
 00
 1e
@@ -5927,17 +5986,6 @@
 00
 aa
 55
-05
-00
-25
-47
-70
-17
-07
-03
-01
-aa
-55
 0c
 00
 8c
@@ -6755,8 +6803,8 @@
 aa
 aa
 55
-a9
-0b
-e2
-7a
+2f
+17
+de
+c0
 20
Index: output/sched.rom
===================================================================
--- /1121s/branch/mouse/mouse_public_Single_Mode/output/sched.rom	(revision 6510)
+++ /1121s/branch/mouse/mouse_public_Single_Mode/output/sched.rom	(working copy)
@@ -2,63 +2,14 @@
 42db:51 81 91 a1 b3 c1
 411c:3e
 4638:b0 04	
-463a:58 02  
-463c:64  
-463d:64 
-4644:
-06 
-08 
-07 
-06 
-07 
-08 
-12 
-14 
-0d 
-0f 
-ff 
-00 
-00 
-00 
-ff 
-ff 
-ff 
-ff 
-ff 
-ff 
-ff 
-ff 
-ff 
-05 
-ff 
-ff 
-ff 
-ff 
-ff 
-ff 
-
-
-
-
-
-
-
-4666:
-00		
-34
+4712:0a		
 
-46ff:00		
-4702:05			
-4705:02			
 
-4707:14				
-470a:02		
-470d:0a		
-470f:58 02	
-4712:0a		
 
+4725:70 17   
 
 
+463a:58 02  
 4713:
 
 
@@ -146,16 +97,65 @@
 
 1b
 
+4727:07
+463c:64  
 471b:01   
 
-471e:0a 
-4721:05 00	
-4725:70 17   
-
-
-4727:07
 4728:03
+463d:64 
 4729:01  
+4644:
+06 
+08 
+07 
+06 
+07 
+08 
+12 
+14 
+0d 
+0f 
+ff 
+00 
+00 
+00 
+ff 
+ff 
+ff 
+ff 
+ff 
+ff 
+ff 
+ff 
+ff 
+05 
+ff 
+ff 
+ff 
+ff 
+ff 
+ff 
+
+
+
+
+
+
+
+4666:
+00		
+34
+
+46ff:00		
+4702:05			
+4705:02			
+
+4707:14				
+470a:02		
+470d:0a		
+470f:58 02	
+471e:0a 
+4721:05 00	
 498c:	
 'BT5.2 Mouse
 
Index: util/sortsched.pl
===================================================================
--- /1121s/branch/mouse/mouse_public_Single_Mode/util/sortsched.pl	(revision 6511)
+++ /1121s/branch/mouse/mouse_public_Single_Mode/util/sortsched.pl	(working copy)
@@ -7,8 +7,20 @@
 # Variables at these addresses will NOT be merged with adjacent variables.
 # They are output as independent initialization blocks before the merged data.
 # Add addresses (4-digit hex, lowercase) as needed.
-@exclude_addrs = ('44f1', '42db', '411c', '4638', '463a', '463c', '463d', '4644', '4666', '46ff', '4702', '4705',
-'4707', '470a', '470d', '470f', '4712', '4713', '471b', '471e', '4721', '4725', '4727', '4728', '4729', '498c','4b21');
+@exclude_addrs = (
+'44f1',            # fixed: position 0
+'42db',            # fixed: position 1
+'411c',            # isolated
+# Interleave contiguous groups A(4638,463a,463c,463d), B(4712,4713,471b), C(4725,4727,4728,4729)
+# so that no two addresses from the same group are adjacent in output
+'4638', '4712', '4725',   # A0, B0, C0
+'463a', '4713', '4727',   # A1, B1, C1
+'463c', '471b', '4728',   # A2, B2, C2
+'463d', '4729',           # A3, C3
+# Remaining isolated addresses
+'4644', '4666', '46ff', '4702', '4705', '4707', '470a', '470d', '470f',
+'471e', '4721', '498c', '4b21'
+);
 # ==========================
 
 open(Sched,"$Sched_path")||die("Cannot open files1\n");
@@ -137,7 +149,9 @@
 }
 
 # Output excluded records first (in the order listed in @exclude_addrs)
-# Only 44f1 and 42db are printed to stdout; all others go to file only
+# The order is arranged so that no two contiguous addresses appear consecutively;
+# otherwise geneep would merge them into a single aa55 block in otp.dat.
+# Only 44f1 and 42db are printed to stdout; all others go to file only.
 foreach $ex_addr (@exclude_addrs)
 {
 	if($exclude_records{$ex_addr})
