MSX Village forum

La Place des Développeurs Basic et caractères Japonais

Visiteur

Vagabond

Rang

Avatar

Message : 0

Le 23/03/2017 à 22h03
Bonsoir,
Pour me (re)faire un peu la main en Basic, j'ai entrepris de taper quelques petits listings dispo dans les MSXFAN d'époque.
Beaucoup d'entre eux contiennent des caractères Japonais, une fois passée la difficulté de trouver le bon caractère (assez facile sur un vrai MSX), je me heurte à un autre problème : je n'arrive pas à enregistrer ces caractères.
Je m'explique, lorsque je tape une ligne de code contenant des caactères jap et que je tape "entrée" puis que je "list" ma ligne, les caractères jap ont disparu !?
J'ai trouvé une parade en remplaçant le caractère jap par son code ASCII, mais ce n'est pas toujours possible : un seul caractère prend moins de mémoire que CHR$(185) par exemple.
Savez-vous ce qu'il faut faire pour que ces caractères jap "restent" dans mon listing ?
   
6502man Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 19/08/2013 à 18h14

Messages: 815

Le 23/03/2017 à 22h47
Tu utilise un MSX Jap ou Euro ou un emulateur ?



Site web    
metalgear2 Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 27/11/2010 à 23h40

Messages: 2768

Le 24/03/2017 à 02h48
Bonsoir,


@Victor : Si ton MSX n'a pas de ROM KANJI, c'est normal que ton listing ne liste pas les caractère Japonais.

J'ai fait l'essai sous BlueMSX.
En choisissant l'émulateur MSX2+, j'ai écrit en basic 10 PRINT" [caractère_kanji] " et quand je fait RUN ou LIST, j'ai bien les caractère kanji à l'affichage. Ensuite, je sauvegarde mon listing.
Je repasse en émulation MSX2 et je charge mon fichier. Si je fait RUN ou LIST, les caractères japonais ont disparu.

Donc, il faut bien la ROM KANJI pour gérer les caractère Japonais.


J'en profite que Victor a ouvert ce sujet, merci à lui, pour poser une petite question concernant un caractère spécial.
J'ai un listing en basic avec des chiffres sur fond blanc :



Le problème que j'ai, je ne me souviens plus du tout comment faire pour avoir un chiffre ou une lettre sur fond blanc ... j'ai un trou de mémoire.

Merci.



Mon site consacré au MSX : http://mymsx2.free.fr
Site web    
Visiteur

Vagabond

Rang

Avatar

Message : 0

Le 24/03/2017 à 07h52
Je ne sais pas ce que j'ai fait, j'ai supprimé ma réponse à 6502man.
J'utilise un MSX jap car il n'y a pas de ROM kanji sur les MSX euro et j'ai beaucoup de mal à retrouver les bons kanji sur émulateur.

C'est avec un TurboR que j'ai rencontré ce problème, je vous donne l'exemple précis ce soir.
De mémoire j'avais un:
10 PRINT"TAGADA"+"K"
K étant le caractère jap que l'on obtient en tapant MAJ+G avec le kanji activé.
Le caractère s'affiche bien à l'écran mais quand je fait LIST ça donne :
10 PRINT"TAGADA"+""
   
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10721

Le 24/03/2017 à 12h23
j'ai testé avec un vrai et avec un émulateur et je n'ai pas ce bug

voici la copie d'écran sur émulateur BlueMSX avec Turbo-R


les kanji affichés de cette façon ne sont pas dans la rom kanji mais dans le jeu de caractéres prédéfini du MSX

pour l'afficher
10 SCREEN 1
20 FOR I=0 TO 255
30 VPOKE6144+I,I
40 NEXT

la rom kanji sert quand on a les instruction CALL KANJI ou CALL ANK dans un programme


:noel
Site web    
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10721

Le 24/03/2017 à 12h28
pour répondre a la question de metalgear2 la réponse est peu être a la page 140 de pratique du MSX2 de Eric Von Ascheberg
registe 13
utilisation en mode texte 80 colonnes


:noel
Site web    
metalgear2 Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 27/11/2010 à 23h40

Messages: 2768

Le 24/03/2017 à 15h39
Bonjour,

Jipe:
les kanji affichés de cette façon ne sont pas dans la rom kanji mais dans le jeu de caractéres prédéfini du MSX

la rom kanji sert quand on a les instruction CALL KANJI ou CALL ANK dans un programme

Hé bien tu vois, j'ai toujours cru que les KANJI étaient dans la ROM KANJI. La preuve qu'on apprend des trucs tous les jours :p

Pour mon problème de fond blanc, en fait, c'est un listing en espagnol que je veux mettre en français et qui a été écrit sur MSX1, donc en mode 40 colonnes. Je pensais qu'il y avait une combinaison de touche a faire pour avoir une lettre ou un chiffre sur fond blanc.



Mon site consacré au MSX : http://mymsx2.free.fr
Site web    
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10721

Le 24/03/2017 à 16h37
pour le probléme de screen 0 avec fond blanc le seul truc que je connaisse c'est de redéfinir des caractéres a l'inverse du jeu de caractéres normal

a moins qu'il y ait un CALL KANJI3 dans le programme ce qui permet de choisir les couleurs de texte et de fond


:noel
Site web    
metalgear2 Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 27/11/2010 à 23h40

Messages: 2768

Le 24/03/2017 à 17h03
En fait, c'est le programme basic qui se trouve sur la disquette MSXLoader : MSXLoader (Ver 1.0).rar

Dans le fichier CARGADOR.BAS , ligne 320

Il utilise un PRINT pour afficher le caractère sur fond blanc, je pense que ça doit être un caractère standard, non ?

Je me trompe peut-être :oups



Mon site consacré au MSX : http://mymsx2.free.fr
Site web    
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10721

Le 24/03/2017 à 18h02
c'est de la redéfinition de caractéres avec un XOR donc l'inverse du normal

ça se passe a partir de la ligne 1500 pour redéfinir

si tu veux voir les caractéres chargés
CTRL/STOP
SCREEN 0
LIST 320

et la tu va comprendre


:noel
Site web    
metalgear2 Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 27/11/2010 à 23h40

Messages: 2768

Le 24/03/2017 à 18h06
Effectivement, j'ai compris leurs système :top

Je cherchais désespérément a afficher un caractère directement sur fond blanc, j'étais pas prêt de trouver :p

Merci.



Mon site consacré au MSX : http://mymsx2.free.fr
Site web    
Visiteur

Vagabond

Rang

Avatar

Message : 0

Le 24/03/2017 à 22h24
Bon, comment dire... ça marche !
En fait j'ai compris ce qui s'était passé en voyant ça :
Jipe:

10 SCREEN 1
20 FOR I=0 TO 255
30 VPOKE6144+I,I
40 NEXT


J'avais donc tapé un petit listing de 7 lignes pris dans un MSXFAN.
En faisant RUN, un message d'erreur s'affichait ligne 3, c'est en voulant corriger cette ligne que mon kanji disparaissait... 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.
Bon je ne sais pas si je suis clair, mais je me comprends, c'est pas si mal ?!
Merci de votre aide.

Pour les chiffres bleu sur fonds blanc, il n'existe pas une combinaison de touches (avec GRAPH ou CODE) pour les avoirs sur certains MSX ? Il me semble avoir dèjà vu ça.
   
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10721

Le 25/03/2017 à 10h31
le screen 0 et le screen 1 ne fonctionnent pas de la même façon
la table des formes contient le codage des caractéres du MSX
la table des formes en screen 0 40 colonnes est en 800H , en 80 colonnes en 1000H
en screen 1 elle est en 0H
on comprend bien qu'une redéfinition de caractéres pour du screen 0 ou du screen 1 ne va pas VPOKEr aus mêmes adresses


:noel
Site web    
Metalion Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 23/12/2009 à 15h32

Messages: 1502

Le 25/03/2017 à 19h13
Jipe:
le screen 0 et le screen 1 ne fonctionnent pas de la même façon

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.


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)
   
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10721

Le 25/03/2017 à 19h22
je parlais de ça dans ma phrase
Citation:
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


:noel
Site web    
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie