[Thomson] DCMOTO nouveau
Modérateurs : Papy.G, fneck, Carl
Re: [Thomson] DCMOTO nouveau
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.
L'obstacle augmente mon ardeur.
Re: [Thomson] DCMOTO nouveau
Daniel
Ton code ca pourrait donner ca:
Jacques
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)
-
- Messages : 7964
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: [Thomson] DCMOTO nouveau
Joli Ca m'impressionne de voir des instructions pour cpu 8bits ayants des arguments en 32bits
Code : Tout sélectionner
LDQ #$FE7F005F A.b0 marqueur fin de boucle (5)
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: [Thomson] DCMOTO nouveau
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.
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.
L'obstacle augmente mon ardeur.
-
- Messages : 7964
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: [Thomson] DCMOTO nouveau
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: [Thomson] DCMOTO nouveau
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.
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.
L'obstacle augmente mon ardeur.
-
- Messages : 7964
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: [Thomson] DCMOTO nouveau
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: [Thomson] DCMOTO nouveau
DanielDaniel a écrit :Dans l'immédiat l'objectif prioritaire est d'émuler le 6309 dans dcmoto pour pouvoir tester.
Si ça t’intéresse, je peux te fournir les 3 ROM OS9-6309 pour que tu puisses tester ton émulation.
Jacques
Re: [Thomson] DCMOTO nouveau
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.
L'obstacle augmente mon ardeur.
Re: [Thomson] DCMOTO nouveau
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.
Une option a été ajoutée pour visualiser (plus ou moins) les lignes de balayage d'un écran CRT.
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
-
- Messages : 7964
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: [Thomson] DCMOTO nouveau
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 aussiDaniel a écrit :La version 2016.05.08 de dcmoto_nouveau est disponible à l'adresse habituelle : http://dcmoto.free.fr/emulateur/index.html
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
- mastacut
- Messages : 288
- Inscription : 14 mars 2016 05:12
- Localisation : Thionville-Luxembourg-Belgique (Lorraine) Moselle
Re: [Thomson] DCMOTO nouveau
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 .Daniel a écrit :La version 2016.05.08 de dcmoto_nouveau est disponible à l'adresse habituelle :
Une option a été ajoutée pour visualiser (plus ou moins) les lignes de balayage d'un écran CRT.
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 ...)
@Daniel ... très bon travail la medaille d'or ! .... 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% :
4/3 Zoom 150% :
Dernière modification par mastacut le 09 mai 2016 04:06, modifié 3 fois.
-
- Messages : 7964
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: [Thomson] DCMOTO nouveau
Oh punaise!!!! j'ai été eu.. je ne voyais pas ces trucs écrits en tout petits. Quel... bigleux je fais!mastacut a écrit :
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: [Thomson] DCMOTO nouveau
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.
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.
L'obstacle augmente mon ardeur.
-
- Messages : 7964
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: [Thomson] DCMOTO nouveau
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos