mathieu41 (./117) :
" _dispop1a" est une romcall faite pour afficher un flottant, donc pouvant aller jusqu'à 14 chiffre, donc quand il y a des virgules, c'est pratique de pouvoir donner la précision de l'affichage avec a
Oui en lisant le sdk ça a tout de suite plus de sens. Du coup vérifie bien que a > 2 (au minimum), si c'est pour afficher des scores, autrement ça peut expliquer certains "ram clear".
mathieu41 (./117) :
(Au passage, j'ai remarqué que la routine que j'ai créé pour savoir où on commence est inutile: quand on utilise bell_connect, ça appelle bell_sync, et le numéro de la calto (0 ou 1) est stocké dans bell_calcId, il suffit donc de faire ld a,(bell_calcId) )
C'est ce qui me semblais mais c'était pas indiqué dans la doc.
Pour ta routine, pourquoi ne pas simplement faire :
bell_swapByte:
push af
ld a,(bell_calcId)
or a
jp z,_bell_sendFirst
_bell_recvFirst:
call bell_recvByte
jp nz,_bell_recvFirst_skip ; on vide la pile avant de quitter
ld b,a
pop af
push bc
call bell_sendByte
_bell_recvFirst_skip:
pop af
ret
_bell_sendFirst:
pop af
call bell_sendByte
ret nz
jp bell_recvByte ; petite optimisation