[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 : Papy.G, fneck, Carl

Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel »

Merci __sam__. Je m'attendais à cet ordre de grandeur mais je n'avais pas eu le temps de faire l'étude précise. Avec 5700 octets/s le son est supportable, l'animation d'un dessin au trait aussi. Avec le double on doit pouvoir faire son + vidéo. C'est mon premier objectif.
Daniel
L'obstacle augmente mon ardeur.
Avatar de l’utilisateur
jb_jb_fr
Messages : 391
Inscription : 29 mars 2010 10:36
Localisation : Essonne (91)
Contact :

Re: [Thomson] DCMOTO nouveau

Message par jb_jb_fr »

Daniel

Ton code ca pourrait donner ca:

Code : Tout sélectionner

RBYTE
  LDMD  #$01          Passage en mode Natif     (5)
  LDQ   #$FE7F005F    A.b0 marqueur fin de boucle (5)
RBYTE1     
  STB   <$CC          clock high, di high       (3)
  CMPB  <$CC          PA b7 (bit lu) -> carry   (3)
  STF   <$CC          clock low, di high        (4)
  ROLA                C (bit lu) -> b0 reg A    (1)
  BCS   RBYTE1        suite de la boucle        (3)
  LDMD  #$00          Passage en mode emulation (5)
  RTS                 retour (octet dans A)     (4)
Jacques
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] DCMOTO nouveau

Message par __sam__ »

Joli 8)

Code : Tout sélectionner

  LDQ   #$FE7F005F    A.b0 marqueur fin de boucle (5)
Ca m'impressionne de voir des instructions pour cpu 8bits ayants des arguments en 32bits :P
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel »

Merci Jacques !
Il faudra dérouler la boucle pour gagner du temps. Dans ce cas A n'a plus besoin d'être initialisé et on peut choisir les registres E et F pour l'horloge. Le passage en mode natif et le retour en mode émulé ne seront pas à chaque octet, mais à chaque secteur de 512 octets pour la simulation des disquettes, ou une seule fois pour les démonstrations de streaming. On doit arriver à moins de 90 cycles par octet. C'est presque deux fois moins qu'avec le 6809.
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] DCMOTO nouveau

Message par __sam__ »

Attention cependant STE/STF prennent un cycle de plus que STA/STB.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel »

Alors on doit pouvoir utiliser A et B pour l'horloge et E ou F pour stocker l'octet lu.
On aura le temps d'en discuter plus tard. Dans l'immédiat l'objectif prioritaire est d'émuler le 6309 dans dcmoto pour pouvoir tester.
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] DCMOTO nouveau

Message par __sam__ »

Tout a fait :) (au passage RORW est intéressant et permet de dérouler sur 16 bits. Un fil sur le 6309 sera le bien venu plus tard. ;) )
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Avatar de l’utilisateur
jb_jb_fr
Messages : 391
Inscription : 29 mars 2010 10:36
Localisation : Essonne (91)
Contact :

Re: [Thomson] DCMOTO nouveau

Message par jb_jb_fr »

Daniel a écrit :Dans l'immédiat l'objectif prioritaire est d'émuler le 6309 dans dcmoto pour pouvoir tester.
Daniel

Si ça t’intéresse, je peux te fournir les 3 ROM OS9-6309 pour que tu puisses tester ton émulation.

Jacques
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel »

Merci, mais pas avant quelques mois. Avant de tester il faut émuler le 6309, intégrer les nouvelles instructions dans le désassembleur et modifier l'outil de mise au point de dcmoto. Il faudra du temps...
Daniel
L'obstacle augmente mon ardeur.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel »

La version 2016.05.08 de dcmoto_nouveau est disponible à l'adresse habituelle : http://dcmoto.free.fr/emulateur/index.html
Une option a été ajoutée pour visualiser (plus ou moins) les lignes de balayage d'un écran CRT.
dcmoto_20160508.png
dcmoto_20160508.png (17.01 Kio) Consulté 4429 fois
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] DCMOTO nouveau

Message par __sam__ »

Daniel a écrit :La version 2016.05.08 de dcmoto_nouveau est disponible à l'adresse habituelle : http://dcmoto.free.fr/emulateur/index.html
Il me semble que ca n'est pas cette adresse pour dcmoto_nouveau. La dernière fois je m'étais fait avoir et ca bien failli ce coup-ci aussi ;)
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Avatar de l’utilisateur
mastacut
Messages : 288
Inscription : 14 mars 2016 05:12
Localisation : Thionville-Luxembourg-Belgique (Lorraine) Moselle

Re: [Thomson] DCMOTO nouveau

Message par mastacut »

Daniel a écrit :La version 2016.05.08 de dcmoto_nouveau est disponible à l'adresse habituelle : Image
Une option a été ajoutée pour visualiser (plus ou moins) les lignes de balayage d'un écran CRT.
Impeccable, Voila une option très intéressante pour simuler l'effet Scanlines, ce qui rends les graphismes fidèles à l’écran CRT, Les THOMSONISTES vont apprecier ... comme moi :wink: .

Image

PS : par contre je pense que les valeurs (je me trompe peut être de valeurs) : le numéro 1 devrait être a 25%, numéro 2 : 50% et numéro 3 devrait être a 75% (100% est juste un peut trop élevée a mon avis pour le Numero 3), 0 est bien entendu sans effets.
J'ai l'impression de de 2 a 3 nous passons de 50% a 100% d'effets si je me trompe ? ... Sinon c'est parfait ou revoir les valeurs (La valeur 2 est très bien et la plus proche du CRT, une valeur juste au dessus serait Tip Top ... du moins je pense ...) :wink:

Image
Image

@Daniel ... très bon travail la medaille d'or ! :lol: .... L'option 4/3 et 16/9 serait aussi la bien venue, car l'ecran etiré enleve un peu le charme lorsque l'on bascule en plein ecran sur les Ecran PC actuels.

Voici ce que je fait en mode fenetré pour obtenir a peu près le format d'origine :
4/3 zoom 100% :

Image

4/3 Zoom 150% :

Image

Image
Dernière modification par mastacut le 09 mai 2016 04:06, modifié 3 fois.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] DCMOTO nouveau

Message par __sam__ »

mastacut a écrit :Image
Oh punaise!!!! j'ai été eu.. je ne voyais pas ces trucs écrits en tout petits. Quel... bigleux je fais! :oops:
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] DCMOTO nouveau

Message par Daniel »

J'ai fait cette modification en vitesse hier soir, et je pense (comme mastacut) qu'on peut largement améliorer l'algorithme.

La couleur (sur 24 bits) des lignes intermédiaires est calculée en fonction de l'option choisie :
Option 0 : AND avec 0xffffff de la couleur de la ligne précédente = copie de la ligne précédente
Option 1 : AND avec 0xdfdfdf de la couleur de la ligne précédente
Option 2 : AND avec 0xbfbfbf de la couleur de la ligne précédente
Option 3 : AND avec 0x000000 de la couleur de la ligne précédente = ligne noire

Les valeurs choisies pour le AND peuvent évidemment être ajustées, mais c'est surtout l'algorithme qui est mauvais, car il change la couleur perçue. Pour respecter les couleurs, il faudrait à la fois éclaircir les lignes de balayage et assombrir les lignes intermédiaires. Je compte sur vos propositions pour améliorer la prochaine version.
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [Thomson] DCMOTO nouveau

Message par __sam__ »

il y aurait aussi un truc possible comme dans UAE: les trames paires affichent les lignes paires et les trames impaires affichent les lignes impaires. Ca donne un écran entrelacé comme une TV avec donc une image complète 25 fois par secondes au lieu de 50.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Répondre