wldsvc a écrit :1. MEM avec un CE-155 de 6K "devrait" donner quelque chose comme 7994 (8k-198 octets)
2. &7863 (pas 7864

) donne &40, et &7864 done &48 (c'est pas plutôt lui la fin de la ram au lieu de &7899?). Donc RAM adressable de &4000 à &47FF.
Et non ! Il y a un piège. Au début, je n'ai pas pigé et en réfléchissant, c'est logique.
wldsvc a écrit :EDIT: sur mon 1500A, &7864 donne la même chose que &7899...
Oui tu as raison. Ce n'était pas &7864 mais &7863. En fait, les pointeurs sont les suivants:
&7863 : poids fort du début de la RAM, soit &40 sur un PC1500/PC1500A/PC2.
&7864 : poids fort de la fin de la RAM, soit &48 sur PC1500/PC2 et &58 sur PC1500A.
&7899/&789A : contient le tas, c'est à dire la zone où sont stockées les variables dynamique (DIM X$(100), DIM AA(10,10), ZZ).
Après un NEW la valeur est (&7864)*256+0.
wldsvc a écrit :Au passage, je cherche de la doc assembleur/mappage mémoire, points d'entrées pour un 1500A

Ici et
là, tu trouveras ton bonheur
wldsvc a écrit :PS: je viens de me rendre compte d'un truc bizarre : j'ai viré mon CE-161 (qui n'a pas de batterie) pour faire des tests, et quand je l'ai remis, les mappages de réserve étaient revenus... normal ? Je me demande où il les stocke (adresses ?), et surtout combien de temps ça peut tenir sans batterie. Ça peut être intéressant pour faire un backup le temps de changer les piles. D'ailleurs, il semble que la doc du CE-155 contienne un programme pour faire du backup RAM->module... si quelqu'un avait ça, il ferait un heureux

En enlevant le CE-161, tu aurais du avoir le message NEW0: CHECK?, sauf si tu as déplacé la zone de programme BASIC en dehors de ton module, par un NEW &4000. J'ai un CE-155 en boite avec la doc, je regarderai. Mais je ne comprends pas: Ce sont données dans ton modules qui ont conservées, ou les pointeurs des zones, qui ont ceux dans la RAM système (&7600..&7BFF) ?
Les adresses sont les suivantes:
&7863 : Début de la RAM
&7864 : Fin de la RAM
&7865/&7866 : Pointeur de début de la zone BASIC sans module, on a &40C5. Soit 197 (=&C5).
&7867/&7868 : Pointeur de fin de BASIC. Ce pointeur augmente jusqu'au début du tas, pointé par &7899/&789A.
&7869/&786A : Pointeur de début de zone mergée. Commande MERGE.
&7899/&789A : Pointeur du tas. Ce pointeur décroit de &47FF jusqu'à la fin de la zone BASIC pointée par &7867.