Page 3 sur 9

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Message non luPosté: 21 Sep 2016, 18:21
de Adriweb
( Timer functions/APIs in the bootcode being kind of broken, they've been removed from the toolchain, and better things have been added instead - look at the new demos 3 and 4 :) )

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Message non luPosté: 06 Oct 2016, 16:17
de Wistaro
Mise à jour:
  • Ajout de la gestion du timer interne
  • Ajout du nettoyage de l'écran
  • Ajout de la conversion des image png/fichier c (tableau de pixels)
  • Ajout de l'affichage de sprites/images PNG
  • Ajout de la rotation de sprites/images PNG
  • Ajout tutoriel: les constantes
  • Ajout tutoriel: taille du uint_8
  • Suppressions des anciennes fonctions timers désormais obsolètes
  • Correction de la mise en page pour certaines fonctions
  • Correction des liens obsolètes

Malheureusement, la "documentation" officielle (celle dans le repos de chaque lib) n'existe plus (Mateo l'a retirée, il me l'a confirmé sur Cemetech. Il dit qu'il y a assez d'informations dans les headers/démos.)


:warning: Si des personnes spécialistes (Adriweb, Mateo, critor etc...) pouvaient relire les récentes modifications pour éventuellement y déceler des erreurs, ce serait bien sympatique :) :warning:

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Message non luPosté: 06 Oct 2016, 17:51
de Adriweb
Wistaro a écrit:Mise à jour:
  • Ajout de la gestion du timer interne
  • Ajout du nettoyage de l'écran
  • Ajout de la conversion des image png/fichier c (tableau de pixels)
  • Ajout de l'affichage de sprites/images PNG
  • Ajout de la rotation de sprites/images PNG
  • Ajout tutoriel: les constantes
  • Ajout tutoriel: taille du uint_8
  • Suppressions des anciennes fonctions timers désormais obsolètes
  • Correction de la mise en page pour certaines fonctions
  • Correction des liens obsolètes

Oh, joli :)

Wistaro a écrit:Il dit qu'il y a assez d'informations dans les headers/démos.)

Oui, très largement, surtout que désormais le header principal est plus complet et il y a davantage de démos.

Wistaro a écrit::warning: Si des personnes spécialistes (Adriweb, Mateo, critor etc...) pouvaient relire les récentes modifications pour éventuellement y déceler des erreurs, ce serait bien sympatique :) :warning:

Je vais regarder ça...

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Message non luPosté: 06 Oct 2016, 17:56
de Wistaro
Merci :bj:

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Message non luPosté: 06 Oct 2016, 18:37
de Adriweb
Ca a l'air bien :)
Quelques petits trucs:
  • Il faudrait mieux différencier constantes (variables qui ne peuvent pas changer) et defines (littéralement des mot-clés que le compilateur (préprocesseur, bref) va remplacer dans le code par leur valeur - il fait du copier coller :P)
  • Il faudrait rappeler quelque part qu'il est impératif de bien avoir <tice.h> d'inclus, même si c'est rappelé en haut des fichiers de template :)
  • Là ou tu dis "attention, cette fonction retourne[...]", dans le code par contre, tu l'appelles directement, sans affecter de variable à la valeur retournée. Faudrait probablement mettre un truc (bidon), genre sprite = laFonction(...), histoire de bien marquer le coup.
  • Au fait, il existe maintenant intce.h qui est une "lib" pour gérer les interruptions, en C directement. C'est en fait simplement un header, côté développeur, et et utilisateur, pas besoin d'installer un .8xv supplémentaire, ca utilise que des trucs déjà existants. Il y a quelques exemples aussi, utilisant ça, dans le dossier d'exemples.

Et moi, faut que j'update le PB avec la dernière version de tous les trucs... (je vais essayer ce soir, même si j'ai déjà d'autres trucs à faire... comme des images manquantes pour le comparateur et page de cote des calculatrices...)

(Au passage, Mateo te remercie pour tes efforts :D)

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Message non luPosté: 20 Oct 2016, 16:15
de Wistaro
Mise à jour - 20 octobre 2016
  • Précisions sur les constantes/defines
  • Précisions sur les retours des fonctions sprites
  • Mise à jour des liens obsolète
  • Ajout de la bibliothèque INTCE
  • Ajout des fonctions suivantes: uitoa, nopwait, reverseString
  • Refonte de la section sur la bibliothèque Keypad

Merci Adriweb pour les retours :)

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Message non luPosté: 20 Oct 2016, 16:22
de TheMachine02
Juste un autre petit retour, mais, ta fonction nopwait, c'est pas n=microsecondes (même si on s'en fiche un peu)

Code: Tout sélectionner
_nopwait:
   LD   HL,-2
   CALL   __frameset
   LD   (IX+-2),0
   LD   (IX+-1),0
   JR   L_4
L_2:
        nop
   LD   HL,(IX+-2)
   INC   HL
   LD   (IX+-2),L
   LD   (IX+-1),H
L_4:
   LD   BC,(IX+6)
   LD   HL,(IX+-2)
   OR   A,A
   SBC.SIS   HL,BC
   JR   C,L_2
   LD   SP,IX
   POP   IX
   RET


Donc la boucle fait environ 137TStates, soit à peu près 2.8 microsecondes (si je me suis pas planté dans mes calculs :D )

M'enfin, je chipote, c'est très bien ce que tu fais ;)

EDIT : d'ailleurs, t'aurait même pas besoin de mettre ce "nop", la boucle en elle même suffit :p

EDIT2 : voilà une fonction en asm, qui attendrait 'presque' 1 microseconde :

Code: Tout sélectionner
pop de
pop hl
push de
L2:
nop
nop
nop
nop
nop
nop
dec   hl
ld   a, h
or   l
jr   nz, L2
ret

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Message non luPosté: 20 Oct 2016, 16:29
de Wistaro
Merci de ton retour!

J'ai édité le message principal :)

J'ai également corrigé quelques erreurs de syntaxes et d'orthographe.

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Message non luPosté: 22 Oct 2016, 14:37
de Wistaro
Mise à jour:
  • Refonte totale de l'introduction
  • Correction de quelques erreurs
  • Ajout de précisions

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Message non luPosté: 26 Oct 2016, 07:03
de MateoConLechuga
Very nice work Wistaro! :D

So the toolchain has had quite a ton of updates, including RTC support, more OS integration, and many other neat things that you will definitely want to explore. (hint: look at tice.h) Perhaps the most important is the release of v3 of the fileio library, which now allows you to set, store, and recall variables used in BASIC programs, such as Ans, Matrices, Strings, Lists, and others with ease. Be sure to update as soon as you can, and enjoy! :D

Download toolchain: https://github.com/CE-Programming/toolc ... ses/latest
Download libraries: https://github.com/CE-Programming/libra ... ses/latest