Outils de developpement 68k sous Linux ?

Cette catégorie traite de développements récents pour nos vieilles machines, applications, jeux ou démos... Amis programmeurs, c'est ici que vous pourrez enfin devenir célèbres!

Modérateurs : Papy.G, fneck, Carl

gotcha
Messages : 2748
Inscription : 30 mars 2017 11:39
Localisation : Isère
Contact :

Re: Outils de developpement 68k sous Linux ?

Message par gotcha »

Bon, j'avance bien sur la recréation d'un ancien projet 68000 avec un gcc m68k moderne.

Code : Tout sélectionner

m68k-linux-gnu-gcc (Ubuntu 9.4.0-1ubuntu1~20.04) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
La majeur partie du projet est en C, du vieux C du style suivant, et ça passe:

Code : Tout sélectionner

void enqueue(index_queue, index_proc)
int index_queue, index_proc;
{
Il y a aussi des fichiers assembleur. Par chance, ces fichiers étaient déjà en syntaxe gnu de l’époque (gcc68, as68, ar68, je ne sais pas quelle version de gcc c'était) et la seule chose que j'ai dû changer est d'ajouter un '%' devant le nom des registres.
Amstrad CPC et Goupil power :mrgreen:
Bénévole à l'association pour un conservatoire de l’informatique et de la télématique (https://www.aconit.org)
__sam__
Messages : 7909
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Outils de developpement 68k sous Linux ?

Message par __sam__ »

Oh punaise, une vieille syntaxe K&R. Moi j'ai du l'abandonner car GCC grogne. Ce ne sont que des warnings, mais bon; et puis c'est mal vu de nos jours des fonction sans déclaration de type. Pourtant ca marche:

Code : Tout sélectionner

$ cat tst.c
main(i) {
        return i>=2 ? i*main(i-1) : 1;
}

$ gcc tst.c
tst.c:1:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
    1 | main(i) {
      | ^~~~
tst.c: In function ‘main’:
tst.c:1:1: warning: type of ‘i’ defaults to ‘int’ [-Wimplicit-int]

$ ./a.out ./a.out ./a.out ./a.out ./a.out ; echo "5! = $?"
5! = 120
(une façon de calculer la factorielle)

En fait cette syntaxe n'est plus officielle depuis que l'ISO C-99 a banni la règle de l'entier implicite (une variable sans type était entière).
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Avatar de l’utilisateur
fxrobin
Messages : 102
Inscription : 07 mars 2019 13:51
Localisation : RENNES
Contact :

Re: Outils de developpement 68k sous Linux ?

Message par fxrobin »

Salut,

apparement tu as bien avancé sur ta chaine de cross-compilation 68k, mais si jamais ça peut t'aider, voici certains de mes articles à ce sujet :
https://www.fxjavadevblog.fr/m68k-cross-compiling/

et application entre Assembleur et C :
https://www.fxjavadevblog.fr/m68k-atari ... bly-and-c/

avec un cas d'usage concret :
https://www.fxjavadevblog.fr/m68k-atari-st-ym-player/

Bonne lecture
Fan d'ATARI 2600, de THOMSON MO5-TO8 et d'ATARI ST
Mes articles : https://www.fxjavadevblog.fr/retro-programming/
Membre du groupe wide-dot.
Répondre