sharp pc 2500

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

Répondre
destroyedlolo
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1806
Enregistré le : 03 mai 2003 02:24
Localisation : Nonglard (Annecy)
Contact :

Re: sharp pc 2500

Message par destroyedlolo »

Bon, c'est resolu, c'etait un bug dans mon emulateur : au lieu de lire le portF, je lisais le portB ... Copy/Past malheureux. Evidemment, sur le 1350, ca n'avait aucune incidence, c'est pourquoi je ne l'avais jamais vu :oops:

Maintenant, j'arrive jusqu'au menu :slime:
Mais, comme je n'emule pas encore le clavier, je ne vais pas plus loin. Heu, difficile a lire ton scan : Comment fais-tu pour lire le clavier ?
De mon cote, je recupere ce qu'entre l'utilisateur par les codes X et je convertis ca en valeur sur le port A (evidemment en fonction de la valeur de latch).
L'avantage par rapport a une injection directe dans la fonction de lecture du clavier, c'est que ca fonctionne comme sur le vrais si tu appuis sur plusieurs touches, donc ChangerMKII ou le jeux de karate fonctionne.

Pourtais-tu nous montre ton code ? Ca m'evitera de perdre du temps a dechiffre (mal) le scan.

Bye
Amiga, UNIX
Sharp, NetBSD http://destroyedlolo.info/
Apache, PHP 100 % dictionnary free
Vacances, Voyages 1 mispelling by word
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: sharp pc 2500

Message par remy »

Je check l'accés mémoire :

Code : Tout sélectionner

    if ( (*d>=0x7A00) && (*d<=0x7AFF) )
    {
        pKEYB->Set_KS( (pKEYB->Get_KS() & 0xF0) | ((BYTE) data & 0x0F ));
        return(1);
    }
    if ( (*d>=0x7B00) && (*d<=0x7BFF) )
    {
        pKEYB->Set_KS( (pKEYB->Get_KS() & 0x0f) | (((BYTE) data & 0x0F )<<4));
        return(1);
    }
et je parcours le clavier selon cette map :

Code : Tout sélectionner

BYTE scandef_pc2500[] = {
//+0		+1			+2			+3			+4			+5			+6			+7
K_SML,		'6',		' ',		'z',		'a',		'q',		'z',		NUL,
'"',		'3',		'*',		'x',		's',		'w',		'z',		NUL,
K_RET,		'-',		'+',		'c',		'd',		'e',		'z',		NUL,
NUL,		'.',		'0',		'v',		'f',		'r',		'z',		NUL,
NUL,		'2',		'1',		'b',		'g',		't',		'z',		NUL,
K_DEL,		'5',		'4',		'n',		'h',		'y',		'z',		NUL,
K_INS,		'8',		'7',		'm',		'j',		'u',		'z',		NUL,
K_CLR,		'9',		'/',		',',		'k',		'i',		'z',		NUL,

NUL,		K_MOD,		NUL,		'.',		'l',		'o',		'9',		NUL,
NUL,		NUL,		K_DA,		NUL,		';',		'p',		'0',		NUL,
NUL,		NUL,		NUL,		K_UA,		NUL,		':',		'-',		NUL,
NUL,		NUL,		NUL,		NUL,		K_RA,		NUL,		'/',		NUL,
NUL,		NUL,		NUL,		NUL,		NUL,		K_LA,		NUL,		NUL,
NUL,		NUL,		NUL,		NUL,		NUL,		NUL,		K_DEF,		NUL,
NUL,		NUL,		NUL,		NUL,		NUL,		NUL,		NUL,		NUL
};
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
destroyedlolo
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1806
Enregistré le : 03 mai 2003 02:24
Localisation : Nonglard (Annecy)
Contact :

Re: sharp pc 2500

Message par destroyedlolo »

ok ok.
La lecture se fait aussi par le port A et &7a00 et &7b00 servent de latch (equivalent du &7e00 du 1350), c'est ca ?

En tout ca, merci pour la table : elle me sera bien utile des que je trouve la fonction de lecture brute du clavier.
Amiga, UNIX
Sharp, NetBSD http://destroyedlolo.info/
Apache, PHP 100 % dictionnary free
Vacances, Voyages 1 mispelling by word
destroyedlolo
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1806
Enregistré le : 03 mai 2003 02:24
Localisation : Nonglard (Annecy)
Contact :

Re: sharp pc 2500

Message par destroyedlolo »

Bon, on avance :
Le clavier, c'est fait ... enfin peut etre car je reste bloque sur le menu :
- 1 & 2 sont non operationnel : c'est pareil chez toi ?
- si je clique sur 3, j'ai comme toi

Code : Tout sélectionner

RUN MODE
ERROR 1 IN 653
et tout en bas de l'ecran j'ai le debut de la table ASCII, a savoir

Code : Tout sélectionner

!'#$%
et immédiatement l'ecran se raffraichie pour afficher le menu.
- 4

Code : Tout sélectionner

* INITIALIZING *
suivit d'un

Code : Tout sélectionner

ERROR 1 IN 48
Face a une erreur, si j'appuis sur CLS ou sur la fleche aux, je me retrouve sur le prompt du basic mais la machine est totalement plantee.

- 5

Code : Tout sélectionner

* INITIALIZING *
suivit d'un "** FORMULA ERROR **" puis

Code : Tout sélectionner

SELECT FILE
>*TEL.*
As-tu les memes symptomes ?
Franchement, je ne suis pas confiant avec mon codage du clavier ... je vais voir avec le fonction qui convertis les codes brutes en code ASCII ... faut plus que je la trouve cette fonction :wink:
Amiga, UNIX
Sharp, NetBSD http://destroyedlolo.info/
Apache, PHP 100 % dictionnary free
Vacances, Voyages 1 mispelling by word
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: sharp pc 2500

Message par remy »

Ton 4 correspond au 1 et ton 5 au 2.

J'ai EXACTEMENT les memes symptomes.
De deux chose l'une, soit j'ai mal dumpé la rom, soit c'est un probleme avec la simulation de l'imprimante.
Je penche pour la seconde raison car ça plante sur l'instruction CONSOLE 39.
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
destroyedlolo
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1806
Enregistré le : 03 mai 2003 02:24
Localisation : Nonglard (Annecy)
Contact :

Re: sharp pc 2500

Message par destroyedlolo »

remy a écrit :Ton 4 correspond au 1 et ton 5 au 2.
Faut donc que je revois mon clavier :lol:
remy a écrit :J'ai EXACTEMENT les memes symptomes.
Ca c'est cool, on peut donc exclure un bug de l'emulateur.
remy a écrit :De deux chose l'une, soit j'ai mal dumpé la rom, soit c'est un probleme avec la simulation de l'imprimante.
Je penche pour la seconde raison car ça plante sur l'instruction CONSOLE 39.
C'est peut etre la ROM, mais je ne crois pas que ca viennent de l'imprimante : au pire, certaines ordres basic ne fonctionneraient pas, mais je ne vois pas pourquoi ca foutrait la grouille dans le BASIC lui-meme.
Perso, je penche plutot que qq chose nous echape niveau hard. Par exemple, sur mon 1350, la memoire video est decallee lorsqu'elle est lue par l'instruction DATA ce qui n'est pas le cas avec les autres (IXL, MVMD, ...) Chose que je n'emule pas. Peut etre alors qu'il y a une translation qq part, ou qq chose du genre.
Je vais deja voir pour le clavier, ca ne devrait pas etre trop dure.
Ensuite, en tracant le passage vers le basic ... on aurait peut etre d'autres explications.
Amiga, UNIX
Sharp, NetBSD http://destroyedlolo.info/
Apache, PHP 100 % dictionnary free
Vacances, Voyages 1 mispelling by word
destroyedlolo
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1806
Enregistré le : 03 mai 2003 02:24
Localisation : Nonglard (Annecy)
Contact :

Re: sharp pc 2500

Message par destroyedlolo »

Salut Remi,

Es-tu toujours sur le sujet ?

De mon cote, j'ai vu que :
  • &045C - lecture brute du clavier (equivalent du &0436 sur 1350)
  • &8060 - Transcodage du code brute en code ascii
As-tu des adresses interressantes ?

J'ai donc pu verifier mon decodage clavier ... ce n'est pas encore ca, j'ai des decalage par endroit ...

Bye

Lolo
Amiga, UNIX
Sharp, NetBSD http://destroyedlolo.info/
Apache, PHP 100 % dictionnary free
Vacances, Voyages 1 mispelling by word
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: sharp pc 2500

Message par remy »

Pour l'instant j'en suis à décoder la trace d’exécution.
Comme je te l'ai dis , il plante sur l'instruction CONSOLE 39. En fait j'ai l'impression qu'il ne prend pas en compte le parametre de l'instruction CONSOLE. Il cherche les codes &3A (:) ou &0D tout de suite apres et sort en erreur.

Je cherche toujours
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
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4412
Enregistré le : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Re: sharp pc 2500

Message par charognard »

Le SP est peut etre positionné sur le mauvais bank et ne va donc pas lire 39 mais autre chose
déjà parti :arrow:
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: sharp pc 2500

Message par remy »

:D
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
destroyedlolo
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1806
Enregistré le : 03 mai 2003 02:24
Localisation : Nonglard (Annecy)
Contact :

Re: sharp pc 2500

Message par destroyedlolo »

charognard a écrit :Le SP est peut etre positionné sur le mauvais bank et ne va donc pas lire 39 mais autre chose
déjà parti :arrow:
Ben pourquoi tu ne l'as pas dit plus tot ... des jours qu'on cherche nous ...

Je te rejoins dehors :mrgreen:
Amiga, UNIX
Sharp, NetBSD http://destroyedlolo.info/
Apache, PHP 100 % dictionnary free
Vacances, Voyages 1 mispelling by word
Avatar du membre
charognard
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4412
Enregistré le : 06 juin 2007 19:28
Localisation : Indre et loire
Contact :

Re: sharp pc 2500

Message par charognard »

Je voulais vous faire chercher un peu !!!
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2221
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: sharp pc 2500

Message par remy »

J'ai peut etre trouvé un truc ....
Dans mes traces d'execution, je le vois écrire aux adresses entre &8000 et &801F lorsque le F01 est haut.
Etonnant.
Je vais tenter de le laisser ecrire dans la rom (on peut tout se permettre avec un emulateur :D ) et voir ce que ça donne...
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: sharp pc 2500

Message par remy »

tu as avancé sur le problème Laurent ?
J'en suis à décortiquer l'appel en &D00C. Cela semble en rapport avec l'instruction CONSOLE. Il y a un appel précédemment à cette fonction lors de l'instruction CLOSE.
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: sharp pc 2500

Message par remy »

Quelques adresses memoires que j'ai trouvé je ne sais plus où (odinateur de poche ou nano).
Image
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 « Tous les Pockets »