Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » libMicrofx : Remplacez fxlib pour faire des add-ins très légers.
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

libMicrofx : Remplacez fxlib pour faire des add-ins très légers.

Posté le 14/01/2023 12:42

C'est une petite librairie qui pour l'instant est loin d'être terminée, qui permet de coder des petits add-ins très légers (1,2 Ko minimum avec -Os actuellement et 512 Ko max.).

Ce n'est pas réellement une alternative à gint, car libMicrofx utilise les syscalls et est donc pas très rapide. De plus, c'est une librairie avec le minimum de fonctions pour rester très légère, mais elle contiendra toute les fonctionnalités indispensables pour développer des add-ins et des petits jeux. Elle permet aussi aux habitués du basic casio de faire facilement des portages de leur jeux grâce à des fonctions similaires à celles du basic. Elle est sous la Unlicense pour que tout le monde peut l'utiliser comme il veut !

Dernière version : v.0.3


Dès maintenant vous pouvez l'essayer en téléchargeant le code sur la branche master :
>> Téléchargement <<

>> Branche dev <<

Coder son permier add-in avec Microfx :
>> Getting started <<


Un grand merci à Lephenixnoir et Yatis pour leur aide !


Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 15/01/2023 21:10 | #


Challenge d'add-ins bien sûr, en basic c'est plus facile (?)
Lephenixnoir En ligne Administrateur Points: 24229 Défis: 170 Message

Citer : Posté le 15/01/2023 21:17 | #


Mb88 a écrit :
J'ai eu une trop bonne idée de challenge :
Taille 5120 octet max. (je ne sais même pas si c'est possible )
Graphismes : Isométrie

Est-ce que tu es familier avec la demoscene ? Un petit concours de démos (pour changer un peu des jeux) serait cool à mon avis ! En tous cas, je participerais
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 15/01/2023 21:18 | #


Oui, je sais ce que c'est une demoscene (même si j'en ai jamais codé), car je m'intéresse beaucoup à l'informatique des années 80.
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 16/01/2023 19:44 | #


J'ai ajouté microfx/ext/img.h : on peut maintenant afficher des images.

Le dossier ext contiendra toute les lib incluses mais optionnelles.
J'avoue, je ne sais pas si je suis super clair
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 19/01/2023 09:45 | #


Je me suis dit que vu que ça marche bien je peux mettre tout ça dans la branche master .
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 19/01/2023 19:57 | #


Sur dev, il y a maintenant :
- malloc
- calloc
- realloc
- free
Et de quoi récupérer des entrées de l'utilisateur :
>> GUI <<
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 21/01/2023 11:39 | #


J'ai ajouté quelque fonctions string.h dans ext/string.h
Lephenixnoir En ligne Administrateur Points: 24229 Défis: 170 Message

Citer : Posté le 21/01/2023 11:55 | #


Hmm... tu as juste ajouté les prototypes ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 21/01/2023 12:00 | #


Oui, il y a des syscalls pour ça , donc j'ai juste à mettre les prototypes, une fois que j'ai mis les syscalls dans syscall.S.
Lephenixnoir En ligne Administrateur Points: 24229 Défis: 170 Message

Citer : Posté le 21/01/2023 12:03 | #


Ah j'avais pas vu que les syscalls étaient déjà sur dev ! Désolé.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 21/01/2023 23:03 | #


Je suis en train de vous préparer un tutoriel que je devrai publier bientôt. D'ailleurs @RDP
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 17/04/2023 11:35 | #


Pour le tutoriel, j'y ai pas trop avancée depuis, mais je prépare déjà Microfx pour la CCJ !
Alors comme nouveautés on a :
- Des fonctions basiques pour lire et éditer des fichiers, compatibles CASIOWIN/Fugue.
- microfx.c séparé en plusieurs fichiers, ce qui rend Microfx plus léger, car il y a moins de fonction inutiles inclues dans l'addin.
Tout est sur dev car j'ai prévu d'ajouter des choses avant de tout mettre sur main.
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 19/04/2023 20:39 | #


v.0.2
Alors voici toute les nouveautés :

- Better keyboard management
- Added some tools
- Some GUI functions
- Fixed spixel
- Added timers
- Basic file management
- Cleanup

N'hésitez pas à essayer libMicrofx, les headers sont bien documentés !
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 23/04/2023 18:29 | #


Lors de la CCJ je me suis rendu compte que je perdais beaucoup de temps à implémenter plein de fonctions pour l'affichage d'un long texte par exemple, et je vais donc tenter de faire une extension qui contient plein de fonctions utiles, pour faire les collisions, l'affichage de la map, l'affichage de textes sur plusieurs lignes, etc.
J'espère donc finir cette extension avant le prochain CPC.
Stay tuned !
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 28/05/2023 17:34 | #


Microfx propose maintenant des fonctionnalités intégrés pour l'affichage de maps !
Des fonctions de gestion de collisions sont à venir !
Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 28/05/2023 22:34 | # | Fichier joint


J'ai ajouté la gestion des collisions. Bon, là je vous ai fait un exemple vite fait, donc les collisions sont pas détectés assez précisément, mais bon, c'est juste pour l'exemple :

Mb88 Hors ligne Labélisateur Points: 944 Défis: 3 Message

Citer : Posté le 18/07/2023 16:37 | #


Bon, j'ai mis les fonctions qui facilitent la création de jeux sur master, c'est la v.0.3 .
Faudrait vraiment que je fasse un tutoriel pour expliquer comment l'utiliser.

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
: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 v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 51 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