La Place des Développeurs Basic et caractères Japonais
Reprise du message précédent
je parlais de ça dans ma phraseCitation:
MAIS (oui il y a un mais) les lignes précédentes modifiaient certains caractères avec des VPOKE du coup ce qui s'affichait à l'écran en screen 0 n'apparaissait plus toujours en screen 1.
sinon il y a moyen de détourner le jeu de caractéres de ROM en RAM en modifiant les variables systémes en F91F
avec cette méthode on perd de la mémoire mais on ne défini qu'une fois le jeu de caractéres
Visiteur
Vagabond
Message : 0
Je vois que vous avez compris ce que je voulais dire.
Metalion:
ça veut dire qu'un prog en SCREEN 1 qui utiliserait des VPOKE pour redéfinir des caractères (en screen 1 donc) si on l'arrête et qu'on tape SCREEN 0 pour faire un LIST par exemple, il faudra ensuite redéfinir les caractères en SCREEN 1 car la VRAM aura été réinitialisée ?
Metalion:
C'est surtout que la commande SCREEN réinitialise toute la VRAM, et recopie la définition des caractères dans la ROM, à chaque appel.
ça veut dire qu'un prog en SCREEN 1 qui utiliserait des VPOKE pour redéfinir des caractères (en screen 1 donc) si on l'arrête et qu'on tape SCREEN 0 pour faire un LIST par exemple, il faudra ensuite redéfinir les caractères en SCREEN 1 car la VRAM aura été réinitialisée ?
Victor:
Exactement.
ça veut dire qu'un prog en SCREEN 1 qui utiliserait des VPOKE pour redéfinir des caractères (en screen 1 donc) si on l'arrête et qu'on tape SCREEN 0 pour faire un LIST par exemple, il faudra ensuite redéfinir les caractères en SCREEN 1 car la VRAM aura été réinitialisée ?
Exactement.
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)
igal
Membre non connecté
Conseiller Municipal
Je savais pas que l'on pouvait "vider la Vram" juste avec la commande SCREEN!
Sur msx 2, la Vram ne se vide pas lorsqu'on écrit la commande SCREEN.
Si je me trompe pas, aucun mode de SCREEN ne vide la Vram!
Pour exemple, lors de mes expériences "COPY SCREEN", je bascule plusieurs fois de SCREEN 8 à SCREEN 0, 1, 2, 3 ou encore 4, sans que ma vram ne soit effacée.
Cependant:
Lorsque l'on change de SCREEN, on change de "matrice" pour passer d'un mode qui utilise 4 bits pour un pixel contre 8 bits pour un pixel.
Ce qui a pour effet de déplacer le contenu de la Vram autant sur l'affichage à l'écran (dans ce cas précis chaque deux lignes horizontales précédemment visibles ne couvrent plus qu'une seule ligne visible à l'écran.)
Le problème qui en découle vient du positionnement prévue en Vram pour certaines informations (visibles graphiquement avec VDP ( 24 ) =VDP (24)-50 par exemple.) Stockées à des endroits bien précis entre les lignes 212 et 255 par exemple et qui vont être déplacées lorsque l'on change de SCREEN.
Je sais pas si c'est le pb auquel est confronté Victor mais sur msx2 j'aurais conseillé de regarder par la.
Sur msx 2, la Vram ne se vide pas lorsqu'on écrit la commande SCREEN.
Si je me trompe pas, aucun mode de SCREEN ne vide la Vram!
Pour exemple, lors de mes expériences "COPY SCREEN", je bascule plusieurs fois de SCREEN 8 à SCREEN 0, 1, 2, 3 ou encore 4, sans que ma vram ne soit effacée.
Cependant:
Lorsque l'on change de SCREEN, on change de "matrice" pour passer d'un mode qui utilise 4 bits pour un pixel contre 8 bits pour un pixel.
Ce qui a pour effet de déplacer le contenu de la Vram autant sur l'affichage à l'écran (dans ce cas précis chaque deux lignes horizontales précédemment visibles ne couvrent plus qu'une seule ligne visible à l'écran.)
Le problème qui en découle vient du positionnement prévue en Vram pour certaines informations (visibles graphiquement avec VDP ( 24 ) =VDP (24)-50 par exemple.) Stockées à des endroits bien précis entre les lignes 212 et 255 par exemple et qui vont être déplacées lorsque l'on change de SCREEN.
Je sais pas si c'est le pb auquel est confronté Victor mais sur msx2 j'aurais conseillé de regarder par la.
ericb59
Membre non connecté
Conseiller Municipal
igal:
Seulement le 64K Premier Ko sont ré-initialisés sur MSX2
Je savais pas que l'on pouvait "vider la Vram" juste avec la commande SCREEN!
Sur msx 2, la Vram ne se vide pas lorsqu'on écrit la commande SCREEN.
Sur msx 2, la Vram ne se vide pas lorsqu'on écrit la commande SCREEN.
Seulement le 64K Premier Ko sont ré-initialisés sur MSX2
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie