Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

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

pcscote
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 65
Inscription : 11 juil. 2018 01:06

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par pcscote » 14 sept. 2020 15:25

cgh a écrit :
14 sept. 2020 15:19
En fait si le XFUNCTION conserve sa memoire quelques minutes sans alimentation, ce n'est pas le cas des XMEMORY.
J'ai utilise un 41CX avec un double XMEMORY que j'enleve et que je remets, et au PowerON, son contenu est perdu... Apres cela vient peut-etre de mon double XMEMORY...
Possible et même probable, ça fait une éternité que je n'ai pas effectué ce type de test, je vais vérifier à mon retour à la maison ce soir si j'ai le même comportement.

cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2217
Inscription : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par cgh » 14 sept. 2020 15:40

pcscote a écrit :
14 sept. 2020 15:25
Possible et même probable, ça fait une éternité que je n'ai pas effectué ce type de test, je vais vérifier à mon retour à la maison ce soir si j'ai le même comportement.
Sylvain, tu peux aussi verifier ma procedure:
- J'ai vide la XMEM.
- J'ai cree un fichier vide de type DATA de 122 registres pour occuper tout l'espace du XFUNCTION. Je fais en ALPHA DUMMY, en X 122 et la commande CRFLD. EMDIR me renvoie 0 d'ailleurs. Apres je copie un fichier en XMEMORY (par exemple un petit programme : LBL "TEST" BEEP END) et je verifie que le programme est present dans le XMEMORY: je dois avoir DUMMY D0122 et TEST P002. J'eteins la HP41CX, j'enleve le XMEMORY, je le remets immediatement et au POWER ON, je n'ai plus que le fichier DUMMY. Dans mon cas, le programme a ete perdu du XMEMORY.

Merci pour ton test :)
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque

Avatar de l’utilisateur
bernouilli92
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4296
Inscription : 21 nov. 2012 14:03
Localisation : Ile de France

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par bernouilli92 » 14 sept. 2020 17:35

Je viens de tester sur une hp41cx halfnut avec un module xmemory.
Je fait un programme simple :
LBL TEST
BEEP
END
Je le sauve dans le XMEMORY mais sans créer d'abord de fichier, directement par un ALPHA TEST SAVEP
Je vérifie avec un EMDIR, qui m'affiche TEST P002 et renvoie 358
J'éteins la HP41, j'enlève le XMEMORY et le remet aussitôt, j'allume la HP41cx et fait un EMDIR, cela m'affiche TEST P002 et renvoi 358.
Je recommence : j'éteins le HP41, j'enlève le module XMEMORY, j'attends 5 secondes et le remets -> Le programme est toujours en XMEM.
Je recommence : j'éteins le HP41, j'enlève le module XMEMORY, je fais un RESET de la HP41, je remets le XMEMORY -> XMEM vide, le module est resté en dehors de la hp41 pendant environ 6 secondes.
Je recommence : j'éteins le HP41, j'enlève le module XMEMORY, j'attends 10 secondes et le remets -> Le programme est toujours en XMEM.
Je recommence : j'éteins le HP41, j'enlève le module XMEMORY, j'attends 30 secondes et le remets -> Le programme est toujours en XMEM.

Autre test: j'enlève le module xmemory et insère dans une autre hp41cx, fullnut, EMDIR -> DIR EMPTY
Je l'enlève et le remets dans la première HP41cx (halfnut), EMDIR -> TEST P003
C'est un peu bizarre.
Je continue :
module dans second HP41, EMDIR -> DIR EMPTY / ALPHA TEST GETP -> FL NOT FOUND
je remets le module dans la première HP41, je supprime le programme en mémoire par un CLP TEST et le recharge par un ALPHA TEST GETP, cela fonctionne.

Je continue mes tests, je mets le XMEMORY dans la HP41 fullnut, je refais la même manip et sauvegarde le programme TEST sur la XMEMORY, j'enlève le XMEMORY pendant 5 secondes et le remet -> TEST est toujours là.
J'enlève le XMEMORY et le mets dans la première hp (halfnut) -> le programme est toujours dans la XMEMORY, et je peux le transférer sur la halfnut.
Je peux donc échanger des données entre les deux calculatrices.

Dernier test, j'ai remis le XMEMORY dans la fullnut, j'ai fait un reset sur la hafnult et j'ai remis le XMEMORY dans la haflnut -> Il apparait vide mais quand je le remets dans la fullnut, il contient toujours TEST.
HP, Casio, Sharp, Psion, quelques TI et divers autres

cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2217
Inscription : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par cgh » 14 sept. 2020 19:17

Attentiom, les 124 premiers registres sont internes au XFUNCTION, Le XMEMORY commece au registre 125.
Avec un XFUNCTION (ou une CX) et un XMEMORY, EMDIR te renverra 362 = 124 registres XFUNCTION + 238 XMEMORY,
C'est pour cela qu'il faut creer un fichier de 122 registres pour "occuper" l'espace du XFUNCTION.
Avec un fichier de 122 registres SANS XMEMORY, EMDIR doit te retourne 0. A l'insertion d'un XMEMORY, il te retourna 238. Le prochain fichier cree sera DANS l'espace du XMEMORY. A ce moment, si tu l'enleves le XMEMORY, et tu le remets aussitot, et c'est la que tu peux voir le comportement de XMEMORY,
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque

cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2217
Inscription : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par cgh » 14 sept. 2020 19:20

bernouilli92 a écrit :
14 sept. 2020 17:35
Je viens de tester sur une hp41cx halfnut avec un module xmemory.
Je fait un programme simple :
LBL TEST
BEEP
END
Je le sauve dans le XMEMORY mais sans créer d'abord de fichier, directement par un ALPHA TEST SAVEP
Je vérifie avec un EMDIR, qui m'affiche TEST P002 et renvoie 358
J'éteins la HP41, j'enlève le XMEMORY et le remet aussitôt, j'allume la HP41cx et fait un EMDIR, cela m'affiche TEST P002 et renvoi 358.
Je recommence : j'éteins le HP41, j'enlève le module XMEMORY, j'attends 5 secondes et le remets -> Le programme est toujours en XMEM.
Je recommence : j'éteins le HP41, j'enlève le module XMEMORY, je fais un RESET de la HP41, je remets le XMEMORY -> XMEM vide, le module est resté en dehors de la hp41 pendant environ 6 secondes.
Je recommence : j'éteins le HP41, j'enlève le module XMEMORY, j'attends 10 secondes et le remets -> Le programme est toujours en XMEM.
Je recommence : j'éteins le HP41, j'enlève le module XMEMORY, j'attends 30 secondes et le remets -> Le programme est toujours en XMEM.
En fait, ici, le fichier TEST est dans l'espace du XFUNCTION.
bernouilli92 a écrit :
14 sept. 2020 17:35
Autre test: j'enlève le module xmemory et insère dans une autre hp41cx, fullnut, EMDIR -> DIR EMPTY
Je l'enlève et le remets dans la première HP41cx (halfnut), EMDIR -> TEST P003
C'est un peu bizarre.
Je continue :
module dans second HP41, EMDIR -> DIR EMPTY / ALPHA TEST GETP -> FL NOT FOUND
je remets le module dans la première HP41, je supprime le programme en mémoire par un CLP TEST et le recharge par un ALPHA TEST GETP, cela fonctionne.
En fait, tu as enleve un XMEMORY vide, car le fichier TEST est dans l'espace du XFUNCTION de la premiere 41CX,.
bernouilli92 a écrit :
14 sept. 2020 17:35
Je continue mes tests, je mets le XMEMORY dans la HP41 fullnut, je refais la même manip et sauvegarde le programme TEST sur la XMEMORY, j'enlève le XMEMORY pendant 5 secondes et le remet -> TEST est toujours là.
J'enlève le XMEMORY et le mets dans la première hp (halfnut) -> le programme est toujours dans la XMEMORY, et je peux le transférer sur la halfnut.
Je peux donc échanger des données entre les deux calculatrices.

Dernier test, j'ai remis le XMEMORY dans la fullnut, j'ai fait un reset sur la hafnult et j'ai remis le XMEMORY dans la haflnut -> Il apparait vide mais quand je le remets dans la fullnut, il contient toujours TEST.
Idem. Il faudrait un autre programme avec un autre nom ;)
Avec une CX, il faut IMPERATIVEMENT occuper l'espace du XFUNCTION avec un fichier bidon de 122 registres :geek:
Dernière édition par cgh le 14 sept. 2020 19:32, édité 2 fois.
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque

cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2217
Inscription : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par cgh » 14 sept. 2020 19:29

L' espace des differents modules formant la XMEM (XFUNCTION + XMEMORY) est alloue comme ci-dessous, Sylvain l'a d'ailleurs tres bien decrit dans son excellent post un peu plus haut. Merci Sylvain.

Code : Tout sélectionner

000 ------
       XFUNCTION (128 registres, 122 registres allouables car chaque fichier necessite 2 registres pour son entete)
127 ------
128 ------
       XMEMORY 1 (238 registres)
365 ------
366 ------
       XMEMORY 2 (238 registres)
603 -----
EMDIR affichera 124 pour un XFUNCTION vide; 362 pour un XFUNCTION et un XMEMORY; 600 pour un XFUNCTION et 2 XMEMORY,

A cela, il faut soustraire 4 registres utilises pour l'administration de la XMEM. Chaque fichier cree demande 2 registres de plus pour son entete. Si on cree un fichier de 9 registres, celui occupera 11 registres, MAIS on ne verra que 009 au travers de EMDIR,

D'ou mon schema de memoire XMEM:

Code : Tout sélectionner

000 ------
       XFUNCTION
       4 Reg Admin
       2 Reg entete "DUMMY" D 122
       122 Reg ...
127 ------
128 ------
       XMEMORY 1 (238 registres)
       2 Reg entete "TEST" P 002
       2 Reg ....
365 ------
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque

Avatar de l’utilisateur
bernouilli92
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4296
Inscription : 21 nov. 2012 14:03
Localisation : Ile de France

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par bernouilli92 » 14 sept. 2020 20:06

Je comprend mieux. C’est pour cela que tu créais d’abord un fichier de 122 registres. Je ne comprenais pas pourquoi tu créais un fichier qui prend toute la mémoire, car tu dis que EMDIR renvoi 0. Pour ensuite stocker un programme. J’avais compris que le programme était stocké dans le fichier Dummy.

Du coup mes observations sont normales. Je vais réessayer en utilisant ta méthode.
HP, Casio, Sharp, Psion, quelques TI et divers autres

cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2217
Inscription : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par cgh » 14 sept. 2020 20:33

bernouilli92 a écrit :
14 sept. 2020 20:06
Je comprend mieux. C’est pour cela que tu créais d’abord un fichier de 122 registres. Je ne comprenais pas pourquoi tu créais un fichier qui prend toute la mémoire, car tu dis que EMDIR renvoi 0. Pour ensuite stocker un programme. J’avais compris que le programme était stocké dans le fichier Dummy.

Du coup mes observations sont normales. Je vais réessayer en utilisant ta méthode.
La XMEM est farceuse ;) et en plus, elle comporte des trous ... comme l'Emmental :mrgreen:
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque

Avatar de l’utilisateur
bernouilli92
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4296
Inscription : 21 nov. 2012 14:03
Localisation : Ile de France

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par bernouilli92 » 14 sept. 2020 20:40

J’ai refait le test en remplissant d’abord le XMEM du xfunction avec un fichier dummy de 122 registres.
Le résultat est que le x-memory garde bien le contenu quand on le sort et le remet. Même si entre temps on allume la hp.
Par contre si je sors le module et que je fais un EMDIR, ensuite j’éteins et remets le module, il est vide.
On doit donc pouvoir transférer des fichiers d’une hp à une autre avec un xmemory.
Dernière édition par bernouilli92 le 15 sept. 2020 07:43, édité 2 fois.
HP, Casio, Sharp, Psion, quelques TI et divers autres

cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2217
Inscription : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par cgh » 14 sept. 2020 20:43

bernouilli92 a écrit :
14 sept. 2020 20:40
Le résultat est que le xmemiry garde bien le contenu quand on le sort et le remet. Même si entre temps on allume la hp.
Merci bernouilli. Dans ce cas, c'est mon double XMEMORY qui se comporte mal :(
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque

cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2217
Inscription : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par cgh » 14 sept. 2020 20:48

bernouilli92 a écrit :
14 sept. 2020 20:40
Par contre si je sors le module et que je fais un EMDIR, ensuite j’éteins et remets le module, il est vide.
C'est normal. EMDIR reconstruit les chainages de la XMEM. Comme HEPDIR ou HEPROOM du module HEPAX. Tu devrais avoir avoir la meme chose avec EMROOM a la place de EMDIR.
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque

pcscote
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 65
Inscription : 11 juil. 2018 01:06

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par pcscote » 15 sept. 2020 07:18

Résultats de mes tests sur une HP-41CX halfnut 2814S20800 ROM:NFL ...
  1. XM-Simple : OFF, enlève XM, attend 45 secondes, OFF, insère XM, CAT 4
    → le programme TEST est toujours présents.
    :
  2. XM-Simple : OFF, enlève XM, attend 50 secondes, OFF, insère XM, CAT 4
    → le programme TEST est disparu du catalogue et le contenu binaire du module XM a été effacé.
    :
  3. XM-Double : OFF, enlève XM, attend 45 secondes, OFF, insère XM, CAT 4
    → le programme TEST est toujours présents.
    :
  4. XM-Double : OFF, enlève XM, attend 50 secondes, OFF, insère XM, CAT 4
    → le programme TEST est disparu du catalogue et le contenu binaire du module XM a été effacé.
    :
  5. OFF, enlève XM, ON, CAT 4, OFF, insère XM, CAT 4
    → le programme TEST est disparu du catalogue, mais le contenu binaire du module XM a été conservé.
Contenu mémoire vérifié avec la fonction RAMED du module ZENROM.

Sylvain

Avatar de l’utilisateur
Danny
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 325
Inscription : 28 déc. 2013 17:34

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par Danny » 15 sept. 2020 09:44

Faudrait faire un schéma pour expliquer aux débutants en HP-41 (dont moi) comment est organisée la mémoire, entre la RAM interne, la XMEM externe ou interne, etc. :| :geek: :)
Casio fx-3900p, 7000G, 6000G, 6800G, 8500G, 9900GC, 9950GB +, Graph 100+ USB
HP 35, 45, 65, 21, 25, 33E, 41CX, 42S, 28S, 32SII, 48SX, 48GX, 50g, Prime
Sharp EL-9000

cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2217
Inscription : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par cgh » 15 sept. 2020 09:50

pcscote a écrit :
15 sept. 2020 07:18
Résultats de mes tests sur une HP-41CX halfnut 2814S20800 ROM:NFL ...
  1. XM-Simple : OFF, enlève XM, attend 45 secondes, OFF, insère XM, CAT 4
    → le programme TEST est toujours présents.
    :
  2. XM-Simple : OFF, enlève XM, attend 50 secondes, OFF, insère XM, CAT 4
    → le programme TEST est disparu du catalogue et le contenu binaire du module XM a été effacé.
    :
  3. XM-Double : OFF, enlève XM, attend 45 secondes, OFF, insère XM, CAT 4
    → le programme TEST est toujours présents.
    :
  4. XM-Double : OFF, enlève XM, attend 50 secondes, OFF, insère XM, CAT 4
    → le programme TEST est disparu du catalogue et le contenu binaire du module XM a été effacé.
    :
  5. OFF, enlève XM, ON, CAT 4, OFF, insère XM, CAT 4
    → le programme TEST est disparu du catalogue, mais le contenu binaire du module XM a été conservé.
Contenu mémoire vérifié avec la fonction RAMED du module ZENROM.

Sylvain
Merci Sylvain pour tes tests detailles. Seuls les XMEM simple conservent leur contenu sans alimentation pour un temps court. Les doubles XMEM perdent tout. Apres c'est peut-etre du a schema du double XMEM ou au fait que 2 modules sont inserer en meme temps. Un test interessant a faire serait de mettre 2 XMEM, en remplir un. Enlever les 2 XMEM. Puis les remettre tous les deux :geek:
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque

Avatar de l’utilisateur
bernouilli92
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4296
Inscription : 21 nov. 2012 14:03
Localisation : Ile de France

Re: Transfert entre 2 HP41 (C et CV) avec le XFUNCTION

Message par bernouilli92 » 15 sept. 2020 10:07

Quand tu remplis le xmem du Xfunction et qu'ensuite tu stockes quelque chose en xmem, comment savoir dans quel xmemory il est stocké si tu as deux xmemory, disons dans le port 1 et 3 ?
HP, Casio, Sharp, Psion, quelques TI et divers autres

Répondre

Revenir vers « Tous les Pockets »