MSX Village forum

La Place des Développeurs Mode graphic MSX 1

Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10337

Le 26/10/2011 à 22h12

Reprise du message précédent

désolé ce n'est pas adapté a ce que veux Aoineko
l'exemple est pour un VDP MSX2 et porte sur les changements de couleur dans la palette ce qui n'est pas supporté par un MSX1
mais ça reste intéressant a lire ;)


:noel
Site web    
igal Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 29/07/2010 à 17h19

Messages: 5492

Le 26/10/2011 à 22h31
Autant pour moi...

En voyant ecrit ça => * The Basic program shows the routine working in screen 5 but it can work in any mode, even screen 0, 1,3,4, etc...

J'ai pensé que ça marcherait avec un MSX1 ( Screen 0, 1 ).

Je fais des infidélités :oups, mais c'est une mine d'infos ce site :kiss :sick ....Il manque peut être d'une meilleur structure...faut vraiment fouiner..


Tiens... voila du boudin, voila du boudin, voila du boudin... :siffle
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2699

Le 27/10/2011 à 00h05
Merci Igal,
En fait, je sais maintenant comment alterner mes images en jouant sur l'offset de la table des paterns (PGT; Patern Generation Table).

Par contre, j'aimerai bien savoir s'il est possible de changer la totalité de la table des index (PNT; Patern Name Table) en une seule frame ?
Ça fait 32 * 24 * 8 bits (soit 716 bytes) donc ça me semble jouable, mais je connais pas les taux de transfert CPU -> GPU sur MSX 1.


On est toujours ignorant avant de savoir.
Github    
igal Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 29/07/2010 à 17h19

Messages: 5492

Le 28/10/2011 à 11h34
@ aoineko:

je pense pas que ce soit ce que tu recherches techniquement, mais ça rentre plus ou moins dans l'intitulé de ton sujet, et en plus, c'est bluffant :|



dans le commentaire, il y a des liens pour les plus aventuriers d'entre nous ;)


Tiens... voila du boudin, voila du boudin, voila du boudin... :siffle
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10337

Le 28/10/2011 à 11h49
ne rêvez pas trop l'image est encodée sur PC

elle est relue sur MSX , Turbo-R et disque dur sont fortement recommandés ;)

http://www5d.biglobe.ne.jp/~hra/software/msx/index.htm


:noel
Site web    
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2699

Le 28/10/2011 à 22h41
Je veux juste changer la table des noms : l'index de chaque case de 8x8 pixels vers la table des formes, qui elle ne change pas.
Faut juste que je puisse transférer 716 octets par frame de la RAM vers la VRAM.


On est toujours ignorant avant de savoir.
Github    
Metalion Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 23/12/2009 à 15h32

Messages: 1487

Le 29/10/2011 à 09h15
aoineko :
Par contre, j'aimerai bien savoir s'il est possible de changer la totalité de la table des index (PNT; Patern Name Table) en une seule frame ?

Ça fait 32 * 24 * 8 bits (soit 716 bytes) donc ça me semble jouable, mais je connais pas les taux de transfert CPU -> GPU sur MSX 1.




D'après ce sujet sur msx.org : http://www.msx.org/forumtopic13385p105.html, la limite sur MSX1 est de 3Ko par frame.

Tu as donc largement de quoi faire ...


MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
   
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2699

Le 31/10/2011 à 11h24
Merci Metalion ! :top


On est toujours ignorant avant de savoir.
Github    
granced Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 09/10/2009 à 09h18

Messages: 1501

Le 02/11/2011 à 08h19
Sinon tu trouveras sur cet excellent site un ouvrage qui détaille un peu le fonctionnement du VDP du MSX1 ;)


MSX un jour, MSX toujours ! :D
Site web    
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2699

Le 02/11/2011 à 09h43
En fait, j'ai beaucoup de docs théoriques sur le sujet, mais c'est l’expérience pratique qui me manque.
Et comme j'ai pas beaucoup de temps pour développer sur MSX et je préfère donc vérifier avant que ce que je compte faire est faisable. :)


On est toujours ignorant avant de savoir.
Github    
Visiteur

Vagabond

Rang

Avatar

Message : 0

Le 22/08/2012 à 15h28
GDX :
C'est expliqué dans les livres comme "pratique du MSX" et "Clefs pour MSX".



Screen 1 : 2 couleurs parmi 16 au total par bloc de 8x8. Résolution 256x192.

Screen 2 : 2 couleurs parmi 16 au total par bloc de 8x1. Résolution 256x192.

Screen 3 : 16 couleurs en "bitmap". Avec une super résolution de 64×48 !



Hormis pour le screen3, le mieux sur MSX, c'est de faire les graphismes avec des "tiles" 8x8.

Les modes graphiques ont été conçus dans cet esprit.



Il n'y a pas interruptions lignes possibles sur MSX1. Il n'y a pas de transparence. La couleur 0 = la couleur de bordure.

Il y a des démos qui font clignoter les couleurs une frame sur deux. Donc tu peux voir ce que ça donne.




Je suis tombé sur le sujet au hasard de mes lectures et je me permet d'intervenir, même si le sujet date un peu :

En screen 1, il est possible de faire 2 sur 8x1, faudrait que je retrouve le bout de code que j'avais fait à ce sujet.

Dès que j'aurai mis la main dessus je le mettrait en ligne.

La différence entre screen 1 et screen 2 si mes souvenirs son bons est que l'ont peu définir que 256 pattern en screen 1 contre 768 en screen 2.
   
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10337

Le 22/08/2012 à 16h12
il existe aussi des modes intermédiaires obtenus par changement des registres

on obtient un écran souple comme un screen 1 avec l' affichage d'un pattern avec un simple locate et print ou bien un vpoke

mais au lieu de n'avoir que les 2 couleurs du caractére screen 1 on arrive a avoir les couleurs des patterns de screen 2

exemple : game9.dsk

lancer le .bas chargement un peu long car sauvegardé en ASCII

quand le jeu est lancé faire CTRL/STOP puis list pour mieux comprendre ce mode

en prime il y a aussi un petit replayer musical qui continue a tourner en tache de fond ;)


:noel
Site web    
Visiteur

Vagabond

Rang

Avatar

Message : 0

Le 22/08/2012 à 18h39
Je savais bien que j'étais pas complètement gateux :D :



Dans la doc de Texas instrument les modes VDP sont présenté comme suit :
Graphical Mode 1 (Screen 1)
Graphical Mode 2 (Screen 2)
Multicolor Mode (Screen 3)
Texte Mode (Screen 0)

Par défaut le screen 1 est un mode graphique à 256 pattern et le screen 2 à 768
   
GDX Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 17/01/2011 à 08h52

Messages: 3004

Le 23/08/2012 à 08h02
Old Snake :
Je suis tombé sur le sujet au hasard de mes lectures et je me permet d'intervenir, même si le sujet date un peu :

En screen 1, il est possible de faire 2 sur 8x1, faudrait que je retrouve le bout de code que j'avais fait à ce sujet.

Dès que j'aurai mis la main dessus je le mettrait en ligne.

La différence entre screen 1 et screen 2 si mes souvenirs son bons est que l'ont peu définir que 256 pattern en screen 1 contre 768 en screen 2.


Je ne comprends pas ton intervention. Je n'ai pas parler de Patern (caractères graphiques) mais seulement de résolution et de contrainte de couleurs. Et puis que veux-tu dire par "En screen 1, il est possible de faire 2 sur 8x1," ?

Old Snake :
Dans la doc de Texas instrument les modes VDP sont présenté comme suit :

Graphical Mode 1 (Screen 1)

Graphical Mode 2 (Screen 2)

Multicolor Mode (Screen 3)

Texte Mode (Screen 0)



Par défaut le screen 1 est un mode graphique à 256 pattern et le screen 2 à 768


Je ne dis pas le contraire j'ai seulement omis le Screen 0 car ce n'est pas ce qui semble intéresser Aoineko.

J'ai aussi simplifié pour ne pas matraquer Aoineko de détails inutiles. Par exemple, je ne parle pas de Sprite ni de la couleur 0 qui est en fait transparente. Ça ne concerne que quelques MSX qui peuvent afficher une autre image en surimposition (une image provenant d'un autre VDP sous l'image principale).

Jipé :
il existe aussi des modes intermédiaires obtenus par changement des registres


Absolument à éviter sur MSX car ces modes hybrides ne sont pas supportés par tous les VDP compatibles avec le TMS9918.

granced :
Sinon tu trouveras sur cet excellent site un ouvrage qui détaille un peu le fonctionnement du VDP du MSX1


Je trouve cet ouvrage assez moyen mais il a tout de même le mérite d'être en français. (L'auteur aurait au moins dû se renseigner au près de connaisseurs pour mettre les bits dans un ordre standard par exemple).
   
Visiteur

Vagabond

Rang

Avatar

Message : 0

Le 23/08/2012 à 08h11
Bonjour GDX.

Rien de bien méchant, c'était juste pour rectifier ceci :

gdx :
Screen 1 : 2 couleurs parmi 16 au total par bloc de 8x8. Résolution 256x192.




En ce qui me concerne et d'après la doc technique de texas instrument c'est faux c'est 2 couleurs sur un bloc de 8x1.



J'ai donné l'info car à l'époque c'est dans ce mode qu'on développait les jeux et les demos dans mon entourage.

C'est un mode qui a ses avantage.
   
GDX Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 17/01/2011 à 08h52

Messages: 3004

Le 23/08/2012 à 08h40
Il faudrait que tu donnes un exemple car, je n'ai jamais vu ça et c'est même écrit "two unique colors may be specified for each byte of the 8x8 pattern" pour le mode graphique 2 dans le texte que tu donnes.

Edit : Je viens de vérifier sur des doc, que j'ai, pour le screen 1. Aucune ne parle de 2 couleurs par 8 x1. Pour être encore plus précis, c'est même plus restreint. C'est 2 couleurs pour 8 Pattern car la table des couleurs ne fait que 32 octet pour les 256 Pattern possibles. Edité par GDX Le 23/08/2012 à 10h09
   
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie