undefined4 strappingCheck(void) { uint strapMSOvariant; char *pcVar1; int strapChannelNum; uint strapBoardRev; int unaff_r29; _PEPAR = 0; _PESO = 0; _PEDIR = 0; _PEODR = 0; /* Check PE15, PE16, PE17 */ strapBoardRev = _PEDAT >> 0xd & 4 | _PEDAT >> 0xf & 2 | _PEDAT >> 0x11 & 1; if (strapBoardRev == 0) { strapChannelNum = 4; strapMSOvariant = 1; } else { /* Check PA14 */ strapChannelNum = (-(uint)((_PEDAT >> 0xe & 1) == 0) & 2) + 2; /* Check PA11 */ strapMSOvariant = ((uint)(byte)(((_PEDAT & 0x800) == 0) << 1) << 0x1c) >> 0x1d; } *(uint *)(unaff_r29 + 0x7c) = strapBoardRev; *(int *)(unaff_r29 + 0x80) = strapChannelNum; *(uint *)(unaff_r29 + 0x84) = strapMSOvariant; consolePrintString("Board: Tektronix Fusion MPC870 Main Board\n"); consolePrintString(" Version: %i (",*(undefined4 *)(unaff_r29 + 0x7c)); switch(*(undefined4 *)(unaff_r29 + 0x7c)) { case 0: pcVar1 = "PROTO1) "; break; case 1: pcVar1 = "GREENWORM) "; break; case 2: pcVar1 = "CHAR) "; break; case 3: pcVar1 = "PRE-QUAL) "; break; case 4: pcVar1 = "QUAL) "; break; default: pcVar1 = "!!*UNDEFINED board type*!!) "; } consolePrintString(pcVar1); consolePrintString("%0d channel ",*(undefined4 *)(unaff_r29 + 0x80)); if (*(int *)(unaff_r29 + 0x84) == 0) { pcVar1 = "DPO\n"; } else { pcVar1 = "MSO\n"; } consolePrintString(pcVar1); return 0; }