Derniers sujets
» **NEW** EDGE for ORIC !!!!
Hier à 18:53 par drpsy

» ORIX : Release officielles de certains outils/soft
Sam 19 Aoû 2017 - 17:21 par drpsy

» [Jeu] - Athanor 2 la légende des hommes oiseaux
Sam 19 Aoû 2017 - 10:41 par maximus

» 3D isométrique et masques de sprites
Ven 18 Aoû 2017 - 8:01 par drpsy

» [Jeu] - Fer d'Amnukor (le) - Norsoft
Jeu 17 Aoû 2017 - 22:28 par Symoon

» outil de dessin Orixel en développement
Jeu 17 Aoû 2017 - 22:18 par Star42

» ORIC ATMOS sur LE BON COIN
Mer 16 Aoû 2017 - 20:02 par didierv

» rs
Mer 16 Aoû 2017 - 20:00 par didierv

» La flute inca Help ! Help! Demande de solution
Mer 16 Aoû 2017 - 14:08 par Invité

» Load Vader
Mar 15 Aoû 2017 - 16:42 par Symoon

Qui est en ligne ?
Il y a en tout 2 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 2 Invités

Aucun

Le record du nombre d'utilisateurs en ligne est de 29 le Mer 25 Fév 2015 - 14:01
Connexion

Récupérer mon mot de passe

Statistiques
Nous avons 122 membres enregistrés
L'utilisateur enregistré le plus récent est TotoShampoin

Nos membres ont posté un total de 5570 messages dans 401 sujets
Portail ORIC




maxiNoob apprend le C

Poster un nouveau sujet   Répondre au sujet

Page 2 sur 2 Précédent  1, 2

Voir le sujet précédent Voir le sujet suivant Aller en bas

Re: maxiNoob apprend le C

Message  Hialmar le Jeu 7 Jan 2016 - 13:52

J'ai utilisé OSDK sur Tyrann 3 et je n'ai pas eu de pb.
S'il y a des bugs il faut les faire remonter à Dbug.

Je n'ai vu que des remontées de bugs au niveau de XA (donc ASM) et on ne parle pas de ça ici.

Didier, à mon avis pour ce genre de truc il vaut mieux rester en ASM.

_________________
Hialmar
Membre du CEO et de Silicium.
avatar
Hialmar
Admin

Messages : 815
Date d'inscription : 03/03/2014
Age : 47
Localisation : Toulouse

Revenir en haut Aller en bas

Re: maxiNoob apprend le C

Message  Godzil le Jeu 7 Jan 2016 - 16:35

Didier: pas sur de comprendre le probleme
avatar
Godzil

Messages : 106
Date d'inscription : 20/01/2013
Age : 35
Localisation : Entre France et UK

Revenir en haut Aller en bas

Re: maxiNoob apprend le C

Message  Hialmar le Jeu 7 Jan 2016 - 17:00

Ce que veut Didier c'est pouvoir dépasser les limites des 64 Ko (ou 48 Ko si on garde la ROM) en faisant un programme qui se charge dynamiquement par partie.

On aurait par exemple un main et des données globales au démarrage.

Ensuite le main chargerait une bibliothèque de fonctions et les exécuterait.

Un peu plus tard il remplacerait cette biblio par une autre et continuerait son exécution.

On a fait un peu ça avec Tyrann 3 de la façon suivante :
- On démarre avec un premier programme qui s'exécute puis avant de passer la main à un second programme il passe en mode TEXT, planque des données dans la zone HIRES (pour nous les différents personnages et des variables importantes du jeu qui se trouvent dans la sauvegarde).
- On lance le second programme via Sédoric ;
- Le second programme récupère les données planquées en zone HIRES et continue son exécution.

Ca se trouve ici :
https://github.com/hialmar/tyrann3/blob/master/team.c#L269-L273
Et ici :
https://github.com/hialmar/tyrann3/blob/master/team.c#L57-L61

Tout est dans les tests "if (io_needed)" (soit je sauve/charge vraiment la zone HIRES sur/depuis le disque soit je travaille direct sur/avec des données planquées).

Voilà un exemple d'utilisation :
https://github.com/hialmar/tyrann3/blob/master/laby.c#L949-L956
et ensuite :
https://github.com/hialmar/tyrann3/blob/master/dialog.c#L284-L285

Pour la petite histoire, là où ça devient rigolo c'est que nous dans Tyrann 3 on switche parfois entre du C et du Basic Wink

Didier voudrait un truc automatique.


Dernière édition par Hialmar le Jeu 7 Jan 2016 - 17:05, édité 1 fois

_________________
Hialmar
Membre du CEO et de Silicium.
avatar
Hialmar
Admin

Messages : 815
Date d'inscription : 03/03/2014
Age : 47
Localisation : Toulouse

Revenir en haut Aller en bas

Re: maxiNoob apprend le C

Message  Godzil le Jeu 7 Jan 2016 - 17:05

Ca be rien de bien difficile il faut juste utiliser (correctement) des pointeurs de fonction
avatar
Godzil

Messages : 106
Date d'inscription : 20/01/2013
Age : 35
Localisation : Entre France et UK

Revenir en haut Aller en bas

Re: maxiNoob apprend le C

Message  Hialmar le Jeu 7 Jan 2016 - 17:10

Challenge accepted ?

Fais-nous un exemple avec le chargement dynamique et on en reparle.

Je sais faire ça sous Unix avec des .so ou sous Windows avec des DLL mais là on n'a rien de ça et donc il faut tout se peler à la mano et donc comme je le disais plus haut en ASM.

Mais bon on dévie pas mal du sujet de Maximus là donc je propose qu'on poste ça ailleurs.

_________________
Hialmar
Membre du CEO et de Silicium.
avatar
Hialmar
Admin

Messages : 815
Date d'inscription : 03/03/2014
Age : 47
Localisation : Toulouse

Revenir en haut Aller en bas

Re: maxiNoob apprend le C

Message  Godzil le Jeu 7 Jan 2016 - 17:15

Ça marche, en 100% C on est d'accord?
avatar
Godzil

Messages : 106
Date d'inscription : 20/01/2013
Age : 35
Localisation : Entre France et UK

Revenir en haut Aller en bas

Re: maxiNoob apprend le C

Message  Hialmar le Jeu 7 Jan 2016 - 17:27

Ca roule Smile

_________________
Hialmar
Membre du CEO et de Silicium.
avatar
Hialmar
Admin

Messages : 815
Date d'inscription : 03/03/2014
Age : 47
Localisation : Toulouse

Revenir en haut Aller en bas

Re: maxiNoob apprend le C

Message  maximus le Jeu 7 Jan 2016 - 17:30

ma kesce ke cé ke ce charabia ? Very Happy clown
avatar
maximus

Messages : 1083
Date d'inscription : 02/12/2012
Age : 56
Localisation : Nimes

http://cinema.forumactif.org/

Revenir en haut Aller en bas

Re: maxiNoob apprend le C

Message  didierv le Jeu 7 Jan 2016 - 22:54

Godzil a écrit:Ca be rien de bien difficile il faut juste utiliser (correctement) des pointeurs de fonction

Certainement Godzil, mais j'ai bien dit que je ne maitrisais pas le sujet.

Ma réflexion venait de la lecture du code source de Sorcellerie, en pascal, qui opere avec des segments.
J'ai retrouvé la page internet qui parlait d'un équivalent avec CC65 qui gere apparemment les overlays et les segments... je l'avais imprimée l'année dernière mais le site est apparemment mort Crying or Very sad
D'ou ma réflexion. Je n'avais pas envie de me lancer dans un projet 100% assembleur ou c'est clair que l'on peut le faire.

_________________
DidierV - CEO Mag
alias coco.oric sur Defence-Force
avatar
didierv

Messages : 468
Date d'inscription : 19/01/2014
Age : 54
Localisation : Nord de la France

http://www.dmacoco.fr

Revenir en haut Aller en bas

Re: maxiNoob apprend le C

Message  assinie le Ven 8 Jan 2016 - 11:00

cc65 peut effectivement gérer des overlays mais cela n'a été implémenté que pour certaines machines (Apple, C64,...) pour lesquelles le support de l'OS est inclus.
Il y a même des exemples fournis avec les sources cc65.

Les compilateurs Pascal prenaient ça en charge (la série des Turbo Pascal, Pascal USCD, ...).
J'avais trouvé une page sur le Web qui expliquait les différentes méthodes utilisées, il faudrait que je la retrouve.

En gros, il s'agit d'edition de liens différée dynamique. L'appel à une fonction qui se trouve dans une librairie est remplacée par le nom de la librairie et un identifiant de la fonction dans cette librairie.
Lorsque le programme veut exécuter la fonction, il regarde si la librairie est chargée en mémoire et fait ensuite un saut vers la fonction.
La seule "difficultée" étant la gestion des librairies en mémoire.

Il doit être possible d'ajouter le support d'un OS pour l'Oric à cc65 ou à l'OSDK pour pouvoir le faire.
avatar
assinie

Messages : 171
Date d'inscription : 09/02/2014

Revenir en haut Aller en bas

Re: maxiNoob apprend le C

Message  Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Page 2 sur 2 Précédent  1, 2

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous pouvez répondre aux sujets dans ce forum