delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/08/29/18:30:21

From: "Gary Slaughenhaupt" <gary DOT slaughenhaupt AT ia DOT nsc DOT com>
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.


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019