Page 6 sur 10
Re: [Thomson] DCMOTO nouveau
Publié : 14 mars 2017 13:20
par Daniel
@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
Re: [Thomson] DCMOTO nouveau
Publié : 14 mars 2017 13:51
par jb_jb_fr
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)
Re: [Thomson] DCMOTO nouveau
Publié : 14 mars 2017 14:43
par jb_jb_fr
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
Re: [Thomson] DCMOTO nouveau
Publié : 16 mars 2017 14:58
par Daniel
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.
Re: [Thomson] DCMOTO nouveau
Publié : 16 mars 2017 16:47
par jb_jb_fr
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
Re: [Thomson] DCMOTO nouveau
Publié : 16 mars 2017 17:11
par Dominique
Je viens de lire ton message du 14 mars, Jacques, et tes suggestions ; Je te remercie pour le message, et excuse moi du retard.
Re: [Thomson] DCMOTO nouveau
Publié : 16 mars 2017 17:29
par Daniel
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.
Re: [Thomson] DCMOTO nouveau
Publié : 23 mars 2017 20:44
par Daniel
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 (164.08 Kio) Consulté 6646 fois
Re: [Thomson] DCMOTO nouveau
Publié : 23 mars 2017 21:42
par __sam__
cool
Re: [Thomson] DCMOTO nouveau
Publié : 24 mars 2017 08:27
par jb_jb_fr
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
Jacques
Re: [Thomson] DCMOTO nouveau
Publié : 24 mars 2017 18:25
par Daniel
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 (2.7 Kio) Consulté 6608 fois
Re: [Thomson] DCMOTO nouveau
Publié : 03 mai 2017 14:40
par Yannick73
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...
Re: [Thomson] DCMOTO nouveau
Publié : 03 mai 2017 18:24
par Daniel
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.
Re: [Thomson] DCMOTO nouveau
Publié : 04 mai 2017 06:53
par Yannick73
Merci Daniel !
ça fonctionne très bien !!!!
Yannick
Re: [Thomson] DCMOTO nouveau
Publié : 22 juin 2017 10:16
par Fool-DupleX
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