Page 1 sur 1

Too many files open

Message non luPosté: 29 Nov 2021, 19:42
de Dubs
Bonjour

je suis en train d'adapter un vieux jeu sur ti-nspire et je suis tombé sur une limitation :

An exception occured:
Error opening file /documents/exult/blackgate/static/palettes.flx.tns
errno: 24
Error Description: File descriptor value too large

en gros j'ouvre trop de fichier à la fois.

j'ai bien vu une limitation dans libsyscall/stdlib.cpp
constexpr int MAX_OPEN_FILES = 20;

que j'ai augmenté mais seulement là il se gaufre au 10me fichier ouvert.

j'ai fait un petit programme qui boucle sur des fopen() sans fclose() et j'ai le même pb : le 10 génère une exception...

je pense que je vais devoir charger les fichiers en mémoire et les fermer dans la foulée, pour ne plus garder trop de "connexions" aux fichiers ouvertes

mais à tout hasard, vous avez peut être une autre solution pour augmenter cette limite ?

Re: Too many files open

Message non luPosté: 14 Déc 2021, 13:06
de SlyVTT
Dubs,

désolé j'avais pas vu ton topic.
Je pense qu'il vaut mieux en effet limiter le nombre de fichiers ouverts en simultané.
si tu as moyen de les ouvrir et de les refermer dès que possible, ce sera mieux.

Question indiscrete ? pourquoi les garder ouverts en parallèle ? Ce n'est pas très courant d'avoir cette configuration.

A plus

Sly

Re: Too many files open

Message non luPosté: 14 Déc 2021, 16:08
de SlyVTT
Dubs a écrit:An exception occured:
Error opening file /documents/exult/blackgate/static/palettes.flx.tns
errno: 24
Error Description: File descriptor value too large


Ne serait-ce point Ultima VII que tu serais en train de convertir ?
Si oui alors c'est génial, si non, alors j'ai hate de savoir ;-)

Re: Too many files open

Message non luPosté: 14 Déc 2021, 16:48
de Dubs
SlyVTT a écrit:Ne serait-ce point Ultima VII que tu serais en train de convertir ?
Si oui alors c'est génial, si non, alors j'ai hate de savoir ;-)


Oui ! nice shot !

J'avais vu qu'Ultima V était adapté à la TI-89 (j'en ai acheté une lundi pour y jouer). Je me suis dit : pourquoi pas les autres ?

J'ai commencé le portage d'Exult pour Ti-nspire (pour les 2 Ultima VII) et en parallèle la partie "Ultima" de Scummvm (Ultima 1, 4, 6 et 8).
J'ai encore plein de taff devant moi, mais ça avance.

Pour Exult : il se compile et se lance, les menus et les animations d'intro s'affichent mais ça ne va pas plus loin.
La création d'un jeu plante avec l'erreur du topic.
J'ai commencé à mettre le nez dans leur gestion des fichiers et je patauge un peu, j'ai des connaissances vraiment basiques de c, et je ne suis pas très à l'aise avec le c++, mais je ne vais pas m'arrêté pour si peu...

Re: Too many files open

Message non luPosté: 14 Déc 2021, 17:13
de SlyVTT
Si tu as besoin d'un coup de main, n'hésite pas.
du coup ça confirme mon premier message, pour un jeu, je vois pas pourquoi maintenir les fichiers ouverts, sauf pour lire des resources les unes après les autres, mais à mon avis c'est pas la meilleure manière de procéder sur des "embedded devices".