[Thomson] DCMOTO nouveau

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

Modérateurs : Carl, Papy.G, fneck

Daniel
Messages : 9545
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel » 14 mars 2017 13:20

@jb_jb_fr : merci pour le contenu des EPROM OS-9.
Au premier essai avec dcmoto, le programme tombe dans une boucle infinie en $3F8A.
Sans les sources il est difficile de trouver le problème, et je n'ai pas le courage de les reconstituer à partir du binaire.
Remarque : pour faciliter l'interprétation, j'ai prévu dans le désassembleur un octet de paramètre après le SWI2.

Code : Tout sélectionner

3F6F 103F04     SWI2   #$04               
3F72 308DFF48   LEAX   $3EBE,PCR          
3F76 338DFF49   LEAU   $3EC3,PCR          
3F7A CC0100     LDD    #$0100             
3F7D 109E02     LDY    /$02               
3F80 103F03     SWI2   #$03               
3F83 2505       BCS    $3F8A              
3F85 103F04     SWI2   #$04               
3F88 24E8       BCC    $3F72              
3F8A 20FE       BRA    $3F8A              
3F8C 3B         RTI                       
Daniel
L'obstacle augmente mon ardeur.

Avatar du membre
jb_jb_fr
Messages : 293
Enregistré le : 29 mars 2010 10:36
Localisation : Essonne (91)
Contact :

Re: [Thomson] DCMOTO nouveau

Message par jb_jb_fr » 14 mars 2017 13:51

Daniel

Tu es dans le dernier recourt de lancement du shell:

Code : Tout sélectionner

* Try to launch the Shell process
*---------------------------------------------------------------------
FrkShell equ   *               ; Launch SHELL with startup parameter
         leax  >Shell,pcr      ; Address of module name or file name
         leau  >Startup,pcr    ; Address of parameters
         ldd   #$0100          ; A=Language B=PageRam
         ldy   <ParamAddr      ; Read parameters size
         os9   F$Fork
         bcs   DeadEnd
         os9   F$Wait
         bcc   FrkShell
Il semble que le Fork ne marche pas (ne trouve pas le module Shell qui est à l'adresse $1A08)
Fichiers joints
OS9_TO9p.jpg
OS9_TO9p.jpg (80.57 Kio) Vu 694 fois

Avatar du membre
jb_jb_fr
Messages : 293
Enregistré le : 29 mars 2010 10:36
Localisation : Essonne (91)
Contact :

Re: [Thomson] DCMOTO nouveau

Message par jb_jb_fr » 14 mars 2017 14:43

Dominique a écrit : @Daniel
Si un jour tu te décides, une fonction "Trace" serait grandement appréciée.

Dans le programme que je développe, j'aimerai pouvoir évaluer :
a) Le nombre de fois que le programme fait appel à certaines procédures,
b) laquelle est la plus gourmande en temps et mérite optimisation

Sortie peut être sur fichier TXT avec
Timer - Ligne PC - Instruction - Valeurs dans D X Y peut être U et S
Quelque chose comme ça.
Voila une suggestion que j'ai utilisée sur XEMUL56, et qui je pense pourrait être facilement réalisable dans DCMOTO.
Il faut convenir d'une ou de plusieurs adresses non utilisées dans la machine (dans la plage d'IO par exemple)
Ensuite, dans le code que tu veux debugger, il suffit d'ecrire à cette adresse, et DCMOTO se charge de stocker les infos dans un fichier.

Par exemple:
- Tu écris le registre A a DebugAddresse (sta $E7F8 (au hasard)) ==> DCMOTO stock A dans le fichier
- Tu écris le registre A à DebugAddresse+1 (sta $E7F9) ==> DCMOTO stock le temps et tous les registres dans le fichier

Ainsi en debut de fonction tu fais :
pshs A
lda #'D'
std $E7F8
puls A

et en fin de fonction tu fais
pshs A
lda #'F'
std $E7F8
puls A,PC

Comme ca dans ton fichier tu as 'D' (pour Debut) et toutes les infos et apres tu as 'F' (pour Fin)+ toutes les infos.
C'est souvent comme ca que j'ai fait du débuggage et ca aide énormement.

Jacques

Daniel
Messages : 9545
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel » 16 mars 2017 14:58

DCMOTO nouveau est passé à la version 2017.03.16,
disponible à la page "Emulateur" du site dcmoto.

Cette version est un peu particulière, car elle est candidate pour devenir la prochaine version officielle.
En plus de petites améliorations, de nombreuses corrections et de machines nouvelles (MO5N et MO5 QWERTY), elle apporte deux fonctions importantes :

1) La création de fichiers .sd permettant de restaurer l'état de l'émulateur sur les MO5 et sur les TO7/70
La fonction "Sauver l'état actuel" produit, en plus du fichier mrx, un fichier mo5.sd ou to770.sd si on a sélectionné l'émulation d'une de ces deux machines. Ce fichier est "bootable" sur la vraie machine avec un contrôleur CS91-280 ou CS91-282. C'est un moyen de charger rapidement des jeux sur cassette.

2) L'émulation expérimentale du processeur Hitachi 6309, avec un debugger/désassembleur intégré
La programmation est terminée mais pas testée. Il n'y a aucune garantie de fonctionnement.
DCMOTO nouveau contient aussi une nouvelle version 6309 d'OS/9 pour TO9+, fournie par jb_jb_fr.
On la sélectionne en choisissant l'ordinateur "TO9+ OS9" et le processeur "6309". Elle ne fonctionne pas, mais je ne sais pas si c'est du à une mauvaise émulation du TO9+ ou à une mauvaise émulation du 6309. Mes connaissances d'OS/9 sont trop mauvaises pour trouver le problème, je laisse de meilleurs que moi chercher les anomalies.
En sélectionnant le processeur "6809" on a une version d'OS/9 pour 6809. Celle-ci va un peu plus loin car elle affiche l'écran d'accueil, mais reste bloquée à ce niveau. Là aussi mes connaissances d'OS/9 ne sont pas suffisante pour corriger.

Si vous avez l'occasion de faire tourner d'autres programmes 6309 avec dcmoto, vos remarques seront les bienvenues.
Daniel
L'obstacle augmente mon ardeur.

Avatar du membre
jb_jb_fr
Messages : 293
Enregistré le : 29 mars 2010 10:36
Localisation : Essonne (91)
Contact :

Re: [Thomson] DCMOTO nouveau

Message par jb_jb_fr » 16 mars 2017 16:47

Daniel

Pour OS9 6309 je vais, si j'ai le temps, me pencher dessus.
Je pense être le mieux placé :)

Par contre pour la version OS9 6809, comment gères-tu le clavier?
Emules-tu le 6850? Ou alors tu as simulé le clavier en détournant l'appel système?
Si c'est le 2eme cas, c'est normal que OS9 soit bloqué, car il attend l'appuie sur une touche pour déclencher la procédure de login.

Jacques

Avatar du membre
Dominique
Messages : 465
Enregistré le : 09 mars 2010 13:37
Localisation : Limoges
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Dominique » 16 mars 2017 17:11

Je viens de lire ton message du 14 mars, Jacques, et tes suggestions ; Je te remercie pour le message, et excuse moi du retard.

Daniel
Messages : 9545
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel » 16 mars 2017 17:29

jb_jb_fr a écrit :Emules-tu le 6850? Ou alors tu as simulé le clavier en détournant l'appel système?
Bien vu : je n'émule pas le 6850. Pour l'émulation Thomson je détourne la fonction. J'essaierai de faire de même avec OS/9.
Daniel
L'obstacle augmente mon ardeur.

Daniel
Messages : 9545
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel » 23 mars 2017 20:44

Grâce à l'aide de jb_jb_fr deux erreurs ont été corrigées dans l'émulation 6309. Avec la dernière version de dcmoto_nouveau, l'option TO9+ OS9 (en sélectionnant le processeur 6309) permet d'afficher l'écran d'accueil d'OS/9 avec un curseur clignotant.

La prochaine étape sera l'émulation du clavier, pour permettre de taper les commandes. Mais d'ores et déjà on peut dire que l'émulation 6309 commence à fonctionner, même si elle est insuffisamment testée. Avec les nouveaux registres et les nouvelles instructions certaines fonctions vont être beaucoup plus rapides. Les MOD sur TO8 à 8000Hz, c'est possible !

Rappel : dcmoto_nouveau est à http://dcmoto.free.fr/emulateur/index.html
dcmoto_20170323_to9p_os9.png
dcmoto_20170323_to9p_os9.png (164.08 Kio) Vu 657 fois
Daniel
L'obstacle augmente mon ardeur.

__sam__
Messages : 3762
Enregistré le : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] DCMOTO nouveau

Message par __sam__ » 23 mars 2017 21:42

cool 8)
Samuel.
Amiga 500+GVP530(MMU/FPU) (hs), A1200(030@50mhz/fpu/64mb/cf 8go), R-Pi, TO9, TO8D, TO8.
New Teo 1.8.4 8)

Avatar du membre
jb_jb_fr
Messages : 293
Enregistré le : 29 mars 2010 10:36
Localisation : Essonne (91)
Contact :

Re: [Thomson] DCMOTO nouveau

Message par jb_jb_fr » 24 mars 2017 08:27

Daniel

Ca n'est pas gagné encore :(
Car au vu de ta copie d'écran, le disque virtuel n'a pas été detecté.
Donc il faut continuer à chercher les bugs.
Mais on tiens le bon bout :D

Jacques

Daniel
Messages : 9545
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel » 24 mars 2017 18:25

Toujours grâce à jb_jb_fr l'émulation de la version 6309 d'OS/9 progresse très vite.
Nouvelle version de dcmoto_nouveau disponible : http://dcmoto.free.fr/emulateur/index.html
os9.png
os9.png (2.7 Kio) Vu 619 fois
Daniel
L'obstacle augmente mon ardeur.

Yannick73
Messages : 13
Enregistré le : 15 avr. 2017 12:13

Re: [Thomson] DCMOTO nouveau

Message par Yannick73 » 03 mai 2017 14:40

Bonjour,

J'ai un problème avec la création d'un fichier de sauvegarde TO7/70 en .sd que je n'arrive pas à lancer sur la "vrai" machine.
Sur l'écran d'accueil "SDMOTO3 je sélectionne le fichier ("sorcery-mrx_to770.sd"), et ensuite quand je tape RUN"AUTO.BAT", j'ai un "file not found"...
J'ai du faire une erreur quelque part...

Daniel
Messages : 9545
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel » 03 mai 2017 18:24

Les sauvegardes de l'état de l'émulateur sur cartes SD sont des images de disquettes bootables. Elles ne contiennent pas de fichier AUTO.BAT, et se lancent par EXEC &HE007 sur TO et EXEC &HA007 sur MO.

Dans le menu SDMOTO de choix de la disquette, on sélectionne le fichier .sd et on appuie sur ENTREE.
Ensuite il s'affiche une liste de commandes possibles :

Code : Tout sélectionner

Commandes utiles :

DOS           'boot MO5
EXEC &HA007   'boot MO
EXEC &HE007   'boot TO
RUN"AUTO.BAT" 'lancement auto.bat
DIR           'liste du repertoire
Il faut alors placer le curseur sur la ligne "boot TO" et appuyer sur ENTREE.

Comme toujours, dans les nouveautés, la mise à jour de la documentation ne suit pas le rythme des nouvelles fonctionnalités.
Je le sais bien et je travaille sur la future version officielle de l'émulateur où toutes ces nouvelles fonctions seront décrites.
Daniel
L'obstacle augmente mon ardeur.

Yannick73
Messages : 13
Enregistré le : 15 avr. 2017 12:13

Re: [Thomson] DCMOTO nouveau

Message par Yannick73 » 04 mai 2017 06:53

Merci Daniel !

ça fonctionne très bien !!!! ;-)

Yannick

Fool-DupleX
Messages : 867
Enregistré le : 06 avr. 2009 12:07

Re: [Thomson] DCMOTO nouveau

Message par Fool-DupleX » 22 juin 2017 10:16

Je voudrais faire une suggestion pour une future version de dcmoto. Serait-il possible d'avoir un mécanisme dans la fenêtre des supports amovibles pour extraire les fichiers des images de disquettes et de cassettes ? Par exemple dans la fenêtre du bas, clic droit sur un des fichiers de la liste, pop-up menu et "sauver ...", l'idée serait d'avoir vraiment le contenu du fichier, débarassé des infos de secteur, un peu comme sapfs le fait avec les fichiers contenus dans un sap.

existe-t-il un convertisseur fd vers sap ? existe-t-il un extracteur de fichiers de fd ?

merci

Répondre