From: "Gary Slaughenhaupt" Newsgroups: comp.os.msdos.djgpp Subject: Newbie stuck. Date: Tue, 29 Aug 2000 16:24:20 -0600 Organization: National Semiconductor, Santa Clara Lines: 46 Message-ID: <8ohd8o$rsp$1@voder.nsc.com> NNTP-Posting-Host: catalpa.ia.nsc.com X-Trace: voder.nsc.com 967587928 28569 147.5.204.236 (29 Aug 2000 22:25:28 GMT) X-Complaints-To: usenet AT voder DOT nsc DOT com NNTP-Posting-Date: 29 Aug 2000 22:25:28 GMT X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com I am attempting to convert this function: int ShowXpressRomInfo() { unsigned char far * pBIOSTable = (unsigned char far *)0xF0000000L; unsigned char xpressStart[12]= {'X','p','r','e','s','s','S','t','a','r','t',0}; unsigned char xpressInfo[250]; int x = 0; // Get BIOS Info Table do { if (_fmemcmp((unsigned char far *) &xpressStart,\ pBIOSTable,\ _fstrlen((unsigned char far *) &xpressStart))== 0) { pBIOSTable+=12; break; } else pBIOSTable++; } while (pBIOSTable <= (unsigned char far *) 0xF000FFF3L); I modified it to this: int ShowXpressRomInfo() { unsigned char * pBIOSTable = (unsigned char *)0xF0000000L; unsigned char xpressStart[12]= {'X','p','r','e','s','s','S','t','a','r','t',0}; unsigned char xpressInfo[250]; int x = 0; // Get BIOS Info Table do { if (memcmp((unsigned char *) &xpressStart,\ pBIOSTable,\ strlen((unsigned char *) &xpressStart))== 0) { pBIOSTable+=12; break; } else pBIOSTable++; } while (pBIOSTable <= (unsigned char *) 0xF000FFF3L); But I get a segment violation when attempting to do the memcmp. Any advice would be appreciated.