Derniers sujets
» Arttu
Aujourd'hui à 7:26 par Dom50

» Moment musical....
Hier à 23:52 par Moonchild

» CEO-MAG 345 et VISU HIVERNALE
Hier à 23:35 par laurentd75

» musique en c
Hier à 15:23 par Ladywasky

» Comment mettre le son de l'oric atmos sur un TV ?
Mar 15 Jan 2019 - 13:33 par romu3

» The quest of the Holly Grail
Lun 14 Jan 2019 - 21:46 par didierv

» **NEW** EDGE for ORIC !!!!
Lun 14 Jan 2019 - 19:28 par Symoon

» Codage d'une carte déroulante en BASIC, C et Assembleur
Dim 13 Jan 2019 - 21:40 par laurentd75

» Combien de jeux d'aventure sur oric ?
Dim 13 Jan 2019 - 20:29 par romu3

» Nemausus: RPG du CEO
Dim 13 Jan 2019 - 8:01 par Voyageur

» Archives du site Oric Games
Ven 11 Jan 2019 - 23:01 par kenneth

» ~High Score Challenge ~
Ven 11 Jan 2019 - 20:46 par Dom50

» BASIC - Tirage au sort aléatoire - fonction RND()
Ven 11 Jan 2019 - 13:57 par maximus

» Tyrann I
Ven 11 Jan 2019 - 2:22 par Ladywasky

» passage d'une variable du C à l'assembleur à l'aide de la fonction asm();
Jeu 10 Jan 2019 - 16:37 par drpsy

Qui est en ligne ?
Il y a en tout 5 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 5 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 165 membres enregistrés
L'utilisateur enregistré le plus récent est retroric

Nos membres ont posté un total de 7896 messages dans 590 sujets
Portail ORIC




GRAB et les tableaux

Aller en bas

GRAB et les tableaux

Message par Hialmar le Mer 24 Sep 2014 - 11:27

J'ai un gros pb que je n'arrive pas à résoudre pour le jeu qu'on code Maximus et moi.

Voilà ce que fait le programme :
- on a des données dans des fichiers Sédoric qui sont mappés en #A000 (et donc chargés dans la partie écran HIRES alors que je suis en mode TEXT sans GRAB) ;
- une fois le fichier chargé en mémoire on recopie les valeurs récupérées avec des PEEK dans des tableaux ;

Ca marchait très bien jusqu'à ce qu'on commence à avoir des problèmes de taille mémoire.

Du coup j'ai ajouté des GRAB et là ça bugge sévère.

Ce que j'essaie de faire :
1- en TEXT sans GRAB ; charger les données fichiers (depuis #A000 comme avant) ;
2- une fois tout chargé, faire le GRAB

Et là apparemment j'ai des tableaux qui sont modifiés (plus aucune valeur présente). Je suppose que GRAB tripatouille les pointeurs des tableaux.

Est-ce que je peux me débrouiller avec plusieurs HIMEM ?
Ca n'a pas l'air recommandé.
Si vous avez d'autres idées je suis preneur.
avatar
Hialmar
Admin

Messages : 837
Date d'inscription : 03/03/2014
Age : 48
Localisation : Toulouse

Revenir en haut Aller en bas

Re: GRAB et les tableaux

Message par Hialmar le Mer 24 Sep 2014 - 14:01

Bon j'ai testé le fait de refaire des HIMEM et ça ré-initialise les tableaux.

Du coup pour l'instant j'ai laissé un HIMEM à 40959 (juste au dessous de #A000) juste après le GRAB ce qui me donne 2 Ko de plus.

S'il manque encore de la mémoire je remonterais le HIMEM et l'emplacement des chargements. Je sais que je prends moins de 1 Ko à chaque chargement donc je peux encore gagner 4 Ko.

Edit: tant qu'à faire de remonter je pense que je virerais le HIMEM et que je ferais mes entrées/sorties dans l'emplacement du deuxième jeu de caractères (B800 à BB80) comme recommandé par Dbug.
Au pire si on veux l'utiliser il suffira de charger le jeu de caractères après les lectures des données disquette.
avatar
Hialmar
Admin

Messages : 837
Date d'inscription : 03/03/2014
Age : 48
Localisation : Toulouse

Revenir en haut Aller en bas

Re: GRAB et les tableaux

Message par Symoon le Dim 28 Sep 2014 - 8:20

Hello. J'imagine qu'on parle de tableaux définis en Basic (et donc gérés par le système) pas de tableaux que tu gères toi-même ?
Quoi qu'il en soit tu as aussi la possibilité d'utiliser la RAM Overlay: Sedoric réserve, de mémoire, 3 pages (256 octets chacune) comme buffers de travail. Tu peux en utiliser un sans problème je pense, mais il faut donc avoir le petit programme assembleur qui permet de basculer de la Rom Oric à la RAM Overlay (très court, genre 6 octets).
Voir Sedoric à Nu pour ces zones (j'écris tout de mémoire là).

Sinon il n'existe pas une commande Sedoric pour sauver/charger directement des tableaux Basic sur disquette ?
avatar
Symoon

Messages : 515
Date d'inscription : 26/04/2014

Revenir en haut Aller en bas

Re: GRAB et les tableaux

Message par Hialmar le Dim 28 Sep 2014 - 9:20

Merci pour l'info mais s'il n'y a que 3 * 256 ce ne sera pas suffisant car mon tableau le plus grand fait presque 1 Ko.

Non, il n'y a rien d'équivalent à STORE et RECALL en Sedoric. On aurait pu utiliser les fichiers séquentiels mais je pense que c'est plus lent que ce que je fais et j'ai eu des pbs avec.
avatar
Hialmar
Admin

Messages : 837
Date d'inscription : 03/03/2014
Age : 48
Localisation : Toulouse

Revenir en haut Aller en bas

Re: GRAB et les tableaux

Message par Symoon le Dim 28 Sep 2014 - 11:12

Si tu sais exactement comment tu stockes tes tableaux, tu peux peut-être les organiser pour les sauver par blocs de 256 octets ? Pour rappel 256 octets = 1 secteur sur la disquette (curieusement Wink)
EDIT: au fait je répondais dans l'idée de faire le chargement d'un tableau en plusieurs fois ! 1Ko = 4 chargements de 256 octets.
Tu ne pourras pas, je pense, utiliser les 3 buffers Sedoric en même temps. Mais un buffer de 256 octets c'est tout à fait jouable. Comme ça en bonus, plus de problème de HIMEM...
avatar
Symoon

Messages : 515
Date d'inscription : 26/04/2014

Revenir en haut Aller en bas

Re: GRAB et les tableaux

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

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