DCALICE DISK : mon programme asm a crée un bug ??

Couvre tous les domaines de l'émulation logicielle ou de la virtualisation ainsi que les discussions sur les divers outils associés.

Modérateurs : Papy.G, fneck, Carl

Avatar de l’utilisateur
David.G
Messages : 300
Inscription : 16 janv. 2024 00:02

DCALICE DISK : mon programme asm a crée un bug ??

Message par David.G »

Dans l'émulateur Alice90 + Disk,

J'ai écrit un simple programme en assembleur de 10 lignes dans l'éditeur-assembleur, je l'ai sauvegardé sur cassette,
puis sur la disquette virtuelle avec la commande SAVEM du Disk Basic 2.5

Depuis, j''ai beau fermer l'émulateur et le relancer, un bug étrange se produit dans l'émulateur.

Je ne mets pas en cause l'émulateur, mon PC est peut-être naze :lol:

J'ai trouvé utile de vous le montrer avant de réinstaller la nouvelle mise à jour de DCalice :

J'ai éteint puis rallumé le PC, le bug est toujours là:

1) Il affiche des caractères graphiques et des informations zarbi quand je fais un DIR pour afficher le catalogue de la disquette où j'ai enregistré 2 programmes en langage machine avec SAVEM.

Mais je peux enregistrer des programmes sur cette disquette.

2) Pas sur les nouvelles disquettes que je crée : FS ERROR.
J'ai vérifié, la disquette n'est pas protégée en écriture. Je tape :

10 CLS
SAVE "TEST.BAS"

FS ERROR

Donc je ne peux plus créer de nouvelles disquettes en enregistrer un simple programme BASIC dessus :shock:

Je dois être mal réveillé car je ne vois pas :?

bug2.png
bug2.png (77.31 Kio) Consulté 728 fois
Bug.png
Bug.png (71.81 Kio) Consulté 728 fois
Dernière modification par David.G le 27 mars 2024 14:48, modifié 1 fois.
Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par Daniel »

Un signalement de bug de l'émulateur dcalice doit être accompagné de tous les éléments nécessaires pour le reproduire. Sinon il ne pourra pas être corrigé.
D'après la description, il est très probable que la disquette ne soit pas correcte. Reste à déterminer ce qui l'a détruite.
Daniel
L'obstacle augmente mon ardeur.
Avatar de l’utilisateur
David.G
Messages : 300
Inscription : 16 janv. 2024 00:02

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par David.G »

@Daniel : je ne dis pas que le bug vient de l'émulateur, je montre juste un truc étrange sur mon PC qui est sûrement pourri.

Cela s'est produit juste après que j'ai enregistré 2 zones mémoires avec SAVEM :

Je voulais sauvegarder mon code source assembleur sur disquette sans utiliser ASMD.BIN que je n'ai pas.

- J'ai d''abord sauvegardé la zone mémoire qui contient le code source de mon programme assembleur + le code assemblé :

SAVEM "AFFI.SRC",&H4650,&H4729

- puis j'ai sauvegardé la zone mémoire contenant les variables et les pointeurs de l'éditeur-assembleur lui-même :

SAVEM "AFFI.ASV",&H3043,&H3093


Hier, il me semble que cela avait fonctionné et que j'avais réussi à sauvegarder et charger le code source depuis la disquette.
Mais ce matin, non. Juste le bug.

Voici mon programme assembleur :

Code : Tout sélectionner

       ORG  $4A00
       EXC  DEBUT
DEBUT  JSR  CLS
       LDAA  #$41
       JSR  AFF 
       LDAA  #$42
       JSR  AFF 
       LDAA  #$43
       JSR  AFF 
       RTS
AFF  =  $F9C6
CLS  =  $FBD4
Le souci est que je ne peux plus enregistrer de nouveaux programmes sur les nouvelles disquettes crées.

Tout va s'arranger si je mets à jour l'émulateur, mais j'étais curieux de comprendre ce bug, qui vient de mon PC je pense...
Dernière modification par David.G le 27 mars 2024 23:32, modifié 2 fois.
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par Patrice »

Est-ce que tu formates ta disquette virtuelle par <DSKINI 0 ou 1,V> avant d'enregistrer des fichiers sur la disquette?
Dernière modification par Patrice le 28 mars 2024 10:44, modifié 1 fois.
Avatar de l’utilisateur
David.G
Messages : 300
Inscription : 16 janv. 2024 00:02

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par David.G »

@Patrice : Non, j'avais oublié !! Je viens de le faire et ça enregistre très bien les nouveaux programmes BASIC. :wink:

Par contre, le bug d'affichage du catalogue de la disquette où sont enregistrés mes 2 programmes en LM est toujours là...
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par Patrice »

Le mode cartouche de dcalice et l'extension RAM de $1000 à $2FFF doivent être décochés obligatoirement pour l'utilisation en mode MCX32-FDJ. :wink:
MCX32-FDJ utilise les espaces allant de $0020 à $007F et de $0100 à $2FFF pour son fonctionnement propre.
Dernière modification par Patrice le 27 mars 2024 15:59, modifié 1 fois.
Avatar de l’utilisateur
David.G
Messages : 300
Inscription : 16 janv. 2024 00:02

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par David.G »

@Patrice : Effectivement, l'option était cochée. Je vais recommencer , mais je pense que c'est ce qui a causé le bug ? Problème résolu , merci ! :)

Maintenant on sait que ça peut perturber l'affichage du directory de la disquette ! L'émulateur est hors de cause comme je le pensais, mon PC aussi.

Au fait, que penses-tu de mon système de sauvegarde sur disquette du code source, j'ai bon ?
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par Patrice »

Oui, mais compliqué. Si tu charges la ROM système version 2.05 que j'ai mis au point dans dcalice avec l'outil de mise au point inclus, le programme
visualiseur des paramètres d'assemblages source, assemblé et objet te donnera ces informations directement et ceci quelque soit la zone RAM choisie.

C'est ici: http://forum.system-cfg.com/viewtopic.php?f=1&t=14402

Attention, j'ai créé 2 ROM's système version 2.05, 1 ROM virtuelle pour dcalice et l'autre à écrire dans dans une EEPROM ou EPROM W27C512 ou 27512(effacement avec des UV) qui s'installe en mode ROM dans l'extension Multi-Ports (Fred_72). :wink:
Avatar de l’utilisateur
David.G
Messages : 300
Inscription : 16 janv. 2024 00:02

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par David.G »

Oh, je ne savais pas. Je pensais que l'émulateur contenait tout vu que le Disk BASIC est en version 2.5.
Je vais lire tout ça pour bien comprendre. Merci de ton travail Patrice. :wink:

Je viens de réessayer, je parviens bien à Sauvegarder et Charger un programme objet binaire et son code source assembleur. Ça maaaarche !

Voici comment je le Charge depuis la disquette : (si ça peut un jour dépanner quelqu'un...)

- Démarrage à froid. (si vous voulez)

- CLEAR 100,18000 (mettez votre valeur à vous)

- & ENTRÉE (pour entre en mode éditeur asssembleur et initier les pointeurs)

- BREAK 2 fois (on retourne tout de suite au BASIC)

- LOADM "AFFI.SRC" (mon code source+assemblage"

- LOADM "AFFI.ASV" (les variables/vecteurs de l'éditeur-assembleur )

% ENTRÉE (pour revenir en mode éditeur-assembleur) : Voilà !! Votre code source est devant vos yeux. Plus qu'à l'assembler/exécuter. :)


Comme je n'ai pas encore reçu mon lecteur de disquette USB qui me permettra de mettre ASMD.BIN sur une disquette et d'en faire une image .fd, je me suis amusé à trouver comment sauvegarder le code source de mes progs assembleur :

Il suffit de sauvegarder la zone mémoire oú il est logé + les vecteurs RAM de l'éditeur assembleur.
Bon, si vous voulez aller plus vite, vous sauvegarder/Restaurez l'état avec l'émulateur de Daniel en créant un fichier .rmx.

Ma solution fonctionne sur la vraie machine si vous n'avez pas de PC avec lecteur de disquette, donc pas de ASMD.BIN,
vous pourrez ainsi sauvegarder votre code source assembleur sur disquette.
:wink:

Je vais essayer de créer un programme BASIC qui va chercher les zones mémoires et enregistre/charge votre programme source/binaire en un clin d'oeil.
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par Patrice »

@David.G: Tu trouveras dans la disquette "JEUX.fd", ci-jointe, le programme ASMD.BIN que tu recherches avec des jeux Alice 32/90 en prime. :wink:

C'est ici:
JEUX.zip
(53.85 Kio) Téléchargé 8 fois
Avatar de l’utilisateur
David.G
Messages : 300
Inscription : 16 janv. 2024 00:02

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par David.G »

Super Patrice, ça marche très bien,
tant avec le programme source qu'avec le programme objet. Thnx :wink:

asmd-pic4.png
asmd-pic4.png (84.75 Kio) Consulté 527 fois
asmd-pic5.png
asmd-pic5.png (73.44 Kio) Consulté 527 fois
Dernière modification par David.G le 28 mars 2024 17:27, modifié 1 fois.
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par Patrice »

A partir de cette disquette virtuelle tu vas pouvoir recréer une autre disquette virtuelle ne contenant que ASMD.BIN avec tes propres programmes sources et binaires! 8) :wink:
Avatar de l’utilisateur
David.G
Messages : 300
Inscription : 16 janv. 2024 00:02

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par David.G »

Oui, je l'ai fait, c'est impeccable. Je me suis même fait un petit programme en Disk BASIC pour gérer mes disquettes. :)

Petit BUG découvert :

- Si vous mettez l'instruction DIR (seule) dans une ligne de programme, ça fonctionne et le programme n'est pas interrompu.

- Si une deuxième instruction figure dans la même ligne, une erreur de syntaxe est signalée et le programme interrompu.

Il faut écrire : 20 DIR 0 : PRINT

et ça fonctionne.


erase-pic2.png
erase-pic2.png (14.18 Kio) Consulté 469 fois
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par Patrice »

Voici le jeu de Duruti "IN THE DARK" adapté à l'interface MCX32-FDJ.

Ici:
JEU-IN-THE-DARK(Duruti).zip
(57.29 Kio) Téléchargé 9 fois
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: DCALICE DISK : mon programme asm a crée un bug ??

Message par Patrice »

@David.G: Non pas de bug car l'utilisation de DIR 0 ou DIR 1 dans une ligne de programme Basic comportant plusieurs instructions est tout à fait normal, l'interface a besoin de ce renseignement si DRIVE 0 ou 1 n'a pas été déclaré au préalable.

Analyses le programme Basic de T'EXTRA pour voir comment j'ai utilisé DIR avec le choix entre 1 ou 2 lecteurs de disquette et plusieurs instructions sur la même ligne que DIR. :wink:

Pour voir les 3 fichiers, il faut faire <DIRI> car j'ai caché 2 fichiers (TEXTRA.BAS et SOURCEB.BIN) pour qu'ils ne soient pas effacés par erreur. :wink:

Ici:
TEXTRA-disquette.zip
(11.23 Kio) Téléchargé 7 fois
Ecran DIRI ici:
Ecran DIRI-TEXTRA.zip
(2.17 Kio) Téléchargé 9 fois
Dernière modification par Patrice le 30 mars 2024 08:41, modifié 1 fois.
Répondre