diff --git a/PDP10/pdp10_mdfp.c b/PDP10/pdp10_mdfp.c index 623a4358..9a38ebc0 100644 --- a/PDP10/pdp10_mdfp.c +++ b/PDP10/pdp10_mdfp.c @@ -803,7 +803,7 @@ if (r->sign) { /* negate? */ if (fdvneg) { /* fdvr special? */ val[1] = ~val[1] & MMASK; /* 1's comp */ val[0] = ~val[0] & DMASK; - } + } else { /* 2's comp */ DMOVN (val); } diff --git a/PDP10/pdp10_tim.c b/PDP10/pdp10_tim.c index c3d8b79d..28970fc7 100644 --- a/PDP10/pdp10_tim.c +++ b/PDP10/pdp10_tim.c @@ -200,7 +200,7 @@ tim_ttg = tim_period; /* reload */ apr_flg = apr_flg | APRF_TIM; /* request interrupt */ if (Q_ITS) { /* ITS? */ if (pi_act == 0) - quant = (quant + TIM_ITS_QUANT) & DMASK; + quant = (quant + TIM_ITS_QUANT) & DMASK; if (TSTS (pcst)) { /* PC sampling? */ WriteP ((a10) pcst & AMASK, pager_PC); /* store sample */ pcst = AOB (pcst); /* add 1,,1 */ diff --git a/PDP11/pdp11_cr_dat.h b/PDP11/pdp11_cr_dat.h index d8342f58..f5f1b6bd 100644 --- a/PDP11/pdp11_cr_dat.h +++ b/PDP11/pdp11_cr_dat.h @@ -10,14 +10,14 @@ * * author: Douglas Jones, jones@cs.uiowa.edu * revisions: - * March 5, 1996 - * Feb 18, 1997 to add 026 and EBCDIC converstion tables - * Jan 10, 2005, (JAD) Added 'static const' to the array - * definitions. - * Jan 11, 2005, (JAD) Create the h2c_code array. - * Jan 14, 2005, (JAD) Added the special DEC code for 'end of deck' - * (12-11-0-1-6-7-8-9) to the o29_code array at position 26. (^Z). - * Should I add this to the other arrays? + * March 5, 1996 + * Feb 18, 1997 to add 026 and EBCDIC converstion tables + * Jan 10, 2005, (JAD) Added 'static const' to the array + * definitions. + * Jan 11, 2005, (JAD) Create the h2c_code array. + * Jan 14, 2005, (JAD) Added the special DEC code for 'end of deck' + * (12-11-0-1-6-7-8-9) to the o29_code array at position 26. (^Z). + * Should I add this to the other arrays? * Feb 24, 2007, (JGP) Added the DEC version of the 026 codepage and * fixed some DEC029 codes. */ @@ -28,618 +28,618 @@ translate lower case to upper case. As a result of this modification, inversion of this table should be done with care! */ static const int o29_code[] = { - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ - ERROR,ERROR,07417,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ - 00000,04006,00006,00102,02102,01042,04000,00022, /* !"#$%&' */ - 04022,02022,02042,04012,01102,02000,04102,01400, /* ()*+,-./ */ - 01000,00400,00200,00100,00040,00020,00010,00004, /* 01234567 */ - 00002,00001,00202,02012,04042,00012,01012,01006, /* 89:;<=>? */ - 00042,04400,04200,04100,04040,04020,04010,04004, /* @ABCDEFG */ - 04002,04001,02400,02200,02100,02040,02020,02010, /* HIJKLMNO */ - 02004,02002,02001,01200,01100,01040,01020,01010, /* PQRSTUVW */ - 01004,01002,01001,04202,02006,02202,04006,01022, /* XYZ[\]^_ */ - ERROR,04400,04200,04100,04040,04020,04010,04004, /* `abcdefg */ - 04002,04001,02400,02200,02100,02040,02020,02010, /* hijklmno */ - 02004,02002,02001,01200,01100,01040,01020,01010, /* pqrstuvw */ - 01004,01002,01001,04000,ERROR,02000,ERROR,ERROR /* xyz{|}~ */ - }; + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ + ERROR,ERROR,07417,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ + 00000,04006,00006,00102,02102,01042,04000,00022, /* !"#$%&' */ + 04022,02022,02042,04012,01102,02000,04102,01400, /* ()*+,-./ */ + 01000,00400,00200,00100,00040,00020,00010,00004, /* 01234567 */ + 00002,00001,00202,02012,04042,00012,01012,01006, /* 89:;<=>? */ + 00042,04400,04200,04100,04040,04020,04010,04004, /* @ABCDEFG */ + 04002,04001,02400,02200,02100,02040,02020,02010, /* HIJKLMNO */ + 02004,02002,02001,01200,01100,01040,01020,01010, /* PQRSTUVW */ + 01004,01002,01001,04202,02006,02202,04006,01022, /* XYZ[\]^_ */ + ERROR,04400,04200,04100,04040,04020,04010,04004, /* `abcdefg */ + 04002,04001,02400,02200,02100,02040,02020,02010, /* hijklmno */ + 02004,02002,02001,01200,01100,01040,01020,01010, /* pqrstuvw */ + 01004,01002,01001,04000,ERROR,02000,ERROR,ERROR /* xyz{|}~ */ + }; /* Bare bones 026 kepunch encodings */ static const int o26_ftn_code[] = { - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ - 00000,ERROR,ERROR,ERROR,02102,ERROR,ERROR,00042, /* !"#$%&' */ - 01042,04042,02042,04000,01102,02000,04102,01400, /* ()*+,-./ */ - 01000,00400,00200,00100,00040,00020,00010,00004, /* 01234567 */ - 00002,00001,ERROR,ERROR,ERROR,00102,ERROR,ERROR, /* 89:;<=>? */ - ERROR,04400,04200,04100,04040,04020,04010,04004, /* @ABCDEFG */ - 04002,04001,02400,02200,02100,02040,02020,02010, /* HIJKLMNO */ - 02004,02002,02001,01200,01100,01040,01020,01010, /* PQRSTUVW */ - 01004,01002,01001,ERROR,ERROR,ERROR,ERROR,ERROR, /* XYZ[\]^_ */ - ERROR,04400,04200,04100,04040,04020,04010,04004, /* `abcdefg */ - 04002,04001,02400,02200,02100,02040,02020,02010, /* hijklmno */ - 02004,02002,02001,01200,01100,01040,01020,01010, /* pqrstuvw */ - 01004,01002,01001,ERROR,ERROR,ERROR,ERROR,ERROR /* xyz{|}~ */ - }; + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ + 00000,ERROR,ERROR,ERROR,02102,ERROR,ERROR,00042, /* !"#$%&' */ + 01042,04042,02042,04000,01102,02000,04102,01400, /* ()*+,-./ */ + 01000,00400,00200,00100,00040,00020,00010,00004, /* 01234567 */ + 00002,00001,ERROR,ERROR,ERROR,00102,ERROR,ERROR, /* 89:;<=>? */ + ERROR,04400,04200,04100,04040,04020,04010,04004, /* @ABCDEFG */ + 04002,04001,02400,02200,02100,02040,02020,02010, /* HIJKLMNO */ + 02004,02002,02001,01200,01100,01040,01020,01010, /* PQRSTUVW */ + 01004,01002,01001,ERROR,ERROR,ERROR,ERROR,ERROR, /* XYZ[\]^_ */ + ERROR,04400,04200,04100,04040,04020,04010,04004, /* `abcdefg */ + 04002,04001,02400,02200,02100,02040,02020,02010, /* hijklmno */ + 02004,02002,02001,01200,01100,01040,01020,01010, /* pqrstuvw */ + 01004,01002,01001,ERROR,ERROR,ERROR,ERROR,ERROR /* xyz{|}~ */ + }; static const int o26_comm_code[] = { - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ - 00000,ERROR,ERROR,00102,02102,01042,04000,ERROR, /* !"#$%&' */ - ERROR,ERROR,02042,ERROR,01102,02000,04102,01400, /* ()*+,-./ */ - 01000,00400,00200,00100,00040,00020,00010,00004, /* 01234567 */ - 00002,00001,ERROR,ERROR,04042,ERROR,ERROR,ERROR, /* 89:;<=>? */ - 00042,04400,04200,04100,04040,04020,04010,04004, /* @ABCDEFG */ - 04002,04001,02400,02200,02100,02040,02020,02010, /* HIJKLMNO */ - 02004,02002,02001,01200,01100,01040,01020,01010, /* PQRSTUVW */ - 01004,01002,01001,ERROR,ERROR,ERROR,ERROR,ERROR, /* XYZ[\]^_ */ - ERROR,04400,04200,04100,04040,04020,04010,04004, /* `abcdefg */ - 04002,04001,02400,02200,02100,02040,02020,02010, /* hijklmno */ - 02004,02002,02001,01200,01100,01040,01020,01010, /* pqrstuvw */ - 01004,01002,01001,ERROR,ERROR,ERROR,ERROR,ERROR /* xyz{|}~ */ - }; + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ + 00000,ERROR,ERROR,00102,02102,01042,04000,ERROR, /* !"#$%&' */ + ERROR,ERROR,02042,ERROR,01102,02000,04102,01400, /* ()*+,-./ */ + 01000,00400,00200,00100,00040,00020,00010,00004, /* 01234567 */ + 00002,00001,ERROR,ERROR,04042,ERROR,ERROR,ERROR, /* 89:;<=>? */ + 00042,04400,04200,04100,04040,04020,04010,04004, /* @ABCDEFG */ + 04002,04001,02400,02200,02100,02040,02020,02010, /* HIJKLMNO */ + 02004,02002,02001,01200,01100,01040,01020,01010, /* PQRSTUVW */ + 01004,01002,01001,ERROR,ERROR,ERROR,ERROR,ERROR, /* XYZ[\]^_ */ + ERROR,04400,04200,04100,04040,04020,04010,04004, /* `abcdefg */ + 04002,04001,02400,02200,02100,02040,02020,02010, /* hijklmno */ + 02004,02002,02001,01200,01100,01040,01020,01010, /* pqrstuvw */ + 01004,01002,01001,ERROR,ERROR,ERROR,ERROR,ERROR /* xyz{|}~ */ + }; /* 026DEC translation, according to RSX-11M-PLUS and Micro/RSX */ /* I/O Drivers Reference manual - AA-JS11A-TC */ static const int o26_dec_code[] = { - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ - ERROR,ERROR,07417,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ - 00000,04006,01022,01102,02102,01006,02006,00012, /* !"#$%&' */ - 01042,04042,02042,04000,01102,02000,04102,01400, /* ()*+,-./ */ - 01000,00400,00200,00100,00040,00020,00010,00004, /* 01234567 */ - 00002,00001,02202,01202,04012,00102,02012,04202, /* 89:;<=>? */ - 00042,04400,04200,04100,04040,04020,04010,04004, /* @ABCDEFG */ - 04002,04001,02400,02200,02100,02040,02020,02010, /* HIJKLMNO */ - 02004,02002,02001,01200,01100,01040,01020,01010, /* PQRSTUVW */ - 01004,01002,01001,02022,00006,04022,00022,00202, /* XYZ[\]^_ */ - ERROR,04400,04200,04100,04040,04020,04010,04004, /* `abcdefg */ - 04002,04001,02400,02200,02100,02040,02020,02010, /* hijklmno */ - 02004,02002,02001,01200,01100,01040,01020,01010, /* pqrstuvw */ - 01004,01002,01001,04000,ERROR,02000,ERROR,ERROR /* xyz{|}~ */ - }; + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ + ERROR,ERROR,07417,ERROR,ERROR,ERROR,ERROR,ERROR, /* chars */ + 00000,04006,01022,01102,02102,01006,02006,00012, /* !"#$%&' */ + 01042,04042,02042,04000,01102,02000,04102,01400, /* ()*+,-./ */ + 01000,00400,00200,00100,00040,00020,00010,00004, /* 01234567 */ + 00002,00001,02202,01202,04012,00102,02012,04202, /* 89:;<=>? */ + 00042,04400,04200,04100,04040,04020,04010,04004, /* @ABCDEFG */ + 04002,04001,02400,02200,02100,02040,02020,02010, /* HIJKLMNO */ + 02004,02002,02001,01200,01100,01040,01020,01010, /* PQRSTUVW */ + 01004,01002,01001,02022,00006,04022,00022,00202, /* XYZ[\]^_ */ + ERROR,04400,04200,04100,04040,04020,04010,04004, /* `abcdefg */ + 04002,04001,02400,02200,02100,02040,02020,02010, /* hijklmno */ + 02004,02002,02001,01200,01100,01040,01020,01010, /* pqrstuvw */ + 01004,01002,01001,04000,ERROR,02000,ERROR,ERROR /* xyz{|}~ */ + }; /* FULL EBCDIC, from Appendix C of System 360 Programming by Alex Thomas, 1977, Reinhart Press, San Francisco. Codes not in that table have been left compatable with DEC's 029 table. Some control codes have been left out */ static const int EBCDIC_code[] = { - 05403,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ - 02011,04021,01021,ERROR,04041,02021,ERROR,ERROR, /* chars */ - ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ - ERROR,ERROR,ERROR,ERROR,01201,ERROR,ERROR,ERROR, /* chars */ - 00000,02202,00006,00102,02102,01042,04000,00022, /* !"#$%&' */ - 04022,02022,02042,04012,01102,02000,04102,01400, /* ()*+,-./ */ - 01000,00400,00200,00100,00040,00020,00010,00004, /* 01234567 */ - 00002,00001,00202,02012,04042,00012,01012,01006, /* 89:;<=>? */ - 00042,04400,04200,04100,04040,04020,04010,04004, /* @ABCDEFG */ - 04002,04001,02400,02200,02100,02040,02020,02010, /* HIJKLMNO */ - 02004,02002,02001,01200,01100,01040,01020,01010, /* PQRSTUVW */ - 01004,01002,01001,04202,02006,01202,04006,01022, /* XYZ[\]^_ */ - ERROR,05400,05200,05100,05040,05020,05010,05004, /* `abcdefg */ - 05002,05001,06400,06200,06100,06040,06020,06010, /* hijklmno */ - 06004,06002,06001,03200,03100,03040,03020,03010, /* pqrstuvw */ - 03004,03002,03001,ERROR,ERROR,ERROR,ERROR,ERROR /* xyz{|}~ */ - }; + 05403,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ + 02011,04021,01021,ERROR,04041,02021,ERROR,ERROR, /* chars */ + ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR,ERROR, /* control */ + ERROR,ERROR,ERROR,ERROR,01201,ERROR,ERROR,ERROR, /* chars */ + 00000,02202,00006,00102,02102,01042,04000,00022, /* !"#$%&' */ + 04022,02022,02042,04012,01102,02000,04102,01400, /* ()*+,-./ */ + 01000,00400,00200,00100,00040,00020,00010,00004, /* 01234567 */ + 00002,00001,00202,02012,04042,00012,01012,01006, /* 89:;<=>? */ + 00042,04400,04200,04100,04040,04020,04010,04004, /* @ABCDEFG */ + 04002,04001,02400,02200,02100,02040,02020,02010, /* HIJKLMNO */ + 02004,02002,02001,01200,01100,01040,01020,01010, /* PQRSTUVW */ + 01004,01002,01001,04202,02006,01202,04006,01022, /* XYZ[\]^_ */ + ERROR,05400,05200,05100,05040,05020,05010,05004, /* `abcdefg */ + 05002,05001,06400,06200,06100,06040,06020,06010, /* hijklmno */ + 06004,06002,06001,03200,03100,03040,03020,03010, /* pqrstuvw */ + 03004,03002,03001,ERROR,ERROR,ERROR,ERROR,ERROR /* xyz{|}~ */ + }; static const int h2c_code[4096] = { - 0000, 0020, 0010, 0030, 0007, 0027, 0017, 0037, - 0006, 0026, 0016, 0036, 0007, 0027, 0017, 0037, - 0005, 0025, 0015, 0035, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0004, 0024, 0014, 0034, 0007, 0027, 0017, 0037, - 0006, 0026, 0016, 0036, 0007, 0027, 0017, 0037, - 0005, 0025, 0015, 0035, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0003, 0023, 0013, 0033, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0002, 0022, 0012, 0032, 0007, 0027, 0017, 0037, - 0006, 0026, 0016, 0036, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0006, 0026, 0016, 0036, 0007, 0027, 0017, 0037, - 0006, 0026, 0016, 0036, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0003, 0023, 0013, 0033, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0001, 0021, 0011, 0031, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0005, 0025, 0015, 0035, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0005, 0025, 0015, 0035, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0005, 0025, 0015, 0035, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0003, 0023, 0013, 0033, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0003, 0023, 0013, 0033, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0003, 0023, 0013, 0033, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, - 0040, 0060, 0050, 0070, 0047, 0067, 0057, 0077, - 0046, 0066, 0056, 0076, 0047, 0067, 0057, 0077, - 0045, 0065, 0055, 0075, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0044, 0064, 0054, 0074, 0047, 0067, 0057, 0077, - 0046, 0066, 0056, 0076, 0047, 0067, 0057, 0077, - 0045, 0065, 0055, 0075, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0043, 0063, 0053, 0073, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0042, 0062, 0052, 0072, 0047, 0067, 0057, 0077, - 0046, 0066, 0056, 0076, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0046, 0066, 0056, 0076, 0047, 0067, 0057, 0077, - 0046, 0066, 0056, 0076, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0043, 0063, 0053, 0073, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0041, 0061, 0051, 0071, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0045, 0065, 0055, 0075, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0045, 0065, 0055, 0075, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0045, 0065, 0055, 0075, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0043, 0063, 0053, 0073, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0043, 0063, 0053, 0073, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0043, 0063, 0053, 0073, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, - 0100, 0120, 0110, 0130, 0107, 0127, 0117, 0137, - 0106, 0126, 0116, 0136, 0107, 0127, 0117, 0137, - 0105, 0125, 0115, 0135, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0104, 0124, 0114, 0134, 0107, 0127, 0117, 0137, - 0106, 0126, 0116, 0136, 0107, 0127, 0117, 0137, - 0105, 0125, 0115, 0135, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0103, 0123, 0113, 0133, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0102, 0122, 0112, 0132, 0107, 0127, 0117, 0137, - 0106, 0126, 0116, 0136, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0106, 0126, 0116, 0136, 0107, 0127, 0117, 0137, - 0106, 0126, 0116, 0136, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0103, 0123, 0113, 0133, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0101, 0121, 0111, 0131, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0105, 0125, 0115, 0135, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0105, 0125, 0115, 0135, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0105, 0125, 0115, 0135, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0103, 0123, 0113, 0133, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0103, 0123, 0113, 0133, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0103, 0123, 0113, 0133, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, - 0140, 0160, 0150, 0170, 0147, 0167, 0157, 0177, - 0146, 0166, 0156, 0176, 0147, 0167, 0157, 0177, - 0145, 0165, 0155, 0175, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0144, 0164, 0154, 0174, 0147, 0167, 0157, 0177, - 0146, 0166, 0156, 0176, 0147, 0167, 0157, 0177, - 0145, 0165, 0155, 0175, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0143, 0163, 0153, 0173, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0142, 0162, 0152, 0172, 0147, 0167, 0157, 0177, - 0146, 0166, 0156, 0176, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0146, 0166, 0156, 0176, 0147, 0167, 0157, 0177, - 0146, 0166, 0156, 0176, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0143, 0163, 0153, 0173, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0141, 0161, 0151, 0171, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0145, 0165, 0155, 0175, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0145, 0165, 0155, 0175, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0145, 0165, 0155, 0175, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0143, 0163, 0153, 0173, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0143, 0163, 0153, 0173, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0143, 0163, 0153, 0173, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, - 0200, 0220, 0210, 0230, 0207, 0227, 0217, 0237, - 0206, 0226, 0216, 0236, 0207, 0227, 0217, 0237, - 0205, 0225, 0215, 0235, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0204, 0224, 0214, 0234, 0207, 0227, 0217, 0237, - 0206, 0226, 0216, 0236, 0207, 0227, 0217, 0237, - 0205, 0225, 0215, 0235, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0203, 0223, 0213, 0233, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0202, 0222, 0212, 0232, 0207, 0227, 0217, 0237, - 0206, 0226, 0216, 0236, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0206, 0226, 0216, 0236, 0207, 0227, 0217, 0237, - 0206, 0226, 0216, 0236, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0203, 0223, 0213, 0233, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0201, 0221, 0211, 0231, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0205, 0225, 0215, 0235, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0205, 0225, 0215, 0235, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0205, 0225, 0215, 0235, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0203, 0223, 0213, 0233, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0203, 0223, 0213, 0233, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0203, 0223, 0213, 0233, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, - 0240, 0260, 0250, 0270, 0247, 0267, 0257, 0277, - 0246, 0266, 0256, 0276, 0247, 0267, 0257, 0277, - 0245, 0265, 0255, 0275, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0244, 0264, 0254, 0274, 0247, 0267, 0257, 0277, - 0246, 0266, 0256, 0276, 0247, 0267, 0257, 0277, - 0245, 0265, 0255, 0275, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0243, 0263, 0253, 0273, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0242, 0262, 0252, 0272, 0247, 0267, 0257, 0277, - 0246, 0266, 0256, 0276, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0246, 0266, 0256, 0276, 0247, 0267, 0257, 0277, - 0246, 0266, 0256, 0276, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0243, 0263, 0253, 0273, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0241, 0261, 0251, 0271, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0245, 0265, 0255, 0275, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0245, 0265, 0255, 0275, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0245, 0265, 0255, 0275, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0243, 0263, 0253, 0273, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0243, 0263, 0253, 0273, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0243, 0263, 0253, 0273, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, - 0300, 0320, 0310, 0330, 0307, 0327, 0317, 0337, - 0306, 0326, 0316, 0336, 0307, 0327, 0317, 0337, - 0305, 0325, 0315, 0335, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0304, 0324, 0314, 0334, 0307, 0327, 0317, 0337, - 0306, 0326, 0316, 0336, 0307, 0327, 0317, 0337, - 0305, 0325, 0315, 0335, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0303, 0323, 0313, 0333, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0302, 0322, 0312, 0332, 0307, 0327, 0317, 0337, - 0306, 0326, 0316, 0336, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0306, 0326, 0316, 0336, 0307, 0327, 0317, 0337, - 0306, 0326, 0316, 0336, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0303, 0323, 0313, 0333, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0301, 0321, 0311, 0331, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0305, 0325, 0315, 0335, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0305, 0325, 0315, 0335, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0305, 0325, 0315, 0335, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0303, 0323, 0313, 0333, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0303, 0323, 0313, 0333, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0303, 0323, 0313, 0333, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, - 0340, 0360, 0350, 0370, 0347, 0367, 0357, 0377, - 0346, 0366, 0356, 0376, 0347, 0367, 0357, 0377, - 0345, 0365, 0355, 0375, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0344, 0364, 0354, 0374, 0347, 0367, 0357, 0377, - 0346, 0366, 0356, 0376, 0347, 0367, 0357, 0377, - 0345, 0365, 0355, 0375, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0343, 0363, 0353, 0373, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0342, 0362, 0352, 0372, 0347, 0367, 0357, 0377, - 0346, 0366, 0356, 0376, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0346, 0366, 0356, 0376, 0347, 0367, 0357, 0377, - 0346, 0366, 0356, 0376, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0343, 0363, 0353, 0373, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0341, 0361, 0351, 0371, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0345, 0365, 0355, 0375, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0345, 0365, 0355, 0375, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0345, 0365, 0355, 0375, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0343, 0363, 0353, 0373, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0343, 0363, 0353, 0373, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0343, 0363, 0353, 0373, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, - 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0000, 0020, 0010, 0030, 0007, 0027, 0017, 0037, + 0006, 0026, 0016, 0036, 0007, 0027, 0017, 0037, + 0005, 0025, 0015, 0035, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0004, 0024, 0014, 0034, 0007, 0027, 0017, 0037, + 0006, 0026, 0016, 0036, 0007, 0027, 0017, 0037, + 0005, 0025, 0015, 0035, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0003, 0023, 0013, 0033, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0002, 0022, 0012, 0032, 0007, 0027, 0017, 0037, + 0006, 0026, 0016, 0036, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0006, 0026, 0016, 0036, 0007, 0027, 0017, 0037, + 0006, 0026, 0016, 0036, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0003, 0023, 0013, 0033, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0001, 0021, 0011, 0031, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0005, 0025, 0015, 0035, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0005, 0025, 0015, 0035, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0005, 0025, 0015, 0035, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0003, 0023, 0013, 0033, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0003, 0023, 0013, 0033, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0003, 0023, 0013, 0033, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0007, 0027, 0017, 0037, 0007, 0027, 0017, 0037, + 0040, 0060, 0050, 0070, 0047, 0067, 0057, 0077, + 0046, 0066, 0056, 0076, 0047, 0067, 0057, 0077, + 0045, 0065, 0055, 0075, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0044, 0064, 0054, 0074, 0047, 0067, 0057, 0077, + 0046, 0066, 0056, 0076, 0047, 0067, 0057, 0077, + 0045, 0065, 0055, 0075, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0043, 0063, 0053, 0073, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0042, 0062, 0052, 0072, 0047, 0067, 0057, 0077, + 0046, 0066, 0056, 0076, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0046, 0066, 0056, 0076, 0047, 0067, 0057, 0077, + 0046, 0066, 0056, 0076, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0043, 0063, 0053, 0073, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0041, 0061, 0051, 0071, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0045, 0065, 0055, 0075, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0045, 0065, 0055, 0075, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0045, 0065, 0055, 0075, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0043, 0063, 0053, 0073, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0043, 0063, 0053, 0073, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0043, 0063, 0053, 0073, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0047, 0067, 0057, 0077, 0047, 0067, 0057, 0077, + 0100, 0120, 0110, 0130, 0107, 0127, 0117, 0137, + 0106, 0126, 0116, 0136, 0107, 0127, 0117, 0137, + 0105, 0125, 0115, 0135, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0104, 0124, 0114, 0134, 0107, 0127, 0117, 0137, + 0106, 0126, 0116, 0136, 0107, 0127, 0117, 0137, + 0105, 0125, 0115, 0135, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0103, 0123, 0113, 0133, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0102, 0122, 0112, 0132, 0107, 0127, 0117, 0137, + 0106, 0126, 0116, 0136, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0106, 0126, 0116, 0136, 0107, 0127, 0117, 0137, + 0106, 0126, 0116, 0136, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0103, 0123, 0113, 0133, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0101, 0121, 0111, 0131, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0105, 0125, 0115, 0135, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0105, 0125, 0115, 0135, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0105, 0125, 0115, 0135, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0103, 0123, 0113, 0133, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0103, 0123, 0113, 0133, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0103, 0123, 0113, 0133, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0107, 0127, 0117, 0137, 0107, 0127, 0117, 0137, + 0140, 0160, 0150, 0170, 0147, 0167, 0157, 0177, + 0146, 0166, 0156, 0176, 0147, 0167, 0157, 0177, + 0145, 0165, 0155, 0175, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0144, 0164, 0154, 0174, 0147, 0167, 0157, 0177, + 0146, 0166, 0156, 0176, 0147, 0167, 0157, 0177, + 0145, 0165, 0155, 0175, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0143, 0163, 0153, 0173, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0142, 0162, 0152, 0172, 0147, 0167, 0157, 0177, + 0146, 0166, 0156, 0176, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0146, 0166, 0156, 0176, 0147, 0167, 0157, 0177, + 0146, 0166, 0156, 0176, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0143, 0163, 0153, 0173, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0141, 0161, 0151, 0171, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0145, 0165, 0155, 0175, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0145, 0165, 0155, 0175, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0145, 0165, 0155, 0175, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0143, 0163, 0153, 0173, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0143, 0163, 0153, 0173, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0143, 0163, 0153, 0173, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0147, 0167, 0157, 0177, 0147, 0167, 0157, 0177, + 0200, 0220, 0210, 0230, 0207, 0227, 0217, 0237, + 0206, 0226, 0216, 0236, 0207, 0227, 0217, 0237, + 0205, 0225, 0215, 0235, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0204, 0224, 0214, 0234, 0207, 0227, 0217, 0237, + 0206, 0226, 0216, 0236, 0207, 0227, 0217, 0237, + 0205, 0225, 0215, 0235, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0203, 0223, 0213, 0233, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0202, 0222, 0212, 0232, 0207, 0227, 0217, 0237, + 0206, 0226, 0216, 0236, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0206, 0226, 0216, 0236, 0207, 0227, 0217, 0237, + 0206, 0226, 0216, 0236, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0203, 0223, 0213, 0233, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0201, 0221, 0211, 0231, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0205, 0225, 0215, 0235, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0205, 0225, 0215, 0235, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0205, 0225, 0215, 0235, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0203, 0223, 0213, 0233, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0203, 0223, 0213, 0233, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0203, 0223, 0213, 0233, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0207, 0227, 0217, 0237, 0207, 0227, 0217, 0237, + 0240, 0260, 0250, 0270, 0247, 0267, 0257, 0277, + 0246, 0266, 0256, 0276, 0247, 0267, 0257, 0277, + 0245, 0265, 0255, 0275, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0244, 0264, 0254, 0274, 0247, 0267, 0257, 0277, + 0246, 0266, 0256, 0276, 0247, 0267, 0257, 0277, + 0245, 0265, 0255, 0275, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0243, 0263, 0253, 0273, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0242, 0262, 0252, 0272, 0247, 0267, 0257, 0277, + 0246, 0266, 0256, 0276, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0246, 0266, 0256, 0276, 0247, 0267, 0257, 0277, + 0246, 0266, 0256, 0276, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0243, 0263, 0253, 0273, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0241, 0261, 0251, 0271, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0245, 0265, 0255, 0275, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0245, 0265, 0255, 0275, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0245, 0265, 0255, 0275, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0243, 0263, 0253, 0273, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0243, 0263, 0253, 0273, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0243, 0263, 0253, 0273, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0247, 0267, 0257, 0277, 0247, 0267, 0257, 0277, + 0300, 0320, 0310, 0330, 0307, 0327, 0317, 0337, + 0306, 0326, 0316, 0336, 0307, 0327, 0317, 0337, + 0305, 0325, 0315, 0335, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0304, 0324, 0314, 0334, 0307, 0327, 0317, 0337, + 0306, 0326, 0316, 0336, 0307, 0327, 0317, 0337, + 0305, 0325, 0315, 0335, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0303, 0323, 0313, 0333, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0302, 0322, 0312, 0332, 0307, 0327, 0317, 0337, + 0306, 0326, 0316, 0336, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0306, 0326, 0316, 0336, 0307, 0327, 0317, 0337, + 0306, 0326, 0316, 0336, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0303, 0323, 0313, 0333, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0301, 0321, 0311, 0331, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0305, 0325, 0315, 0335, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0305, 0325, 0315, 0335, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0305, 0325, 0315, 0335, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0303, 0323, 0313, 0333, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0303, 0323, 0313, 0333, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0303, 0323, 0313, 0333, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0307, 0327, 0317, 0337, 0307, 0327, 0317, 0337, + 0340, 0360, 0350, 0370, 0347, 0367, 0357, 0377, + 0346, 0366, 0356, 0376, 0347, 0367, 0357, 0377, + 0345, 0365, 0355, 0375, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0344, 0364, 0354, 0374, 0347, 0367, 0357, 0377, + 0346, 0366, 0356, 0376, 0347, 0367, 0357, 0377, + 0345, 0365, 0355, 0375, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0343, 0363, 0353, 0373, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0342, 0362, 0352, 0372, 0347, 0367, 0357, 0377, + 0346, 0366, 0356, 0376, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0346, 0366, 0356, 0376, 0347, 0367, 0357, 0377, + 0346, 0366, 0356, 0376, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0343, 0363, 0353, 0373, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0341, 0361, 0351, 0371, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0345, 0365, 0355, 0375, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0345, 0365, 0355, 0375, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0345, 0365, 0355, 0375, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0343, 0363, 0353, 0373, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0343, 0363, 0353, 0373, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0343, 0363, 0353, 0373, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, + 0347, 0367, 0357, 0377, 0347, 0367, 0357, 0377, }; diff --git a/PDP11/pdp11_dc.c b/PDP11/pdp11_dc.c index 222ef3c0..e6b180fd 100644 --- a/PDP11/pdp11_dc.c +++ b/PDP11/pdp11_dc.c @@ -278,7 +278,7 @@ if (ln > DCX_MAXMUX) /* validate line number switch ((PA >> 1) & 03) { /* decode PA<2:1> */ case 00: /* dci csr */ - if (dci_csr[ln] & DCICSR_ALLERR) + if (dci_csr[ln] & DCICSR_ALLERR) dci_csr[ln] |= DCICSR_ERR; else dci_csr[ln] &= ~DCICSR_ERR; *data = dci_csr[ln] & DCICSR_RD; diff --git a/PDP11/pdp11_dmc.c b/PDP11/pdp11_dmc.c index ae74ad53..d01cdf56 100644 --- a/PDP11/pdp11_dmc.c +++ b/PDP11/pdp11_dmc.c @@ -906,7 +906,7 @@ t_stat dmc_help_attach (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cp fprintf (st, "The communication line performs input and output through a TCP session\n"); fprintf (st, "connected to a user-specified port. The ATTACH command specifies the"); fprintf (st, "port to be used:\n\n"); - fprintf (st, " sim> ATTACH %s {interface:}port set up listening port\n\n", dptr->name); + fprintf (st, " sim> ATTACH %s {interface:}port set up listening port\n\n", dptr->name); fprintf (st, "where port is a decimal number between 1 and 65535 that is not being used for\n"); fprintf (st, "other TCP/IP activities. An ATTACH is required even if in PRIMARY mode. \n\n"); return SCPE_OK; diff --git a/PDP11/pdp11_dz.c b/PDP11/pdp11_dz.c index 50a1e4b3..c1aeeb3f 100644 --- a/PDP11/pdp11_dz.c +++ b/PDP11/pdp11_dz.c @@ -897,15 +897,15 @@ fprintf (st, "%s Terminal Multiplexer (DZ)\n\n", devtype); fprintf (st, "The %s is a %d line terminal multiplexor. Up to %d %s's (%d lines) are\n", devtype, DZ_LINES, MAX_DZ_MUXES, devtype, DZ_LINES*MAX_DZ_MUXES); fprintf (st, "supported. The default number of lines is %d. The number of lines can\n", DZ_LINES*DZ_MUXES); fprintf (st, "be changed with the command\n\n"); -fprintf (st, " sim> SET %s LINES=n set line count to n\n\n", dptr->name); +fprintf (st, " sim> SET %s LINES=n set line count to n\n\n", dptr->name); fprintf (st, "The line count must be a multiple of %d, with a maximum of %d.\n\n", DZ_LINES, DZ_LINES*MAX_DZ_MUXES); fprintf (st, "The %s supports three character processing modes, 7P, 7B, and 8B:\n\n", devtype); -fprintf (st, " mode input characters output characters\n"); -fprintf (st, " =============================================\n"); -fprintf (st, " 7P high-order bit cleared high-order bit cleared,\n"); -fprintf (st, " non-printing characters suppressed\n"); -fprintf (st, " 7B high-order bit cleared high-order bit cleared\n"); -fprintf (st, " 8B no changes no changes\n\n"); +fprintf (st, " mode input characters output characters\n"); +fprintf (st, " =============================================\n"); +fprintf (st, " 7P high-order bit cleared high-order bit cleared,\n"); +fprintf (st, " non-printing characters suppressed\n"); +fprintf (st, " 7B high-order bit cleared high-order bit cleared\n"); +fprintf (st, " 8B no changes no changes\n\n"); fprintf (st, "The default is 8B.\n\n"); fprintf (st, "The %s supports logging on a per-line basis. The command\n\n", devtype); fprintf (st, " sim> SET %s LOG=n=filename\n\n", dptr->name); @@ -921,9 +921,9 @@ fprintf (st, "are Telnet connections. The connection remains open until disconn fprintf (st, "simulated program, the Telnet client, a SET %s DISCONNECT command, or a\n", dptr->name); fprintf (st, "DETACH %s command.\n\n", dptr->name); fprintf (st, "Other special %s commands:\n\n", dptr->name); -fprintf (st, " sim> SHOW %s CONNECTIONS show current connections\n", dptr->name); -fprintf (st, " sim> SHOW %s STATISTICS show statistics for active connections\n", dptr->name); -fprintf (st, " sim> SET %s DISCONNECT=linenumber disconnects the specified line.\n\n\n", dptr->name); +fprintf (st, " sim> SHOW %s CONNECTIONS show current connections\n", dptr->name); +fprintf (st, " sim> SHOW %s STATISTICS show statistics for active connections\n", dptr->name); +fprintf (st, " sim> SET %s DISCONNECT=linenumber disconnects the specified line.\n\n\n", dptr->name); fprintf (st, "All open connections are lost when the simulator shuts down or the %s is\n", dptr->name); fprintf (st, "detached.\n\n"); dz_help_attach (st, dptr, uptr, flag, cptr); @@ -937,7 +937,7 @@ char *devtype = (UNIBUS) ? "DZ11" : "DZV11"; tmxr_attach_help (st, dptr, uptr, flag, cptr); fprintf (st, "The terminal lines perform input and output through Telnet sessions connected\n"); fprintf (st, "to a user-specified port. The ATTACH command specifies the port to be used:\n\n"); -fprintf (st, " sim> ATTACH {-am} %s {interface:}port set up listening port\n\n", dptr->name); +fprintf (st, " sim> ATTACH {-am} %s {interface:}port set up listening port\n\n", dptr->name); fprintf (st, "where port is a decimal number between 1 and 65535 that is not being used for\n"); fprintf (st, "other TCP/IP activities. The optional switch -m turns on the %s's modem\n", devtype); fprintf (st, "controls; the optional switch -a turns on active disconnects (disconnect\n"); diff --git a/PDP11/pdp11_fp.c b/PDP11/pdp11_fp.c index 4b8a9993..ad08bab1 100644 --- a/PDP11/pdp11_fp.c +++ b/PDP11/pdp11_fp.c @@ -745,7 +745,7 @@ if (IR & 000740) { /* defined? */ if (CPUT (CPUT_03)) /* 11/03 reads word */ ReadW (exta | R[reg]); ABORT (TRAP_ILL); - } + } FEC = 0; /* no errors */ FPS = FPS_IU|FPS_IV; /* trap ovf,unf */ @@ -782,7 +782,7 @@ switch ((IR >> 3) & 3) { /* case IR<5:3> */ V = N = C = 1; /* set cc's */ setTRAP (TRAP_FPE); /* set trap */ return SCPE_OK; - } + } else divfp11 (&fac, &fsrc); break; } diff --git a/PDP11/pdp11_hk.c b/PDP11/pdp11_hk.c index 247e6b26..bb0833d3 100644 --- a/PDP11/pdp11_hk.c +++ b/PDP11/pdp11_hk.c @@ -214,7 +214,7 @@ BITFIELD hk_da_bits[] = { #define CS2_MBZ (CS2_CLR) #define CS2_RW 0000037 #define CS2_ERR (CS2_UFE | CS2_MDS | CS2_PGE | CS2_NEM | \ - CS2_NED | CS2_PE | CS2_WCE | CS2_DLT ) + CS2_NED | CS2_PE | CS2_WCE | CS2_DLT ) #define GET_UNIT(x) (((x) >> CS2_V_UNIT) & CS2_M_UNIT) BITFIELD hk_cs2_bits[] = { @@ -959,9 +959,9 @@ if (fnc_cyl[fnc] && /* need valid cyl */ ((GET_CY (hkdc) >= HK_CYL (uptr)) || /* bad cylinder */ (GET_SF (hkda) >= HK_NUMSF) || /* bad surface */ (GET_SC (hkda) >= HK_NUMSC))) { /* or bad sector? */ - hk_cmderr (ER_IAE, drv); /* illegal addr */ - return; - } + hk_cmderr (ER_IAE, drv); /* illegal addr */ + return; + } hkcs1 = (hkcs1 | CS1_GO) & ~CS1_DONE; /* set go, clear done */ switch (fnc) { /* case on function */ diff --git a/PDP11/pdp11_ke.c b/PDP11/pdp11_ke.c index d2c91058..6a302381 100644 --- a/PDP11/pdp11_ke.c +++ b/PDP11/pdp11_ke.c @@ -38,13 +38,13 @@ /* KE11A I/O address offsets 0177300 - 0177316 */ #define KE_DIV 000 /* divide */ -#define KE_AC 002 /* accumulator */ -#define KE_MQ 004 /* MQ */ -#define KE_MUL 006 /* multiply */ -#define KE_SC 010 /* step counter */ -#define KE_NOR 012 /* normalize */ -#define KE_LSH 014 /* logical shift */ -#define KE_ASH 016 /* arithmetic shift */ +#define KE_AC 002 /* accumulator */ +#define KE_MQ 004 /* MQ */ +#define KE_MUL 006 /* multiply */ +#define KE_SC 010 /* step counter */ +#define KE_NOR 012 /* normalize */ +#define KE_LSH 014 /* logical shift */ +#define KE_ASH 016 /* arithmetic shift */ /* Status register */ @@ -76,7 +76,7 @@ uint32 ke_set_SR (void); DIB ke_dib = { IOBA_AUTO, IOLN_KE, &ke_rd, &ke_wr, 0 }; UNIT ke_unit = { - UDATA (NULL, UNIT_DISABLE, 0) + UDATA (NULL, UNIT_DISABLE, 0) }; REG ke_reg[] = { @@ -237,9 +237,9 @@ switch (PA & 017) { /* decode PA<3:0> */ case KE_NOR: /* normalize */ for (ke_SC = 0; ke_SC < 31; ke_SC++) { /* max 31 shifts */ - if (((ke_AC == 0140000) && (ke_MQ == 0)) || /* special case? */ + if (((ke_AC == 0140000) && (ke_MQ == 0)) || /* special case? */ (GET_SIGN_W (ke_AC ^ (ke_AC << 1)))) /* AC<15> != AC<14>? */ - break; + break; ke_AC = ((ke_AC << 1) | (ke_MQ >> 15)) & DMASK; ke_MQ = (ke_MQ << 1) & DMASK; } diff --git a/PDP11/pdp11_rf.c b/PDP11/pdp11_rf.c index c79d41a6..e11c7195 100644 --- a/PDP11/pdp11_rf.c +++ b/PDP11/pdp11_rf.c @@ -366,7 +366,7 @@ do { update_rfcs (0, RFDAE_NXM); break; } - fbuf[da] = dat; /* write word */ + fbuf[da] = dat; /* write word */ rf_dbr = dat; if (da >= uptr->hwmark) uptr->hwmark = da + 1; diff --git a/PDP11/pdp11_rk.c b/PDP11/pdp11_rk.c index af865465..4c71319a 100644 --- a/PDP11/pdp11_rk.c +++ b/PDP11/pdp11_rk.c @@ -430,9 +430,9 @@ if (((uptr->flags & UNIT_ATT) == 0) || /* not att or busy? */ } if ((rkcs & RKCS_FMT) && /* format and */ (func != RKCS_READ) && (func != RKCS_WRITE)) { /* not read or write? */ - rk_set_done (RKER_PGE); - return; - } + rk_set_done (RKER_PGE); + return; + } if ((func == RKCS_WRITE) && /* write and locked? */ (uptr->flags & UNIT_WPRT)) { rk_set_done (RKER_WLK); @@ -650,7 +650,7 @@ if (error != 0) { rkcs = rkcs | RKCS_ERR; if (rker & RKER_HARD) rkcs = rkcs | RKCS_HERR; - } + } if (rkcs & CSR_IE) { /* int enable? */ rkintq = rkintq | RK_CTLI; /* set ctrl int */ SET_INT (RK); /* request int */ diff --git a/PDP11/pdp11_rl.c b/PDP11/pdp11_rl.c index 22ffbc8a..99bcd817 100644 --- a/PDP11/pdp11_rl.c +++ b/PDP11/pdp11_rl.c @@ -175,7 +175,7 @@ extern UNIT cpu_unit; #define RLCS_WRITE (5) #define RLCS_READ (6) #define RLCS_RNOHDR (7) -#define RLCS_SPECIAL (8) /* internal function, drive state */ +#define RLCS_SPECIAL (8) /* internal function, drive state */ #define RLCS_V_FUNC (1) #define RLCS_M_MEX (03) /* memory extension */ #define RLCS_V_MEX (4) @@ -381,11 +381,11 @@ static const char * const state[] = { /* I/O dispatch routines, I/O addresses 17774400 - 17774411 - 17774400 RLCS read/write - 17774402 RLBA read/write - 17774404 RLDA read/write - 17774406 RLMP read/write - 17774410 RLBAE read/write + 17774400 RLCS read/write + 17774402 RLBA read/write + 17774404 RLDA read/write + 17774406 RLMP read/write + 17774410 RLBAE read/write */ t_stat rl_rd (int32 *data, int32 PA, int32 access) @@ -395,7 +395,7 @@ UNIT *uptr; switch ((PA >> 1) & 07) { /* decode PA<2:1> */ case 0: /* RLCS */ - rlcs = (rlcs & ~RLCS_MEX) | ((rlbae & RLCS_M_MEX) << RLCS_V_MEX); + rlcs = (rlcs & ~RLCS_MEX) | ((rlbae & RLCS_M_MEX) << RLCS_V_MEX); /* The DRDY signal is sent by the selected drive to indicate that it is ready to read or write or seek. It is sent when the heads are @@ -513,7 +513,7 @@ bit is cleared by software. If set, check for interrupts and return. if (newc != curr) uptr->STAT = (uptr->STAT & ~RLDS_M_STATE) | RLDS_SEEK; /* move the positioner */ /* TBD: if a head switch, sector should be RL_NUMSC/2? */ - uptr->TRK = (newc << RLDA_V_CYL) | /* put on track */ + uptr->TRK = (newc << RLDA_V_CYL) | /* put on track */ ((rlda & RLDA_SK_HD)? RLDA_HD1: RLDA_HD0); /* Real timing: @@ -782,7 +782,7 @@ was removed in a later ECO. uptr->STAT = (uptr->STAT & ~RLDS_M_STATE) | RLDS_BRUSH; } else { uptr->STAT |= RLDS_BHO; - uptr->STAT = (uptr->STAT & ~RLDS_M_STATE) | RLDS_HLOAD; + uptr->STAT = (uptr->STAT & ~RLDS_M_STATE) | RLDS_HLOAD; } sim_activate (uptr, 200 * rl_swait); break; @@ -810,7 +810,7 @@ Initiated by depressing the Run (LOAD) switch. */ case RLDS_UNL: /* unload pressed, heads unloaded, spin down */ uptr->STAT = (uptr->STAT & ~RLDS_M_STATE) | RLDS_DOWN; - uptr->STAT &= ~RLDS_HDO; /* retract heads */ + uptr->STAT &= ~RLDS_HDO; /* retract heads */ /* actual time is ~30 seconds */ sim_activate (uptr, 200 * rl_swait); break; @@ -866,7 +866,7 @@ if (uptr->FNC == RLCS_RNOHDR) { } else { /* bad cyl or sector? */ if (((uptr->TRK & RLDA_CYL) != (rlda & RLDA_CYL)) || (GET_SECT (rlda) >= RL_NUMSC)) { - rl_set_done (RLCS_ERR | RLCS_HDE | RLCS_INCMP); /* wrong cylinder? */ + rl_set_done (RLCS_ERR | RLCS_HDE | RLCS_INCMP); /* wrong cylinder? */ return (SCPE_OK); } da = GET_DA (rlda) * RL_NUMWD; /* get disk addr */ @@ -1148,7 +1148,7 @@ t_stat rl_set_ctrl (UNIT *uptr, int32 val, char *cptr, void *desc) t_stat rl_show_ctrl (FILE *st, UNIT *uptr, int32 val, void *desc) { char *s = "RLV12"; - + if (UNIBUS) s = "RL11"; else if (rl_dev.flags & DEV_RLV11) diff --git a/PDP11/pdp11_rp.c b/PDP11/pdp11_rp.c index 09fa42b4..d66391a7 100644 --- a/PDP11/pdp11_rp.c +++ b/PDP11/pdp11_rp.c @@ -31,7 +31,7 @@ to boot. 17-May-07 RMS CS1 DVA resides in device, not MBA 21-Nov-05 RMS Enable/disable device also enables/disables Massbus adapter - 12-Nov-05 RMS Fixed DriveClear, does not clear disk address + 12-Nov-05 RMS Fixed DriveClear, does not clear disk address 16-Aug-05 RMS Fixed C++ declaration and cast problems 18-Mar-05 RMS Added attached test to detach routine 12-Sep-04 RMS Cloned from pdp11_rp.c diff --git a/PDP11/pdp11_rq.c b/PDP11/pdp11_rq.c index ca782439..e00ce750 100644 --- a/PDP11/pdp11_rq.c +++ b/PDP11/pdp11_rq.c @@ -1448,7 +1448,7 @@ if (cp->csta < CST_UP) { /* still init? */ if ((cp->saw & SA_S4H_LF) && cp->perr) rq_plf (cp, cp->perr); cp->perr = 0; - } + } break; } /* end switch */ @@ -1675,9 +1675,9 @@ if ((uptr = rq_getucb (cp, lu)) && /* valid lu? */ (tpkt = uptr->cpkt) && /* queued pkt? */ (GETP32 (tpkt, CMD_REFL) == ref) && /* match ref? */ (GETP (tpkt, CMD_OPC, OPC) >= OP_ACC)) { /* rd/wr cmd? */ - cp->pak[pkt].d[GCS_STSL] = cp->pak[tpkt].d[RW_WBCL]; - cp->pak[pkt].d[GCS_STSH] = cp->pak[tpkt].d[RW_WBCH]; - } + cp->pak[pkt].d[GCS_STSL] = cp->pak[tpkt].d[RW_WBCL]; + cp->pak[pkt].d[GCS_STSH] = cp->pak[tpkt].d[RW_WBCH]; + } else { cp->pak[pkt].d[GCS_STSL] = 0; /* return 0 */ cp->pak[pkt].d[GCS_STSH] = 0; @@ -3094,7 +3094,7 @@ fprintf (st, "ability to set units write enabled or write locked, and to set the fprintf (st, "type to one of many disk types:\n"); fprint_set_help (st, dptr); fprintf (st, "set RQn RAUSER{=n} Set disk type to RA82 with n MB's\n"); -fprintf (st, "set -L RQn RAUSER{=n} Set disk type to RA82 with n LBN's\n\n"); +fprintf (st, "set -L RQn RAUSER{=n} Set disk type to RA82 with n LBN's\n\n"); fprintf (st, "The type options can be used only when a unit is not attached to a file.\n"); fprintf (st, "RAUSER is a \"user specified\" disk; the user can specify the size of the\n"); fprintf (st, "disk in either MB (1000000 bytes) or logical block numbers (LBN's, 512 bytes\n"); diff --git a/PDP11/pdp11_ry.c b/PDP11/pdp11_ry.c index c81ef757..b7f065c8 100644 --- a/PDP11/pdp11_ry.c +++ b/PDP11/pdp11_ry.c @@ -185,9 +185,9 @@ DIB ry_dib = { UNIT ry_unit[] = { { UDATA (&ry_svc, UNIT_DEN+UNIT_FIX+UNIT_ATTABLE+UNIT_BUFABLE+UNIT_MUSTBUF, - RY_SIZE) }, + RY_SIZE) }, { UDATA (&ry_svc, UNIT_DEN+UNIT_FIX+UNIT_ATTABLE+UNIT_BUFABLE+UNIT_MUSTBUF, - RY_SIZE) } + RY_SIZE) } }; REG ry_reg[] = { @@ -485,59 +485,59 @@ switch (ry_state) { /* case on state */ sim_activate (uptr, ry_cwait * 100); /* schedule operation */ break; - case SDXFR: /* erase disk */ - for (i = 0; i < (int32) uptr->capac; i++) + case SDXFR: /* erase disk */ + for (i = 0; i < (int32) uptr->capac; i++) fbuf[i] = 0; - uptr->hwmark = (uint32) uptr->capac; - if (ry_csr & RYCS_DEN) + uptr->hwmark = (uint32) uptr->capac; + if (ry_csr & RYCS_DEN) uptr->flags = uptr->flags | UNIT_DEN; - else uptr->flags = uptr->flags & ~UNIT_DEN; - ry_done (0, 0); - break; + else uptr->flags = uptr->flags & ~UNIT_DEN; + ry_done (0, 0); + break; - case ESBA: - ry_ba = ry_dbr; /* save WC */ - ry_state = ESXFR; /* next state */ - sim_activate (uptr, ry_cwait); /* schedule xfer */ - return SCPE_OK; + case ESBA: + ry_ba = ry_dbr; /* save WC */ + ry_state = ESXFR; /* next state */ + sim_activate (uptr, ry_cwait); /* schedule xfer */ + return SCPE_OK; - case ESXFR: - estat[0] = ry_ecode; /* fill 8B status */ - estat[1] = ry_wc; - estat[2] = ry_unit[0].TRACK; - estat[3] = ry_unit[1].TRACK; - estat[4] = ry_track; - estat[5] = ry_sector; - estat[6] = ((ry_csr & RYCS_DRV)? 0200: 0) | - ((ry_unit[1].flags & UNIT_DEN)? 0100: 0) | + case ESXFR: + estat[0] = ry_ecode; /* fill 8B status */ + estat[1] = ry_wc; + estat[2] = ry_unit[0].TRACK; + estat[3] = ry_unit[1].TRACK; + estat[4] = ry_track; + estat[5] = ry_sector; + estat[6] = ((ry_csr & RYCS_DRV)? 0200: 0) | + ((ry_unit[1].flags & UNIT_DEN)? 0100: 0) | ((uptr->flags & UNIT_ATT)? 0040: 0) | ((ry_unit[0].flags & UNIT_DEN)? 0020: 0) | ((ry_csr & RYCS_DEN)? 0001: 0); - estat[7] = uptr->TRACK; - t = Map_WriteB (ba, 8, estat); /* DMA to memory */ - ry_done (t? RYES_NXM: 0, 0); /* done */ - break; + estat[7] = uptr->TRACK; + t = Map_WriteB (ba, 8, estat); /* DMA to memory */ + ry_done (t? RYES_NXM: 0, 0); /* done */ + break; - case CMD_COMPLETE: /* command complete */ - ry_done (0, 0); - break; + case CMD_COMPLETE: /* command complete */ + ry_done (0, 0); + break; - case INIT_COMPLETE: /* init complete */ - ry_unit[0].TRACK = 1; /* drive 0 to trk 1 */ - ry_unit[1].TRACK = 0; /* drive 1 to trk 0 */ - if ((uptr->flags & UNIT_BUF) == 0) { /* not buffered? */ - ry_done (RYES_ID, 0010); /* init done, error */ - break; - } - da = CALC_DA (1, 1, bps); /* track 1, sector 1 */ - for (i = 0; i < bps; i++) /* read sector */ - rx2xb[i] = fbuf[da + i]; - ry_done (RYES_ID, 0); /* set done */ - if ((ry_unit[1].flags & UNIT_ATT) == 0) + case INIT_COMPLETE: /* init complete */ + ry_unit[0].TRACK = 1; /* drive 0 to trk 1 */ + ry_unit[1].TRACK = 0; /* drive 1 to trk 0 */ + if ((uptr->flags & UNIT_BUF) == 0) { /* not buffered? */ + ry_done (RYES_ID, 0010); /* init done, error */ + break; + } + da = CALC_DA (1, 1, bps); /* track 1, sector 1 */ + for (i = 0; i < bps; i++) /* read sector */ + rx2xb[i] = fbuf[da + i]; + ry_done (RYES_ID, 0); /* set done */ + if ((ry_unit[1].flags & UNIT_ATT) == 0) ry_ecode = 0020; - break; - } /* end case state */ + break; + } /* end case state */ return SCPE_OK; } diff --git a/PDP11/pdp11_stddev.c b/PDP11/pdp11_stddev.c index 2d6dc8a6..0be6a39b 100644 --- a/PDP11/pdp11_stddev.c +++ b/PDP11/pdp11_stddev.c @@ -29,7 +29,7 @@ 18-Apr-12 RMS Modified to use clock coscheduling 20-May-08 RMS Standardized clock delay at 1mips 18-Jun-07 RMS Added UNIT_IDLE flag to console input, clock - 29-Oct-06 RMS Synced keyboard and clock + 29-Oct-06 RMS Synced keyboard and clock Added clock coscheduling support 05-Jul-06 RMS Added UC only support for early DOS/RSTS 22-Nov-05 RMS Revised for new terminal processing routines diff --git a/PDP11/pdp11_tc.c b/PDP11/pdp11_tc.c index d18f21b9..d3b09511 100644 --- a/PDP11/pdp11_tc.c +++ b/PDP11/pdp11_tc.c @@ -25,7 +25,7 @@ tc TC11/TU56 DECtape - 23-Jun-06 RMS Fixed switch conflict in ATTACH + 23-Jun-06 RMS Fixed switch conflict in ATTACH 10-Feb-06 RMS READ sets extended data bits in TCST (Alan Frisbie) 16-Aug-05 RMS Fixed C++ declaration and cast problems 07-Jul-05 RMS Removed extraneous externs @@ -265,10 +265,10 @@ #define LOG_BL 0x4 #define DT_SETDONE tccm = tccm | CSR_DONE; \ - if (tccm & CSR_IE) \ + if (tccm & CSR_IE) \ SET_INT (DTA) #define DT_CLRDONE tccm = tccm & ~CSR_DONE; \ - CLR_INT (DTA) + CLR_INT (DTA) #define ABS(x) (((x) < 0)? (-(x)): (x)) extern uint16 *M; /* memory */ @@ -708,7 +708,7 @@ switch (fnc) { /* case function */ if (dir) newpos = DT_BLK2LN (blk + 1, uptr) - DT_CSMLN - DT_WSIZE; else newpos = DT_BLK2LN (blk, uptr) + DT_CSMLN + (DT_WSIZE - 1); - } + } if (fnc == FNC_WALL) sim_activate /* write all? */ (&dt_dev.units[DT_TIMER], dt_ctime); /* sched done */ if (DEBUG_PRI (dt_dev, LOG_RW) || @@ -783,13 +783,13 @@ if (mot & DTS_DIR) /* update pos */ else uptr->pos = uptr->pos + delta; if (((int32) uptr->pos < 0) || ((int32) uptr->pos > (DTU_FWDEZ (uptr) + DT_EZLIN))) { - detach_unit (uptr); /* off reel? */ - uptr->STATE = uptr->pos = 0; - unum = (int32) (uptr - dt_dev.units); - if ((unum == CSR_GETUNIT (tccm)) && (CSR_GETFNC (tccm) != FNC_STOP)) - dt_seterr (uptr, STA_SEL); /* error */ - return TRUE; - } + detach_unit (uptr); /* off reel? */ + uptr->STATE = uptr->pos = 0; + unum = (int32) (uptr - dt_dev.units); + if ((unum == CSR_GETUNIT (tccm)) && (CSR_GETFNC (tccm) != FNC_STOP)) + dt_seterr (uptr, STA_SEL); /* error */ + return TRUE; + } return FALSE; } @@ -1303,7 +1303,7 @@ if (sim_is_active (uptr)) { /* active? cancel op */ tccm = tccm | CSR_ERR | CSR_DONE; if (tccm & CSR_IE) SET_INT (DTA); - } + } uptr->STATE = uptr->pos = 0; } fbuf = (uint32 *) uptr->filebuf; /* file buffer */ diff --git a/PDP11/pdp11_tm.c b/PDP11/pdp11_tm.c index c50b4aa4..d6d15b0d 100644 --- a/PDP11/pdp11_tm.c +++ b/PDP11/pdp11_tm.c @@ -639,7 +639,7 @@ int32 u = uptr - tm_dev.units; if ((uptr->flags & UNIT_ATT) && (val || sim_tape_wrp (uptr))) - uptr->USTAT = uptr->USTAT | STA_WLK; + uptr->USTAT = uptr->USTAT | STA_WLK; else uptr->USTAT = uptr->USTAT & ~STA_WLK; if (u == GET_UNIT (tm_cmd)) tm_updcsta (uptr); diff --git a/PDP11/pdp11_tu.c b/PDP11/pdp11_tu.c index aac008af..b82ff0bd 100644 --- a/PDP11/pdp11_tu.c +++ b/PDP11/pdp11_tu.c @@ -744,7 +744,7 @@ switch (fnc) { /* case on function */ for (i = j = 0; j < xbc; j = j + 1) { xbuf[i++] = wbuf[j] & 0377; xbuf[i++] = (wbuf[j] >> 8) & 0377; - } + } tbc = xbc; } if ((st = sim_tape_wrrecf (uptr, xbuf, tbc))) /* write rec, err? */ diff --git a/PDP11/pdp11_vh.c b/PDP11/pdp11_vh.c index 5ab8a1e9..2bde9bbe 100644 --- a/PDP11/pdp11_vh.c +++ b/PDP11/pdp11_vh.c @@ -1575,35 +1575,35 @@ fprintf (st, "and output of characters.\n\n"); fprintf (st, "By default, the DHV11 mode is selected, though DHU11 mode is recommended\n"); fprintf (st, "for applications that can support it. The %s controller may be adjusted\n", dptr->name); fprintf (st, "on a per controller basis as follows:\n\n"); -fprintf (st, " sim> SET %sn DHU use the DHU programming mode\n", dptr->name); -fprintf (st, " sim> SET %sn DHV use the DHV programming mode\n\n", dptr->name); +fprintf (st, " sim> SET %sn DHU use the DHU programming mode\n", dptr->name); +fprintf (st, " sim> SET %sn DHV use the DHV programming mode\n\n", dptr->name); fprintf (st, "DMA output is supported. In a real %s, DMA is not initiated immediately\n", devtype); fprintf (st, "upon receipt of TX.DMA.START but is dependent upon some internal processes.\n"); fprintf (st, "The %s controller mimics this behavior by default. It may be desirable to\n", dptr->name); fprintf (st, "alter this and start immediately, though this may not be compatible with all\n"); fprintf (st, "operating systems and diagnostics. You can change the behavior of the %s\n", dptr->name); fprintf (st, "controller as follows:\n\n"); -fprintf (st, " sim> SET %sn NORMAL use normal DMA procedures\n", dptr->name); -fprintf (st, " sim> SET %sn FASTDMA set DMA to initiate immediately\n\n", dptr->name); +fprintf (st, " sim> SET %sn NORMAL use normal DMA procedures\n", dptr->name); +fprintf (st, " sim> SET %sn FASTDMA set DMA to initiate immediately\n\n", dptr->name); fprintf (st, "The number of lines (and therefore the number of %s devices\n", devtype); fprintf (st, "simulated) can be changed with the command:\n\n"); -fprintf (st, " sim> SET %s LINES=n set line count to n\n\n", dptr->name); +fprintf (st, " sim> SET %s LINES=n set line count to n\n\n", dptr->name); fprintf (st, "The line count must be a multiple of %d, with a maximum of %d.\n\n", VH_LINES, VH_LINES*VH_MUXES); fprintf (st, "Modem and auto-disconnect support may be set on an individual controller\n"); fprintf (st, "basis. The SET MODEM command directs the controller to report modem status\n"); fprintf (st, "changes to the computer. The SET HANGUP command turns on active disconnects\n"); fprintf (st, "(disconnect session if computer clears Data Terminal Ready).\n\n"); -fprintf (st, " sim> SET %sn [NO]MODEM disable/enable modem control\n", dptr->name); -fprintf (st, " sim> SET %sn [NO]HANGUP disable/enable disconnect on DTR drop\n\n", dptr->name); +fprintf (st, " sim> SET %sn [NO]MODEM disable/enable modem control\n", dptr->name); +fprintf (st, " sim> SET %sn [NO]HANGUP disable/enable disconnect on DTR drop\n\n", dptr->name); fprintf (st, "Once the %s devuce is attached and the simulator is running, the %s will\n", dptr->name, dptr->name); fprintf (st, "listen for connections on the specified port. It assumes that the incoming\n"); fprintf (st, "connections are Telnet connections. The connection remains open until\n"); fprintf (st, "disconnected by the simulated program, the Telnet client, a SET %s DISCONNECT\n", dptr->name); fprintf (st, "command, or a DETACH %s command.\n\n", dptr->name); fprintf (st, "Other special %s commands:\n\n", dptr->name); -fprintf (st, " sim> SHOW %s CONNECTIONS show current connections\n", dptr->name); -fprintf (st, " sim> SHOW %s STATISTICS show statistics for active connections\n", dptr->name); -fprintf (st, " sim> SET %s DISCONNECT=linenumber disconnects the specified line.\n\n", dptr->name); +fprintf (st, " sim> SHOW %s CONNECTIONS show current connections\n", dptr->name); +fprintf (st, " sim> SHOW %s STATISTICS show statistics for active connections\n", dptr->name); +fprintf (st, " sim> SET %s DISCONNECT=linenumber disconnects the specified line.\n\n", dptr->name); fprintf (st, "The %s does not support save and restore. All open connections are lost\n", devtype); fprintf (st, "when the simulator shuts down or the %s is detached.\n\n", dptr->name); vh_help_attach (st, dptr, uptr, flag, cptr); diff --git a/PDP11/pdp11_xq.c b/PDP11/pdp11_xq.c index 5edea3c9..36f83f6d 100644 --- a/PDP11/pdp11_xq.c +++ b/PDP11/pdp11_xq.c @@ -326,7 +326,7 @@ struct xq_device xqb = { #define IOLN_XQ 020 DIB xqa_dib = { IOBA_AUTO, IOLN_XQ, &xq_rd, &xq_wr, - 1, IVCL (XQ), 0, { &xq_int } }; + 1, IVCL (XQ), 0, { &xq_int } }; UNIT xqa_unit[] = { { UDATA (&xq_svc, UNIT_IDLE|UNIT_ATTABLE|UNIT_DISABLE, 2047) }, /* receive timer */ @@ -382,7 +382,7 @@ REG xqa_reg[] = { }; DIB xqb_dib = { IOBA_AUTO, IOLN_XQ, &xq_rd, &xq_wr, - 1, IVCL (XQ), 0, { &xq_int } }; + 1, IVCL (XQ), 0, { &xq_int } }; UNIT xqb_unit[] = { { UDATA (&xq_svc, UNIT_IDLE|UNIT_ATTABLE|UNIT_DISABLE, 2047) }, /* receive timer */ @@ -1381,7 +1381,7 @@ t_stat xq_process_xbdl(CTLR* xq) else { if (xq->var->coalesce_latency == 0) xq_svc(&xq->unit[0]); /* service any received data */ - } + } sim_debug(DBG_WRN, xq->dev, "XBDL completed processing write\n"); } /* loopback/non-loopback */ diff --git a/PDP11/pdp11_xu.c b/PDP11/pdp11_xu.c index db1495f8..f29cc82f 100644 --- a/PDP11/pdp11_xu.c +++ b/PDP11/pdp11_xu.c @@ -56,7 +56,7 @@ probably need to be converted to Map_ReadW and Map_WriteW calls. 4) Some jerkiness seen during interactive I/O with remote systems; this is probably attributable to changed polling times from when - the poll duration was standardized for idling support. + the poll duration was standardized for idling support. ------------------------------------------------------------------------------ @@ -222,11 +222,11 @@ DEBTAB xu_debug[] = { DEVICE xu_dev = { - "XU", xua_unit, xua_reg, xu_mod, - 2, XU_RDX, 8, 1, XU_RDX, 8, - &xu_ex, &xu_dep, &xu_reset, - NULL, &xu_attach, &xu_detach, - &xua_dib, DEV_DISABLE | DEV_DIS | DEV_UBUS | DEV_DEBUG | DEV_ETHER, + "XU", xua_unit, xua_reg, xu_mod, + 2, XU_RDX, 8, 1, XU_RDX, 8, + &xu_ex, &xu_dep, &xu_reset, + NULL, &xu_attach, &xu_detach, + &xua_dib, DEV_DISABLE | DEV_DIS | DEV_UBUS | DEV_DEBUG | DEV_ETHER, 0, xu_debug, NULL, NULL, &xu_help, NULL, NULL, &xu_description }; @@ -234,7 +234,7 @@ DEVICE xu_dev = { #define IOLN_XU 010 DIB xub_dib = { IOBA_AUTO, IOLN_XU, &xu_rd, &xu_wr, - 1, IVCL (XU), 0, { &xu_int } }; + 1, IVCL (XU), 0, { &xu_int } }; UNIT xub_unit[] = { { UDATA (&xu_svc, UNIT_IDLE|UNIT_ATTABLE|UNIT_DISABLE, 0) } /* receive timer */ @@ -530,7 +530,7 @@ t_stat xu_process_local (CTLR* xu, ETH_PACK* pack) void xu_read_callback(CTLR* xu, int status) { if (DBG_PCK & xu->dev->dctrl) - eth_packet_trace_ex(xu->var->etherface, xu->var->read_buffer.msg, xu->var->read_buffer.len, "xu-recvd", DBG_DAT & xu->dev->dctrl, DBG_PCK); + eth_packet_trace_ex(xu->var->etherface, xu->var->read_buffer.msg, xu->var->read_buffer.len, "xu-recvd", DBG_DAT & xu->dev->dctrl, DBG_PCK); /* process any packets locally that can be */ status = xu_process_local (xu, &xu->var->read_buffer); @@ -826,19 +826,19 @@ int32 xu_command(CTLR* xu) case FC_NOOP: break; - case FC_RDPA: /* read default physical address */ + case FC_RDPA: /* read default physical address */ wstatus = Map_WriteB(xu->var->pcbb + 2, 6, xu->var->mac); if (wstatus) return PCSR0_PCEI + 1; break; - case FC_RPA: /* read current physical address */ + case FC_RPA: /* read current physical address */ wstatus = Map_WriteB(xu->var->pcbb + 2, 6, (uint8*)&xu->var->setup.macs[0]); if (wstatus) return PCSR0_PCEI + 1; break; - case FC_WPA: /* write current physical address */ + case FC_WPA: /* write current physical address */ rstatus = Map_ReadB(xu->var->pcbb + 2, 6, (uint8*)&xu->var->setup.macs[0]); if (xu->var->pcb[1] & 1) return PCSR0_PCEI; @@ -874,7 +874,7 @@ int32 xu_command(CTLR* xu) } break; - case FC_RRF: /* read ring format */ + case FC_RRF: /* read ring format */ if ((xu->var->pcb[1] & 1) || (xu->var->pcb[2] & 0374)) return PCSR0_PCEI; xu->var->udb[0] = xu->var->tdrb & 0177776; @@ -891,7 +891,7 @@ int32 xu_command(CTLR* xu) return PCSR0_PCEI+1; break; - case FC_WRF: /* write ring format */ + case FC_WRF: /* write ring format */ if ((xu->var->pcb[1] & 1) || (xu->var->pcb[2] & 0374)) return PCSR0_PCEI; if ((xu->var->pcsr1 & PCSR1_STATE) == STATE_RUNNING) @@ -975,14 +975,14 @@ int32 xu_command(CTLR* xu) memset(stats, 0, sizeof(struct xu_stats)); break; - case FC_RMODE: /* read mode register */ + case FC_RMODE: /* read mode register */ value = xu->var->mode; wstatus = Map_WriteW(xu->var->pcbb+2, 2, &value); if (wstatus) return PCSR0_PCEI + 1; break; - case FC_WMODE: /* write mode register */ + case FC_WMODE: /* write mode register */ value = xu->var->mode; xu->var->mode = xu->var->pcb[1]; sim_debug(DBG_TRC, xu->dev, "FC_WMODE: mode=%04x\n", xu->var->mode); @@ -998,8 +998,8 @@ int32 xu_command(CTLR* xu) xu->var->setup.promiscuous); break; - case FC_RSTAT: /* read extended status */ - case FC_RCSTAT: /* read and clear extended status */ + case FC_RSTAT: /* read extended status */ + case FC_RCSTAT: /* read and clear extended status */ value = xu->var->stat; wstatus = Map_WriteW(xu->var->pcbb+2, 2, &value); value = 10; @@ -1010,7 +1010,7 @@ int32 xu_command(CTLR* xu) return PCSR0_PCEI + 1; if (fnc == FC_RCSTAT) - xu->var->stat &= 0377; /* clear high byte */ + xu->var->stat &= 0377; /* clear high byte */ break; case FC_RSID: /* read system id parameters */ @@ -1079,7 +1079,7 @@ int32 xu_command(CTLR* xu) return PCSR0_PCEI + 1; break; - default: /* Unknown (unimplemented) command. */ + default: /* Unknown (unimplemented) command. */ printf("%s: unknown ancilliary command 0%o requested !\n", xu->dev->name, fnc); return PCSR0_PCEI; break; @@ -1160,7 +1160,7 @@ void xu_process_receive(CTLR* xu) if (item->packet.len < ETH_MIN_PACKET) { int len = item->packet.len; memset (&item->packet.msg[len], 0, ETH_MIN_PACKET - len); - item->packet.len = ETH_MIN_PACKET; + item->packet.len = ETH_MIN_PACKET; } } @@ -1344,7 +1344,7 @@ void xu_process_transmit(CTLR* xu) wstatus = eth_write(xu->var->etherface, &xu->var->write_buffer, xu->var->wcallback); if (wstatus) xu->var->pcsr0 |= PCSR0_PCEI; - else + else if (DBG_PCK & xu->dev->dctrl) eth_packet_trace_ex(xu->var->etherface, xu->var->write_buffer.msg, xu->var->write_buffer.len, "xu-write", DBG_DAT & xu->dev->dctrl, DBG_PCK); } @@ -1432,38 +1432,38 @@ void xu_port_command (CTLR* xu) sim_debug(DBG_TRC, xu->dev, "xu_port_command(), Command = %s [0%o]\n", commands[command], command); switch (command) { /* cases in order of most used to least used */ - case CMD_PDMD: /* POLLING DEMAND */ + case CMD_PDMD: /* POLLING DEMAND */ /* process transmit buffers, receive buffers are done in the service timer */ xu_process_transmit(xu); xu->var->pcsr0 |= PCSR0_DNI; break; - case CMD_GETCMD: /* GET COMMAND */ + case CMD_GETCMD: /* GET COMMAND */ xu_command(xu); xu->var->pcsr0 |= PCSR0_DNI; break; - case CMD_GETPCBB: /* GET PCB-BASE */ + case CMD_GETPCBB: /* GET PCB-BASE */ xu->var->pcbb = (xu->var->pcsr3 << 16) | xu->var->pcsr2; xu->var->pcsr0 |= PCSR0_DNI; break; - case CMD_SELFTEST: /* SELFTEST */ + case CMD_SELFTEST: /* SELFTEST */ /* - SELFTEST is a <=15-second self diagnostic test, setting various - error flags and the DONE (DNI) flag when complete. For simulation - purposes, signal completion immediately with no errors. This - inexact behavior could be incompatible with any guest machine - diagnostics that are expecting to be able to monitor the - controller's progress through the diagnostic testing. - */ + SELFTEST is a <=15-second self diagnostic test, setting various + error flags and the DONE (DNI) flag when complete. For simulation + purposes, signal completion immediately with no errors. This + inexact behavior could be incompatible with any guest machine + diagnostics that are expecting to be able to monitor the + controller's progress through the diagnostic testing. + */ xu->var->pcsr0 |= PCSR0_DNI; xu->var->pcsr0 &= ~PCSR0_USCI; xu->var->pcsr0 &= ~PCSR0_FATL; xu->var->pcsr1 = STATE_READY; break; - case CMD_START: /* START */ + case CMD_START: /* START */ if (state == STATE_READY) { xu->var->pcsr1 &= ~PCSR1_STATE; xu->var->pcsr1 |= STATE_RUNNING; @@ -1487,7 +1487,7 @@ void xu_port_command (CTLR* xu) xu->var->pcsr0 |= PCSR0_PCEI; break; - case CMD_STOP: /* STOP */ + case CMD_STOP: /* STOP */ if (state == STATE_RUNNING) { xu->var->pcsr1 &= ~PCSR1_STATE; xu->var->pcsr1 |= STATE_READY; @@ -1575,7 +1575,7 @@ t_stat xu_wr(int32 data, int32 PA, int32 access) sim_debug(DBG_REG, xu->dev, "xu_wr(), PCSR%d, data=%08x, PA=%08x, access=%d[%s]\n", reg, data, PA, access, desc); switch (reg) { case 00: - /* Clear write-one-to-clear interrupt bits */ + /* Clear write-one-to-clear interrupt bits */ if (access == WRITEB) { data &= 0377; if (PA & 1) { @@ -1622,11 +1622,11 @@ t_stat xu_wr(int32 data, int32 PA, int32 access) break; case 02: - xu->var->pcsr2 = data & 0177776; /* store word, but not MBZ LSB */ + xu->var->pcsr2 = data & 0177776; /* store word, but not MBZ LSB */ break; case 03: - xu->var->pcsr3 = data & 0000003; /* store significant bits */ + xu->var->pcsr3 = data & 0000003; /* store significant bits */ break; } return SCPE_OK; @@ -1766,7 +1766,7 @@ void xu_dump_rxring (CTLR* xu) for (i=0; ivar->rdrb + (xu->var->relen * 2) * i; - t_stat rstatus = Map_ReadW (ba, 8, rxhdr); /* get rxring entry[i] */ + t_stat rstatus = Map_ReadW (ba, 8, rxhdr); /* get rxring entry[i] */ int own = (rxhdr[2] & RXR_OWN) >> 15; int len = rxhdr[0]; uint32 addr = rxhdr[1] + ((rxhdr[2] & 3) << 16); @@ -1783,7 +1783,7 @@ void xu_dump_txring (CTLR* xu) for (i=0; ivar->tdrb + (xu->var->telen * 2) * i; - t_stat tstatus = Map_ReadW (ba, 8, txhdr); /* get rxring entry[i] */ + t_stat tstatus = Map_ReadW (ba, 8, txhdr); /* get rxring entry[i] */ int own = (txhdr[2] & RXR_OWN) >> 15; int len = txhdr[0]; uint32 addr = txhdr[1] + ((txhdr[2] & 3) << 16); diff --git a/VAX/vax610_io.c b/VAX/vax610_io.c index 47bd1089..306cb700 100644 --- a/VAX/vax610_io.c +++ b/VAX/vax610_io.c @@ -222,8 +222,8 @@ for (i = 0; int_req[l] && (i < 32); i++) { if ((int_req[l] >> i) & 1) { int_req[l] = int_req[l] & ~(1u << i); if (int_ack[l][i]) - return int_ack[l][i](); - return int_vec[l][i]; + return int_ack[l][i](); + return int_vec[l][i]; } } return 0; diff --git a/VAX/vax630_io.c b/VAX/vax630_io.c index e341234d..1b53a1b9 100644 --- a/VAX/vax630_io.c +++ b/VAX/vax630_io.c @@ -263,8 +263,8 @@ for (i = 0; int_req[l] && (i < 32); i++) { if ((int_req[l] >> i) & 1) { int_req[l] = int_req[l] & ~(1u << i); if (int_ack[l][i]) - return int_ack[l][i](); - return int_vec[l][i]; + return int_ack[l][i](); + return int_vec[l][i]; } } return 0; diff --git a/VAX/vax630_sysdev.c b/VAX/vax630_sysdev.c index eb9916ef..c3440d08 100644 --- a/VAX/vax630_sysdev.c +++ b/VAX/vax630_sysdev.c @@ -106,8 +106,8 @@ CTAB vax630_cmd[] = { #define MSER_MCD1 0x00000200 /* Mem Code 1 */ #define MSER_MBZ 0xFFFFFC04 #define MSER_RD (MSER_PE | MSER_WWP | MSER_LEB | \ - MSER_DQPE | MSER_CQPE | MSER_CLPE | \ - MSER_NXM | MSER_MCD0 | MSER_MCD1) + MSER_DQPE | MSER_CQPE | MSER_CLPE | \ + MSER_NXM | MSER_MCD0 | MSER_MCD1) #define MSER_WR (MSER_PE | MSER_WWP) #define MSER_RS (MSER_LEB | MSER_DQPE | MSER_CQPE | MSER_CLPE | MSER_NXM) @@ -409,7 +409,7 @@ fprintf (st, "Read-only memory (ROM)\n\n"); fprintf (st, "The boot ROM consists of a single unit, simulating the 64KB boot ROM. It has\n"); fprintf (st, "no registers. The boot ROM is loaded with a binary byte stream using the \n"); fprintf (st, "LOAD -r command:\n\n"); -fprintf (st, " LOAD -r KA630.BIN load ROM image KA630.BIN\n\n"); +fprintf (st, " LOAD -r KA630.BIN load ROM image KA630.BIN\n\n"); fprintf (st, "When the simulator starts running (via the BOOT command), if the ROM has\n"); fprintf (st, "not yet been loaded, an attempt will be made to automatically load the\n"); fprintf (st, "ROM image from the file ka655x.bin in the current working directory.\n"); @@ -825,8 +825,8 @@ p2 = mchk_va + 4; /* save vap */ st = 0; if (p1 & 0x80) { /* mref? */ cc = intexc (SCB_MCHK, cc, 0, IE_EXC); /* take normal exception */ - if (!(ka_mser & MSER_CQPE) && !(ka_mser & MSER_CLPE)) - ka_mser |= MSER_NXM; + if (!(ka_mser & MSER_CQPE) && !(ka_mser & MSER_CLPE)) + ka_mser |= MSER_NXM; } else cc = intexc (SCB_MCHK, cc, 0, IE_SVE); /* take severe exception */ acc = ACC_MASK (KERN); /* in kernel mode */ diff --git a/VAX/vax730_rb.c b/VAX/vax730_rb.c index 5ca41ae3..869816af 100644 --- a/VAX/vax730_rb.c +++ b/VAX/vax730_rb.c @@ -103,7 +103,7 @@ #define RB02DS_ATT (RB02DS_HDO+RB02DS_BHO+RB02DS_LOCK) /* att status */ #define RB02DS_UNATT (RB02DS_CVO+RB02DS_LOAD) /* unatt status */ #define RB02DS_ERR (RB02DS_WDE+RB02DS_HCE+RB02DS_STO+RB02DS_SPE+RB02DS_WGE+ \ - RB02DS_VCK+RB02DS_DSE) /* errors bits */ + RB02DS_VCK+RB02DS_DSE) /* errors bits */ #define RB80DS_SCNT 0x0000000F #define RB80DS_FLT 0x00000100 diff --git a/VAX/vax730_stddev.c b/VAX/vax730_stddev.c index ad86deaa..088ba6e1 100644 --- a/VAX/vax730_stddev.c +++ b/VAX/vax730_stddev.c @@ -1070,15 +1070,15 @@ int32 sel = TXDB_GETSEL (data); /* get selection */ if (sel == TXDB_MISC) { /* misc function? */ switch (data & MISC_MASK) { /* case on function */ - case MISC_CLWS: + case MISC_CLWS: case MISC_CLCS: break; - case MISC_SWDN: + case MISC_SWDN: ABORT (STOP_SWDN); break; - case MISC_BOOT: + case MISC_BOOT: ABORT (STOP_BOOT); break; } diff --git a/VAX/vax730_syslist.c b/VAX/vax730_syslist.c index 23b0ea54..3aee3c09 100644 --- a/VAX/vax730_syslist.c +++ b/VAX/vax730_syslist.c @@ -85,10 +85,10 @@ DEVICE *sim_devices[] = { &tq_dev, &xu_dev, &xub_dev, - &dmc_dev[0], - &dmc_dev[1], - &dmc_dev[2], - &dmc_dev[3], + &dmc_dev[0], + &dmc_dev[1], + &dmc_dev[2], + &dmc_dev[3], &dup_dev, NULL }; diff --git a/VAX/vax730_uba.c b/VAX/vax730_uba.c index 26c53e55..e19563d7 100644 --- a/VAX/vax730_uba.c +++ b/VAX/vax730_uba.c @@ -270,7 +270,7 @@ switch (ofs) { /* case on offset */ case UBADPR_OF + 2: break; /* ignore writes */ - case UBACSR_OF: /* CSR */ + case UBACSR_OF: /* CSR */ if(val & 0x10000) uba_csr = 0; break; diff --git a/VAX/vax750_syslist.c b/VAX/vax750_syslist.c index ae815b99..4e378a0a 100644 --- a/VAX/vax750_syslist.c +++ b/VAX/vax750_syslist.c @@ -90,10 +90,10 @@ DEVICE *sim_devices[] = { &tq_dev, &xu_dev, &xub_dev, - &dmc_dev[0], - &dmc_dev[1], - &dmc_dev[2], - &dmc_dev[3], + &dmc_dev[0], + &dmc_dev[1], + &dmc_dev[2], + &dmc_dev[3], &dup_dev, NULL }; diff --git a/VAX/vax780_fload.c b/VAX/vax780_fload.c index b4f94c08..fc304f74 100644 --- a/VAX/vax780_fload.c +++ b/VAX/vax780_fload.c @@ -68,10 +68,10 @@ /* RT11 directory entry offsets */ #define DE_STATUS 0 /* status (odd byte) */ -#define TENTAT 001 /* tentative */ -#define EMPTY 002 -#define PERM 004 -#define ENDSEG 010 /* end of segment */ +#define TENTAT 001 /* tentative */ +#define EMPTY 002 +#define PERM 004 +#define ENDSEG 010 /* end of segment */ #define DE_NAME 1 /* file name */ #define DE_FLNT 4 /* file length */ #define DE_SIZE 7 /* entry size in words */ diff --git a/VAX/vax780_syslist.c b/VAX/vax780_syslist.c index 767a4144..28bf7a50 100644 --- a/VAX/vax780_syslist.c +++ b/VAX/vax780_syslist.c @@ -92,10 +92,10 @@ DEVICE *sim_devices[] = { &tq_dev, &xu_dev, &xub_dev, - &dmc_dev[0], - &dmc_dev[1], - &dmc_dev[2], - &dmc_dev[3], + &dmc_dev[0], + &dmc_dev[1], + &dmc_dev[2], + &dmc_dev[3], &dup_dev, NULL }; diff --git a/VAX/vax860_abus.c b/VAX/vax860_abus.c index 768ac31c..0f55fbf4 100644 --- a/VAX/vax860_abus.c +++ b/VAX/vax860_abus.c @@ -466,29 +466,29 @@ switch (rg) { val = VAX860_SID | VAX860_TYP | VAX860_ECO | VAX860_PLANT | VAX860_SN; break; - case MT_PAMACC: /* PAMACC */ + case MT_PAMACC: /* PAMACC */ val = pamm[pamloc >> 20]; val = val | (pamloc & PAMACC_ADDR); - break; + break; - case MT_PAMLOC: /* PAMLOC */ - val = pamloc & PAMLOC_ADDR; - break; + case MT_PAMLOC: /* PAMLOC */ + val = pamloc & PAMLOC_ADDR; + break; - case MT_MDCTL: /* MDCTL */ - val = mdctl & MDCTL_RW; + case MT_MDCTL: /* MDCTL */ + val = mdctl & MDCTL_RW; - case MT_EHSR: /* EHSR */ - val = ehsr & EHSR_VMSE; - break; + case MT_EHSR: /* EHSR */ + val = ehsr & EHSR_VMSE; + break; - case MT_CSWP: /* CSWP */ + case MT_CSWP: /* CSWP */ val = cswp & 0xF; - break; + break; - case MT_MERG: /* MERG */ + case MT_MERG: /* MERG */ val = 0; - break; + break; case MT_STXCS: /* STXCS */ val = stxcs_rd (); @@ -536,42 +536,42 @@ switch (rg) { case MT_TXDB: /* TXDB */ txdb_wr (val); - break; + break; - case MT_PAMACC: /* PAMACC (not impl) */ - break; + case MT_PAMACC: /* PAMACC (not impl) */ + break; - case MT_PAMLOC: /* PAMLOC */ - pamloc = val & PAMLOC_ADDR; - break; + case MT_PAMLOC: /* PAMLOC */ + pamloc = val & PAMLOC_ADDR; + break; - case MT_MDCTL: /* MDCTL */ - mdctl = val & MDCTL_RW; - break; + case MT_MDCTL: /* MDCTL */ + mdctl = val & MDCTL_RW; + break; - case MT_EHSR: /* EHSR */ + case MT_EHSR: /* EHSR */ ehsr = val & EHSR_VMSE; - break; + break; - case MT_CSWP: /* CSWP */ + case MT_CSWP: /* CSWP */ cswp = val & 0xF; - break; + break; - case MT_MERG: /* MERG (not impl) */ - break; + case MT_MERG: /* MERG (not impl) */ + break; case MT_CRBT: /* CRBT (not impl) */ break; case MT_STXCS: /* STXCS */ - stxcs_wr (val); + stxcs_wr (val); break; case MT_STXDB: /* STXDB */ - stxdb_wr (val); + stxdb_wr (val); break; - default: + default: RSVD_OPND_FAULT; } @@ -613,7 +613,7 @@ return 0; void WriteReg (int32 pa, int32 val, int32 lnt) { if (ADDR_IS_SBIA (pa)) { /* SBI adapter space? */ - sbia_wr (pa, val, lnt); + sbia_wr (pa, val, lnt); SET_IRQL; return; } diff --git a/VAX/vax860_sbia.c b/VAX/vax860_sbia.c index 8c08a2c1..47c652ef 100644 --- a/VAX/vax860_sbia.c +++ b/VAX/vax860_sbia.c @@ -134,42 +134,42 @@ DEVICE sbia_dev = { int32 sbia_rd (int32 pa, int32 lnt) { - int32 rg = (pa >> 2) & 0x1F; + int32 rg = (pa >> 2) & 0x1F; - switch (rg) { - case 0: /* SBICNF */ + switch (rg) { + case 0: /* SBICNF */ return 0x00400010; /* 8MB + SBIA Abus code */ - case 1: /* SBICSR */ - return sbi_csr; + case 1: /* SBICSR */ + return sbi_csr; - case 2: /* SBIES (not impl) */ - case 3: /* SBIDCR (not impl) */ - case 4: /* DMAI CMD (not impl) */ - case 5: /* DMAI ID (not impl) */ - case 6: /* DMAA CMD (not impl) */ - case 7: /* DMAA ID (not impl) */ - case 8: /* DMAB CMD (not impl) */ - case 9: /* DMAB ID (not impl) */ - case 0xa: /* DMAC CMD (not impl) */ - case 0xb: /* DMAC ID (not impl) */ - case 0xc: /* SBIS (not impl) */ - return 0; + case 2: /* SBIES (not impl) */ + case 3: /* SBIDCR (not impl) */ + case 4: /* DMAI CMD (not impl) */ + case 5: /* DMAI ID (not impl) */ + case 6: /* DMAA CMD (not impl) */ + case 7: /* DMAA ID (not impl) */ + case 8: /* DMAB CMD (not impl) */ + case 9: /* DMAB ID (not impl) */ + case 0xa: /* DMAC CMD (not impl) */ + case 0xb: /* DMAC ID (not impl) */ + case 0xc: /* SBIS (not impl) */ + return 0; - case 0xd: /* SBIER */ - return sbi_er & SBIER_RD; + case 0xd: /* SBIER */ + return sbi_er & SBIER_RD; - case 0xe: /* SBITA */ - return sbi_tmo; + case 0xe: /* SBITA */ + return sbi_tmo; - case 0xf: /* SBIFS */ - return sbi_fs & SBIFS_RD; + case 0xf: /* SBIFS */ + return sbi_fs & SBIFS_RD; - case 0x10: /* SBISC */ - return sbi_sc & SBISC_RD; + case 0x10: /* SBISC */ + return sbi_sc & SBISC_RD; - case 0x11: /* SBIMT */ - return sbi_mt & SBIMT_RD; + case 0x11: /* SBIMT */ + return sbi_mt & SBIMT_RD; default: /* Anything else is not impl */ return 0; @@ -179,31 +179,31 @@ int32 sbia_rd (int32 pa, int32 lnt) void sbia_wr (int32 pa, int32 val, int32 lnt) { - int32 rg = (pa >> 2) & 0x1F; + int32 rg = (pa >> 2) & 0x1F; - switch (rg) { - case 0: /* SBICNF */ + switch (rg) { + case 0: /* SBICNF */ break; - case 1: /* SBICSR */ + case 1: /* SBICSR */ printf ("sbi_csr wr: %08X\n", val); sbi_csr = sbi_csr & SBICSR_WR; break; - case 2: /* SBIES (not impl) */ - case 3: /* SBIDCR (not impl) */ - case 4: /* DMAI CMD (not impl) */ - case 5: /* DMAI ID (not impl) */ - case 6: /* DMAA CMD (not impl) */ - case 7: /* DMAA ID (not impl) */ - case 8: /* DMAB CMD (not impl) */ - case 9: /* DMAB ID (not impl) */ - case 0xa: /* DMAC CMD (not impl) */ - case 0xb: /* DMAC ID (not impl) */ - case 0xc: /* SBIS (not impl) */ + case 2: /* SBIES (not impl) */ + case 3: /* SBIDCR (not impl) */ + case 4: /* DMAI CMD (not impl) */ + case 5: /* DMAI ID (not impl) */ + case 6: /* DMAA CMD (not impl) */ + case 7: /* DMAA ID (not impl) */ + case 8: /* DMAB CMD (not impl) */ + case 9: /* DMAB ID (not impl) */ + case 0xa: /* DMAC CMD (not impl) */ + case 0xb: /* DMAC ID (not impl) */ + case 0xc: /* SBIS (not impl) */ break; - case 0xd: /* SBIER */ + case 0xd: /* SBIER */ sbi_er = (sbi_er & ~SBIER_WR) | (val & SBIER_WR); sbi_er = sbi_er & ~(val & SBIER_W1C); if (val & SBIER_TMO) @@ -215,22 +215,22 @@ void sbia_wr (int32 pa, int32 val, int32 lnt) else crd_err = 0; break; - case 0xe: /* SBITA */ + case 0xe: /* SBITA */ break; - case 0xf: /* SBIFS */ + case 0xf: /* SBIFS */ sbi_fs = (sbi_fs & ~SBIFS_WR) | (val & SBIFS_WR); sbi_fs = sbi_fs & ~(val & SBIFS_W1C); break; - case 0x10: /* SBISC */ + case 0x10: /* SBISC */ sbi_sc = (sbi_sc & ~(SBISC_LOCK|SBISC_WR)) | (val & SBISC_WR); break; - case 0x11: /* SBIMT */ + case 0x11: /* SBIMT */ sbi_mt = (sbi_mt & ~SBIMT_WR) | (val & SBIMT_WR); break; - } + } return; } diff --git a/VAX/vax860_stddev.c b/VAX/vax860_stddev.c index ee67f5ce..387dceb8 100644 --- a/VAX/vax860_stddev.c +++ b/VAX/vax860_stddev.c @@ -189,7 +189,7 @@ #define RLDS_ATT (RLDS_HDO+RLDS_BHO+RLDS_LOCK) /* att status */ #define RLDS_UNATT (RLDS_CVO+RLDS_LOAD) /* unatt status */ #define RLDS_ERR (RLDS_WDE+RLDS_HCE+RLDS_STO+RLDS_SPE+RLDS_WGE+ \ - RLDS_VCK+RLDS_DSE) /* errors bits */ + RLDS_VCK+RLDS_DSE) /* errors bits */ int32 tti_csr = 0; /* control/status */ int32 tti_buf = 0; /* buffer */ @@ -526,33 +526,33 @@ cso_csr = cso_csr & ~STXCS_STS; switch (fnc) { case RLFC_NOP: - break; + break; case RLFC_CONT: rlcs_bcnt = 0; case RLFC_STS: - rlcs_state = RL_STATUS; + rlcs_state = RL_STATUS; cso_csr = cso_csr & ~CSR_DONE; /* clear done */ - sim_activate (&rlcs_unit, rlcs_swait); - break; + sim_activate (&rlcs_unit, rlcs_swait); + break; case RLFC_ABORT: - rlcs_state = RL_ABORT; + rlcs_state = RL_ABORT; cso_csr = cso_csr & ~CSR_DONE; /* clear done */ - sim_activate (&rlcs_unit, rlcs_swait); - break; + sim_activate (&rlcs_unit, rlcs_swait); + break; case RLFC_WRITE: rlcs_state = RL_WRITE; cso_csr = cso_csr & ~CSR_DONE; /* clear done */ - sim_activate (&rlcs_unit, rlcs_swait); - break; + sim_activate (&rlcs_unit, rlcs_swait); + break; case RLFC_READ: rlcs_state = RL_READ; cso_csr = cso_csr & ~CSR_DONE; /* clear done */ - sim_activate (&rlcs_unit, rlcs_swait); - break; + sim_activate (&rlcs_unit, rlcs_swait); + break; default: printf ("CS: Unknown Command: %d\n", fnc); @@ -1095,7 +1095,7 @@ switch (rlcs_state) { case RL_IDLE: return SCPE_IERR; - case RL_READ: + case RL_READ: if ((cso_csr & CSR_DONE) == 0) { /* buf ready? */ if (rlcs_bcnt == 0) { /* read in whole block */ if ((uptr->flags & UNIT_ATT) == 0) { /* Attached? */ @@ -1127,7 +1127,7 @@ switch (rlcs_state) { break; } sim_activate (uptr, rlcs_swait); /* schedule next */ - break; + break; case RL_WRITE: if ((uptr->flags & UNIT_ATT) == 0) { /* Attached? */ @@ -1156,21 +1156,21 @@ switch (rlcs_state) { csi_int = 1; break; - case RL_ABORT: + case RL_ABORT: if ((cso_csr & CSR_DONE) == 0) { /* buf ready? */ cso_csr = cso_csr | CSR_DONE | /* aborted */ (RLST_ABORT << STXCS_V_STS); cso_buf = 0; rlcs_bcnt = 0; - rlcs_state = RL_IDLE; + rlcs_state = RL_IDLE; if (cso_csr & CSR_IE) csi_int = 1; break; } sim_activate (uptr, rlcs_swait); /* schedule next */ - break; + break; - case RL_STATUS: + case RL_STATUS: if ((cso_csr & CSR_DONE) == 0) { /* buf ready? */ switch (rlcs_sts_reg) { /* which register? */ @@ -1194,14 +1194,14 @@ switch (rlcs_state) { } cso_csr = cso_csr | CSR_DONE | /* returning status */ (RLST_STS << STXCS_V_STS); - rlcs_state = RL_IDLE; + rlcs_state = RL_IDLE; if (cso_csr & CSR_IE) csi_int = 1; break; } sim_activate (uptr, rlcs_swait); /* schedule next */ - break; - } + break; + } return SCPE_OK; } diff --git a/VAX/vax860_syslist.c b/VAX/vax860_syslist.c index 2038f046..49d7db0f 100644 --- a/VAX/vax860_syslist.c +++ b/VAX/vax860_syslist.c @@ -72,7 +72,7 @@ DEVICE *sim_devices[] = { &tmr_dev, &tti_dev, &tto_dev, - &rlcs_dev, + &rlcs_dev, &dz_dev, &vh_dev, &cr_dev, @@ -90,10 +90,10 @@ DEVICE *sim_devices[] = { &tq_dev, &xu_dev, &xub_dev, - &dmc_dev[0], - &dmc_dev[1], - &dmc_dev[2], - &dmc_dev[3], + &dmc_dev[0], + &dmc_dev[1], + &dmc_dev[2], + &dmc_dev[3], &dup_dev, NULL }; diff --git a/VAX/vax_cpu.c b/VAX/vax_cpu.c index 9f1e31ac..da5dc8f4 100644 --- a/VAX/vax_cpu.c +++ b/VAX/vax_cpu.c @@ -1480,7 +1480,7 @@ for ( ;; ) { default: RSVD_ADDR_FAULT; /* end case idxspec */ - } + } switch (disp & (DR_ACMASK|DR_SPFLAG|DR_LNMASK)) { /* case acc+lnt */ case VB: @@ -2954,7 +2954,7 @@ for ( ;; ) { if (op7 < 0) { Read (op8, L_BYTE, WA); Read ((op8 + 7) & LMASK, L_BYTE, WA); - } + } if (op5 >= 0) R[op5] = temp; else Write (op6, temp, L_LONG, WA); @@ -2970,7 +2970,7 @@ for ( ;; ) { if (op7 < 0) { Read (op8, L_BYTE, WA); Read ((op8 + 7) & LMASK, L_BYTE, WA); - } + } if (op5 >= 0) R[op5] = temp; else Write (op6, temp, L_LONG, WA); diff --git a/VAX/vax_io.c b/VAX/vax_io.c index f498a3ec..58a761a6 100644 --- a/VAX/vax_io.c +++ b/VAX/vax_io.c @@ -387,7 +387,7 @@ if (lnt < L_LONG) { int32 t = cqbic_rd (pa); nval = ((val & mask) << sc) | (t & ~(mask << sc)); val = val << sc; - } + } else nval = val; switch (rg) { diff --git a/VAX/vax_sys.c b/VAX/vax_sys.c index 19865134..a7fffc58 100644 --- a/VAX/vax_sys.c +++ b/VAX/vax_sys.c @@ -764,7 +764,7 @@ if ((sw & SWMASK ('A')) || (sw & SWMASK ('C'))) { /* char format? */ for (vp = lnt - 1; vp >= 0; vp--) { c = (int32) val[vp] & 0x7F; fprintf (of, (c < 0x20)? "<%02X>": "%c", c); - } + } return -(lnt - 1); /* return # chars */ } diff --git a/VAX/vax_syscm.c b/VAX/vax_syscm.c index 46225523..883286d2 100644 --- a/VAX/vax_syscm.c +++ b/VAX/vax_syscm.c @@ -27,7 +27,7 @@ 22-May-10 RMS Fixed t_addr printouts for 64b big-endian systems (Mark Pizzolato) 12-Nov-06 RMS Fixed operand order in EIS instructions (W.F.J. Mueller) - 27-Sep-05 RMS Fixed warnings compiling with 64b addresses + 27-Sep-05 RMS Fixed warnings compiling with 64b addresses 15-Sep-04 RMS Cloned from pdp11_sys.c */ @@ -686,6 +686,6 @@ if (*cptr != 0) return SCPE_ARG; /* junk at end? */ for (i = j = 0; i < 3; i++, j = j + 2) { bytes[j] = val[i] & BMASK; bytes[j + 1] = (val[i] >> 8) & BMASK; - } + } return ((2 * (n1 + n2)) - 1); } diff --git a/VAX/vax_watch.c b/VAX/vax_watch.c index 873a12f2..28051db3 100644 --- a/VAX/vax_watch.c +++ b/VAX/vax_watch.c @@ -222,8 +222,8 @@ t_stat wtc_help (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr) { fprintf (st, "Watch Chip (WTC)\n\n"); fprintf (st, "The WTC simulates the MC146818 watch chip. It recognizes the following options:\n\n"); -fprintf (st, " SET WTC TIME=STD standard time mode\n"); -fprintf (st, " SET WTC TIME=VMS VMS time mode\n\n"); +fprintf (st, " SET WTC TIME=STD standard time mode\n"); +fprintf (st, " SET WTC TIME=VMS VMS time mode\n\n"); fprintf (st, "When running in standard mode the current year reported by the watch chip is\n"); fprintf (st, "determined by the date/time of the host system. When running in VMS mode the\n"); fprintf (st, "year is fixed at 1982, which is one of the conditions VMS expects in order to\n"); diff --git a/sim_defs.h b/sim_defs.h index 1612c6ab..ef50766f 100644 --- a/sim_defs.h +++ b/sim_defs.h @@ -178,7 +178,7 @@ typedef unsigned long t_uint64; #define t_uint64 unsigned long long #endif /* end 64b */ #ifndef INT64_C -#define INT64_C(x) x ## LL +#define INT64_C(x) x ## LL #endif #if defined (USE_INT64) /* 64b data */ diff --git a/sim_ether.c b/sim_ether.c index dce87473..d9fed3a2 100644 --- a/sim_ether.c +++ b/sim_ether.c @@ -1229,11 +1229,11 @@ int pcap_sendpacket(pcap_t* handle, const u_char* msg, int len) #if defined(_WIN32) || defined(__CYGWIN__) /* extracted from WinPcap's Packet32.h */ struct _PACKET_OID_DATA { - uint32 Oid; ///< OID code. See the Microsoft DDK documentation or the file ntddndis.h - ///< for a complete list of valid codes. - uint32 Length; ///< Length of the data field - uint8 Data[1]; ///< variable-lenght field that contains the information passed to or received - ///< from the adapter. + uint32 Oid; ///< OID code. See the Microsoft DDK documentation or the file ntddndis.h + ///< for a complete list of valid codes. + uint32 Length; ///< Length of the data field + uint8 Data[1]; ///< variable-lenght field that contains the information passed to or received + ///< from the adapter. }; typedef struct _PACKET_OID_DATA PACKET_OID_DATA, *PPACKET_OID_DATA; typedef void **LPADAPTER; diff --git a/sim_fio.c b/sim_fio.c index a7fbec10..e9222b1c 100644 --- a/sim_fio.c +++ b/sim_fio.c @@ -283,10 +283,10 @@ switch (whence) { break; case SEEK_END: - if (_fstati64 (_fileno (st), &statb)) - return (-1); - fileaddr = statb.st_size + offset; - break; + if (_fstati64 (_fileno (st), &statb)) + return (-1); + fileaddr = statb.st_size + offset; + break; case SEEK_CUR: if (fgetpos (st, &fileaddr)) return (-1); diff --git a/sim_rev.h b/sim_rev.h index 745280d9..7eb068f2 100644 --- a/sim_rev.h +++ b/sim_rev.h @@ -238,7 +238,7 @@ patch date module(s) and fix(es) pdp11_io.c: - fixed Qbus interrupts to treat all IO devices (except clock) as BR4 - - fixed order of int_internal (Jordi Guillaumes i Pons) + - fixed order of int_internal (Jordi Guillaumes i Pons) ppd11_rf.c - fixed bug in updating mem addr extension (Peter Schorn) diff --git a/sim_serial.c b/sim_serial.c index 15dee496..d9b5fdb2 100644 --- a/sim_serial.c +++ b/sim_serial.c @@ -536,7 +536,7 @@ if (RegOpenKeyExA(HKEY_LOCAL_MACHINE, "HARDWARE\\DEVICEMAP\\SERIALCOMM", 0, KEY_ DWORD dwType; DWORD dwValueNameSize = sizeof(list[ports].desc); DWORD dwDataSize = sizeof(list[ports].name); - + /* Enumerate all the values underneath HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM */ while (RegEnumValueA(hSERIALCOMM, dwIndex, list[ports].desc, &dwValueNameSize, NULL, &dwType, (BYTE *)list[ports].name, &dwDataSize) == ERROR_SUCCESS) { /* String values with non-zero size are the interesting ones */