field ctrl[1:0] = {nop=0, stop=1, load=2};
field pc[6:2] = {br=1, bw=2, xr=4, inc=8, dec=16};
field sel[10:7] = {if_carry=1, if_not_carry=3,
if_zero=5, if_not_zero=7,
if_negative=9, if_not_negative=11,
if_overflow=13, if_not_overflow=15};
field mdr[15:11] = {br=1, bw=2, xr=4, inc=8, dec=16};
field j[20:16] = {br=1, bw=2, xr=4, inc=8, dec=16};
field ram[25:21] = {br=1, bw=2, xw=4, p=0, i=8, j=16, s=24};
field ir[30:26] = {br=1, bw=2, xr=4, inc=8, dec=16};
field sp[35:31] = {br=1, bw=2, xr=4, inc=8, dec=16};
field i[40:36] = {br=1, bw=2, xr=4, inc=8, dec=16};
field b[45:41] = {br=1, bw=2, xr=4, inc=8, dec=16};
field fl[50:46] = {br=1, bw=2, xr=4, inc=8, dec=16};
field alu[55:51] = {not=1, and=3, or=5, xor=7, lshl=9, lshr=11,
ashl=13, ashr=15, rotl=17, rotr=19, rotcl=21,
rotcr=23, add_c=25, sub_b=27, add=29, sub=31};
field a[60:56] = {br=1, bw=2, xr=4, inc=8, dec=16};
field ioa[65:61] = {br=1, bw=2, xr=4, inc=8, dec=16};
field ioc[69:66] = {br=1, bw=2, req=4, isack=8};
|