[PockEmul] un nouveau modèle ... le Canon X-07

Vous ne possédez pas l'original ? Découvrez la machine via l'émulation !

Modérateur : Politburo

jb_jb_fr
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 240
Enregistré le : 10 févr. 2004 13:34
Localisation : Essonne
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par jb_jb_fr »

Salut
remy a écrit :Voilà, je suis donc reparti des sources de Jacques BRIGAUD et j'ai fait rentrer tout ça dans le Framework PockEmul.
Je suis content que le travail que j'ai fait il y a un certain nombre d'année serve encore! 8)
J'ai même trouvé un site ou un Japonais est aussi repartie de mon travail pour faire un emulateur sous Windows. http://homepage3.nifty.com/takeda-toshi ... index.html
remy a écrit :Salut,
Je plonge dans les entrailles du X-07 et je suis très étonné du peu d'information disponible. Alors d'accord, il y a 2 bouquins intéressants décrivant le sous-processeur, mais je trouve qu'il manque un paquet d'informations. J'aurai cru que la notoriété de ce modèle m'aurai permis de trouver les différentes ROM (cartes mémoires, TV, ...) et des détails plus pointus sur l'architecture interne.
Toutes les infos disponibles datent d'il y a plus de 10 ans et à part 2 émulateurs et 1 ou 2 sites web, ...
On en sait plus sur les Sharp :-)
Donc, voilà, beaucoup de boulot en prévision. C'est cool.

Rémy
Je suis surpris de cela. Il y a un site de Silicium sur le X07 http://www.silicium.org/oldskool/calc/x ... m#doc_tech
Il y a vraiment beaucoup de chose dessus. Et meme les schéma electronique des 3 cartes constituant le X07.
Tu na vraiment pas trouvé ton bonheur à cet endroit :?:

Jacques
Dicton Lyonnais:
"Pour que le vin fasse du bien au femme
Faut que ce soit les hommes que le boivent!"
CHUI d'accord!
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par remy »

eh oui Jacques, tu es à l'origine du premier émulateur de canon X-07. C'est un gain de temps énorme de repartir de tes sources.
Pour l'instant je me bat avec la procédure d'allumage et d'extinction du X-07.
Pour le OFF, cela semble simple, il y a une commande du Sub-CPU qui coupe l'alimentation. Par contre, je ne trouve aucune information sur la procédure d'allumage.
Si je remet le PC en C3C3 (comme au boot), il m'efface la mémoire.
J'ai essayé de simuler l'appuis sur la touche Break et de déclencher l’interruption, mais sans succès.
J'aurai également voulu émuler le composant intermédiaire de communication entre le CPU et le sub-CPU, mais cela semble complexe.
Je manque également d'information sur la map mémoire du subCPU, notamment sur la mémoire LCD (on connait la plage d'adresse, mais pas l'organisation interne, il va falloir tester...)
Voilà, je cherche.

Rémy
Modifié en dernier par remy le 20 sept. 2011 12:04, modifié 1 fois.
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store and the Apple Store
Avatar du membre
kweeky
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1777
Enregistré le : 05 oct. 2007 19:46
Localisation : Pas très loin de Bordeaux

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par kweeky »

Bon courage et félicitations, en tout cas !

@+
Avatar du membre
gege
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7147
Enregistré le : 31 janv. 2008 14:24
Localisation : Banlieue Paârisienne
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par gege »

Super, le X07 offre une excellente précision numérique, à suivre donc.

Le point fort de PockEmul est de pouvoir connecter les trucs aux bidules (et l'inverse), il faudra donc penser à une interface genre RS232 ou autre ??

Juste un travail hénaurme en vue...

Bravo
G.E.
Avatar du membre
jvernet
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7958
Enregistré le : 24 mai 2002 09:57
Localisation : France 69
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par jvernet »

Rien a faire, le X07 ne démarre pas sur la build Mac. J'ai fouille un peu, pas trouve pourquoi.
"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."
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par remy »

Ok, je suis en train de regarder et c'est définitivement un problème endianness.
Je n'ai pas codé l'émulation du Z80 en big_endian. Je vais corriger cela très vite.

Rémy
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store and the Apple Store
Avatar du membre
jvernet
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7958
Enregistré le : 24 mai 2002 09:57
Localisation : France 69
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par jvernet »

remy a écrit :Ok, je suis en train de regarder et c'est définitivement un problème endianness.
Je n'ai pas codé l'émulation du Z80 en big_endian. Je vais corriger cela très vite.

Rémy
Euh, mon MacBook, c'est un Intel, ça devrait parfaitement fonctionner comme chez toi ;).
Il doit y avoir un #define/ifdef qqchose ENDIAN pas bien compris dans l'emulo Z80. J'en ai trouvé un, mais il est, justement pas defini du tout
"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."
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par remy »

C'est tout à fait ça. J'utilisais un directive BIG_ENDIAN pour définir l'endianness de la plateforme.
La surprise c'est que sur MAC il inclut tout seul endian.h qui définit cette directive et ça foutait la merde.
J'ai remplacer BIG_ENDIAN par POCKEMUL_BIG_ENDIAN et ça marche. Faudrait que je fasse une modif pour tenir compte automatiquement de l'endianness à l’exécution et pas à la compilation... mais c'est du temps ...

Bref, c'est corrigé, et le canon (et donc le pc-1600 également) doit fonctionner.

Je suis en train de regarder le compilo. Il me génère bien le fichier ASM mais plante à la compilation de l'ASM (c'est bien ça ?). Je recompile en Debug sur ma VMWARE et je regarde ça.

Rémy
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store and the Apple Store
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par remy »

Bon, ben la compilation et l'execution du programme de test sur un pc-1350 fonctionne :-)
Je n'ai rien modifié sauf que j'ai fait un rebuild complet. essayes ça.

En ce qui concerne les libs, tu les trouveras dans les sources dans le répertoire ressource. Tu copie tout le répertoire LCC dans le dossier d’exécution de pockemul et du coup le compilo prendra les sources locales. Tu pourra donc éventuellement y faire des modifications.

Rémy

Code : Tout sélectionner

#org __PC_DEFAULT_ORG__

#include <graph.h>
#include <stdio.h>
#include <string.h>
#include <sound.h>

char xram g[]="un test de String !!!! ";
char xram r[10];

byte i,j;
main() {
	
	while (onbreak()==0) {
		ps_clrscr();

		for (j=0;j<10;j++) {
			for (i=65;i<140;i++) {			
				ps_putchar_con(i);
				if (onbreak()>0) return;
			}
		}
		
		for (i=40;i<150;i+=10) {
			beep(i,4);
			if (onbreak()>0) return;
		}
		for (i=150;i>40;i-=10) {
			beep(i,4);
			if (onbreak()>0) return;
		}	

		ps_clrscr();
		for (i=0;i<__DISP_GR_COLS__;i++) {
			for (j=0;j<__DISP_GR_ROWS__;j++) {
				if (onbreak()>0) return;	
				ps_pset(j|i ,j,GSET);
			}
		}
		ps_clrscr();
		ps_inv();
		for (i=0;i<__DISP_GR_ROWS__;i++) {
			for (j=0;j<__DISP_GR_COLS__;j++) {
				if (onbreak()>0) return;	
				ps_pset(j|i ,i,GRESET);
			}
		}
		
		ps_inv();
		ps_wait(500);
		ps_inv();
		ps_wait(500);
		ps_inv();
		ps_wait(500);
		
		ps_clrscr();
		
		for (i=0;i<150;i=i+3) {
			ps_line(i,0,75,50);
			if (onbreak()>0) return;
		}
		
		ps_inv();
		ps_wait(500);
		ps_inv();
		ps_wait(500);
		
		ps_clrscr();
		
		for (i=0;i<50;i++) {
			ps_putstr(&g);
			if (onbreak()>0) return;
		}
		
		ps_clrscr();
		
		for (i=1;i<123;i++) {
			btoa(i,&r,10);
			ps_putstr(&r);
			ps_putchar_con(13);
		}

	}
}

PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store and the Apple Store
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par remy »

Au fait je pense que j'ai corrigé le problème de fenêtre baladeuses ... :-)
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store and the Apple Store
Avatar du membre
jvernet
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7958
Enregistré le : 24 mai 2002 09:57
Localisation : France 69
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par jvernet »

Ah, c'est beaucoup mieux, oui !

La partie X07 démarre, c'est pas mal fonctionnel, quand même ! Le PC 1600 met ouatmillan à demarrer et affiche CHECK A.

Pour le compilo, j'ai un affichage d'une vingtaine de fenetre "wrong number of parameters for line". Ca produit quand même le ASM. Ca compile ensuite, mais l'installation ne donne rien sur le pocket.

En tout cas, ca va dans le bon sens ! Merci !
"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."
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par remy »

la fonction line est celle de la ROM du pc-1350. elle prends 5 paramètres ( fais un ctrl + space pour avoir la complétion automatique).
Sinon, tu peux utiliser la fonction ps_line qui est multi-plateforme.

pour le 1600, c'est normal. C'est une erreur non documentée qui concerne je pense l'UART (que je n'ai pas émulé). Tu fais CL et c'est parti.

Rémy
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store and the Apple Store
Avatar du membre
jvernet
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7958
Enregistré le : 24 mai 2002 09:57
Localisation : France 69
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par jvernet »

J'ai fais une clean build, ça passe, maintenant !

Pour les sources de LCC, à mon avis, faut bricoler un peu les sources de pockemul pour qu'il les retrouve sur Mac: il n'y a pas à proprement parler de repertoire d'execution, ou alors Pockemul.app/Contens/MacOs).

Faut que je fouille pour voir comment c'est fait, comment rajouter une fonction dans une librairie c, par exemple circle, ou box pour les graphique, une copie de mémoire ecran, une portion d'ecran, etc.
"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."
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par remy »

J'ai enfin compris comment fonctionne le ON/OFF du Canon. content le Rémy :-)
Je m'atèle maintenant aux interfaces // et série. Le port // est presque opérationnel, je n'ai plus qu'à gérer le connecteur et émuler la X-710 en repartant de la CE-515P (elle sont très très proche).

Rémy
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store and the Apple Store
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: [PockEmul] un nouveau modèle ... le Canon X-07

Message par remy »

Salut,
Je viens de mettre en place le port // du X-07 et comme il me fallait tester son bon fonctionnement, j'ai ajouté la x-710.
Rien de bien compliqué, j'ai pour l'instant dérivé l'objet ce-515p, je regarderai plus tard les commandes graphiques.
Pour ce qui concerne le tracé des fonts, j'avais à l'époque repris les tracés dans la rom de la CE-150. Le jours où j'en aurai une, je pourrai essayé de copier les tracés Canon.

Image

Rémy
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store and the Apple Store
Répondre

Retourner vers « Emulateurs »