Derniers sujets
» OSDK - verbosité du code généré par LCC (RCC16)...
Aujourd'hui à 11:13 par Dbug

» Chargement d'un programme depuis une carte mémoire (SD, clé USB...) sur Oric Atmos?
Aujourd'hui à 10:09 par Remy13

» Désactiver le son des touches
Hier à 18:43 par laurentd75

» CEO-MAG 345 et VISU HIVERNALE
Hier à 9:14 par Symoon

» Fake news clavier et recherche forum
Hier à 8:23 par Symoon

» outil de dessin Orixel en développement
Ven 18 Jan 2019 - 16:55 par maximus

» Maj http://orix.oric.org, boitier 3D et Twilighte card V0.5
Ven 18 Jan 2019 - 11:37 par kenneth

» Moment musical....
Jeu 17 Jan 2019 - 23:31 par Ladywasky

» **NEW** EDGE for ORIC !!!!
Jeu 17 Jan 2019 - 23:12 par Symoon

» Arttu
Jeu 17 Jan 2019 - 22:52 par kenneth

» musique en c
Jeu 17 Jan 2019 - 15:20 par laurentd75

» 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

» 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

Qui est en ligne ?
Il y a en tout 2 utilisateurs en ligne :: 1 Enregistré, 0 Invisible et 1 Invité :: 1 Moteur de recherche

romu3

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 7993 messages dans 595 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 : 528
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 : 528
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