Seuls les membres ayant 30 points peuvent parler sur le chat.

Forum Casio - Autres questions


Index du Forum » Autres questions » fonction d'acces de fichier "maison"
Dodormeur Hors ligne Ancien rédacteur Points: 3964 Défis: 82 Message

fonction d'acces de fichier "maison"

Posté le 28/02/2013 14:53

bonjour !

je me demandais, si il existait une fonction qui permaittait d'utiliser les fichiers, mais sans passer par fxlib. en effet, pour un projet, il me faut juste une fonction d'acces (lecture/ecriture) de fichier, et je me demandais si il y avait moyen que je n'incluse pas fxlib, ce qui reduirais drastiquement le poids de mon programme.


Pierrotll Hors ligne Ancien administrateur Points: 5488 Défis: 41 Message

Citer : Posté le 01/03/2013 01:50 | #


Kristaba avait commencé un bon stdio et la lecture fonctionnait très bien, mais il a préféré ne pas faire l'écriture, en raison des risques pour l'intégrité de la mémoire si le fonctionnement venait à changer dans une future version de l'OS.
Limachi Hors ligne Youtuber Points: 2798 Défis: 67 Message

Citer : Posté le 01/03/2013 03:56 | #


dommage, j’aurais bien voulu avoir une alternative aux Bfile_ qui sont lent par leur fonctionnement... (a quoi bon nous indiquer le chargement d'un fichier a l'écran durant 1/100 de seconde?)
Mes Programmes
Cliquer pour enrouler
-en basic: un programme nommé PICFMLIM convertissant une picture en code basic.
-en C:
-Un pong.
-Un projet en pause. Je compte le reprendre de temps en temps: Summer Cursed


-mon tuto sur les Str


Mes calto: G25+, G75
Mon minecraft en dévelopement


Projets et Programmes que je soutiens (sur une idée de Marmotti)
Cliquer pour enrouler
-Pokemon Jade de Dodormeur
-Portal2D de JavierXD
-CalCraft de Wime
-GeekBros du groupe GeekBrothers (Eiyeron,Siapran,KevKevVTT,Adbook,LIMachi)
Dodormeur Hors ligne Ancien rédacteur Points: 3964 Défis: 82 Message

Citer : Posté le 01/03/2013 08:53 | #


donc pour acceder aux fichiers, on est obliger de passer par fxlib?
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
Louloux Hors ligne Ancien administrateur Points: 7035 Défis: 61 Message

Citer : Posté le 01/03/2013 10:13 | #


Oui, mais ça ne pose pas tant de problèmes que ça au final.
Dodormeur Hors ligne Ancien rédacteur Points: 3964 Défis: 82 Message

Citer : Posté le 01/03/2013 10:16 | #


ben c'est surtout que je suis obliger d'inclure (et donc d'augmenter le poids du programme) juste pour les sauvegardes, et 20ko en plus juste pour ca.... c'est un peu lourd
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
Louloux Hors ligne Ancien administrateur Points: 7035 Défis: 61 Message

Citer : Posté le 01/03/2013 10:30 | #


C'est pas 20ko, puisqu'un jeu comme souris a un poids total de 13ko, en utilisant fxlib + MonochromeLib...
Kristaba Hors ligne Membre Points: 614 Défis: 22 Message

Citer : Posté le 01/03/2013 17:01 | #


Cette foiis je vais essayer d'être bref (ça commence mal ).

1) En effet, j'avais commencé un support de stdio, pas mal foutu, qui fonctionne actuellement très bien pour la lecture de fichier de la SMEM sur ma calc (des centaines de fois plus rapide que leurs fonctions de lecture, si c'est pas coder avec les pieds ça...).

2) Gérer l'écriture de fichier dans l'EEPROM de manière statique dans un G1A est une mauvaise idée. Imaginez que, en lançant votre programme sur une calto SH4 ça réécrive sur le code de l'OS -> une calto potentiellement foutu.

3) On peut crier pas mal sur leur SDK et leur OS, mais Casio a au moins le mérite d'avoir déporté pas mal de fonctions dans l'OS, donc l'empreinte mémoire n'est pas trop augmentée par l'utilisation de leurs fonctions.

4) Si mal gré tout tu souhaite utiliser des fonctions maison pour l'accès au fichier, compte *au moins* 15kio pour une lib haut niveau (stdio), et quelques kio tout de même pour du bas niveau (primitives spécialisées pour le FS de la SMEM).

5) J'essairais de mettre à dispo les sources si ça peut servir à quelqu'un. C'est uniquement de la rétro-ingénieurie sur des dumps de la ROM, je serais étonnés que personne ne trouve de problèmes, mais pour le moment tout ce que j'ai fait avec fonctionne nickel.
Il était vraiment temps que je change cette signature...
Dodormeur Hors ligne Ancien rédacteur Points: 3964 Défis: 82 Message

Citer : Posté le 01/03/2013 17:05 | #


ok, merci beaucoup pour ces precisions
je vais donc utiliser fxlib normalement, c'est juste que je voulais un peu reduire la taille du programme si possible
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
Pierrotll Hors ligne Ancien administrateur Points: 5488 Défis: 41 Message

Citer : Posté le 01/03/2013 20:05 | #


Si le problème est l'augmentation de poids du G1A due à l'inclusion de fxlib, tu peux déclarer les syscalls des fonctions Bfile, elles sont dans l'OS pour la plupart
Limachi Hors ligne Youtuber Points: 2798 Défis: 67 Message

Citer : Posté le 06/03/2013 00:10 | #


Kristaba a écrit :
(des centaines de fois plus rapide que leurs fonctions de lecture, si c'est pas coder avec les pieds ça...).

dommage que je puisse pas utiliser cela dans mon minecraft (les premiers test de chargement de chunk sont affreusement longs )
Mes Programmes
Cliquer pour enrouler
-en basic: un programme nommé PICFMLIM convertissant une picture en code basic.
-en C:
-Un pong.
-Un projet en pause. Je compte le reprendre de temps en temps: Summer Cursed


-mon tuto sur les Str


Mes calto: G25+, G75
Mon minecraft en dévelopement


Projets et Programmes que je soutiens (sur une idée de Marmotti)
Cliquer pour enrouler
-Pokemon Jade de Dodormeur
-Portal2D de JavierXD
-CalCraft de Wime
-GeekBros du groupe GeekBrothers (Eiyeron,Siapran,KevKevVTT,Adbook,LIMachi)
Kristaba Hors ligne Membre Points: 614 Défis: 22 Message

Citer : Posté le 06/03/2013 07:48 | # | Fichier joint


Non, au contraire, tu pourrais utiliser mes fonctions à condition de procéder par lecture/écriture "asymétrique" (chargement des chunk via mes fonctions, sauvegarde si modif avec les fonctions Casio).

Tout dépend de chaque projet, mais quand la lecture est plus fréquente que l'écriture ça peut être interessant, en ne prenant pratiquement aucun risque (le lecture pourrait ne plus marcher sur certains modèles, c'est tout).
Faut vraiment que je déterre le code de mon stdio (plus léger que je m'y attendais en fait).

Je met le code que j'avais en brut (makefile pas super clean, fichiers conçus pour un compilo C99 et pour GCC, donc pas compilable tel quel par le compilateur de Renesas, mais ça sera plus utile qu'au fin fond de mon disque dur )
Il était vraiment temps que je change cette signature...
Limachi Hors ligne Youtuber Points: 2798 Défis: 67 Message

Citer : Posté le 06/03/2013 10:18 | #


Kristaba a écrit :
mais quand la lecture est plus fréquente que l'écriture ça peut être interessant

Effectivement, a moins que le joueur ne le fasse exprès, il est plus souvent question de lecture que d'écriture de chunk...

Je prend ton projet avec joie, j'ai en horreur le temps que la stdlib nous fait perdre.
Mes Programmes
Cliquer pour enrouler
-en basic: un programme nommé PICFMLIM convertissant une picture en code basic.
-en C:
-Un pong.
-Un projet en pause. Je compte le reprendre de temps en temps: Summer Cursed


-mon tuto sur les Str


Mes calto: G25+, G75
Mon minecraft en dévelopement


Projets et Programmes que je soutiens (sur une idée de Marmotti)
Cliquer pour enrouler
-Pokemon Jade de Dodormeur
-Portal2D de JavierXD
-CalCraft de Wime
-GeekBros du groupe GeekBrothers (Eiyeron,Siapran,KevKevVTT,Adbook,LIMachi)

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
Pour coloriser votre code, cliquez ici.
Sinon cliquez sur le bouton ci-dessous.
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2020 | Il y a 39 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd