1

Jest jakiś edytor i kompilator C++ dla atari Ste ?
Zależało by mi na czymś szybkim. Wiem , że niektóre wstawki będę musiał robić w asemblerze żeby wszystko szybko działało.

2

Jest cross kompilator, którego używam do wszystkiego i działa wyśmienicie.
http://vincent.riviere.free.fr/soft/m68k-atari-mint/

Na gołego STe nie ma c++.

What can be asserted without proof can be dismissed without proof.

3

i zapomnij o bibliotekach standardowych ;)...  a edytor każdy pctowy..

=========================================
[www] https://nokturnal.pl
[ 16/32 bit Atari development wiki] https://bus-error.nokturnal.pl

4

A sam język C ?? nie chce wszystkiego pisać w asemblerze.

Bezpośrednio na ST: Pure C, Lattice C, Sozobon C, AHCC (to jest chyba najlepsze, bo ciągle wspierane)

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

6

no to masz więcej opcji np. PureC. Ma całe środowisko plus debugger plus fajny system pomocy (o ile masz w wersji angielskiej)..  Ma też własny assembler, tylko musiałbyć ogarnąć robienie plików projektowych.
Biblioteki standardowe są i nie żrą tyle pamięci co w gcc. No i parametry funkcji są przekazywane przez rejestry, nie przez stos jak w gcc.. Może tylko wkurzać składnia (K&R o ile mnie pamięć nie myli).

=========================================
[www] https://nokturnal.pl
[ 16/32 bit Atari development wiki] https://bus-error.nokturnal.pl

7

I jeszcze vbcc przychodzi mi do głowy

=========================================
[www] https://nokturnal.pl
[ 16/32 bit Atari development wiki] https://bus-error.nokturnal.pl

8

saulot napisał/a:

Ma całe środowisko plus debugger plus fajny system pomocy (o ile masz w wersji angielskiej)

Czyli Atari z klawiaturą qwertz odpada.

Czy w Pure C napisano jakieś gry?

9

gotham napisał/a:
saulot napisał/a:

Ma całe środowisko plus debugger plus fajny system pomocy (o ile masz w wersji angielskiej)

Czyli Atari z klawiaturą qwertz odpada.

Chodzi o PureC w wersji angielskiej, klawiaturę możesz mieć nawet Azerty ;)

Sikor umarł...

10

wszystkie gry zrobione przez reservoir gods są w pure c, jest gotowa biblioteka (godlib): http://www.reservoir-gods.com/source.htm

=========================================
[www] https://nokturnal.pl
[ 16/32 bit Atari development wiki] https://bus-error.nokturnal.pl

W Pure C napisano sporo softu na ST, ale dokładnych liczb nikt Ci nie poda, bo nikt ich nie zna.

Na ST najlepiej użyć AHCC który jest 'duchowym' spadkobiercą Pure C (podobne IDE, pliki projektu, itp), i do dziś jest rozwijane.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

12

AHCC ja bym olal. To kompilator z zamierzchlych czasow.
Jakby ktos  przeportowal z 286.   

Jak pisza sami autorzy

32-bit ints aren't fully supported and sources from other platforms typically don't work properly with 16-bit ints. I'd recommend using AHCC only for Atari programs or things written from scratch

Jak atari to niestety tylko gcc i kroskompilacja.
Reszta kompilatorow C na atari to dziadostwo i szkoda na to czasu.

Tylko że GCC na ST jest nieużywalne, a na Falconie i TT dopiero ma sens jak masz TT Ram.

AHCC jest specjalnie przygotowane do pisania oprogramowania na Atari i jest ciągle wspierane prze autora. To że iny ma 16 bitów to nie problem, bo jest jeszcze long int.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

14

Moim zdaniem to takie niepotrzebne umartwianie sie na sile.
Jak gcc nie dziala za dobrze na atari, to lepiej kompilowac na pc, a tylko uruchamiac na atari.

Pytanie było o kompilatory dla Atari, nie dla PC.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

16

Czy oprócz m68k-atari-mint istnieje jakiś cross compilator dla ST?
Czy m68k-atari-mint zawsze daje tak duży kod? Napisałem prosty programik i zajął prawie 500kb.
Biblioteki są skompilowane bez podziału na sekcje, dodanie -Wl,--gc-sections nic nie daje, linkowana jest cała biblioteka ze wszystkimi funkcjami. Jak to obejść?

Jeszcze jedna sprawa, jak się sprawuje biblioteka SDL na ST?

17

Program zajmuje tyle, bo wciągane są biblioteki standardowe. Musisz użyć własnego startupu, wyłączyć linkowanie bibliotek standardowych i dostarczyć kilku funkcji matematycznych (dzielenie/mnożenie typów całkowitych itp..)
Możesz sobie podejrzeć w menusie do HxC (https://sourceforge.net/p/hxcfloppyemu/code/HEAD/tree/). Jest też http://www.atariforge.org/gf/project/libcmini.

O SDL na zwykłym ST zapomnij, na zwykłym f030 ledwo ciągnie.

=========================================
[www] https://nokturnal.pl
[ 16/32 bit Atari development wiki] https://bus-error.nokturnal.pl

Problemem jest brak dynamicznych bibliotek, więc większość tego kodu to crt0 które aby być ze wszystkim kompatybilne, musi sporo zrobić na starcie. Można standardowe crt0 zastąpić własnym i wtedy się to bardzo zmniejsza, robił tak np. Draco030: http://www.obta.uw.edu.pl/~draco/atari/atari.html. Ale i tak, jak będziesz linkował to będą szły całe biblioteki niestety.

Co do SDL, to na gołym ST raczej zapomnij (za wolna), ale na Falconie co mniej skomplikowane rzeczy chodzą, na 060 nawet nieco bardziej skomplikowane. Jeśli chcesz pisać tylko dla Atari, to polecam zapoznać się z biblioteką GODLIB, ale będziesz ja musiał przeportować do GCC, co może być problematyczne (http://rg.atari.org/source.htm), ewentualnie pozostaje użycie Pure C w którym została napisana.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

19

Dzięki za informacje, wszystko się zgadza, zapominałem o bibliotekach standardowych.

Nie wiem czy będę coś pisał poważnego na ST, dla odmiany chcę sobie popisać na coś innego. Wena wygasła, wypalenie zawodowe. Mam kilka różnych platform i robię przegląd narzędzi programistycznych.

Co do Pure C, to chyba najlepiej będzie działał na emulatorze?

20

PROTON napisał/a:

Czy oprócz m68k-atari-mint istnieje jakiś cross compilator dla ST?

Jesli mowimy o crosskompilaci C to oprocz gcc Jest jeszcze VBCC ( http://sun.hasenbraten.de/vbcc/ ) . Ale to chyba tylko C a nie C++  choc nie wczytywalem sie. Sam nie uzywalem (100% asm hehe)

Maciek
--------
Atari 65XE + Ultimate 1MB + Stereo + SIO2SD | Atari 520STE + 4MB + UltraSatan | Atari Falcon 030 + CT60e + 14MB ST + 256MB TT + 68882  + CF + Netusbee | Amiga 500 + 1MB + Gotek | Amiga 600 + 2MB Chip + 8MB Fast + CF

21

Całkiem wygodnie pisze się na PC w Notepad++ z dwoma odpalonymi równocześnie emulatorami Steem.

Jeden emulator działa z maksymalną szybkością, ma ustawione 14 MB RAM i rozdzielczość "extended", np. 1280x960. Na nim jest otwarty AHCC z tym samym projektem, który właśnie rzeźbimy na PC. Po edycji plików w Notepad++ wystarczy skompilować na emulatorze programik (o ile dobrze pamiętam, klawisze ALT+X) i na drugim emulatorze działającym z normalną szybkością można sobie testować program (przydaje się skrót do programu na desktopie).

AHCC sam sprawdza daty plików i kompiluje te, które były modyfikowane po ostatniej kompilacji. W razie czego można też po prostu skasować stary plik *.O żeby wymusić ponowną kompilację.

22

VLX próbowałeś Aranym JIT? Kompilacja powinna być ze 100 razy szybsza

Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org