|
Archives
D Programming
DD.gnu digitalmars.D digitalmars.D.bugs digitalmars.D.dtl digitalmars.D.dwt digitalmars.D.announce digitalmars.D.learn digitalmars.D.debugger C/C++ Programming
c++c++.announce c++.atl c++.beta c++.chat c++.command-line c++.dos c++.dos.16-bits c++.dos.32-bits c++.idde c++.mfc c++.rtl c++.stl c++.stl.hp c++.stl.port c++.stl.sgi c++.stlsoft c++.windows c++.windows.16-bits c++.windows.32-bits c++.wxwindows digitalmars.empire digitalmars.DMDScript |
c++ - using functions defined in C header files
I wrote the following application, and it uses the function _bios_disk that is
defined in the bios.h file. I imported the file, but I get the following error
message during compilation:
"
diskread02.obj(diskread02)
Error 42: Symbol Undefined _bios_disk
--- errorlevel 1
"
This has been a repeating problem for me so ANY help would be appreciated.
#include <bios.h>
#include <stdio.h>
#include <stdlib.h>
void main ()
{
// declarations:
int i;
int result;
static char dbuf[512];
struct diskinfo_t
{
int drive; // drive number for c:
int head;
int track;
int sector;
int nsectors;
void* buffer;
};
struct diskinfo_t diskinfo;
diskinfo.drive = 2;
diskinfo.head = 0;
diskinfo.track = 0;
diskinfo.sector = 1;
diskinfo.nsectors = 1;
diskinfo.buffer = dbuf;
// operations:
printf ("attempting to read from drive c:\n");
result = _bios_disk (2, &diskinfo);
if ((result & 0xff00) == 0)
{ printf ("disk read from c: successful.\n"); }
else
{ printf ("disk read operation failed. \n"); }
for (i = 0; i <= 512; i ++)
{ printf ("0x%02x ", dbuf[i]); }
}
Apr 28 2006
I am guessing that you are trying to compile the file for 95/NT. Compile it and target DOS. newbie wrote: Apr 28 2006
|