Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [C] COM Datei erstellen (https://www.delphipraxis.net/148360-%5Bc%5D-com-datei-erstellen.html)

Neutral General 28. Feb 2010 13:24


[C] COM Datei erstellen
 
Hallo,

Ich scheitere gerade daran eine einfache COM Datei zu erstellen. Habe mir Turbo C runtergeladen.
Damit wollte ich eine 16-Bit .COM Datei erstellen.

Bisher leider erfolglos.

test.c

Code:
int main()
{

}
Aufruf des Turbo C Compilers:

Zitat:

tcc -mt -c test.c
Bekomme dann eine .obj Datei. Die will ich nun linken:

Zitat:

tlink TEST.OBJ /n /t
Bekomme allerdings folgende Fehlermeldung:

Zitat:

Cannot generate COM file : invalid initial entry point address
Wo kann ich jetzt den Entry point auf 0x100 einstellen?

Gruß
Neutral General

Neutral General 1. Mär 2010 15:58

Re: [C] COM Datei erstellen
 
*push*

Dezipaitor 2. Mär 2010 21:04

Re: [C] COM Datei erstellen
 
Du solltest das die alten Hasen im Embarcadero Forum fragen.

Reinhard Kern 3. Mär 2010 17:34

Re: [C] COM Datei erstellen
 
Zitat:

Zitat von Neutral General
Wo kann ich jetzt den Entry point auf 0x100 einstellen?

Hallo,

würde mich wundern wenn man das müsste, weil das der Default-Wert ist. Vielleicht meint der Linker aber was anderes und mag die leere main-routine nicht. Ich würde mal ein Hallo World reinhacken.

Gruss Reinhard

Dezipaitor 3. Mär 2010 20:17

Re: [C] COM Datei erstellen
 
Hat man nicht immer eine EXE erzeugt und die small C Lib eingebunden und dann das Zeugs mit Exe2Com in ein Memoryabbild konvertiert? Musst man eben alles auf 64kb beschränken.
Aber das ist echt laaaang her.

Reinhard Kern 3. Mär 2010 23:27

Re: [C] COM Datei erstellen
 
Zitat:

Zitat von Dezipaitor
Hat man nicht immer eine EXE erzeugt und die small C Lib eingebunden und dann das Zeugs mit Exe2Com in ein Memoryabbild konvertiert? Musst man eben alles auf 64kb beschränken.
Aber das ist echt laaaang her.

Hi,

bei MASM war das jedenfalls so. Hier mein "Makefile" von ca. 1990:
masm %1,%1;
if errorlevel 1 goto :notcorr
link %1,%1;
if errorlevel 1 goto :notcorr
exe2bin %1.exe %1.com
:notcorr

Wird bei Borland nicht so viel anders gewesen sein.

Gruss Reinhard


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz