Subversion Repositories KoE_projects

Rev

Blame | Last modification | View Log | Download | RSS feed | ?url?

' Copyright (C) 1988-2000 Altera Corporation
' Any megafunction design, and related net list (encrypted or decrypted),
' support information, device programming or simulation file, and any other
' associated documentation or information provided by Altera or a partner
' under Altera's Megafunction Partnership Program may be used only to
' program PLD devices (but not masked PLD devices) from Altera.  Any other
' use of such megafunction design, net list, support information, device
' programming or simulation file, or any other related documentation or
' information is prohibited for any other purpose, including, but not
' limited to modification, reverse engineering, de-compiling, or use with
' any other silicon devices, unless such use is explicitly licensed under
' a separate agreement with Altera or a megafunction partner.  Title to
' the intellectual property, including patents, copyrights, trademarks,
' trade secrets, or maskworks, embodied in any such megafunction design,
' net list, support information, device programming or simulation file, or
' any other related documentation or information provided by Altera or a
' megafunction partner, remains with Altera, the megafunction partner, or
' their respective licensors.  No other licenses, including any licenses
' needed under any third party's intellectual property, are provided herein.

'Device #1: EPM7128S - c:\final\p1024sl.pof Fri Oct 05 18:59:36 2007

NOTE "CREATOR" "Altera Jam/STAPL Composer Version 10.0 10/5/2000";
NOTE "DATE" "2007/10/05";
NOTE "DEVICE" "EPM7128S";
NOTE "FILE" "p1024sl.pof";
NOTE "TARGET" "1";
NOTE "IDCODE" "071280DD";
NOTE "UES" "FFFF";
NOTE "CHECKSUM" "0017554E";
NOTE "SAVE_DATA" "DEVICE_DATA";
NOTE "SAVE_DATA_VARIABLES" "V0, A12, A13, A21, A22, A25, A43";
NOTE "STAPL_VERSION" "JESD71";
NOTE "JAM_VERSION" "2.0";
NOTE "ALG_VERSION" "10";
ACTION PROGRAM = PR_INIT_PROGRAM, DO_BLANK_CHECK OPTIONAL, DO_VERIFY RECOMMENDED, DO_SECURE OPTIONAL,
DO_READ_UES OPTIONAL,
PR_EXECUTE;
ACTION BLANKCHECK = PR_INIT_BLANKCHECK, PR_EXECUTE;
ACTION VERIFY = PR_INIT_VERIFY, PR_EXECUTE;
ACTION READ_UES = PR_INIT_READ_UES, PR_EXECUTE;
DATA DEVICE_DATA;
INTEGER V0 = 1;
INTEGER V1 = 0;
INTEGER A12[1] = 4;
INTEGER A59[1] = 288;
INTEGER A60[1] = 1;
INTEGER A61[1] = 118653149;
INTEGER A13[1] = 5;
INTEGER A25[1] = 10;
INTEGER A43[1] = 0;
BOOLEAN A21[104320] = @
mB300u@rQLjMhb@JjMMhrVw@@hf@VzhKhrowl_Bh@_Vl_hrqQjMLhrQPjMhbrVzd
Nh@VVv@hg@wlut@bx@@@t@rVFf_UV@@l_sxV@Tz@@x@wls@@@lIf@VZnQDC6Z@bO
D67g1_h@QPjMZxrV9st@@eViMhGzml@@l@rVFV_@rXA1q@@QQjMhfrlegMhro2zx
VeCWMh@gVj_P@@wdiMfrqQbMJhrALjM@5@UjU@@b@Uj_B3Q2kMgmG@z@H@zUJ@NV
VeOGbMhb@JjMMfrVQ@VhfzVz7A6mwl@tf@QDjMhLrQbIX76awpzv@@wRlFztrl@F
@h@Q@@@zAb_@jIfLoQb_FGDm@NhRGbWl@@L@QfMMhrQHjMh5e6e_ZUYldMTWcWQa
NA@H@x_NzTS@tN7e6uVyBDyCWM@dAQjMh0DXG63@@5@XC3kNg_z@@@J@z_FGDmrc
@VWQ0QjMB@dQjiMf@K@dMGx_wNjMhKmNXNB@@W73_l_R9r@l5ACmr_@F_h@A@@@z
Aak@3ZC4oCWLQjkLVrQV@@gXHFK@rIv@V@FeaWwl_Vz@V91b42e94UsGlVvlNhVQ
Vvt@A@l@z@VrhUf_FyOWVh_@mu3XM3q@zN7esmhrllly@LrPzNyx@ozy@@xVwlFK
OWz_@VM@@@Xs4CMhrmOi_NgrQSGs0lrVjiMhnzwl6xx@VC87IGn0@@@b1v4G@lhX
nOjc6@deQiMB@r@@kM@z2e9u@N@9SpW@Mj_G161P9yNgroQb_J1VV1z@BVrQfMM@
rVPTq@7uPWrHydNhtVRv@Zg@Ofut@Xx@@NtlnVFfU@V@@l_Mw@@TT@@7eK1@lMV@
LVjiMhrTolMxvVFrlMharAjMMhqQQjMhvrFlg_hxYllMV8O2grUfyN@@xVztn@xV
L8e1_@@I2yCWMvcQeL2wlMf9bwl6CcWMBrwWH3ythrmeluthrMblyxVbVx@_@nQ8
lK@6CQW@l_V@ZVzk_@_zFfqx@rQLjIhLO93erQj2BbWrOzcNhFNPPUheJwlut@bx
f@@tVqNFf__V@@l_sxx@3BDm@@_VOq3_@QrzNzLoAbMth@QTeb1MBrQ3GJGzx_L0
A3elUf2Pm8SpW0lGq@N_xrwksN_zloV@V@@Nz1K6G@zsFmZ1@lMBgrQjyVAroIj_
J@@TDr@hULQbMM@qF3QbmhqUgly@LqHzNyx@oTt@@xBwbFCY1@N@qX7FGh@gFOCa
0gJer@egMhroEzxVGR2Urwlz@h@oQfMJhrQ9jMhLrQz71o6unwFsN_zloVyV@@UD
1AF4KOW@NhKrQjM_FrAPjM@fx@lE0T3dM@@_o@J3fPWG@@l@@NVRT@@XCLGg@wFy
u4zN_@XRUGh@3LbIfLGx3U@rV3pJGjM@aVEjwmS3ybVx7KaW@@_Vwlt@_Vgtz@zL
xw@@t@b2V0l1_FrIPjI@fUllW_@blQjMBB@wli_x@zwlK7mdGmj1_o@NK@bMnl@3
t@@@j@Z@UIz@@_@Rzjt@@7SpGe@3_h@A3UQnzwld@@@Q@@@zg@w@z@@56gQ3V@wl
11PmVlKk@@oQlM_rXbmmr_@F@Bb_mXI4eeYmX6uBtVDWo916JWVzNRWHCKp@V5OC
1@@@pg@UfC@@lxVztp@pVTum7erkfYMhroVz@Bgrkl0URm@luthrVL8I3y@lrxUf
Qt@t@7ztxVjVz@X8Dm@bIh@NArm3L4iS3_zRvX7K9m39Uly@3aX1Q@VDjMgb1GDm
VzVUOJ3erwhwLhps@hUR0K3ebQjeMh@oVF6l@tmVl6@r_ol@LQ@@7IJ2NV@@slKw
3UKXLVztGfLeA@VDKg1y@@@36vXKBrQQzN@_@QriMfL6Eq0R@@gErQj2gMXNBr@W
g6m@N@trold@@rI@@@_1PgmLw@NG13yhrT7WI5zVz@16D8ac11eC8Gh1q@lU3bcW
N_rw0j94WY1_zVu_@@@3yOGOJ32goWLQjMMhr@2jMh3vQW@QlsGkC4UrWGk6ew@@
Y@lMjhxoF@N_@_@_@L@zIv@@@s@wFd@@_Q@@@@1ZC8i93XIbusX11VnmzITfwz@V
wdtx1VP8m36i_p@33@GWnGO_@u7sa1QzJ@1VP8Wy3suhNLl@Vnz7htnNvd@3@V@@
@lY@Ufid__xVzpp7@VTOO6qQjI5Qs0FrtlkM@_2_cW@VzsWMCujNhtRFPlNh@QQv
t@A@@@j_@rPUf_FO96_5rQ3lcG0P3Ozs@7ac1MtrV1fD84a1XMC8Of11jaWrAzlK
hLQQTNl1VtWN@zgwFwhmr6u@I@FSj1_t_@zlwBv@xds@@tlwlw@0P6erQjYM@dgO
jMhmmUulNhpNVvlNhzQVvt@A@_@z@trJU9kNz@@Fytxzmr9u@GfF4k1wFrQ3XR0z
NhLrAjMXmhmhrUkly@LrNzNyhrIvx@@xzQkdKxvg@lMVxztliy@@zVzN6uE1MBb@
1VVmh@ITuB9GNMVn@NfrqVvdtA@@Wv646_X0Ks4gY1l@@@Xg8nwl_JGwAyb@f6SZ
1Ir_@_VFzbtR@7ucX0yL46sW0yX4y53QjVggrQjiK@@72dXmw6erQjcIhrQuL3yV
MchrwlsM_zlo@@Vh@VzkNg@z@@@H@b_FKV2XbI8SZ1w@Nh3kb0h@_Nl_hrqQjI3@
x1rVjNXrnW@@N@mSC0@rVTuGLulsgbrQjkL@rw01PGhrIPWWCu@olDC732DZ1qFz
@XgaG8XC4gI21Z0J8NIe_llWy@bVGQ64Se41VzW@B@_GuImrx@V8XC4aH2_@Qr3q
A4I@bVXmzGmN64a631CcWhrVhm@aWMBbQ0ZC4AL2ENg@3hZ1N@_@wlKw3Tq0tdQj
XEQGOT64mJ5Sj_@zb@lg_h@WVVNMOTCOl@@DSeGyudM74f1MgrQPjKh5Wt6kL@z2
hJ2QzUgX@5Y@Qj_Gza8yA32YC1@NAr1M_0rMhKKQbMM@rVPzt_7Of1grAj2iaXW8
J8eF3y@_w7ce1_d_h3dC1MhrcXOQWllM@Wq8n@b@a@@@9q0lKc0U@3YqWWvm8mo4
yhbV7iv31VbGuLj4ucA_l_h3Jq0xr@@XTQWz@@@GfEHhbQjlwxLqx@N1zPG8Xa4A
g1kM@xqTjM7CdA__@tf@U_xlZ@FKK3yVfa7053o@@h3na1l_fr1bQWrAjs0egWK@
@gxlM_0eC8GhG2EyX0yE1j@Ec6ZnuW8DWVz@VuBC44v3wxrw3Kb1@@FzgNgV3EC1
@@Vzkk@@zVfqx@rOLjMhHGa940A31H_WNh90Vv@h17QWl_@@m9JmU@wV8hCGjMh5
rQzlKhbwGMJ0rQjUuV@4GXD17oW@@lyGGaG@@VCy@ZVrQiMXlqIe5942I21ZO0C_
ZV@Vj__h@O2E4cG1g8e06Wrwl6Mo915WXDJjsW2290KIKAj@7KW7MhnQOC6ZfrQi
EeWM2Pz1Qi_hX0R0ZrQjm3Q9eW42LnWGRz8yKC2pXXm3gWnQiUG194U0CXlmG05L
WrOjcMhrgOj_hGBy8u192oudW7s8833yr@l6K031KS2g@ViGRP8a1g2AW1OCMhgr
Qji6Zroul_B83C2zHYWWg8Ok725uam4L9W2I26_XmII84u42FWamIOGfK@b@QjU@
@blUj_hzbF@Zy@@N@@NVK0Oe_z_A0v4y@@@Z_vbolt@l@rVFzx@r1GPGe09uB@VL
rN@5V_dS@z_@kl_x8r@@p@zrFUW7qNfKRlluthKFbduxU5@t@_zVgDlGzw_l@dwx
KF@l_V@VVrkwz@TVXGvh_QD_x4yFnxx@V@FAP3ylwxe@llE_x4GzJ@erwtpJ_Ugw
d_B_TFvsx@@zFzpHgVldt@flzwtRJ@_@kl_hz@@t7KG2HYR0o@@@eaJWwxrViJCu
f@QLzxz4VVj_m3aG@UVTe09WwdwBG16i@@z6vS2X28HW26u9V_7vxzkUldUpBrlk
t@zeVUzpxfVNl@JlfVlN@JArnDqI8w6mlxBFWM62Mo0@NzLn8OW_QbQ@@blEjwhz
4FtZuzUNltJjv4gVtxz_KFdwzzLlhtxfsKlthx94AFrJfeUldmxfKRgdu9AW4qxz
URFrpHzUFLK090gd_BC23KzrVnd@9sUlthxf@EIz@@yVVr3PuXG1sWtJ@Uy0FWtJ
ftKFndx9UV@tx@HGOGy0F0gd_HfrlNm36mdx9tUltlxfVEIzxzyUFzbNzU7KG28b
gdqJfKRlduFo03G_@lx@xhsS2rhxz_FwdNzyVgt3F81VrNheUllu@hKRgdynzb@d
txzUKFlKwz_ljlwvfV@lo@z_V8364P03uv_o3Km02rx@yVFzbN@_7A03whKgz@Ny
xLgloJySFYt@TzUVrkJe_zl@xHzSgt@JzlU@dQJzUl_dGeYMuaG6E1XGzLO4p4OK
5XHO0gVwFbMz@Uo@NZb81tNzznTbWhV@@OECGXKzLGQCeu@Ut@tNjxawtGGC88D6
25mf8329y0LY391bMz@UotJLzrFnlxBEo038qltxx@LtEr@Tu19eGgUAAWJ2Amfm
3YAGXS2gFX8Im8YO3YdF1@f@UX2mJG1H5tL5k_@_ZcsWW2_9MR32tO3@z@@nmyW@
h@g0UImVVvlNh_QVvtzA@l@Z5ZXWRC8AW4Kz@V5Ek1XlOWwdNgO9YASZDSzNyv@Y
@F889Y4tW83IGzN@KOxF8l_@FyU3yV@thKg@Aq73YJdXu1C8AW4YLqWuVImrVnd@
B@V@t@z1taWw@@gW@Dm@@NOOEL45G2k_z@Z78XG7Vm@@NTq2Fuw@@t@bILmD64jV
2_@@xLzTI5wJ51HA1fw@@WbamVbMj@@Y@uu2nN@LQSI6uwlyp@5@Vi494fX1_@@x
ZM8XOAD8Q16Y78XO4I8e53y@Ny7p13H6aW@l_Tz@VzHaSReA55o03n9zGGBSww@x
FQV3KALV5@ZD_@@xZgu1LVz@nOzGK094FW41QzG8894_23kw@_Zwv4zVVfe_f@qQ
r@7Pr31QLX_AjU@@b@Ej_hyaVt7UL2nhOW@l_z8IUW@dMlh_oleoC8k@4219XuLO
8uV3yt@z7N33kw@@3QXX8sV8446Y5pWWb29AW4GzNz5zX1ncOGmNa4lY1Xg8H88R
4lY11fbGKACewh@AMCIY28XeKO8Ub42f9XOJOGrtBb_l@@GLO8e5C8r@t7cZ7Xbm
0zth_G_J8_YM2UWX8r2nhrVLSDC4OK5HL4ImD94y03XHyGmDI4_I2kJg_ZS9XOTO
88Z4Y7TZGQI8uX42yWXuuy8webY4Y4Fnt@1yyG8DC4XZ1XvOGuG94hJ5H1a0@_ly
u2D8I86YToWeKg8y5UY@nW0ZU861L2tWa0P6Bc3CYqWaOOI8O93SVzNv@@lFac4Y
NX1tBq@_@@@e@Ur7r83nO9HmS6uVzpJ@VVLeK648391QPGa1j4p6de_h_2LnWmca
8eA626fYOFt8Qh42zX1r@@LX_KHazF4lI211LHGLF4IJ5X_iHKUX4p63HkmGGfC4
1c7n80JWCReu@_FOp4YAZ1tNALnTnGK06ewxaA2i4YJYXWlI8iJ32p9X8rOGXK@K
uBI4TK2XSXT4TOuxhVFOf4YPBXWvU80g4YkyaWHa8OE3YlLY8IO8ID6Yxt0@fVUH
_zGO9aeKg@7;

BOOLEAN A22[65920] = @
m0200u@@@@3q6u@t@t@@Vl@@_V@@@@_l@kzly@x@F701qP1KU100qSJw_R_vtNV6
c1@@@@_V06Gd5ee500GnDLjluNEVzn@ZcW@@VV@@@@_@_@z@l@7g1y@@@3b1VplR
_wpPmo@@RlN@FW94g7yn@xRz@@dtUVl@@@V@Nt@_@@@T@_@x@@@t@ztdk@tVlx@d
6W0u2g1Qgxl0jVVvp@llq9u@v@t@@F06WpYWQWg@2U2zr7__l@z@@txF@@t@@@lr
VtVt@@z5e1XN28W6B2A62I6y@xtx@1O0PKWIubWl_OQ_@@@_@@@z@VIx@Vldq@@l
@l@V@@@V_z@@rVt@px@@tb3GGWQWcQgRVIlV_wo@z@@zx@@@t@@zl@@zU@@@z1g1
00WYqKrVWUv_o7@@U9RW@x@V@t@@_t@@3g4qz@_x@@zCaRXSVvXt@tAzx@@Dl1_@
@@Sr@txl@@t@@@llxlR@v_@Xt3yxgF3XCu@@lt@3m0Qe0bWd1_YTvur7@x@t@BDc
W@@lV@V@@_@wx3ULuBszBC_W@@@tmu3_uz@Be6u@V@xYQGWp0@@J@w_L@zx@V6GR
XCVznq8XEh1XY42e9W0gi0Al000Qk1TzD@yvhF3m94GC8qkn9AXmO2y@l@zv04WE
9G98dWl_S7_z@@sxz@3oa4UOm@ttVGM2yxtN_iuMtC64kJ03q9Huc1@@lLdj7ysT
@p@@@d@zpj@zVV@@v08WCBWYB0006P2tBZFz_wJ@@@x_@V@z@@yxjl@s@@xl@7W0
aP1AQ100KSJKRB_bpNVyl@V@UtBlzyV@zz@@@Rl@@t@t@@9b11UF4QPG8O2_@V@z
@@@xx@@D4q0000HXM6uZ@J@@p0@rt@_T@@zVx@x_@@7@@@j@@lNTzlz_@_F36D00
0qWcw_n0A6yp@@xr@@tz@F04ep2eq200eW6Kr3yJkl_8sn0@@@lUzltz@@@R@@lF
CA1lg@@Xb900a1GNVpVOP2_@V@fxV@7Co0YRgwmI3y@@Mn@@@FCY1@@@zk@@@qVt
@6o8H0A9TR9qYOG8f1_@t_rzx_x_@zCK5Z0gA8tNUu@@@dLN@l@@@Tl@th_@@Vj@
xdLsQW@wjRlx@@1j90WcRGtVoF@_wpkL3y@@@vt@VFeb15qKL1j6CaoGGM5XlmOz
@@VHE1@k@@k@@@zz@_v@@xNN@wVWC3QghlnlVV5qcW_VxF@_@@1jCew7udSVzXx@
_@wH3S@@@p@x@FmZXGB32fVOjsWmDLy@z_7UKXcRgwWRIyn@NKcR0f@@V@xzFi_t
@3aJGr@xVOk1i0bL2pLn@@Rq1F3_@@hztzxxt@@N@jnjzz@V_@v01y9exlvBWd1@
@zt1yCeuceEWt0@@@tf_9u@x@EuX7y9tN1egm@x@l@VExGLF44yXzV64SBXGBC4G
94ei200eva272pPj4q@@@7Oq0U@@@16PmtyxLWn4y@l@x@tttt@@VWH30005gfgV
2_ozbF_VzWU6u@__t@zzl@@@Vt@x@1yImt@@HGG3000DgfkV6s_zL8I9W0DK4YC1
Izr7X9Vm@pVVu6Cqyty7UmcWWCuZ188iv9Qgul2k9X@@@Bt@z@k__@r_@zhp@zt@
@Rf18WAMWY300WcnKtV70D1_@@@Ukx@3W_WA@Y@0e64@qWmSFuV_xE0w3wyR_3az
GeqA6kzW@l_V@Vzr1LD0@_TlF7W0q10AS000qSJDwRsy9eQ540bM0005hf2@2Roy
bF_@V@z@_hNJ8ac11e2PGP2XNV8uX41GDmx@@VuL3u@d3W0wC8GB31eImRV@TWM9
yr7xx_@@t@@@j@@_R@@@t__x@2Qf2@t@Vx@@@6W1wO0Aj4oj2@FUxXSDm@@tk@@l
VT@l_1VV8q731UD8ux34xhF20@GGr42CQW@jSWmmC4UrWoh6CDsWGGI48B1@@@xw
@@@3yQW@@VVzpz@i@z@38d06JgRFplR1aJm@z@cl@__mmF0Uv_o7@yVmM3ud@@tc
q0tl_@1GPm0407BGv100GoQYxj3DpW@s@@GQ6W1Qi8493_V@tFIRmRM32b_GGB3W
YB00WcRIdVZV0v4Q0cGGQ9ux@@70s0@@@zyzlV3k91oi0bmm6uR_roLV_VZQ323O
Guw400045kn0Vyt@@4Imlt@VeFC28dWF@@xWi9uzyzt@VFGWR30GnDegludOVzX@
x@@kf94ob1@tRN_t@tytd3W0w484k1AyRs2qcGev42taW2QgGF0cCXmJm@lyQrS3
yFz@x@V@t@@@h_R_@mSCefcwstixNGB62c@W6A_hGkX4gg5L@5xXrVGFz@V0v4yT
rTxV@VFmT20evYqztu7usWFkC4SZXWCI4iCa0yF4g73t@l@fnDm@l@V0U32HcG0U
3000838kt6@wzLG@4ul_@7qt080d5XNDGrRnFv_w3@@@_w@@zT@@@761Z0yIGtVI
FlkwpysOmzVVV8S9euceEiE364a1@@Qx_@_@z_z@x@V_N@TzVuVFuP_zBGmA2BnW
WgI88jG2LXXG2398D3EKB1@@@z_pk@z@@@xl_xst_@VmXFmFl_CumGq@@_FK1312
o0@l@@GkO8CH92mJYGLamz@ll@@@Vp@V@XIbG0Z9WVV_AK53A99XGua8W7C2OCXm
wUOfH3y@@tx@M@FKFC6bAXW_Im__@l_x_V_z@@1HMH9NC4A591znW10WEMWoB00W
Y3loW0_U8SoAOq@@dQe1_z@t3Oq0z@@@_llk3dq04G701MwHGG64OP2s@x@Jnq0@
zwuU@@zz@y@Vaf1wlxN3na1DtKN_aUt2na1@zwyU@@@3hpWGpC0yozLWWLul@@t@
ztMuQs4WYAw_B_PtNU6sv9_lz_2Ea1@@z@wjx@3xa1DsKt1WwX6g_hWMQ9Kq46aB
1@@sD_@l1G0TM4Aw3_@@lRzCXj9D8eK3yl@_5KA3QyRc2WgYWID80g4y@@@xVvj@
4p42qAdmJVG@@@ltt@V@@@@kl@@3Kr0T@hz1gAXFJmlW8Pm@_FGWgLu@@@nh@zV8
h64YP21go00Qg1TzD@SxhFTVh@x@@@r@@@JIa64oQ2Aefg3ii2zUx@TIQGuVv4Yv
6k@xF3j0fGCJ84432er0szr7_@@@Ot@@7aMEX28X@f@pG14Ai432Am0@Pd@1vknE
QCiKR21WcGWRI4Km31ZmGG1vm@@V1k@@VmSy4UG2_y@@z@@zN2R2X7qY@z@_mw29
yWVyrd@x@@iJ@@zIu1O4o06X_8H0o64GX1_@wl3P0ZG1y8yWhq2004G1315mG0jj
4oW4_S7@2fvdW2O8GX4W@P@7kXGXKdGmS94kBC1F8H0F85223iRlt3FO3xlU@_@@
@z@F@wlNdtx@xl@@UDszw@_@@2q0LB2QnlY5z@l7N@VQ@@@qHsJyoGFo_x@FmN3y
lFwwlNdtpsVF_tVLf@@@_@VVyhAWQa6H5w@@VUp9uV@@tN@pif10042500000I0W
000W@sU1mygs@xV00000000100002XI420000oGsH8n0500m0W0WR1GA100qm3o1
m8PJge300W1WWlD0WGn2OI0XA1IuK030m@@N8E3_wVhv@zNx@@jYL@@lliQU@@@@
X0ymVuFu@@bcqMPL20441W1iog@J2GYJ0cehy4y@@@TpN2Jmom3LFe_@@VAs46Ir
0@@@VU@@@zt@@vxx_t@V@d@@__fFDuwP9qT@@x@l@tV@xl@@lV@NV@k@@@TV@@x@
_@N@rxlx_@R@@@@_t@xvVz@x@@@s@V@l@y@V@Vr@V8RW@x@V@@@rTaQW@l@RV@@N
_@w@z@@_x@_@p@Vzl__@F@@F@V7eIvs9KCy3Z9KH9BCu@xxt@VVV5x6e@@@t@Vtl
@_@laKDm@@NFl@@_N_CmTs@Fl@tR@@tT_x@@Tl@@xl@@J@@zd@_@V@@@VhSdW@l@
Vr@V@dnRW@x_@ApDW@@@lk@@xsPJmt@@j@@xV@@T@_@xwR1m0@Vz@7fRW@l@@ymJ
OHy4yd@@xl@@@u93y@@rh@@xtV@@l@@lV@@zVw@lltiD1_@z@rkRmmx9CTR2dlRW
@v@R@@F@_@__zT@z@ma1w@__tEtWIcPW@t@@GkCiRs3lcdGYk9ul@@tz@VFxkxVt
zt@yxw@z@@@xll@NNVtVS_6ull@ViYJqTV@xl@@s@@t@@x6u@@lt@t@lxw@@C0Im
@@@ll_@V@@@@i@@@xcC1t@@V_@@_h3mWJsJmz@@l@@@F@@r@yl@@TtzVxhlwt@z@
lx@_UVN@@__Rlz@@@px@@FMYMS@tsxV@@d@@@VUr9ux_@t@ztl@@@Vz@VV_@@@6_
91@z@@0;

ENDDATA;
DATA TEMP_DATA;
INTEGER A0[28] =
96, 96, 96, 96, 96, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 15, 791, 791, 791, 791, 317, 293, 281, 273, 261, 253, 237, 791;
INTEGER A1[28] =
3144, 1574, 716, 360, 183, 1574, 716, 360, 183,3144, 0,1574, 716, 360, 183, 64, 280, 240, 200, 160, 640, 480, 400, 320, 240, 160, 80,3144;
INTEGER A2[28] =
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 165, 165, 165, 165, 0, 0, 0, 0, 0, 0, 0, 165;
INTEGER A3[28] =
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 112, 96, 80, 64, 0, 0, 0, 0, 0, 0, 0, 112;
INTEGER A4[28] =
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 648, 600, 552, 504, 0, 0, 0, 0, 0, 0, 0, 648;
INTEGER A5[28] =
3144, 1574, 716, 360, 183, 1574, 716, 360, 183,3144, 0,1574, 716, 360, 183, 64, 56, 48, 40, 32, 128, 96, 80, 64, 48, 32, 16,3144;
INTEGER A6[28] =
32, 16, 8, 4, 2, 16, 8, 4, 2, 32, 24, 16, 8, 4, 2, 0, 0, 0, 0, 0, 16, 12, 10, 8, 6, 4, 2, 32;
INTEGER A7[28] =
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 6, 5, 4, 0, 0, 0, 0, 0, 0, 0, 7;
INTEGER A8[28] =
512, 256, 128, 64, 32, 256, 128, 64, 32, 512, 384, 256, 128, 64, 32, 0, 560, 480, 400, 320, 256, 192, 160, 128, 96, 64, 32, 560;
INTEGER A9[21] =
12, 3, 131, 8, 3, 131, 0, 0, 0, 6, 3, 131, 0, 0, 0, 3, 1, 118, 1, 3, 126;
INTEGER A10[14] =
12, 3, 8, 3, 8, 3, 6, 3, 0, 0, 3, 1, 1, 1;
INTEGER A51[15] =
294, 148, 38, 20, 2, 148, 38, 20, 2, 294, 0, 148, 38, 20, 2;
INTEGER A49[14] =
12, 114, 8, 114, 8, 114, 6, 114, 0, 0, 3, 109, 1, 109;
INTEGER A11[5 * 3 * 27] =
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,1025, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,1025, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,1025, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,1025, 0, 0,
0, 0, 0, 0, 0, 0,1025, 4, 0, 1, 1, 0,1025, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 99, 1, 0, 99,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 99, 1, 0, 99,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 99, 1, 0, 98,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 99, 1, 0, 98,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 98,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 99,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 99,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 98,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 98,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 98,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 97, 0, 1, 94,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 95,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 95,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 97, 0, 1, 94,
0, 0, 0, 1, 0, 98, 2, 1, 96, 1, 0, 97, 0, 2, 96,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 97, 0, 0, 96,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 98,
129, 10, 98, 1, 0, 98, 2, 1, 96, 1, 0, 97, 0, 0, 96,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1, 1, 97, 1, 0, 97, 0, 2, 96, 0, 1, 96,
0, 0, 0, 0, 0, 0, 1, 31, 97, 4, 31, 98, 1, 0, 98;
INTEGER A14[64] =
8600,6400,4800,3600,2800,2000,1540,1140, 860, 640, 480, 360, 280, 200, 154, 116,
86, 64, 50, 36, 28, 24, 20, 16, 14, 12, 11, 9, 7, 5, 4, 3,
2000,1600,1300,1000, 900, 800, 720, 660, 600, 560, 520, 480, 440, 400, 380, 360,
340, 300, 280, 260, 240, 220, 200, 180, 160, 140, 120, 100, 80, 60, 40, 20;
INTEGER A15[16] =
60000,28000,10800,4200,1660, 660, 260, 100, 500, 200, 100, 60, 40, 30, 20, 10;
INTEGER A54[30] =
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 16, 0, 0, 0, 32, 0, 32, 255, 65, 255, 82, 255, 69, 255, 84, 255, 76, 255, 65;
INTEGER A55[30] =
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 16, 0, 32, 0, 32, 255, 65, 255, 82, 255, 69, 255, 84, 255, 76, 255, 65;
INTEGER A56[8] =
255, 1, 255, 56, 255, 57, 255, 65;
' VARIABLES
INTEGER A17[1];
INTEGER A48[1];
INTEGER A52[1];
BOOLEAN A32[60];
BOOLEAN A33[10];
BOOLEAN A39[10];
BOOLEAN A26[1600];
BOOLEAN A27[5];
BOOLEAN A28[273];
BOOLEAN A45[320];
BOOLEAN A29[320];
BOOLEAN A30[320];
BOOLEAN A31[640];
BOOLEAN A57[640];
BOOLEAN A34[50];
BOOLEAN A35[50];
BOOLEAN A36[50];
BOOLEAN A37[50];
BOOLEAN A38[70];
INTEGER V2 = 0;
INTEGER V3 = 0;
INTEGER V4 = 32;
BOOLEAN b;
INTEGER i;
INTEGER j;
INTEGER k;
INTEGER l;
INTEGER V10;
INTEGER V11;
INTEGER V12;
INTEGER V13;
BOOLEAN A18[21];
BOOLEAN A19[20];
BOOLEAN A20[10];
INTEGER V14;
INTEGER V15;
INTEGER V89;
INTEGER V16;
INTEGER V87;
INTEGER V17;
INTEGER V18;
INTEGER V19;
INTEGER V20;
INTEGER V21;
INTEGER V88;
INTEGER V94;
INTEGER V22;
INTEGER V23;
INTEGER V24;
INTEGER V25;
INTEGER V26;
INTEGER V27;
INTEGER V28;
INTEGER V29 = 1;
INTEGER A16[15];
INTEGER V30;
INTEGER V31;
INTEGER V32 = 0;
INTEGER V33 = 0;
INTEGER V34 = 1;
INTEGER V35 = 0;
INTEGER V36 = 0;
INTEGER V37 = 0;
INTEGER V38 = 0;
INTEGER V72 = 0;
INTEGER V73 = 0;
BOOLEAN V39 = 0;
BOOLEAN V40 = 0;
INTEGER V41 = 0;
INTEGER V42 = 0;
BOOLEAN V43 = 0;
BOOLEAN V44 = 0;
BOOLEAN V45 = 0;
INTEGER V46;
INTEGER V47;
INTEGER V48;
BOOLEAN V49 = 0;
INTEGER V51 = -1;
INTEGER V52 = -1;
BOOLEAN V74 = 0;
BOOLEAN V75 = 0;
BOOLEAN V56 = 0;
BOOLEAN V57 = 0;
BOOLEAN V58 = 1;
BOOLEAN A40[10];
BOOLEAN A41[10];
BOOLEAN A44[10];
BOOLEAN V76 = 0;
BOOLEAN V80 = 1;
BOOLEAN V81 = 0;
BOOLEAN V82 = 0;
INTEGER V83 = 5;
INTEGER V84 = 0;
INTEGER V86 = 0;
BOOLEAN V91 = 0;
INTEGER V68 = 0;
INTEGER V69 = 0;
INTEGER V96 = 94;
BOOLEAN V97 = 1;
BOOLEAN V102 = 0;
BOOLEAN V100 = 0;
BOOLEAN V103 = 0;
BOOLEAN V108 = 0;
BOOLEAN V104 = 0;
BOOLEAN V105 = 0;
BOOLEAN V107 = 0;
BOOLEAN V106 = 0;
BOOLEAN V101 = 0;
BOOLEAN USE_EXTEND_IR_DELAY_METHOD = 0;
BOOLEAN USE_FIXED_ALGORITHM = 0;
ENDDATA;
PROCEDURE PR_INIT_PROGRAM USES TEMP_DATA;
V102 = 1;
V103 = 1;
ENDPROC;
PROCEDURE DO_BLANK_CHECK USES TEMP_DATA;
V100 = 1;
ENDPROC;
PROCEDURE DO_VERIFY USES TEMP_DATA;
V108 = 1;
ENDPROC;
PROCEDURE DO_SECURE USES TEMP_DATA;
V107 = 1;
V106 = 1;
ENDPROC;
PROCEDURE DO_READ_UES USES TEMP_DATA;
V104 = 1;
ENDPROC;
PROCEDURE PR_INIT_BLANKCHECK USES TEMP_DATA;
V100 = 1;
ENDPROC;
PROCEDURE PR_INIT_VERIFY USES TEMP_DATA;
V108 = 1;
ENDPROC;
PROCEDURE PR_INIT_READ_UES USES TEMP_DATA;
V104 = 1;
ENDPROC;
PROCEDURE PR_EXECUTE USES DEVICE_DATA, TEMP_DATA, L6, L26,
L96,
L97, L75, L55, L82,
L257,
L41, L35, L21;
CALL L6;
V3 = 0;
V4 = 1;
CALL L26;
IF (V2 == 0) THEN GOTO L2;
IF (V42 == 0) THEN CALL L97;
IF ((V42 == 0) && V102) THEN CALL L75;
IF ((V42 == 0) && V100) THEN CALL L96;
IF ((V42 == 0) && V103) THEN CALL L55;
IF ((V42 == 0) && V108) THEN CALL L82;
IF ((V42 == 0) && V107) THEN CALL L257;
L2:
IF ((V42 == 0) && V104) THEN CALL L41;
CALL L21;
EXIT V42;
ENDPROC;
PROCEDURE L6 USES DEVICE_DATA, TEMP_DATA, L30, L276, L32;
INTEGER V66 = 0;
INTEGER V90 = 0;
INTEGER V95 = 0;
INTEGER V67 = 0;
IF (V103) THEN V102 = 1;
IF (V106) THEN V107 = 1;
IF ((V102 || V100) && !V103 &&
(V108 || V107)) THEN V42 = 1;
IF (V42 != 0) THEN GOTO L16;
V21 = 0;
FOR i = 0 TO V1;
j = 1;
k = 1;
IF (((A13[i] & 1) == 0) ||
((A13[i] & 4) == 0)) THEN GOTO L7;
V2 = A12[i];
j = A1[V2];
k = A5[V2];
L7:
V21 = V21 + j;
V66 = V66 + k;
NEXT i;
l = 0;
FOR i = 4 TO 0 STEP -1;
FOR j = 0 TO V1;
IF (((A13[j] & 1) == 0) ||
((A13[j] & 4) == 0)) THEN GOTO L8;
V2 = A12[j];
FOR k = 0 TO (A1[V2] - 1);
IF ((k % 5) == i) THEN A26[l] = 1;
l = l + 1;
NEXT k;
GOTO L9;
L8:
l = l + 1;
L9:
NEXT j;
NEXT i;
V88 = 0;
FOR i = 0 TO V1;
j = 1;
k = 1;
IF (((A13[i] & 256) == 0) ||
((A13[i] & 4) == 0)) THEN GOTO L10;
V2 = A12[i];
j = A1[V2];
k = A5[V2];
IF ((V2 >= 23) && (V2 <= 27)) THEN
V96 = 95;
L10:
V88 = V88 + j;
V90 = V90 + k;
NEXT i;
V94 = 0;
FOR i = 0 TO V1;
j = 1;
k = 1;
IF (((A13[i] & 512) == 0) ||
((A13[i] & 4) == 0)) THEN GOTO L11;
V2 = A12[i];
j = A1[V2];
k = A5[V2];
L11:
V94 = V94 + j;
V95 = V95 + k;
NEXT i;
V22 = 0;
FOR i = 0 TO V1;
j = 1;
k = 1;
IF (((A13[i] & 2) == 0) ||
((A13[i] & 4) == 0)) THEN GOTO L12;
V2 = A12[i];
j = A1[V2];
k = A5[V2];
L12:
V22 = V22 + j;
V67 = V67 + k;
NEXT i;
l = 0;
FOR i = 4 TO 0 STEP -1;
FOR j = 0 TO V1;
IF (((A13[j] & 2) == 0) ||
((A13[j] & 4) == 0)) THEN GOTO L13;
V2 = A12[j];
FOR k = 0 TO (A1[V2] - 1);
IF ((k % 5) == i) THEN A27[l] = 1;
l = l + 1;
NEXT k;
GOTO L14;
L13:
l = l + 1;
L14:
NEXT j;
NEXT i;
V16 = 0;
FOR i = 0 TO V1;
j = 1;
IF (((A13[i] & 1) == 0) ||
((A13[i] & 4) == 0)) THEN GOTO L15;
V2 = A12[i];
j = A0[V2];
L15:
V16 = V16 + j;
NEXT i;
V87 = 0;
FOR i = 0 TO V1;
j = 1;
IF (((A13[i] & 256) == 0) ||
((A13[i] & 4) == 0)) THEN GOTO L16;
V2 = A12[i];
j = A0[V2];
L16:
V87 = V87 + j;
NEXT i;
V17 = 0;
FOR i = 0 TO V1;
j = 1;
IF (((A13[i] & 2) == 0) ||
((A13[i] & 4) == 0)) THEN GOTO L17;
V2 = A12[i];
j = A0[V2];
L17:
V17 = V17 + j;
NEXT i;
V18 = V17;
IF (V16 > V18) THEN V18 = V16;
IF (V87 > V18) THEN V18 = V87;
V19 = V18;
IF (V21 > V19) THEN V19 = V21;
IF (V88 > V19) THEN V19 = V88;
IF (V94 > V19) THEN V19 = V94;
FOR i = 0 TO (V19 - 1);
A30[i] = 1;
NEXT i;
V20 = 2 * 5 * 5 * V67;
IF ((2 * 5 * V66) > V20) THEN V20 = 2 * 5 * V66;
IF (V90 > V20) THEN V20 = V90;
IF (V95 > V20) THEN V20 = V95;
V33 = 0;
FOR i = 0 TO V1;
IF (((A13[i] & 2) == 0) ||
((A13[i] & 4) == 0)) THEN GOTO L18;
V2 = A12[i];
IF (V33 < A7[V2]) THEN
V33 = A7[V2];
L18:
NEXT i;
V12 = 0;
V13 = 0;
FOR i = 0 TO V1;
V12 = V12 + A25[i];
IF (A25[i] > V13) THEN V13 = A25[i];
NEXT i;
FOR i = 0 TO (V13 - 1);
A39[i] = 1;
NEXT i;
FOR i = 0 TO 4;
j = 10 * i;
A34[(j + 9)..j] = $016;
A35[(j + 9)..j] = $01A;
A36[(j + 9)..j] = $022;
A37[(j + 9)..j] = $026;
FOR k = 0 TO 2;
b = 0;
IF ((i & (1 << k)) != 0) THEN b = 1;
A34[j + k + 7] = b;
A35[j + k + 7] = b;
A36[j + k + 7] = b;
A37[j + k + 7] = b;
NEXT k;
NEXT i;
FOR i = 0 TO 6;
j = 10 * i;
A38[(j + 9)..j] = $02A;
FOR k = 0 TO 2;
b = 0;
IF ((i & (1 << k)) != 0) THEN b = 1;
A38[j + k + 7] = b;
NEXT k;
NEXT i;
FOR i = 0 TO V1;
A52[i] = 0;
IF (((A13[i] & 256) == 0) ||
((A13[i] & 4) == 0)) THEN GOTO L19;
V2 = A12[i];
A52[i] =
A5[V2] - (80 * A6[V2]);
L19:
NEXT i;
CALL L30;
IRSTOP IRPAUSE;
DRSTOP IDLE;
STATE IDLE;
IF (V101) THEN CALL L32;
IF (V42 != 0) THEN GOTO L20;
A18[9..0] = $071;
V4 = 1 | 2;
CALL L276;
WAIT 10000 USEC;
A18[9..0] = $332;
V4 = 256;
CALL L276;
WAIT 10000 USEC;
A18[9..0] = $044;
V4 = 512;
CALL L276;
WAIT 10000 USEC;
L20:
ENDPROC;
PROCEDURE L21 USES DEVICE_DATA, TEMP_DATA, L31, L276, L32, L35;
IF (V42 == 1) THEN GOTO L25;
CALL L31;
IF (!V76) THEN GOTO L22;
A18[9..0] = $003;
V4 = 32;
CALL L276;
L22:
A18[9..0] = $079;
V4 = 1 | 2;
CALL L276;
WAIT 10000 USEC;
A18[9..0] = $006;
V4 = 256;
CALL L276;
A18[9..0] = $04A;
V4 = 512;
CALL L276;
WAIT 10000 USEC;
L23:
IF (!V76) THEN GOTO L24;
V80 = 0;
CALL L32;
IF (V42 != 0) THEN V42 = 10;
IF (V42 != 0) THEN GOTO L25;
L24:
A18[9..0] = $3FF;
CALL L276;
IF (V105) THEN CALL L35;
L25:
IF (V42 == 0) THEN
PRINT "DONE";
IF (V42 == 1) THEN
PRINT "Invalid option combination specified";
IF (V42 == 6) THEN
PRINT "Unrecognized device";
IF (V42 == 7) THEN
PRINT "Device revision is not supported";
IF (V42 == 10) THEN
PRINT "Device programming failure";
IF (V42 == 9) THEN
PRINT "Device is not blank";
IF (V42 == 11) THEN
PRINT "Device verify failure";
IF (V42 == 10) THEN
PRINT "Device configuration failure";
IF (V42 == 4) THEN
PRINT "Unable to read USERCODE/UES from device #", V84 + 1;
ENDPROC;
PROCEDURE L26 USES DEVICE_DATA, TEMP_DATA;
j = 0;
FOR i = 0 TO V1;
IF ((j <= V3) &&
((A13[i] & V4) != 0) &&
((A13[i] & 4) != 0)) THEN j = i + 1;
NEXT i;
IF (j > V3) THEN GOTO L27;
V2 = 0;
V3 = 0;
GOTO L29;
L27:
V2 = A12[j - 1];
V3 = j;
IF ((V4 == 32) || (V4 == 256) ||
(V4 == 512))
THEN GOTO L29;
IF (V58) THEN GOTO L28;
A41[9..0] = $066;
GOTO L29;
L28:
A41[9..0] = $006;
L29:
IF (V4 == 1) THEN A40[9..0] = $00E;
IF (V4 == 1) THEN A44[9..0] = $012;
IF (V4 == 2) THEN A40[9..0] = $38E;
IF (V4 == 2) THEN A44[9..0] = $392;
ENDPROC;
PROCEDURE L30 USES DEVICE_DATA, TEMP_DATA, L31
, L272
;
CALL L31;
IF (V32 == 0) THEN CALL L272;
V10 = 0;
V14 = 0;
V15 = 0;
V89 = 0;
V49 = 1;
V34 = 0;
V51 = -1;
V52 = -1;
V45 = 0;
V29 = 1;
IF (V103) THEN V29 = 0;
IF (V102 && V74) THEN V29 = 2;
ENDPROC;
PROCEDURE L31 USES DEVICE_DATA, TEMP_DATA;
FOR i = 0 TO V1;
A17[i] = (A13[i] | A48[i]);
IF (((A17[i] & 4) != 0) &&
((A17[i] & (1 | 256 | 2 | 512)) != 0) &&
!V102 && !V100 && !V103 && !V108 &&
!V107 && !V106 && V101) THEN
A17[i] = A17[i] & ~4;
IF (((A17[i] & 4) != 0) &&
((A17[i] & 32) != 0) && !V101 &&
(V102 || V100 || V103 || V108 ||
V107 || V106)) THEN
A17[i] = A17[i] & ~4;
NEXT i;
ENDPROC;
PROCEDURE L32 USES DEVICE_DATA, TEMP_DATA, L31;
INTEGER V79 = 32 * V0;
BOOLEAN A46[V79];
INTEGER A47[8];
INTEGER V145;
CALL L31;
STATE IDLE;
V27 = 0;
FOR i = 0 TO V1;
A18[9..0] = A39[(A25[i] - 1)..0];
IF ((A17[i] & (1 | 2 | 256 | 512)) != 0) THEN
A18[9..0] = $059;
IF ((A17[i] & 32) != 0) THEN
A18[9..0] = $006;
A32[(V27 + (A25[i] - 1))..V27] = A18[(A25[i] - 1)..0];
V27 = V27 + A25[i];
NEXT i;
IRSCAN V27, A32[(V27 - 1)..0];
WAIT IRPAUSE, 5 USEC, IDLE;
WAIT 3 CYCLES;
DRSCAN V79, A46[(V79 - 1)..0], CAPTURE A46[(V79 - 1)..0];
V27 = 0;
FOR i = 0 TO V1;
IF (A46[V27] == 1) THEN GOTO L33;
IF (V80) THEN
PRINT "Device #", V0 - i, " unable to read IDCODE";
IF (V101 && ((A17[i] & 32) != 0) &&
((A17[i] & 4) != 0)) THEN V42 = 6;
GOTO L34;
L33:
FOR j = 0 TO 7;
A47[j] = 0;
FOR k = 0 TO 3;
IF (A46[V27 + (4 * j) + k]) THEN
A47[j] = A47[j] | (1 << k);
NEXT k;
A47[j] = A47[j] + 48;
IF (A47[j] >= 58) THEN A47[j] = A47[j] + 7;
NEXT j;
IF (V80) THEN
PRINT "Device #", V0 - i, " IDCODE is ",
CHR$(A47[7]), CHR$(A47[6]),
CHR$(A47[5]), CHR$(A47[4]),
CHR$(A47[3]), CHR$(A47[2]),
CHR$(A47[1]), CHR$(A47[0]);
IF (V101 && ((A17[i] & 32) != 0) &&
((A17[i] & 4) != 0) && (A47[0] != 68) &&
(A47[1] != 68)) THEN
V42 = 6;
V27 = V27 + 31;
L34:
V27 = V27 + 1;
NEXT i;
V27 = 0;
FOR i = 0 TO V1;
IF(A61[i] != 0) THEN GOTO L32_3;
IF(A46[V27] != 0) THEN
V42 = 6;
V27 = V27 + 1;
NEXT i;
GOTO L32_4;
L32_3:
V145 = 0;
FOR j = 0 TO 31;
IF(A46[(V27 + j)]) THEN
V145 = V145 + (1 << j);
NEXT j;
V27 = V27 + 32;
IF(A61[i] != V145) THEN
V42 = 6;
NEXT i;
L32_4:
ENDPROC;
PROCEDURE L35 USES DEVICE_DATA, TEMP_DATA, L31, L276, L39;
j = 0;
k = V1;
V84 = V84 - 1;
IF (V84 == -1) THEN GOTO L37;
IF ((V84 < 0) || (V84 > V1) ||
(((A17[V1 - V84] & 256) == 0) &&
((A17[V1 - V84] & 32) == 0) &&
((A17[V1 - V84] & 512) == 0))) THEN
V42 = 4;
IF (V42 != 0) THEN GOTO L38;
L36:
j = V84;
k = V84;
L37:
CALL L31;
V4 = 256;
A18[9..0] = $006;
CALL L276;
V4 = 512;
A18[9..0] = $04A;
CALL L276;
WAIT 10000 USEC;
A18[9..0] = $3FF;
CALL L276;
STATE IDLE;
FOR i = 0 TO (V19 - 1);
A30[i] = 1;
NEXT i;
FOR i = j TO k;
V84 = i;
PUSH i; PUSH j; PUSH k;
CALL L31;
V4 = 0;
IF (((A17[V1 - V84] & 256) != 0) &&
((A17[V1 - V84] & 4) != 0)) THEN
V4 = 256;
IF (((A17[V1 - V84] & 32) != 0) &&
((A17[V1 - V84] & 4) != 0)) THEN
V4 = 32;
IF (((A17[V1 - V84] & 512) != 0) &&
((A17[V1 - V84] & 4) != 0)) THEN
V4 = 512;
IF (V4 != 0) THEN CALL L39;
POP k; POP j; POP i;
NEXT i;
L38:
ENDPROC;
PROCEDURE L39 USES DEVICE_DATA, TEMP_DATA, L276, L40;
j = V1 - V84;
FOR i = 0 TO V1;
IF (((A17[i] & V4) != 0) &&
((A17[i] & 4) != 0) && (i != j)) THEN
A17[i] = A17[i] | 8;
NEXT i;
IF (V4 == 256) THEN
A18[9..0] = $007;
IF (V4 == 512) THEN
A18[9..0] = $079;
IF (V4 == 32) THEN
A18[9..0] = $007;
CALL L276;
DRSCAN 32 + j, A30[(32 + j - 1)..0], CAPTURE A31[(32 + j - 1)..0];
V86 = 0;
FOR i = 0 TO 31;
IF (A31[i + j]) THEN
V86 = V86 | (1 << i);
NEXT i;
CALL L40;
ENDPROC;
PROCEDURE L40 USES DEVICE_DATA, TEMP_DATA;
INTEGER A58[8];
EXPORT "DEVICE", V84 + 1;
EXPORT "USERCODE", V86;
FOR i = 0 TO 7;
V27 = 0;
A58[i] = V86 & 15;
IF (A58[i] > 9) THEN V27 = 7;
A58[i] = A58[i] + 48 + V27;
V86 = V86 >> 4;
NEXT i;
PRINT "Device #", V84 + 1, " USERCODE code is ",
CHR$(A58[7]), CHR$(A58[6]),
CHR$(A58[5]), CHR$(A58[4]),
CHR$(A58[3]), CHR$(A58[2]),
CHR$(A58[1]), CHR$(A58[0]);
ENDPROC;
PROCEDURE L41 USES DEVICE_DATA, TEMP_DATA, L31
, L45
;
j = 0;
k = V1;
V34 = 1;
V29 = 1;
V84 = V84 - 1;
IF (V84 == -1) THEN GOTO L43;
IF ((V84 < 0) || (V84 > V1) ||
(((A17[V1 - V84] & 1) == 0) &&
((A17[V1 - V84] & 2) == 0))) THEN
V42 = 4;
IF (V42 != 0) THEN GOTO L44;
L42:
j = V84;
k = V84;
L43:
FOR i = j TO k;
V84 = i;
PUSH i; PUSH j; PUSH k;
CALL L31;
V86 = 0;
IF (((A17[V1 - V84] & 1) != 0) &&
((A17[V1 - V84] & 4) != 0)) THEN
CALL L45;
POP k; POP j; POP i;
NEXT i;
L44:
ENDPROC;
PROCEDURE L45 USES DEVICE_DATA, TEMP_DATA, L276, L287, L214, L157, L50;
V4 = 1;
A18[9..0] = $016;
CALL L276;
DRSCAN V21, A26[(V21 - 1)..0];
A18[9..0] = $01A;
CALL L276;
DRSCAN V21, A26[(V21 - 1)..0];
j = V1 - V84;
FOR i = 0 TO V1;
IF (((A17[i] & 1) != 0) && ((A17[i] & 4) != 0) &&
(i != j)) THEN A17[i] = A17[i] | 8;
NEXT i;
CALL L287;
V2 = A12[j];
V27 = (V2 - 1) * 2;
i = A49[V27];
V48 = A49[V27 + 1];
V46 = A6[V2];
IF (V48 < (V46 >> 1)) THEN GOTO L46;
V48 = V46 - V48 - 1;
L46:
V27 = j + V24 + (16 * V48) + 12;
FOR V11 = i TO i + 15;
PUSH i;
PUSH V27;
CALL L214;
CALL L157;
POP V27;
POP i;
IF (A31[V27]) THEN
V86 = V86 | (1 << (V11 - i));
NEXT V11;
CALL L50;
ENDPROC;
PROCEDURE L50 USES DEVICE_DATA, TEMP_DATA;
INTEGER V85[8];
EXPORT "DEVICE", V84 + 1;
EXPORT "UES", V86;
FOR i = 0 TO 3;
V27 = 0;
V85[i] = V86 & 15;
IF (V85[i] > 9) THEN V27 = 7;
V85[i] = V85[i] + 48 + V27;
V86 = V86 >> 4;
NEXT i;
PRINT "Device #", V84 + 1, " UES code is ",
CHR$(V85[3]), CHR$(V85[2]),
CHR$(V85[1]), CHR$(V85[0]);
ENDPROC;
PROCEDURE L55 USES DEVICE_DATA, TEMP_DATA, L30, L309, L214, L240;
PRINT "programming 7K device(s)...";
CALL L30;
CALL L309;
FOR V11 = 1 TO 107;
CALL L214;
CALL L240;
NEXT V11;
V49 = 1;
FOR V11 = 109 TO (V32 - 1);
CALL L214;
CALL L240;
NEXT V11;
ENDPROC;
PROCEDURE L69 USES DEVICE_DATA, TEMP_DATA, L276;
A18[9..0] = A41[9..0];
CALL L276;
A18[9..0] = A40[9..0];
CALL L276;
A18[9..0] = $00A;
CALL L276;
IF (V58) THEN V56 = 1;
WAIT (V38 * 1000) USEC;
IF (V58) THEN GOTO L70;
IF (V82) THEN V83 = 20000;
A18[9..0] = $06A;
CALL L276;
V83 = 5;
A18[9..0] = $06E;
CALL L276;
L70:
A18[9..0] = A44[9..0];
CALL L276;
ENDPROC;
PROCEDURE L71 USES DEVICE_DATA, TEMP_DATA, L276;
A18[9..0] = A41[9..0];
CALL L276;
A18[9..0] = $00A;
CALL L276;
IF (V58) THEN V56 = 1;
WAIT (V37 * 100) USEC;
IF (V58) THEN GOTO L72;
A18[9..0] = $06E;
CALL L276;
L72:
A18[9..0] = A44[9..0];
CALL L276;
ENDPROC;
PROCEDURE L73 USES DEVICE_DATA, TEMP_DATA, L31;
CALL L31;
FOR i = 0 TO V1;
IF (((A17[i] & 1) == 0) || ((A17[i] & 4) == 0))
THEN GOTO L74;
IF (V82 && ((A48[i] & 128) == 0))
THEN A17[i] = A17[i] | 8;
IF (!V82 && ((A48[i] & 128) != 0))
THEN A17[i] = A17[i] | 8;
L74:
NEXT i;
IF (V82) THEN A41[9..0] = $066;
IF (!V82 && V58) THEN A41[9..0] = $006;
ENDPROC;
PROCEDURE L75 USES DEVICE_DATA, TEMP_DATA, L276, L73, L69, L214, L240;
A18[9..0] = $012;
CALL L276;
A18[9..0] = $01E;
CALL L276;
DRSCAN V16, A30[(V16 - 1)..0];
L76:
CALL L73;
b = V58;
IF (V82) THEN V58 = 0;
CALL L69;
V58 = b;
IF (!V82) THEN GOTO L77;
V82 = 0;
GOTO L76;
L77:
A18[9..0] = $01E;
CALL L276;
DRSCAN V16, A29[(V16 - 1)..0];
IF (V103) THEN GOTO L78;
V75 = 1;
FOR V11 = 102 TO 103;
CALL L214;
CALL L240;
NEXT V11;
V75 = 0;
L78:
ENDPROC;
PROCEDURE L82 USES DEVICE_DATA, TEMP_DATA, L30, L309, L299, L214, L157;
IF (V74) THEN PRINT "blank checking 7K device(s)...";
IF (!V74) THEN PRINT "verifying 7K device(s)...";
CALL L30;
CALL L309;
CALL L299;
FOR V11 = 1 TO 101;
CALL L214;
CALL L157;
IF (V42 != 0) THEN V11 = 101;
NEXT V11;
IF (V42 != 0) THEN GOTO L84;
IF (V74 && !V103) THEN GOTO L83;
FOR V11 = 102 TO 103;
CALL L214;
CALL L157;
IF (V42 != 0) THEN V11 = 103;
NEXT V11;
L83:
IF (V42 != 0) THEN GOTO L84;
FOR V11 = 104 TO 107;
CALL L214;
CALL L157;
IF (V42 != 0) THEN V11 = 107;
NEXT V11;
IF (V42 != 0) THEN GOTO L84;
V45 = 1;
FOR V11 = 109 TO 113;
CALL L214;
CALL L157;
IF (V42 != 0) THEN V11 = 113;
NEXT V11;
IF (V42 != 0) THEN GOTO L84;
V45 = 0;
FOR V11 = 114 TO (V32 - 1);
CALL L214;
CALL L157;
IF (V42 != 0) THEN V11 = V32 - 1;
NEXT V11;
L84:
ENDPROC;
PROCEDURE L96 USES DEVICE_DATA, TEMP_DATA
, L82
;
V74 = 1;
IF (V4 == 1) THEN CALL L82;
V74 = 0;
ENDPROC;
PROCEDURE L97 USES DEVICE_DATA, TEMP_DATA, L30, L214, L157, L287, L31;
CALL L30;
V37 = 100;
V38 = 100;
V29 = 1;
V11 = 0;
CALL L214;
V34 = 1;
IF (USE_FIXED_ALGORITHM) THEN GOTO L98;
CALL L157;
GOTO L99;
L98:
CALL L287;
FOR i = 0 TO V20 - 1;
A31[i] = 0;
A57[i] = 0;
NEXT i;
L99:
FOR i = V1 TO 0 STEP -1;
A48[i] = 0;
IF (((A17[i] & 1) == 0) ||
((A17[i] & 4) == 0)) THEN GOTO L109;
V68 = 0;
FOR j = 0 TO i;
V26 = 0;
V2 = A12[j];
IF (i == j) THEN GOTO L100;
V26 = 1;
IF (((A17[j] & 1) == 0) ||
((A17[j] & 4) == 0)) THEN GOTO L100;
V26 = A8[V2] >> 1;
L100:
V68 = V68 + V26;
NEXT j;
FOR j = 0 TO 14;
A16[j] = 0;
V46 = A6[V2];
V47 = j / (V46 << 1);
V48 = (j % (V46 << 1)) >> 1;
V69 = 0;
IF (V48 < (V46 >> 1)) THEN GOTO L101;
V69 = 1;
V48 = V46 - V48 - 1;
L101:
V27 = V68 + (((2 * V47) + V69) * V24) +
(16 * V48) + (8 * (~j & 1));
FOR k = 0 TO 7;
IF (USE_FIXED_ALGORITHM) THEN GOTO L102;
IF (A31[V27 + k]) THEN
A16[j] = A16[j] | (1 << k);
GOTO L103;
L102:
IF ((A54[j << 1] & (1 << k)) != 0) THEN
A31[V27 + k] = 1;
IF ((A54[(j << 1) + 1] & (1 << k)) != 0) THEN
A57[V27 + k] = 1;
L103:
NEXT k;
IF (USE_FIXED_ALGORITHM) THEN
A16[j] = A54[j << 1];
NEXT j;
IF (!USE_FIXED_ALGORITHM) THEN GOTO L104;
PUSH i;
CALL L157;
POP i;
IF (V39) THEN V42 = 6;
L104:
IF ((A16[0] != 65) ||
(A16[1] != 76) ||
(A16[2] != 84) ||
(A16[3] != 69) ||
(A16[4] != 82) ||
(A16[5] != 65))
THEN V42 = 6;
IF (V42 != 0) THEN GOTO L109;
V35 = ((A16[6] - 48) * 10) + (A16[7] - 48);
V36 = A16[9] & 31;
V27 = 5 * 3 * (V2 - 1);
V40 = 0;
V72 = 300;
V73 = 100;
IF ((V36 & 24) == 16) THEN
V40 = 1;
FOR j = 0 TO (5 - 1);
IF (V40 ||
(V35 != A11[V27]) ||
(V36 != A11[V27 + 1])) THEN
GOTO L108;
V40 = 1;
IF ((A11[V27 + 2] & 1) != 1) THEN
GOTO L105;
V72 = A14[A16[8] & 31];
V73 = A15[(A16[8] >> 5) & 7];
L105:
IF ((A11[V27 + 2] & 2) != 2) THEN
GOTO L106;
k = 14;
IF (V2 == 2) THEN k = 11;
V72 = A14[((A16[k] >> 3) & 31) + 32];
V73 = A15[(A16[k] & 7) + 8];
L106:
IF ((A11[V27 + 2] & 4) != 4) THEN
GOTO L107;
V72 = 500;
V73 = 500;
L107:
IF ((A11[V27 + 2] & 128) != 128) THEN
GOTO L108;
V82 = 1;
A48[i] = A48[i] | 128;
L108:
V27 = V27 + 3;
NEXT j;
V27 = 0;
IF ((V36 & 15) > 9) THEN V27 = 7;
PRINT "Device #", V0 - i ," Silicon ID is ",
CHR$(A16[0]), CHR$(A16[1]), CHR$(A16[2]), CHR$(A16[3]),
CHR$(A16[4]), CHR$(A16[5]), CHR$(A16[6]), CHR$(A16[7]),
"(", CHR$(((V36 >> 4) & 1) + 48),
CHR$((V36 & 15) + 48 + V27), ")"
;
IF (V72 > V37) THEN V37 = V72;
IF (V73 > V38) THEN V38 = V73;
IF (!V40) THEN V42 = 7;
L109:
NEXT i;
IF ((V42 == 0) && V82) THEN CALL L31;
ENDPROC;
PROCEDURE L153 USES DEVICE_DATA, TEMP_DATA, L276;
A18[9..0] = A19[9..0];
CALL L276;
WAIT 15 USEC;
A18[9..0] = A20[9..0];
CALL L276;
IF (V34 == 0) THEN GOTO L154;
IF (!USE_FIXED_ALGORITHM) THEN
DRSCAN V24, A29[(V24 - 1)..0], CAPTURE A31[V31..V30];
IF (USE_FIXED_ALGORITHM) THEN
DRSCAN V24, A29[(V24 - 1)..0], COMPARE A31[V31..V30],
A57[V31..V30], V40;
GOTO L156;
L154:
IF (V74) THEN GOTO L155;
DRSCAN V24, A29[(V24 - 1)..0], COMPARE A22[V31..V30],
A30[(V24 - 1)..0], V40;
GOTO L156;
L155:
DRSCAN V24, A29[(V24 - 1)..0],
COMPARE A30[(V24 - 1)..0], A30[(V24 - 1)..0],
V40;
L156:
IF (!V40) THEN V39 = 1;
ENDPROC;
PROCEDURE L157 USES DEVICE_DATA, TEMP_DATA, L276, L287, L153, L301, L297, L299;
V39 = 0;
V40 = 1;
IF (V10 > 89) THEN GOTO L158;
A18[9..0] = $016;
CALL L276;
DRSCAN V21, A26[(V21 - 1)..0];
A18[9..0] = $01A;
CALL L276;
DRSCAN V21, A26[(V21 - 1)..0];
L158:
IF (V29 == 0) THEN
A19[9..0] = $036;
IF (V29 == 1) THEN
A19[9..0] = $03A;
IF (V29 == 2) THEN
A19[9..0] = $032;
IF (V49) THEN CALL L287;
IF (V34 == 1) THEN GOTO L159;
V30 = V15;
V31 = V30 + (V24 - 1);
GOTO L160;
L159:
V30 = 0;
V31 = V24 - 1;
L160:
V81 = 0;
V28 = 4;
IF (V10 > 88) THEN V28 = 0;
FOR i = 0 TO V28;
IF (i == V28) THEN V81 = 1;
PUSH i;
A20[9..0] = $022;
CALL L153;
IF (V29 != 0) THEN GOTO L161;
A19[9..0] = $032;
CALL L153;
A19[9..0] = $036;
L161:
V30 = V30 + V24;
V31 = V31 + V24;
IF (!V45) THEN GOTO L162;
b = 0;
CALL L301;
GOTO L163;
L162:
IF (V10 != V51) THEN GOTO L163;
V44 = 1;
b = 0;
CALL L297;
L163:
A20[9..0] = $026;
CALL L153;
IF (V29 != 0) THEN GOTO L164;
A19[9..0] = $032;
CALL L153;
A19[9..0] = $036;
L164:
V30 = V30 + V24;
V31 = V31 + V24;
IF (!V45) THEN GOTO L165;
b = 1;
CALL L301;
GOTO L166;
L165:
IF (V10 != V51) THEN GOTO L166;
b = 1;
CALL L297;
V44 = 0;
CALL L299;
L166:
IF (V81) THEN GOTO L167;
A18[9..0] = $016;
CALL L276;
POP i;
DRSCAN V21, A26[(((i + 2) * V21) - 1)..((i + 1) * V21)];
PUSH i;
A18[9..0] = $01A;
CALL L276;
POP i;
DRSCAN V21, A26[(((i + 2) * V21) - 1)..((i + 1) * V21)];
PUSH i;
L167:
POP i;
NEXT i;
V15 = V30;
IF (!V39 || (V34 == 1)) THEN
GOTO L168;
IF (V74) THEN V42 = 9;
IF (!V74) THEN V42 = 11;
L168:
ENDPROC;
PROCEDURE L214 USES DEVICE_DATA, TEMP_DATA, L276, L309;
V30 = 0;
FOR j = 0 TO V1;
V31 = V30;
IF (((A17[j] & 1) == 0) ||
((A17[j] & 4) == 0) ||
((A17[j] & 8) != 0)) THEN GOTO L216;
V2 = A12[j];
IF (V11 >= (A0[V2] - 108)) THEN GOTO L215;
V31 = V31 + (A0[V2] - 1);
A28[V31 - V11] = 1;
IF (V11 < 108) THEN A28[(107 + V30) - V11] = 1;
GOTO L216;
L215:
IF ((A17[j] & 8) == 0) THEN V49 = 1;
A17[j] = A17[j] | 8;
L216:
V30 = V31 + 1;
NEXT j;
A18[9..0] = $01E;
CALL L276;
DRSCAN V30, A28[(V30 - 1)..0];
V30 = 0;
FOR j = 0 TO V1;
V31 = V30;
V2 = A12[j];
IF (((A17[j] & 1) == 0) ||
((A17[j] & 4) == 0) ||
((A17[j] & 8) != 0)) THEN GOTO L217;
V31 = V31 + (A0[V2] - 1);
A28[V31 - V11] = 0;
IF (V11 < 108) THEN A28[(107 + V30) - V11] = 0;
L217:
V30 = V31 + 1;
NEXT j;
IF (V49 && (V11 == V52)) THEN
CALL L309;
V10 = V11;
ENDPROC;
PROCEDURE L240 USES DEVICE_DATA, TEMP_DATA, L287, L276, L71;
V30 = V14;
IF (V49) THEN CALL L287;
V31 = V30 + (V23 - 1);
IF (V75) THEN GOTO L241;
A18[9..0] = $016;
CALL L276;
DRSCAN V23, A21[V31..V30];
V30 = V30 + V23;
V31 = V31 + V23;
A18[9..0] = $01A;
CALL L276;
DRSCAN V23, A21[V31..V30];
V30 = V30 + V23;
V31 = V31 + V23;
GOTO L242;
L241:
A18[9..0] = $016;
CALL L276;
DRSCAN V23, A29[(V23 - 1)..0];
A18[9..0] = $01A;
CALL L276;
DRSCAN V23, A29[(V23 - 1)..0];
L242:
CALL L71;
V14 = V30;
ENDPROC;
PROCEDURE L257 USES DEVICE_DATA, TEMP_DATA, L30, L287, L276
, L214, L240
;
IF (V107 == 0) THEN GOTO L271;
CALL L30;
FOR i = 0 TO V1;
IF (((A17[i] & V4) == 0) ||
((A17[i] & 4) == 0)) THEN GOTO L258;
IF (((V4 == 1) || (V4 == 256)) &&
((A17[i] & 16) == 0)) THEN
A17[i] = A17[i] | 8;
IF ((V4 == 2) &&
((A17[i] & 16) == 0)) THEN
A17[i] = A17[i] & ~4;
IF ((A17[i] & 16) != 0) THEN V75 = 1;
L258:
NEXT i;
IF (!V106 && (V75 == 0)) THEN
GOTO L271;
IF (V106 && (V75 == 0)) THEN
GOTO L263;
IF (V4 != 1) THEN GOTO L259;
V11 = 108;
CALL L214;
CALL L240;
GOTO L263;
L259:
V11 = 0;
L263:
IF (!V106) THEN GOTO L271;
IF (V4 == 1) THEN
A18[9..0] = $03E;
IF ((V4 == 2) || (V4 == 256)) THEN
A18[9..0] = $3FF;
CALL L276;
CALL L30;
V75 = 0;
FOR i = 0 TO V1;
IF (((A17[i] & V4) == 0) ||
((A17[i] & 4) == 0)) THEN GOTO L266;
IF ((A17[i] & 16) != 0) THEN GOTO L264;
A17[i] = A17[i] | 16;
GOTO L265;
L264:
A17[i] = A17[i] & ~16;
L265:
IF (((V4 == 1) || (V4 == 256)) &&
((A17[i] & 16) == 0)) THEN
A17[i] = A17[i] | 8;
IF ((V4 == 2) &&
((A17[i] & 16) == 0)) THEN
A17[i] = A17[i] & ~4;
IF ((A17[i] & 16) != 0) THEN V75 = 1;
L266:
NEXT i;
IF (V75 == 0) THEN GOTO L271;
IF (V4 != 1) THEN GOTO L267;
V11 = 108;
CALL L214;
CALL L240;
GOTO L271;
L267:
V11 = 0;
L271:
V75 = 0;
ENDPROC;
PROCEDURE L272 USES DEVICE_DATA, TEMP_DATA
, L273
;
IF (V4 == 1) THEN CALL L273;
ENDPROC;
PROCEDURE L273 USES DEVICE_DATA, TEMP_DATA;
FOR i = 0 TO V1;
V2 = A12[i];
IF (((A17[i] & V4) != 0) &&
((A17[i] & 4) != 0)) THEN
IF (A0[V2] > V32) THEN
V32 = A0[V2];
NEXT i;
V32 = V32 - 108;
ENDPROC;
PROCEDURE L276 USES DEVICE_DATA, TEMP_DATA;
V41 = 0;
V27 = 0;
IF (!V56) THEN GOTO L277;
V56 = 0;
V41 = 50;
IF (!USE_EXTEND_IR_DELAY_METHOD) THEN GOTO L277;
V27 = 50;
A32[49..0] = A30[49..0];
L277:
FOR i = 0 TO V1;
IF ((A17[i] & 8) != 0) THEN GOTO L278;
IF (((A17[i] & V4) != 0) &&
((A17[i] & 4) != 0)) THEN GOTO L280;
A33[(A25[i] - 1)..0] = A39[(A25[i] - 1)..0];
IF (((A17[i] & 1) != 0) &&
((A17[i] & 4) != 0)) THEN
A33[(A25[i] - 1)..0] = $03E;
A32[(V27 + (A25[i] - 1))..V27] = A33[(A25[i] - 1)..0];
V27 = V27 + A25[i];
GOTO L281;
L278:
IF ((A17[i] & 2) != 0) THEN GOTO L279;
A32[(V27 + 9)..V27] = $3FF;
IF ((A17[i] & 1) != 0) THEN
A32[(V27 + 9)..V27] = $03E;
V27 = V27 + 10;
GOTO L281;
L279:
IF (!V57) THEN GOTO L280;
A32[(V27 + 9)..V27] = $02A;
V27 = V27 + 10;
GOTO L281;
L280:
l = 0;
IF ((A18[20] == 1) && ((A17[i] & 64) != 0)) THEN
l = 10;
A32[(V27 + 9)..V27] = A18[(l + 9)..l];
V27 = V27 + 10;
L281:
NEXT i;
IF ((V41 == 0) || USE_EXTEND_IR_DELAY_METHOD) THEN
GOTO L282;
STATE DRPAUSE;
WAIT DRPAUSE, 5 USEC, DRPAUSE;
L282:
IRSCAN V27, A32[(V27 - 1)..0];
V57 = 0;
WAIT IRPAUSE, V83 USEC, IRPAUSE;
IF (V91) THEN GOTO L283;
STATE IDLE;
WAIT 3 CYCLES;
L283:
ENDPROC;
PROCEDURE L287 USES DEVICE_DATA, TEMP_DATA;
V23 = 0;
V24 = 0;
FOR i = 0 TO (V19 - 1);
A30[i] = 1;
NEXT i;
FOR i = 0 TO V1;
V25 = 1;
V26 = 1;
IF (((A17[i] & V4) == 0) ||
((A17[i] & 4) == 0) ||
((A17[i] & 8) != 0)) THEN GOTO L288;
V2 = A12[i];
V25 = A1[V2];
V26 = A5[V2];
GOTO L289;
L288:
IF (V74) THEN A30[V24] = 0;
L289:
V23 = V23 + V25;
V24 = V24 + V26;
NEXT i;
V49 = 0;
ENDPROC;
PROCEDURE L297 USES DEVICE_DATA, TEMP_DATA;
j = 0;
FOR i = 0 TO V1;
k = j;
IF (((A17[i] & 1) == 0) ||
((A17[i] & 4) == 0) ||
((A17[i] & 8) != 0)) THEN GOTO L298;
V2 = A12[i];
k = k + (A5[V2] - 1);
IF (V10 != A9[3 * (V2 - 1)]) THEN
GOTO L298;
V27 = (16 * (A6[V2] -
A9[(3 * (V2 - 1)) + 2])) -
A9[(3 * (V2 - 1)) + 1] - 1;
IF (V43) THEN A29[V27 + j] = b;
IF (V44) THEN A30[V27 + j] = b;
L298:
j = k + 1;
NEXT i;
ENDPROC;
PROCEDURE L299 USES DEVICE_DATA, TEMP_DATA;
j = 317;
IF (V51 == -1) THEN V51 = 0;
FOR i = 0 TO V1;
IF (((A17[i] & 1) == 0) ||
((A17[i] & 4) == 0)) THEN GOTO L300;
V2 = A12[i];
IF (V51 >= A9[3 * (V2 - 1)]) THEN
GOTO L300;
IF (j > (A9[3 * (V2 - 1)] - V51)) THEN
j = A9[3 * (V2 - 1)] - V51;
L300:
NEXT i;
IF (j != 317) THEN V51 = V51 + j;
IF (j == 317) THEN V51 = -1;
ENDPROC;
PROCEDURE L301 USES DEVICE_DATA, TEMP_DATA;
j = 0;
FOR i = 0 TO V1;
k = j;
IF (((A17[i] & 1) == 0) ||
((A17[i] & 4) == 0)) THEN GOTO L302;
V2 = A12[i];
k = k + (A5[V2] - 1);
V27 = (16 * (A6[V2] -
A10[(2 * (V2 - 1)) + 1])) -
A10[2 * (V2 - 1)] - 1;
A30[V27 + j] = b;
L302:
j = k + 1;
NEXT i;
ENDPROC;
PROCEDURE L309 USES DEVICE_DATA, TEMP_DATA;
j = 317;
FOR i = 0 TO V1;
IF (((A17[i] & 1) == 0) ||
((A17[i] & 4) == 0)) THEN GOTO L310;
V2 = A12[i];
IF (V52 >= (A0[V2] - 108)) THEN
GOTO L310;
IF (j > A0[V2]) THEN j = A0[V2];
L310:
NEXT i;
IF (j != 317) THEN V52 = j - 108;
IF (j == 317) THEN V52 = -1;
ENDPROC;
' END OF FILE
CRC A002;