Einfachen C-Compiler für den 8086 unter Win10.

#6132262
Für den 8086 gibt es kaum noch gebrauchbare C-Compiler.
OpenWatcom ist da noch eine der besseren Wahlmöglichkeiten.

Darüber hinaus gibt es eigentlich nur die Klassiker wie z.B. Borland 
oder Turbo C. Die laufen in DOSBox recht gut, auch unter Windows 10. Ob 
es den bcc ("Bruce's C Compiler") auch für Windows gibt, weiß ich nicht. 
Aber das ist alles K&R oder maximal ANSI-C.
#6132295
S. R. schrieb:
> OpenWatcom ist da noch eine der besseren Wahlmöglichkeiten.

Der von Walter Bright / Digital Mars ist es auch. War neben einem C 
Compiler damals der erste C++ Compiler mit x86-Code statt C-Code als 
Ergebnis, unter dem Namen Zortech. Walter interessiert sich zwar seit 
langem mehr für sein Kind D, als für C/C++, aber die ganze Historie von 
16-Bit DOS über 32-Bit DOS, 16-Bit Windows bis Win32 ist noch dabei.

Man darf bei Compilern für 16-Bit x86 natürlich keine Sprachstandards 
erwarten, die nicht existierten, als diese Plattform relevant war. Als 
sie existierten, brauchte niemand mehr modernes C auf 16-Bit x86. Aber 
ANSI C gibts natürlich, und eben C++, i.W. auf Stroustrup-Stand.
#6132343
Ich werfe Mal den BCC in die Runde 5.0 oder so kann man kostenlos als 
Comandline Version runterladen. Solange man nicht cpp als Endung 
verwendet ist das ein reiner C Compiler, es sei denn man setzt den 
entsprechenden Switch.
V5 war wohl die letzte Version.
Ich benutzt das immer noch für kleine Cmdline Tools.

Turbo C würde ja schon genannt kann aber nur DOS Code was unter W10 
etwas umständlich ist, da das Ergebnis nur in der DOS Box funktioniert.

Thomas
#6132380
A. K. schrieb:
> Man darf bei Compilern für 16-Bit x86 natürlich keine Sprachstandards
> erwarten, die nicht existierten, als diese Plattform relevant war.

Naja, für den Z80 gibt es mit SDCC durchaus einen modernen, 
optimierenden Compiler. Nur für die 16-bittigen x86er hat sich (leider) 
niemand die Mühe gemacht.

Thomas Z. schrieb:
> Turbo C würde ja schon genannt kann aber nur DOS Code was unter W10
> etwas umständlich ist, da das Ergebnis nur in der DOS Box funktioniert.

Das betrifft jeden anderen 8086-Code auch.
Aber dem TO ging es auch um eine FPGA-Plattform, da ist das eher egal.
Gast #6132666
A. K. schrieb:
> Johannes S. schrieb:
>> Die Intel Compiler? Wüsste jetzt allerdings nicht wo man die noch
>> bekommt.
>
> Hat es tatsächlich einen Intel C Compiler für 16 Bit x86 gegeben?

Ja

https://software.intel.com/en-us/forums/intel-c-compiler/topic/672355

Der Watcom oder Dmc von Digitalmars sind aber uptodate und gibt es auch 
als x64 versionen mit denen man immer noch 16BIT DOS exen bauen kann
Beitrag #6133208 wurde von einem Moderator gelöscht.
#6133709
Peter B. schrieb:
> Jetzt suche ich einen ASM um eine Obj zu erzeugen.

Da wäre ja dann TASM zu erwähnen.  Die letzte Version 5.0 geht auch 
direkt unter W10. Ältere Versionen genau wie TurboC via Dosbox.
TASM versteht auch Masm Syntax  Handbücher sind online als PDF verfügbar 
und wie alle alten Borland Docs sehr gut.

Thomas
Gast #6133728
TASM hatte ich damals im Paket mit Turbo Pascal 6.0 erhalten ... und als 
ich dann Borland C++ auch erstanden hatte, hatte ich den TASM dann 
gleich 2 mal.

In der letzten Version war der TASM sogar "objektorientiert" (was mir 
damals schon sehr an den Haaren herbeigezogen vorkam).

Also: einmal nach TASM suchen (oder nach dem MASM von Microsoft, wobei 
die Kombination von Turbo C und dem TASM wohl die bessere sein dürfte).
Gast #6134444
Peter B. schrieb:
> Ich  in ein bisschen 8086 süchtig geworden durch den MiSTer und durch
> den 8086/486-Core.

Schau dir am besten auch noch FreeDos an (für die VM z.B) und besorge 
dir nach Möglichkeit noch einen Rechner, mit dem du sinnvollerweise von 
Dosdisketten (o.ä) booten kannst.
Mit dem .com Format kann man einfach im Hexeditor seinen Code 
abspeichern und das läuft dann, falls fehlerfrei. Besser aber (!) vorher 
in einer VM den Code testen und optimieren.


( https://en.wikipedia.org/wiki/COM_file )
( https://www.freedos.org/ )
( https://thestarman.pcministry.com/asm/debug/debug.htm )
( https://math.berkeley.edu/~vojta/ ) (debugx für 32 Bit)

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 6 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.