One of my rules was overly constraining: The bishops may, in fact, cover one another. This then allows for 108 solution for 4 white square bishops alone and therefore 108^2 solutions in total.
(Solutions with "***" have bishops placed in diagonals of length only 4 mentioned in more recent posts.)
Here are the white square solutions:
lord@rabbit resolve % bi
1 d1, d3, d5, d7
2 d1, d3, e6, c6
3 d1, e4, c4, d7
4 d1, e4, e6, b5
5 d1, f5, c4, c6
6 d1, f5, d5, b5
7 e2, b1, d5, d7 ***
8 e2, b1, e6, c6 ***
9 e2, c2, d5, d7
10 e2, c2, e6, c6
11 e2, d3, d5, d7
12 e2, d3, e6, c6
13 e2, e4, a2, d7 ***
14 e2, e4, b3, d7
15 e2, e4, c4, d7
16 e2, e4, d5, d7
17 e2, e4, e6, a4
18 e2, e4, e6, b5
19 e2, e4, e6, c6
20 e2, e4, e6, d7
21 e2, e4, e6, e8
22 e2, e4, f7, d7
23 e2, e4, g8, d7 ***
24 e2, f5, a2, c6 ***
25 e2, f5, b3, c6
26 e2, f5, c4, c6
27 e2, f5, d5, a4
28 e2, f5, d5, b5
29 e2, f5, d5, c6
30 e2, f5, d5, d7
31 e2, f5, d5, e8
32 e2, f5, e6, c6
33 e2, f5, f7, c6
34 e2, f5, g8, c6 ***
35 e2, g6, d5, d7
36 e2, g6, e6, c6
37 e2, h7, d5, d7 ***
38 e2, h7, e6, c6 ***
39 f3, b1, c4, d7 ***
40 f3, b1, e6, b5 ***
41 f3, c2, c4, d7
42 f3, c2, e6, b5
43 f3, d3, a2, d7 ***
44 f3, d3, b3, d7
45 f3, d3, c4, d7
46 f3, d3, d5, d7
47 f3, d3, e6, a4
48 f3, d3, e6, b5
49 f3, d3, e6, c6
50 f3, d3, e6, d7
51 f3, d3, e6, e8
52 f3, d3, f7, d7
53 f3, d3, g8, d7 ***
54 f3, e4, c4, d7
55 f3, e4, e6, b5
56 f3, f5, a2, b5 ***
57 f3, f5, b3, b5
58 f3, f5, c4, a4
59 f3, f5, c4, b5
60 f3, f5, c4, c6
61 f3, f5, c4, d7
62 f3, f5, c4, e8
63 f3, f5, d5, b5
64 f3, f5, e6, b5
65 f3, f5, f7, b5
66 f3, f5, g8, b5 ***
67 f3, g6, c4, d7
68 f3, g6, e6, b5
69 f3, h7, c4, d7 ***
70 f3, h7, e6, b5 ***
71 g4, b1, c4, c6 ***
72 g4, b1, d5, b5 ***
73 g4, c2, c4, c6
74 g4, c2, d5, b5
75 g4, d3, a2, c6 ***
76 g4, d3, b3, c6
77 g4, d3, c4, c6
78 g4, d3, d5, a4
79 g4, d3, d5, b5
80 g4, d3, d5, c6
81 g4, d3, d5, d7
82 g4, d3, d5, e8
83 g4, d3, e6, c6
84 g4, d3, f7, c6
85 g4, d3, g8, c6 ***
86 g4, e4, a2, b5 ***
87 g4, e4, b3, b5
88 g4, e4, c4, a4
89 g4, e4, c4, b5
90 g4, e4, c4, c6
91 g4, e4, c4, d7
92 g4, e4, c4, e8
93 g4, e4, d5, b5
94 g4, e4, e6, b5
95 g4, e4, f7, b5
96 g4, e4, g8, b5 ***
97 g4, f5, c4, c6
98 g4, f5, d5, b5
99 g4, g6, c4, c6
100 g4, g6, d5, b5
101 g4, h7, c4, c6 ***
102 g4, h7, d5, b5 ***
103 h5, d3, d5, d7
104 h5, d3, e6, c6
105 h5, e4, c4, d7
106 h5, e4, e6, b5
107 h5, f5, c4, c6
108 h5, f5, d5, b5
lord@rabbit resolve %
program bi
implicit none
integer cnt,i1,i2,i3,i4
character*2 c(7,4)
data c/
1'??','d1','e2','f3','g4','h5','??',
2'b1','c2','d3','e4','f5','g6','h7',
3'a2','b3','c4','d5','e6','f7','g8',
4'??','a4','b5','c6','d7','e8','??'/
cnt=0
do i1=2,6
do 2 i2=1,7
do 3 i3=1,7
do i4=2,6
if((i1.ne.3.and.i2.ne.3.and.i3.ne.3.and.i4.ne.3).or.
2 (i1.ne.4.and.i2.ne.4.and.i3.ne.4.and.i4.ne.4).or.
3 (i1.ne.5.and.i2.ne.5.and.i3.ne.5.and.i4.ne.5))
4 go to 4
cnt=cnt+1
print 1,cnt,c(i1,1),c(i2,2),c(i3,3),c(i4,4)
1 format(i3,5x,3(a2,', '),a2)
4 enddo
3 enddo
2 enddo
enddo
end