Génial, merci !

Enfaite il y a toujours du mouvement sur ton site, j'avais pas fait gaffe !

À mon avis il vaudrait mieux fusionner le blog avec les news du site, parce que là on passe un peu à côté.
Il me semble que tu avais un peu travaillé avec les programmeurs de z88dk, non ? Parce qu'on dirait, sauf erreur de ma part, que les programmes 83+ sont mal générés (les deux octets de l'header qui spécifient pour quelle calc c'est sont mal choisis, ça donne ceux de la 83, du coup ça bug sur wabbitemu mais pas sur vti/tilem). Et puis ce serait sympa d'ajouter quelques fonctions à leur compilo assembleur ('$' pour le SMC, macro asm etc... Mais si vraiment c'est pas possible je vais essayer d'adapter le fichier source généré pour spasm).
Autrement j'ai commencé à porter des add-in casio (qui sont tous en C et rarement en C++ apparemment), mais il me manque encore quelques routines, notamment celle qui s'appelle
RTC_getticks() qui n'est autre qu'un timer à partir de minuit qui s'incrémente 128 fois par seconde. Or seules les 84+SE ont une horloge donc j'ai pensé utiliser les interruptions (qui s'exécutent environs 200 fois par secondes). J'ai pas testé mais ça donnerai quelque chose comme ça :
#if defined TL_TIMER
#asm
interruption_start:
di
exx
defb 21 ; ld hl,
timer:
defw 0
inc (hl)
exx
ei
ret
interruption_end:
#endasm
#define interrupt_jump_table 0x9900
#define interrupt_offset 0x9a9a
void TL_start_timer(void){
#asm
start_timer:
di
ld hl,interrupt_jump_table
ld (hl),$9a
ld bc,256
ld a,h
ld d,h
ld e,b
ldir
ld hl,interruption_start
ld de,interrupt_offset
ld bc,interruption_end-interruption_start
ldir
ld i,a
im 2
ei
#endasm
}
#define reset_timer(); asm("xor a\nld (timer),a");
void TL_get_ticks(void){
#asm
ld hl,(timer)
#endasm
}
#endif
Le seul souci avec cette méthode c'est que le timer se reset toutes les 5.46 mn (65536/200=327.68 s) et qu'on ne pourra pas se servir des interruptions pour autre chose (installer un thread...). Enfin en pratique étant donné qu'on s'en sert pour calculer des fps je ne pense pas que ça pose autant problème que ça (sauf si dans un calcul le premier tick donne 65536 et le deuxième 0

).
Vous en pensez quoi ?
(Tiens d'ailleurs je viens de penser qu'il faudra faire des routines de link, sans doute avec Bell).
Bref y'a encore du boulot
