Bench graphique en assembleur sur CASIO Z-1GR

Ici, on fait dans le petit, le LCD qui déchire sa race, on y cause même calculatrices quand on est en manque !

Modérateur : Politburo

Avatar de l’utilisateur
jvernet
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7838
Inscription : 24 mai 2002 09:57
Localisation : France 69
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par jvernet » 24 sept. 2010 17:50

charognard a écrit :En enlevant le tmps mis par les boucles précédement citée (34s pour le casio et12s pour le sharp)

les fonctions suivantes répétée plus de 6,5 million de fois
MOV BYTE PTR VAR,20 et MOV AH,VAR
Mettent respectivement 49s et 38s à s'executé sur le Casio

Les mêmes fonctions sur le Sharp.
LD A,20 _ LD VAR,A et LD A,(VAR)
Mettent 16,5s et 10,5s

je crois que c'est clair. Ou alors je me suis trompé quelque part.
Les JMP encore les JMP ;). Essaye en déroulant tes boucles, genre tu répète 10 fois tes MOV et tu n'effectue que 10*255*255 boucles.
Si ça ne varie pas, c'est que effectivement, le Z1gr est (né) mou.

C'est quoi la fréquence du proc du 850vs celle du Z1 ?
"l'ordinateur et l'homme sont les deux opposés les plus intégraux qui existent. L'homme est lent, peu rigoureux et très intuitif. L'ordinateur est super rapide, très rigoureux et complètement con."

Avatar de l’utilisateur
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4411
Inscription : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par charognard » 24 sept. 2010 18:20

Puisque je te dis que il n'y aucun JMP
je teste les JMP d'un côté et je note le temps appelons T1
ensuite je mets la ligne de test et je relève le temps appelons le T2

donc si tu m'as suivi j'ai 2 temps T1 et T2. et T2-T1 donne le temps passé par la fonction concernée .... DONC PAS DE JMP dans ce TEMPS !!!


Toi comprendre ou tu veux un dessin ???? :D

Avatar de l’utilisateur
ledudu
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 5600
Inscription : 26 mars 2009 14:07
Localisation : Ile de France
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par ledudu » 24 sept. 2010 18:28

Salut !
Au fait jvernet, pourquoi tu ne viens pas débattre de ce sujet demain, hein ?

Avatar de l’utilisateur
jvernet
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7838
Inscription : 24 mai 2002 09:57
Localisation : France 69
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par jvernet » 24 sept. 2010 21:27

ledudu a écrit :Salut !
Au fait jvernet, pourquoi tu ne viens pas débattre de ce sujet demain, hein ?

Wé, j'avais bien envie, mais je suis de mariage !
"l'ordinateur et l'homme sont les deux opposés les plus intégraux qui existent. L'homme est lent, peu rigoureux et très intuitif. L'ordinateur est super rapide, très rigoureux et complètement con."

Avatar de l’utilisateur
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4411
Inscription : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par charognard » 24 sept. 2010 21:30

jvernet a écrit :
ledudu a écrit :Salut !
Au fait jvernet, pourquoi tu ne viens pas débattre de ce sujet demain, hein ?

Wé, j'avais bien envie, mais je suis de mariage !
j'aurais pu te peter une rotule pour ton insubordination !!! :D
du haut de mes 63Kg

Avatar de l’utilisateur
Xerxes
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 291
Inscription : 02 avr. 2007 13:41
Localisation : Allemagne
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par Xerxes » 24 sept. 2010 22:00

Salut Charo,

it's not really surprising, that a Z80 @ 8 MHz is faster than a 80188 @ 3.68 MHz. Don't you think so?

The reason for the slow results of your graph bench on the FX-890P/Z-1GR/Z-1 is that the CASIO engineers
were too lazy. After every change in the display buffer, the whole content of it is send to the LCD
driver, instead of sending the changes only. So the most part of the calculation time is wasted for
updating the LCD.

Your test takes about 14 seconds on my turbo PB-2000C using Pascal, that's not bad for 2 MHz only.
Dernière édition par Xerxes le 25 sept. 2010 16:33, édité 1 fois.

Avatar de l’utilisateur
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4411
Inscription : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par charognard » 24 sept. 2010 22:57

Merci Xerxes pour ces informations et tes commentaires toujours interressant.

je pensais que le problème venait du composant graphique lent comme sur le Canon X-O7.
Avec attente de l'acknowledge.
Comment as-tu pu mettre en évidence la re-diffusion de la totalité du buffer graphique ? ça m'interresse.

pour la fréquence réduite du Z-1GR, je pensais aussi que les registres 16 bits compensaient ... mais c'est bien une grosse entourloupe commerciale.
c'est un processeur 8/16 bits comme l'atari et l'amiga étaient 16/32 :D
un 4 bits tel le saturn (registre 64bits) lui met une volée grave.

le test en 14s sur le PB-2000C c'est le test graphique ou la boucle ?

Avatar de l’utilisateur
Xerxes
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 291
Inscription : 02 avr. 2007 13:41
Localisation : Allemagne
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par Xerxes » 24 sept. 2010 23:42

charognard a écrit :Comment as-tu pu mettre en évidence la re-diffusion de la totalité du buffer graphique ? ça m'interresse.
I think the only way is using own assembly graphic routines to avoid that problem.

charognard a écrit :le test en 14s sur le PB-2000C c'est le test graphique ou la boucle ?
It's the result of your bench graphique.

Tomorrow I will try your test on the PC-E500S.

Avatar de l’utilisateur
jvernet
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7838
Inscription : 24 mai 2002 09:57
Localisation : France 69
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par jvernet » 25 sept. 2010 07:21

Xerxes a écrit :Salut Charo,

it's not really surprising, that a Z80 @ 8 MHz is faster than a 80188 @ 3.68 MHz. Don't you think so?
Merci pour cette info, c'est ce que je suspectais. Ca explique vraiment pourquoi même en tests assembleur pur (sans affichages), le Z1 est à la ramasse.

Les registres 16 bits ne vont compenser que lorsque tu va faire des opérations sur 16 bits, et encore...

Jerome
"l'ordinateur et l'homme sont les deux opposés les plus intégraux qui existent. L'homme est lent, peu rigoureux et très intuitif. L'ordinateur est super rapide, très rigoureux et complètement con."

Avatar de l’utilisateur
Xerxes
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 291
Inscription : 02 avr. 2007 13:41
Localisation : Allemagne
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par Xerxes » 25 sept. 2010 16:35

The PC-E500S result of the graph test is pretty fast regarding the used CPU (SC62015 @ 2.3 MHz): 55 sec

Avatar de l’utilisateur
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4411
Inscription : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par charognard » 26 sept. 2010 22:04

En LM ???
le SHARP PC-1600 mets 79s en BASIC le PC-G850V mets 6,7s el LM !!
55s ça me parait lent

il est plus rapide que le 1600 en basic ?

Code : Tout sélectionner

10 CLS					
20 LINE (69,0)-(69,30)					
30 LINE (145,0)-(145,30)					
40 LINE (70,0)-(144,3),,,BF					
50 LINE (70,6)-(144,9),,,BF					
60 SC=0:LOCATE 0,0:PRINT"SCORE: 0"					
70 BX=106					
80 Y=10:OX=0:OY=Y:RX=-3:RY=2:X=109					
90 LINE (70,30)-(144,30)					
100 X=X+RX:Y=Y+RY					
110 IF X<70 OR X>142 THEN RX=-RX:X=X+2*RX					
120 IF Y>=30 OR Y=-2 THEN RY=-RY:Y=OY+RY					
130 IF POINT (X,Y)=0 THEN 170					
140 SC=SC+5:LOCATE 6,0:PRINT STR$(SC): IF SC>200 THEN PRINT "FIN": END					
150 LINE (X,Y)-(X+2,Y+1),R,,B					
160 Y=Y-RY:RY=-RY					
170 LINE (OX,OY)-(OX+2,OY+1),R,,B					
180 LINE (X,Y)-(X+2,Y+1),,,B					
190 OX=X:OY=Y					
200 GOTO 100					

Avatar de l’utilisateur
Xerxes
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 291
Inscription : 02 avr. 2007 13:41
Localisation : Allemagne
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par Xerxes » 27 sept. 2010 21:14

The 55s is the result of the PC-E500S BASIC. It's one of the faster pockets!
I think that your graph bench, programmed in pure ASM without using the system
routines, would take less than a second on the most pockets.

Avatar de l’utilisateur
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4411
Inscription : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par charognard » 27 sept. 2010 21:38

Pas sur.
Sur pas mal de pocket l'écran graphique s'adresse à travers un composant dédié et la vitesse de celui-ci est des fois problématique.
j'ai eu le probleme sur CANON X07, il semble en etre de même sur Casio Z-1GR

pour le G850 il faudrait que je desassemble
Dernière édition par charognard le 27 sept. 2010 22:00, édité 1 fois.

Avatar de l’utilisateur
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4411
Inscription : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par charognard » 27 sept. 2010 21:59

La routine graph du G850V

Code : Tout sélectionner

0001   0000 E5                  PUSH HL
0002   0001 F5                  PUSH AF
0003   0002 D5                  PUSH DE
0004   0003 21 09 00            LD HL,0009H
0005   0006 39                  ADD HL,SP
0006   0007 56                  LD D,(HL)
0007   0008 3A 00 79            LD A,(7900H)
0008   000B 77                  LD (HL),A
0009   000C 2B                  DEC HL
0010   000D 5E                  LD E,(HL)
0011   000E 2B                  DEC HL
0012   000F 1A                  LD A,(DE)
0013   0010 32 00 79            LD (7900H),A
0014   0013 CD B2 BA            CALL BAB2
0015   0016 13                  INC DE
0016   0017 36 93               LD (HL),93H
0017   0019 2B                  DEC HL
0018   001A 36 F1               LD (HL),0F1H
0019   001C 1A                  LD A,(DE)
0020   001D 6F                  LD L,A
0021   001E 13                  INC DE
0022   001F 1A                  LD A,(DE)
0023   0020 67                  LD H,A
0024   0021 D1                  POP DE
0025   0022 F1                  POP AF
0026   0023 E3                  EX (SP),HL
0027   0024 C9                  RET
BAB2

Code : Tout sélectionner

0001   0000 F5                  PUSH AF
0002   0001 DB 19               IN A,(19H)
0003   0003 E6 0F               AND 0FH
0004   0005 D3 19               OUT (19H),A
0005   0007 F1                  POP AF
0006   0008 D3 69               OUT (69H),A
0007   000A C9                  RET
On tape bien sur un port

Avatar de l’utilisateur
dprtl
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 438
Inscription : 27 janv. 2013 01:26
Localisation : Strasbourg
Contact :

Re: Bench graphique en assembleur sur CASIO Z-1GR

Message par dprtl » 03 déc. 2013 00:00

Xerxes a écrit : it's not really surprising, that a Z80 @ 8 MHz is faster than a 80188 @ 3.68 MHz. Don't you think so?
Hi Xerxes,

What is your source for this very plausible 3.68 MHz clock rate ? A normal TS80L188EB8 microprocessor should run at 8 MHz. Is it a Casio underclocking ?

Répondre

Revenir vers « Tous les Pockets »