BrMSX
L'émulateur MSX brésilien
par Ricardo Bittencourt

"Commence au commencement", dit
le Roi, "et continue jusqu'à
ce que tu arrives à la fin: alors arrête."

(Lewis Carroll)
BrMSX est un émulateur MSX 1 pour Ms-DOS.

De nos jours, tout le monde sait ce qu'est un émulateur. Ce qu'est un MSX est une autre histoire.

MSX est le meilleur ordinateur 8 bits jamais créé. La première version du MSX utilise un Z80A Zilog cadencé à 3,57 MHz, est dotée d'une véritable architecture parallèle, avec trois processeurs esclaves. Le TMS9928 (Texas Instruments) pour la vidéo et la génération d'interruptions, auquel nous ferons référence sous le nom de VDP (Video Display Processor). Le GI AY-3-8912A pour le son et l'interface joystick, auquel nous ferons référence sous le nom de PSG (Programmable Sound Generator). L'Intel 8255 sert de contrôleur général, à savoir le magnétophone, gestion mémoire (appelée aussi memory mapper, la mémoire étant paginée) et le clavier.

Le MSX fut produit dans de nombreux pays. Il connut du succès au Brésil, au Japon, en Espagne, aux Pays-Bas, en France, en Italie et la liste n'est pas exhaustive. Encore de nos jours, beaucoup d'utilisateurs pensent que le MSX est meilleur qu'un PC de base. Et je suis l'un d'entre eux.

Le MSX avait pas mal de charisme. Il fut le plus puissant ordinateur de son époque, influençant une génération de futurs ingénieurs et informaticiens. Avec le MSX n'importe qui devenait un programmeur. C'était si facile que n'importe qui pouvait développer des logiciels. C'est la seule chose que le PC ne sait faire.

Et puis bien sûr, il y a les jeux. Le MSX avait beaucoup de grands jeux, produits par Konami, Compile, Namco, Falcom, des adaptations de jeux d'arcades, des jeux passionnants que vous ne pourrez jamais oublier.

Malheureusement, le MSX n'est plus produit. Les anciens utilisateurs ont toujours leurs machines, mais les nouveaux ne pourront jamais goûter aux joies du MSX.

J'usqu'à maintenant. Jusqu'à BrMSX.

Avec BrMSX, vous pouvez utiliser votre PC pour ressentir un exemple de la grandeur du MSX. Vous pouvez jouer à des jeux MSX, écrire des programmes en MSX-BASIC, utiliser son débugger pour apprendre l'assembleur. Vous pouvez rejoindre la communauté du MSX.

Mais, avant de vous immerger dans l'inoubliable expérience du MSX, il serait préférable que vous en appreniez un peu plus au sujet de cet émulateur. Pour reprendre l'épilogue, lisez ce manuel du début jusqu'à la fin, arrêtez-vous et exécutez BrMSX.

J'essaye de rendre cet émulateur aussi fidèle et rapide que possible. Si vous trouvez un bug ou si vous désirez émettre un commentaire ou un avis, envoyez-moi un e-mail. Mon adresse est : ricardo@lsi.usp.br. Vous pouvez aussi suivre l'évolution de l'émulateur, version après version, depuis notre page officielle (http://www.lsi.usp.br/~ricardo/brmsx.htm). Les nouvelles versions sont fréquentes.

Bien sûr, il se peut que vous deveniez si accro au MSX que vous éprouviez le besoin d'en acheter en vrai. Il y a des groupes d'utilisateurs qui en vendent d'occasion. Dans la page BrMSX, vous trouverez les adresses de plusieurs de ces groupes brésiliens.

Amusez-vous bien !

Dernière version : 1.136


Pré-requis

BrMSX requiert un processeur type 386 ou supérieur, puisqu'il est écrit à 100% en assembleur 32-bit. L'ordinateur le plus lent auquel j'ai eu accès est un 486sx25 et fait fonctionner BrMSX à pleine vitesse. Certains utilisateurs m'ont rapporté des performances similaires sur un 386dx40.

BrMSX nécessite 2Mb de RAM, 4Mb si vous voulez utiliser l'émulation disque.

BrMSX s'adapte tout seul aux processeurs Pentium ou dotés de la technologie MMX afin d'en exploiter les possibilités.

Une carte VGA avec 256 Ko de mémoire est nécessaire. Pour utiliser l'émulation TV, vous aurez besoin d'une carte Super VGA avec un pilote Vesa 2.0.

 

L'émulation sonore requiert une Sound Blaster ou 100% compatible avec un DMA auto-initialisé à 45455 Hz.

Le mode multi-joueurs nécessite deux ordinateurs équipés d'UART fonctionnant à 57600 bauds.

BrMSX est conçu pour fonctionner sous MS-DOS 6.22. Il fonctionne sous Windows 3.11 et Windows 95 mais pas sous Windows NT. Certaines options ne sont pas exploitables sous Windows.

 


Caractéristiques

BrMSX a été modélisé d'après l'Expert 1.0 brésilien.Il a beaucoup de caractéristiques intéressantes :

 

  • Émulation Z80 très fidèle. BrMSX est le seul émulateur MSX à réussir tous les tests ZEXALL de conformité au Z80. BrMSX émule tous les opcodes et flags non documentés. BrMSX émule également toutes les caractéristiques non documentées du VDP et du PSG.

  • Émulation disque haut et bas niveau. BrMSX est le seul émulateur MSX qui puisse exécuter les logiciels brésiliens tels que Super Disk Copy et Chave Mestra.

  • Émulation de l'extension mémoire brésilienne MegaRAM, BrMSX est le seul émulateur MSX qui puisse exécuter ExecROM.

  • BrMSX est le seul émulateur MSX qui puisse jouer des sons numérisés dans des jeux tels que Super Laydock, Fuzzball et Oh Shit!

  • Émulation des LED, BrMSX est le seul émulateur MSX qui puisse gérer correctement la LED Caps Lock sur le clavier.

  • Émulation TV et moniteur monochrome, BrMSX est le seul émulateur MSX qui puisse gérer les résolutions VESA 2 avec scanlines et filtre passe-bas.

  • Jeux multi-joueurs, BrMSX est le seul émulateur MSX qui permette de joueur à deux joueurs sur le même jeu et en même temps sur deux ordinateurs différents.

  • BrMSX est l'émulateur MSX le plus rapide qui soit.

  • Un bon débuggeur avec exécution en pas à pas et la capacité de lire toutes les informations matérielles.

  • D'autres caractéristiques intéressantes telles que l'interface graphique, la sauvegarde de l'état de la machine à tout moment, le support des roms coréennes et bien plus ...!


    Options de la ligne de commande

    BrMSX peut être exécuté depuis MS-DOS avec les paramètres suivants :

    brmsx [CartA.ROM] [CartB.ROM] [options]
    
    Tout ce qui est entre crochets est optionnel. Si aucun paramètre n'est spécifié, BrMSX démarrera avec l'émulation standard (bios et basic)

    Les cartouches peuvent êtres de simples ROM de 16 Ko, implantées en 0000h, 4000h ou 8000h, des cartouches BASIC de 16ko implantées en 8000h, des cartouches de 32 Ko implantées en 4000h ou des cartouches de type MEGA-ROM (5 implantations mémoire différentes sont supportées).

    Si vous ne spécifiez aucune cartouche dans la ligne de commande, un MegaRAM de 256kb sera insérée dans le Slot 1. La RAM normale de BrMSX est de 128 Ko paginés.

    Vous pouvez utiliser deux cartouches en même temps, c'est utile pour des programmes résidents tels que Mega-Assembler, ainsi que pour des combinaisons de cartouches (Cf. section combinaisons de cartouches).

    Il y a beaucoup d'options pour la ligne de commande. Toutes commencent par un "-" et doivent être écrites en minuscules. Certaines nécessitent un paramètre qui doit être placé juste après l'option et séparé d'elle par un espace.

    Les options disponibles sont décrites et classées par type.

    CPU

    -normal Cette option sélectionne la vitesse normale du modèle Expert. Le Z80 est cadencé à 3.57 MHz et les interruptions à 60 Hz. C'est l'option par défaut
    -fast Dans ce mode, les interruptions sont toujours à 60 Hz mais le Z80 tourne aussi vite que le permet votre processeur. Avec un AMD-K6 233 MHz le Z80 est fonctionne à 65 Mhz (autrement plus rapide qu'un Turbo-R). Ce mode est utile lors de l'emploi de compilateurs MSX et pour accélérer le Basic. Le son est désactivé dans ce mode
    -turbo Dans ce mode, tout fonctionne à vitesse maximum. Toutefois, le nombre d'instruction émulées entre deux interruptions est le même que celui d'un MSX classique. Ce mode est utile pour s'affranchir des introductions des jeux et, bien sûr, pour voir à quel point BrMSX est rapide.

    Memoire

    -roma <mapper> Cette option spécifie le type de MEGAROM de la cartouche insérée dans le slot A. les types supportés sont le #0, #2, #3, #4 et le #5, et la valeur par défaut est le #0. Pour plus de précision veuillez vous reporter au chapitre Types de MEGAROMs.
    -romb <mapper> idem que ci-dessus mais pour le slot B
    -ramslot <slot> Sélectionne le slot de la RAM. Les valeurs valides sont 2 et 3. L'Expert a la RAM dans le slot 2, c'est donc la valeur par défaut. Vous aurez besoin de spécifier que la RAM est dans le slot 3 dans deux cas : soit vous désirez émuler fidèlement le HotBit, soit vous avez un jeu qui possède un mauvais programme de chargement et qui nécéssite que la RAM soit dans le slot 3. Veuillez vous référer à la section Dysfonctionnements.
    -korean Utilisez cette option pour avoir la même configuration mémoire que les machines coréennes Vous aurez besoin d'avoir un jeu de roms coréennes : MSX.ROM version coréennes et MSXHAN.ROM. Cette dernière sera chargée en page 2 (8000h) du slot 0.

    Vidéo

    -win Cette option sélectionne la gestion vidéo la plus lente de BrMSX. cependant, c'est la seule qui fonctionne sous Windows sur des machines non-MMX. Puisque c'est la plus compatible, c'est l'option par défaut.
    -dos Cette option sélectionne la gestion vidéo plus rapide mais ne fonctionnant pas sous des environnements multitâches tels que Windows. Si vous avez un processeur type 486 sous DOS, c'est la configuration le plus adaptée.
    -mmx Cette option sélectionne la gestion vidéo la plus rapide. Elle exploite les instructions SIMD de la technologie MMX pour fonctionner à une vitesse impressionnante. Fonctionne sous Windows 95 mais pas sous Windows 3.x
    -res <n> Sélectionne la résolution utilisée par BrMSX. Les valeurs possibles sont 0 (320x200), 1 (256x200), 2 (512x256) et 3 (256x192). La résolution 0 est utilisée par défaut et devrait fonctionner sur toute carte VGA. La résolution 1 utilise un mode VGA "tweaked" mais n'est pas compatible avec tous les moniteurs. La résolution 2 nécessite une carte Super VGA avec un pilote VESA 2.0 et mais permet l'émulation TV avec scanlines et filtre passe-bas. La résolution 3 utilise également un mode VGA "tweaked" mais elle est plus compatible que la résolution 1 et utilise des pixels carrés.
    -vsync Active la synchronisation verticale. Ceci peut ralentir l'émulation mais certains jeux, à l'instar de Rally-X, en ont besoin pour avoir un défilement fluide ou pour effectuer correctement les animations de couleurs via la palette (comme Penguin Adventure).
    -green Utilisez cette option pour émuler un moniteur monochrome vert. Tout sera affiché dans des niveaux de vert. A essayer avec l'émulation TV.
    -frame <n> Cette option ajuste le nombre d'images "sautées". La valeur par défaut, 1, signifie que toutes les images sont affichées. Si BrMSX est trop lent pour vous, vous pouvez augmenter ce nombre ( 2 = 1 image sur 2 est affichée ...), mais la valeur par défaut permet de fonctionner à pleine vitesse sur un 486sx25 (et même sur un 386dx rapide)
    -nocache Cette option désactive le cache vidéo. Cela ralentit considérablement la vitesse mais peut être utilisé dans les cas où le cache produit des dysfonctionnements. Référez-vous à la section Dysfonctionnement pour plus de détails.
    -cpugraph Active le graphe CPU et indique combien de temps votre ordinateur passe dans chaque partie de l'émulateur. La première barre indique le temps consommé par l'émulation Z80. La deuxième le temps consommé par l'affichage du fond d'écran et la troisième concerne les sprites. La quatrième indique le temps utilisé pour copier les données de la mémoire centrale vers la mémoire vidéo. La cinquième barre indique le temps consommé par le graphe lui-même. Utilisez cette fonction pour configurer votre émulateur au mieux. Cette option ne fonctionne qu'avec un processeur possédant l'instruction RDTSC, tel que le Pentium.
    -psggraph Cette option active le graphe du PSG, montrant les amplitudes de chaque voix utilisée. Vous aurez trois voix pour le PSG et cinq de plus si le SCC est activé.

    Son

    -nosound Désactive l'émulation sonore. A utiliser si la détection de la Sound Blaster plante votre machine ou pour jouer sur votre lieu de travail.
    -scc Active l'émulation SCC. N'est pas activé par défaut car l'émulation SCC est imparfaite. Ne fonctionne qu'avec les configurations mémoire #0 et #2.

    Entrées/Sorties

    -diska <f.dsk> Active l'émulation du disque et utilise f.dsk comme image disque. Ces images doivent êtres au format DSK et peuvent être de quatre type différents : 40 pistes / 1 face (180ko), 40 pistes / 2 faces (360 ko), 80 pistes / 1 face (360ko) et le plus commun 80 pistes / 2 faces (720 ko). Les images multi-disques (exploitées par Fmsx, par exemple) créées avec COPY /B ne sont pas encore gérées.
    -disklow Émulation disque à travers les ports d'entrée/sortie (I/O) D0h-D4h. C'est l'option par défaut et ne fonctionne qu'avec la rom brésilienne DISK.ROM. Beaucoup de programmes brésiliens nécessitent cette option, des programmes tels que Super Disk Copy, Hello, Chave Mestra et la version disque de Robocop.
    -diskhigh Émulation disque à travers le BIOS. Cette option fonctionne avec la plupart des rom DISK.ROM mais est plus restreinte que l'option ci-dessus. Seuls les fichiers .DSK de 720ko peuvent être utilisés et la LED disque n'est pas émulée.
    -tape <t.cas> Active l'émulation du magnétophone et utilise t.cas comme image magnétophone. L'émulation du magnétophone est pour l'instant partielle, les fichiers ne pouvant dépasser 64 Ko
    -joy Active l'émulation du joystick. Il sera connecté dans le port A (le plus souvent cela signifie le joueur 1). Si vous désirez changer pour le port B, aller dans le chapitre Débugger pour voir comment faire. Le joystick est calibré automatiques au lancement, ne le touchez donc pas avant que l'émulateur ait fini de démarrer.
    -joysens <n> Réglage de la sensibilité du joystick. Les valeurs légales sont comprises entre 0 et 7, 3 étant la valeur par défaut. Les utilisateurs de joypad devraient essayez cette option pour améliorer la précision.

    Mode multi-joueurs

    -server Choisit cet ordinateur comme serveur. Seul le moniteur connecté au serveur affichera l'écran du MSX. Utilisez toujours l'ordinateur le plus rapide comme serveur.
    -client Choisit cet ordinateur comme client. Le clavier de cet ordinateur agira comme le joystick B du MSX. La vitesse de cet ordinateur n'a que peut d'importance et un 386 poussif pourra faire l'affaire.
    -com <port> Choisit le port COM sur lequel sera connecté la câble série. Cette option est nécessaire sur les deux machines. Référez-vous au chapitre Multi-joueurs pour plus d'informations.

    Contrôle

    -nomouse Désactive l'émulation de la souris. A utiliser dans le cas d'une incompatibilité avec le pilote de la souris. Sans souris, vous ne pourrez utiliser l'interface graphique.
    -novesa Désactive l'utilisation du bios VESA. A utiliser dans le cas d'une incompatibilité mais sans VESA 2.0 vous ne pourrez utiliser l'émulation TV.
    -noled Désactive l'émulation des LEDs. A utiliser si votre clavier semble 'perdre des touches'.
    -nopentium Désactive l'optimisation Pentium et l'auto-détection du processeur. A utiliser si l'auto-détection plante votre machine. Sans un Pentium vous ne pourrez utiliser le graphe CPU.
    -noenter Désactive l'appui sur la touche entrée au démarrage. Utile pour les créateurs d'interfaces
    -help Affiche un petit écran d'aide


    Au coeur de l'émulation

    Le MSX a des touches qui ne sont pas présentes sur un PC. Les tables suivantes en montre la correspondance :

    touche MSX
    touche PC
    LGRA (GRAPH) ALT gauche
    RGRA (CODE/KANA) ALT droit
    STOP Page Up
    SELECT Page Down
    HOME/CLS Home
    '`^~ `~
    Ç End
    Les LEDs sont aussi émulées :

     

    MSX LED
    PC LED
    Caps Lock Caps Lock
    Kana Num Lock
    Disque en fonctionnement Scroll Lock

    Quelques touches ont une signification particulière :

    F6 Rembobine le magnétophone
    F9 Copie l'écran dans le fichier BRMSX.PCX
    F10 Stoppe l'émulation et exécuter le débuggeur
    F12 Stoppe l'émulation et affiche l'interface graphique
    + (keypad) Augmente le volume sonore
    - (keypad) Diminue le volume sonore
  • L'interface graphique peut également être affichée en cliquant sur le bouton gauche de la souris.

     


    Interface graphique

    L'interface graphique est facile à utiliser (encore heureux !)

     

    Le menu apparaît à gauche de l'écran et vous devez utiliser la souris et son bouton gauche pour sélectionner les options. Cliquez n'importe où hors du menu pour reprendre l'émulation.

    Les fonctions du menu sont :

     

  • Reset Effectue un reset au MSX. C'est un reset logiciel qui n'efface pas le contenu de la mémoire.
    Load ROM Charge une rom dans le slot A. la rom doit être dans le même répertoire que BrMSX.
    CPU Graph Active/Désactive le graphique du CPU
    PSG Graph Active/Désactive le graphique du PSG
    Save state Sauve l'intégralité de l'état de la machine dans le fichier BRMSX.STA. Pratique pour finir les jeux !
    Load state Charge l'état sauvé ci-dessus.
    Quit Quitte BrMSX et retour à MS-DOS

     

     


    Debugger

    En appuyant sur Echap dans l'intro ou sur F10 durant l'émulation vous rentrez dans le mode Fudebug (Full Debugger). Je ne vais pas expliquer en détails tout ce qui apparaît à l'écran. Si vous ne comprenez pas ce que vous voyez, alors le débugger n'est pas pour vous.

    Le Fudebug est un puissant outil d'aide à la programmation du MSX. Les commandes sont toujours d'une lettre et certaines d'entre elles peuvent avoir des arguments. Soyez attentifs lorsque vous entrez les arguments car il n'y a pas de retour arrière. Les valeurs sont toujours en héxadécimal.

    Voici la liste des commandes :

  • S Quitte le débugger et retourne dans l'émulation.
    Q Quitte le débugger et retourne dans MS-DOS.
    F7 Exécute une et une seule instruction Z80.
    F8 Passe à l'instruction suivante. Permet d'exécuter des instructions CALL et RST en un coup.
    U dddd Désassemble depuis l'adresse dddd.
    D dddd Vidage mémoire depuis l'adresse dddd.
    Page Up Défilement vers le haut.
    Page Down Défilement vers le bas.
    E dddd xx Écrit l'octet xx à l'adresse dddd
    B dddd Relance l'émulation avec un point d'arrêt à l'adresse dddd.
    A Sauve l'intégralité de l'état de la machine dans le fichier BRMSX.STA
    L Charge l'intégralité de l'état de la machine depuis le fichier BRMSX.STA
    1 Sélectionne l'écran 1
    2 Sélectionne l'écran 2
    M Sélectionne le mode d'émulation(normal, fast, turbo)
    Y Active/désactive la syncronisation verticale
    V Sélectionne la résolution(320x200, 256x200, 512x384, 256x192)
    J Sélectionne l'émulation du joystick entre le port A, B et aucun.
    C Calibrage du joystick.
    H Écran d'aide

     


    Multi-joueurs

     

    Avec BrMSX, vous pouvez connecter deux ordinateurs pour jouer à des jeux multi-joueurs, en utilisant un câble série. Le premier ordinateur utilise les clavier du MSX (joueur 1) et le clavier du deuxième ordinateur agit comme le joystick B du MSX (joueur 2)

    Les touches du joueur 2 sont :

  • Touche joueur 2 Signification
    Droite JOY-B droite
    Gauche JOY-B gauche
    Haut JOY-B haut
    Bas JOY-B bas
    barre d'espace JOY-B Bouton 1
    M JOY-B Bouton 2
  • Pour lancer une session multi-joueurs, vous devez exécuter BrMSX sur l'ordinateur le plus rapide avec la ligne de commande suivante "brmsx -server -com 2". Bien évidemment remplacez "2" par le numéro du port COM que vous désirez utiliser.

    Après avoir démarré le serveur, exécutez BrMSX sur l'ordinateur 2 avec la ligne de commande suivante "-client -com 2 ".Comme ci-dessus remplacez "2" par le numéro du port COM que vous désirez utiliser. Le mode multi-joueurs est désormais activé. Seul le moniteur du serveur affiche l'écran du MSX. 

    Pour quitter une session multi-joueurs, vous devez arrêter l'émulateur client en premier; faute de quoi les deux ordinateurs seront plantés.

    Voici la liste non exhaustive des jeux à deux joueurs : Konami's Soccer, Salamander, Konami's Ping Pong, Super Laydock, Yie Ar Kung Fu 2, Warroid, ...

     


    Combinaison de cartouches

    BrMSX supporte jusqu'à deux cartouches en même temps. C'est utile pour les programmeurs (vous pouvez charger Mega-Assembler et XBasic en même temps), et également pour les joueurs.

    Plusieurs jeux ont des options cachées lorsqu'ils sont connectés avec une autre cartouche. En voici quelques exemples : 

  • Nemesis dans le slot A et Twin Bee dans le slot B: votre vaisseau est transformé en abeille.

  • Nemesis 2 dans le slot A et Penguin Adventure dans le slot B: votre vaisseau est transformé en un pengouin bleu.

  • Nemesis 2 dans le slot A et Q-Bert dans le slot B: appuyez sur "F1" et tapez les codes suivants LARS18TH et METALION.

  • Salamander dans le slot A et Nemesis 2 dans le slot B: un stage secret apparaîtra après les trois planètes, vous pourrez vaincre Venom et voir la "bonne" fin.


    Types de MegaROMs

    BrMSX gère toutes les types de MegaROM utilisés dans les jeux MSX 1. Bien que le typer #0 permette de faire fonctionner la plupart des jeux, certains requièrent une option "-roma" particulière.

    Les configurations supportées sont :

  • #0: MegaROM standard avec SCC

    Jeux : Animal, Super Laydock, Jagur.

    Adresse Bloc
    0000h-1FFFh 0000h-1FFFh
    2000h-3FFFh 2000h-3FFFh
    4000h-5FFFh 4000h-5FFFh
    6000h-7FFFh 6000h-7FFFh
    8000h-9FFFh 8000h-9FFFh
    A000h-BFFFh A000h-BFFFh
    C000h-DFFFh C000h-DFFFh
    E000h-FFFFh E000h-FFFFh
    9800h-9FFFh SCC

  • #2: Konami avec SCC

    Jeux: Nemesis 2, Nemesis 3, Salamander, King's Valley, F1 Spirit.

    Adresse Bloc
    5000h-57FFh 4000h-5FFFh
    7000h-77FFh 6000h-7FFFh
    9000h-97FFh 8000h-9FFFh
    B000h-B7FFh A000h-BFFFh
    9800h-9FFFh SCC

  • #3: Konami sans SCC

    Jeux: Nemesis, The Maze of Galious, Shalom, Penguin Adventure.

    Adresse Bloc
    <none> 4000h-5FFFh
    6000h 6000h-7FFFh
    8000h 8000h-9FFFh
    A000h A000h-BFFFh

  • #4: ASCII 8kb

    Jeux : Valis - The Fantasm Soldier.

    Adresse Bloc
    6000h-67FFh 4000h-5FFFh
    6800h-6FFFh 6000h-7FFFh
    7000h-77FFh 8000h-9FFFh
    7800h-7FFFh A000h-BFFFh

  • #5: ASCII 16kb

    Jeux : Gall Force, Eggerland Mystery 2.

    Adresse Bloc
    6000h-6FFFh 4000h-7FFFh
    7000h-7FFFh 8000h-BFFFh


    Configuration Memoire

    brmsx
    MSX.ROM MegaRAM RAM  
    MSX.ROM MegaRAM RAM  
      MegaRAM RAM  
      MegaRAM RAM  

    brmsx cartA.rom cartB.rom
    MSX.ROM Cart A RAM Cart B
    MSX.ROM Cart A RAM Cart B
      Cart A RAM Cart B
      Cart A RAM Cart B

    brmsx -ramslot 3 cartA.rom cartB.rom
    MSX.ROM Cart A Cart B RAM
    MSX.ROM Cart A Cart B RAM
      Cart A Cart B RAM
      Cart A Cart B RAM

    brmsx -korean cartA.rom cartB.rom
    MSX.ROM Cart A RAM Cart B
    MSX.ROM Cart A RAM Cart B
    MSXHAN.ROM Cart A RAM Cart B
      Cart A RAM Cart B

    brmsx -diska msxdos.dsk cartA.rom
    MSX.ROM Cart A RAM  
    MSX.ROM Cart A RAM DISK.ROM
      Cart A RAM  
      Cart A RAM  


    Dysfonctionnements

    Forum aux questions :

    Q: Comment faire fonctionner des jeux avec l'extension .ROM ?
    A: Copiez-les dans le répertoire de BrMSX et utilisez l'interface graphique. Vous pouvez également taper "brmsx game.rom" où game représente le nom du fichier contenant le jeu que vous voulez exécuter.

    Q: Comment faire fonctionner des jeux avec l'extension .DSK ?
    A: Tapez simplement "brmsx -diska game.dsk" où game représente le nom du fichier contenant le jeu que vous voulez exécuter. A partir de là, tout se passera comme si vous aviez un MSX avec un lecteur de disquette.

    Q: Comment faire fonctionner des jeux avec l'extension .BAS et/ou .BIN?
    A: Vous devez créer un fichier .DSK avant tout. Je vous conseille d'utiliser DSKtool, une utilitaire conçu pour gérer les formats .DSK. Vous pouvez le télécharger à l'adresse suivante http://www.lsi.usp.br/~ricardo/msx.htm et il est fournit avec un mode d'emploi.. Après avoir créer le fichier .DSK, utilisez simplement les commandes RUN"GAME.BAS" ou BLOAD"GAME.BIN",R .

    Q: J'ai essayé le jeu "Terramex" et il ne fonctionne pas!
    A: Ce n'est pas un bug de BrMSX mais un bug du programme de chargement du jeu. Réessayez mais cette fois-ci avec l'option "-ramslot 3". Cela fonctionne également pour Oh Shit et Camelot Warriors.

    Q: "River Raid" a un affichage bizarre!
    A: C'est un bug de BrMSX. Le cache vidéo est défaillant dans certains cas. Réessayez mais cette fois-ci avec l'option "-nocache" pour désactiver le cache vidéo. Cela fonctionne également pour Knight Tyme.

    Q: Le volumineux "Gall Force" ne fonctionne pas!
    A: Si le jeux fait plus de 32 Ko, il est probable que vous utilisiez une mauvaise configuration mémoire. Référez-vous au chapitre sur les types de MEGAROMS pour connaître exactement le type de votre jeu. S'il n'y apparaît pas, essayez toutes les configurations possibles et dites-moi celles qui fonctionnent afin que je puisse les ajouter à ce manuel.

    Q: Pourquoi les musiques n'ont-elles pas de batterie?
    A: L'émulation du générateur de bruit blanc du PSG n'est pas implémentée. Il ne manque pas que la batterie, mais beaucoup d'effets sonores tels que les explosions. L'émulation SCC n'est que partiellement implémentée et vous ne pourrez entendre de musique dans Choro-Q et Penguin Wars.

    Q: Je n'entends rien!
    A: BrMSX ne gère que les cartes sons du type Sound Blaster (ou 100% compatible). Quelques vieux modèles, tels que la SoundBlaster Pro ne sont pas géré. BrMSX ne gére pas non plus les cartes à base de circuit ESS. Les possesseurs de Gravis Ultrasound doivent utiliser l'application MEGAEM pour émuler une Sound Blaster. Laisser moi suffisamment de temps et j'écrirais des pilotes pour ces cartes.

    Q: BrMSX émulera-t-il le MSX 2?
    A: Dès que j'aurais fini l'émulation MSX 1. Il n'y a pas d'intérêt à commencer l'émulation MSX 2 si le MSX 1 n'est pas pleinement émulé.! Il y a beaucoup de caractéristiques du MSX1 qui ne sont encore implémentée dans aucun émulateur (principalement les fonctions non documentées) et, afin d'achever l'émulation, je dois toutes les rajouter.

    Q: Où puis-je trouver le test ZEX? Y a-t-il une version pour le 6502?
    A: Le ZEX (Z80 Exerciser) est un logiciel pour tester la conformité au Z80. Il peut être trouvé dans le pack YAZE. YAZE est l'acronyme de Yet Another Z80 Emulator (Encore un émulateur Z80) et peut être trouvé sur des sites CP/M. La version originale de ZEX fonctionne sous MSX-DOS, mais j'en ai fait une version en .ROM avant d'ajouter une version sur disquette. Écrivez moi si cette version vous intéresse. ZEX a été uniquement conçu pour le Z80 et n'est pas disponible pour en autre processeur.

    Q: Puis-je être un bêta-testeur?
    A: Vous être déjà un bêta-testeur, étant donné que toutes mes versions sont des bêta-tests.


    Épilogue

    Certaines personnes s'imaginent que j'ai écrit BrMSX tout seul. Ce n'est pas exact..Je programme certes seul mais BrMSX est bien plus qu'un simple programme. Beaucoup de gens m'ont aidés en me fournissant des programmes sources d'exemples, des notices techniques, des tests sur de vraies machines et des rapports de d'anomalies ou juste des encouragements.

    Pour commencer, je tiens à remercier Arnon Cardoso. Ce fut son idée de créer un émulateur MSX. Vous devriez d'ailleurs essayer son émulateur MSX en Java. Si un jour le PC devait disparaître BrMSX ne servirait plus à grand-chose. Mais un émulateur en Java peut, potentiellement, être utilisé éternellement.

    Un grand merci à Sean Young. Il m'a fournit beaucoup de conseils lors du démarrage de BrMSX (mais évidement le plus important de tous fut "il vaut parfois mieux s'arrêter pour réfléchir" :). Le source de Virtual MSX et ses pages techniques sont une aide précieuse.

    Je ne peux oublier Isaac Santaolalla Solorzano. Je reste persuadé qu'il a parfois passé plus de temps à débugger mon émulateur que le sien! c'est un gars qui prend vraiment plaisir à utiliser un MSX. Essayez son émulateur MSKISS, il a nombre de caractéristiques absentes de BrMSX comme la gestion des Gravis et l'auto-détection du type de MegaRom.

    Adriano Cunha pour m'avoir inspiré. Il déteste les émulateurs et je dois faire de BrMSX un émulateur parfait afin qu'il puisse l'utiliser. Pas impossible après tout.

    Moult remerciements à mon frère, Raul Tabajara. Il a conçu tous les graphismes de BrMXS, de l'interface graphique jusqu'au logo. Il cherche actuellement un emploi d'infographiste dans l'industrie des jeux vidéos. Vous poiuvez découvrir une partie de ses oeuvres sur http://www.lsi.usp.br/~ricardo/raul.htm et je joindre à mon adresse : ricardo@lsi.usp.br .

     

    Bien évidement, je souhaite remercier Thomas Pytel. Sans sa librairie PMODE, je n'aurais jamais appris l'assembleur en mode protégé et BrMSX n'aurait jamais été aussi rapide.

    Si je devais remercier tout ceux et celles qui m'ont aidé, ce fichier deviendrait si volumineux qu'il faudrait des heures pour le télécharger Mais je ne peux terminer sans mentionner l'aide de Marco Antonio Simon Dal Poz, Enrique Sanchez, Alex Wulms, Hans Guijt, Eduardo Toledo Santos, KSH, Edison Pires, Insano Delavy, Marcellus Pereira, Marat Fayzullin, Marcel de Kogel, Ademir Carchano, Pierluigi Piazzi, Cyberknight, Walter Marujo, Werner & Weber Kai, Shawn Hargreaves, Mark Feldman, Giovanni Fudeba, Alex Sato, Zoop, Erik Dias, FRS'9X, Ricardo Juracy, Italo Valério, Daniel Caetano, Vanessa Sabino, Daniel Vicentini, Rogério Cobra Bello, Tiago Tresoldi, Miki Watanabe, Luciano Menezes, Marcelo Eiras ainsi que tout les gens qui m'ont envoyés de e-mail de compte-rendus d'anomalies ou des commentaires. Un grand merci à tous!

     

    Si vous souhaitez traduire ce manuel en Japonais, Coréen, Hollandais, Italien, ou n'importe quelle langue parlée par des utilisateurs MSX,veuillez me contacter.

    "Je ne peux croire CA!",dit
    Alice. "Vraiment?",dit la Reine,
    avec un ton pitoyable. "Pourquoi,
    parfois j'arrive à croire jusqu'à
    SIX choses impossibles avant le
    petit-déjeûner!"

    (Lewis Carroll)


    Translated by Saez Frank <saez.frank@wanadoo.fr>