16 bit x86 compiler fuer linux
-
hi!
ich hab ein riesen problem und zwar: ich suche einen guten 16 bit compiler fuer die x86 architektur unter linux! ich hab schon eienen compiler gefunden den bcc! aber der stellt mich nicht zufrieden da ich das: nicht kompilieren kann: char FAR *pointername; oder char far *pointername;
nun suche ich einen compiler der das kann! da ich das mit den far pointern ja nicht umgehen kann oder?
waere euch sehr verbunden waenn ihr mir so schnaell wie moeglich helfen koenntet!
DANKE!!
-
was spuckt der compiler denn für eine fehlermeldung aus, wenn er auf ein 'far' trifft?
-
der C code
/* * * ... * */ int main(){ char *text = "Hi!"; char far *vidMem = (char far*) 0xB800; while(*text){ *vidMem = *text; *vidMem++; *vidMem = 7; *vidMem++; *text++; } return 0; }
kernel.c:11.14: error: need ';' kernel.c:11.22: error: vidMem undeclared kernel.c:11.22: error: illegal indirection kernel.c:11.33: error: illegal type name kernel.c:11.33: error: need ')' kernel.c:11.34: error: bad expression kernel.c:11.41: error: illegal indirection kernel.c:11.41: error: need ';' kernel.c:14.10: error: illegal indirection kernel.c:15.11: error: illegal indirection kernel.c:16.10: error: illegal indirection kernel.c:17.11: error: illegal indirection
der compiler:
http://dir.filewatcher.com/d/FreeBSD/4.2-release/i386/bcc-1995.03.12.tgz.79915.htmlder compilebefehl
bcc -S kernel.c -o kernel.asm
-
naja, bcc heisst wohl 'bruce's c compiler'. ich dachte du meinst ein borland teil
kann sein, dass der einfach kein 'far' kennt, also nur 64k dos-programme kann. versuch einfach mal, das 'far' rauszuschmeissen, vielleicht geht's dann schon. wenn nicht: ich glaub' linux hat so'ne dos-emulation unter der auch echte dos-programme laufen, also so'n borland-compiler. ...oder vielleicht geht watcom c++ (kann dos programme, die ide könnte unter 'wine' laufen). falls alle nicht hilft musste warten bis sich die linux-profis hier melden. ich kenne mich leider nicht aus damit.