🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.msx
Article #1052

OpenMSX-Win32-Unofficial Gu�a de Configuraci�n!

#1052
From: Skyblasc
Date: Thu, 23 Jan 2003 02:16
465 lines
17616 bytes
Hola a todos!

Hace d�as ( meses ya!) que estoy muy ocupado y casi no tengo tiempo de
dedicarme a las news, pero a�n as� os leo :D y como recientemente ha
habido posts de Damian en referencia a lo complejo de configurar el
OpenMSX, y no es la primera vez que alguien lo pregunta, voy a dar
unos pasos a seguir para facilitar el uso de este estupendo emulador (
para mi, de los m�s prometedores a nivel de funcionalidad y
compatibilidad).


Configuraci�n de OpenMSX-Win32-Unofficial. 

<Primeros pasos>

A) Descomprime el paquete de OpenMSX. Se crearan varios archivos y
carpetas (CFG,SysROMs,ROMs,DSKs,WAVs, DOCs).

B) Busca y copia las ROMs y BIOS del MSX a la carpeta SysROMs. Estas
son las ROMs que forman parte del Hardware MSX y son esenciales para
su funcionamiento. Ser�an:

MSX.ROM
MSX2.ROM
MSX2EXT.ROM
MSX2P.ROM
MSX2PEXT.ROM
MSX2PMUS.ROM
DISK.ROM
(KANJI.ROM)
(FMPAC.ROM)
(RS232.ROM)
(CMOS.ROM)
(XBASIC.ROM)
Las roms entre parentesis no son esenciales, pero siguen siendo
recomendable tenerlas para usar funciones "extendidas" de algunos
modelos, como por ejemplo  MSX-Music.

C) Busca y copia en la carpeta OpenMSX las siguientes DLLs,
imprescindibles para el emulador:

mingwm10.dll
libxml2.dll
SDL.dll
libSDL_image.dll
libpng.dll
zlib.dll

<Configuraci�n de archivos XML>

Tanto en la carpeta CFG como en la carpeta principal, habr�n m�ltiples
archivos XML ( est�s archivos tienen extensi�n reconocible por IE y si
hacemos doble-click intenar�n ser abiertas por el navegador, d�ndo
error. Deberemos abrirlas con el Bloc de Notas u otro editor
sencillo). Estos archivos tienen las diferentes configuraciones para
sistemas (msx1,2,2+), modelos (nms8250), dispositivos ( FDC, SCC,
FMPAC, MusicModule,...)

Los archivos m�s importantes son MSXCONFIG.XML que es el archivo de
configuraci�n por defecto y los archivos MSX1,MSX2,MSX2PLUS.XML que
hacen referencia a las diferentes generaciones del estandar ( y
ROMDB.XML con una base de datos de configuraciones para diferentes
cartuchos que podamos jugar sin problemas ;-D)

Si ejecutamos OpenMSX sin pasarle par�metros adicionales, este leera
el archivo MSXCONFIG. Si le pasamos una configuraci�n concreta
(MSX1,2,2plus), leera ese archivo concreto. Esto significa que podemos
tener varios archivos diferentes para varias configuraciones
diferentes de MSX que queramos ( memoria, disketera, teclado, etc...)
o indicarle a OpenMSX varios archivos de configuraci�n a la vez para
SUMAR funciones.

Ejemplo:
Openmsx -msx2 (leera msx2.xml)
Openmsx -msx2confmpac (leera msx2confmpac.xml un archivo que habr�
creado con soporte fmpac a�adido)
Openmsx -msx2 -fmpac ( leera msx2.xml y fmpac.xml. El resultado ser�
el mismo que antes)

Abriremos un archivo de configuraci�n. Recomiendo empezar con MSX1.XML
y repetir los pasos con MSX2 y MSX2PLUS ( hay muchas secciones de
configuraci�n id�nticas) para generar configuraciones est�ndar para
cada generaci�n. Luego copiaremos la que m�s queramos usar (usualmente
MSX2 128Kb FMPAC Disketera) en MSXCONFIG.XML para tenerla por defecto.

Los archivos XML se parecen bastante a HTMLs. Cada objeto de
configuraci�n va determinado por TAGS de entrada <> y salida </>, por
lo que es f�cil cambiar las configuraciones o copiar y pegar de otros
archivos xml sin miedo a mezclar nada. Muchos de los objetos a
configurar es mejor no tocarlos si no tenemos conocimiento de lo que
hacemos, pero ser�n una buena forma de darnos cuenta de hasta que
punto nos permite OpenMSX jugar con la configuraci�n del MSX, como por
ejemplo, en la elecci�n de mapeador de memoria, slots,subslots y
paginaci�n de memoria, as� de a que p�gina le conectamos las BIOS u
otras Roms, etc...

Esta es una lista de las cosas que deberemos tener en cuenta para las
configuraciones. Lo dem�s no teneis que tocarlo excepto para
experimentar, claro ;-D

Empezamos por MSX1.XML

<config id="rompath">

Aqu� nos fijaremos que los paths a las diferentes carpetas sean
correctos, y cambiaremos aquellos que queramos cambiar ( rom, dsk,
etc...)

<renderer>

El render es el motor gr�fico que nos muestra por pantalla al MSX.
Puede ser SDLHi o SDLlo, a parte de poder configurarse para pantalla
completa, etc.... ATENCI�N: Importante no tener un escritorio con
color24bits. Pasar a 16 o 32, ya que si no el emulador se colgar�!!!!!

<MotherBoard>

Configuraci�n de la placa madre, con sus 4 slots de memoria. Alterando
true o false podremos hacer que cada slot contenga un mapeador (true)
o no lo tenga. Si queremos una configuraci�n que admita m�ltiples
dispositivos conectados a ROM ( MSX-Music, Cartuchos, Programas Rom
internos, etc...) hemos de asegurarnos de no conectar m�s de un
dispositivo por slot, o en su defecto, habilitar el mapeador y escoger
diferentes p�ginas/subslots dentro del mismo slot.

<device id="main ram">

Estructura de la RAM con su paginaci�n. De momento quedaros con que
podeis modificar la cantidad. En MSX1 y en MSX2 vendr� por defecto
<type>Simple64Kb</type>. Para cambiar a m�s de 64Kb substituid
<type>Simple64Kb</type> por <type>MemoryMapper</type> y a�adid
<parameter name="size">128</parameter> antes del </device> que cierra
la organizaci�n de la memoria.

<device id="biosrom">
<device id="basicrom">

Importante! Empiezan las configuraciones de la BIOS. Fijaros en el
nombre del archivo rom:

<parameter name="filename">MSX.ROM</parameter>

 ya que puede no ser el mismo que vuestro archivo ROM para la BIOS (
puede ser algo como cfg/nms8250-basic.rom o algo como la versi�n
japonesa MSXJ.ROM). Cambiad el nombre en la entrada corespondiente y
ya est�.

En MSX1 tenemos biosrom y basicrom, que corresponden las dos al
archivo MSX.ROM ( fijaos que la configuraci�n de biosrom y basicrom
tiene puntos de entrada diferentes (skip headerbytes), as� que apuntan
al  mismo archivo sin problemas). En MSX2 tenemos adem�s subrom, que
corresponde al archivo MSX2EXT, y en 2+ tenemos tambi�n MSX2PMUS.

Puede ser tambi�n que nos aparezca la configuraci�n para la Kanji.rom
en msx2 y 2+. Si tenemos esa rom pu�s nos aseguramos de que tengan el
mismo nombre y listo!

<config id="RealTime">

Es la velocidad del MSX. El primer par�metro:
<parameter name="sync_interval">50</parameter>
Nos permitir� pasar de 50 a 60Hz ( mayor velocidad. �til para ejecutar
soft japon�s, por ejemplo)

Los MSX2 y 2+ tienen tambi�n la entrada
<device id="Real time clock"> para el reloj interno. No hace falta
tocar nada m�s.

Una vez hayamos terminado, podemos hacer lo mismo con las
configuraciones de MSX2.XML y MSX2PLUS.XML. Para eso podeis copiar los
par�metros que habeis modificado en MSX1.XML y pegarlos en los otros
archivos, pero solo las secciones que habeis modificado. No pegueis
todo el archivo, porqu� podr�ais eliminar objetos de la configuraci�n
espec�ficos solo de msx2 o msx2+.

Si alguna vez o por alg�n motivo quereis deshabilitar una parte del
archivo de configuraci�n para que no se interprete, debereis encerrar
toda la secci�n que quereis ignorar entre:
<!-- Al inicio
Y al final con --> 

<Ejecuci�n de programas>

Una vez tenis configurados los archivos XML con el path correcto, los
nombres de las BIOS correctos, etc... Podemos empezar.

Escribid desde Inicio/Ejecutar:
openmsx -msx1 y este se abrir�.

Poned en la carpeta ROMs un juego y ejecutadlo con
openmsx -msx1 zanac.rom

Asseguraos que ROMSDB se encuentra en la carpeta del ejecutable, ya
que contiene la base de datos con informaci�n del tipo de mapeador del
cartucho ( ASCII8Kb, ASCII16Kb, KonamiMegaRom, etc...)

<A�adiendo disketeras, FMPAC, MUSICMODULE,etc...>

Entre todos los archivos XML que tenemos, se encuentran algunos como
SCC o SCCP (Scc+) en versiones simples o conectados a diferentes
p�ginas de la memoria (SCC1,SCC2,SCCP1,SCCP2). Tambi�n hay FMPAC (
ampliaci�n musical), FDC (Floppy disk controller : Controladora de
disco, en varias versiones, parcheada o sin parchear), la
configuraci�n del NMS8250 y el archivo SOMECONFIG.XML que contiene en
su interior diferentes configuraciones de dispositivos para que
podamos cortar y pegar en nuestro archivo XML. Y esto es lo que
debemos hacer para "a�adir" funcionalidades a los archivos que tenemos
hechos, o para crear archivos de configuraci�n para funciones
concretas: buscar la configuraci�n del dispositivo que queremos,
copiarla, y pegarla en otro XML o en uno nuevo. Por ejemplo, podemos
copiar y pegar la configuraci�n del FMPAC en MSX2.XML, para tener
siempre conectado el FMPAC cuando arranquemos en modo msx2, o bi�n
podemos tener un archivo FMPAC.XML independiente, que solo cargaremos
al ejecutar openmsx si queremos fmpac  ( Openmsx -msx2 -fmpac).

Para a�adir disquetera, buscad en someconfig.xml la entrada:
<device id="diskrom"> ( si no buscad en los dem�s archivos xml) de la
versi�n parcheada ( tiene una serie de parches a�adidos debajo).

Comprobad que el nombre (name="filename">DISK.ROM) coincide con
vuestro archivo disk.rom, como en el caso de las BIOS, y si no,
cambiadlo para que as� sea. Copiad toda la secci�n desde <device>
hasta </device> y pegadla en MSX1.XML, MSX2.XML, MSX2PLUS.XML, debajo
de las secciones de las BIOS, para tener soporte de disketera.
Hay un soporte para disketera mejorado que es:
<device id="Memory Mapped FDC">
Podeis usarlo en vez del anterior, pero vuestar diskrom ha de provenir
de un DUMP del chip WD297x, si no no funcionar�. Esto arregla
problemas con algunos juegos de MicroCabin.

Haced exactamente lo mismo con todas aquellas secciones que querais
a�adir a vuestros archivos de configuraci�n por defecto para cada
generaci�n, y una vez terminados, escoged la configuraci�n que m�s
usareis y copiadla toda en el archivo MSXCONFIG.XML, para convertirla
en la configuraci�n por defecto.

Ahora podeis ejecutar im�genes DSK de vuestra carpeta DSKs haciendo:
openmsx -diska nyancle.dsk

<Un ejemplo: Mi configuraci�n para MSX2>

Esta es mi configuraci�n para un MSX2 con 128KbRam, disketera y FMPac.
Podeis copiarla y usarla como plantilla u ejemplo:

<?xml version="1.0"?>
<!-- $Id: msx2.xml,v 1.2 2002/10/20 00:00:00 Reikan Exp $ -->
<!DOCTYPE msxconfig SYSTEM "msxconfig.dtd">
<msxconfig>

  <config id="rompath">
    <parameter name="separator">\</parameter>
    <parameter name="1" class="path">.\SysROMs</parameter>
    <parameter name="2" class="path">.\ROMs</parameter>
    <parameter name="2" class="path">.\DSKs</parameter>
    <parameter name="2" class="path">.\WAVs</parameter>
    <parameter name="3" class="path">.</parameter>
  </config>

  <config id="renderer">
    <type>SDLHi</type>
    <parameter name="full_screen">false</parameter>
  </config>

  <device id="MapperIO">
    <type>MapperIO</type>
    <parameter name="type">Philips</parameter>
  </device>

  <config id="MotherBoard">
    <parameter name="0" class="subslotted">true</parameter>
    <parameter name="1" class="subslotted">false</parameter>
    <parameter name="2" class="subslotted">true</parameter>
    <parameter name="3" class="subslotted">true</parameter>
  </config>

  <device id="Main RAM">
    <type>MemoryMapper</type>
    <slotted>
      <ps>3</ps>
      <ss>0</ss>
      <page>0</page>
    </slotted>
    <slotted>
      <ps>3</ps>
      <ss>0</ss>
      <page>1</page>
    </slotted>
    <slotted>
      <ps>3</ps>
      <ss>0</ss>
      <page>2</page>
    </slotted>
    <slotted>
      <ps>3</ps>
      <ss>0</ss>
      <page>3</page>
    </slotted>
   <parameter name="slow_drain_on_reset">false</parameter>
    <parameter name="size">128</parameter>
  </device>

  <device id="biosrom">
    <type>Rom</type>
    <slotted>
      <ps>0</ps>
      <ss>0</ss>
      <page>0</page>
    </slotted>
    <parameter name="filename">MSX2.ROM</parameter>
    <parameter name="filesize">16384</parameter>
    <parameter name="skip_headerbytes">0</parameter>
  </device>

  <device id="basicrom">
    <type>Rom</type>
    <slotted>
      <ps>0</ps>
      <ss>0</ss>
      <page>1</page>
    </slotted>
    <parameter name="filename">MSX2.ROM</parameter>
    <parameter name="filesize">32768</parameter>
    <parameter name="skip_headerbytes">16384</parameter>
  </device>

  <device id="subrom">
    <type>Rom</type>
    <slotted>
      <ps>0</ps>
      <ss>1</ss>
      <page>0</page>
    </slotted>
    <parameter name="filename">MSX2EXT.ROM</parameter>
    <parameter name="filesize">16384</parameter>
    <parameter name="skip_headerbytes">0</parameter>
  </device>

  <device id="Kanji ROM">
    <type>Kanji</type>
    <parameter name="filename">KANJI.ROM</parameter>
  </device>

<device id="diskrom">
    <type>Rom</type>
    <slotted>
      <ps>3</ps>
      <ss>1</ss>
      <page>1</page>
    </slotted>
    <parameter name="filename">DISK.ROM</parameter>
    <parameter name="0x0010" class="patch">0xED</parameter>
    <parameter name="0x0011" class="patch">0xFE</parameter>
    <parameter name="0x0012" class="patch">0xC9</parameter>
    <parameter name="0x0013" class="patch">0xED</parameter>
    <parameter name="0x0014" class="patch">0xFE</parameter>
    <parameter name="0x0015" class="patch">0xC9</parameter>
    <parameter name="0x0016" class="patch">0xED</parameter>
    <parameter name="0x0017" class="patch">0xFE</parameter>
    <parameter name="0x0018" class="patch">0xC9</parameter>
    <parameter name="0x001C" class="patch">0xED</parameter>
    <parameter name="0x001D" class="patch">0xFE</parameter>
    <parameter name="0x001E" class="patch">0xC9</parameter>
    <parameter name="0x001F" class="patch">0xED</parameter>
    <parameter name="0x0020" class="patch">0xFE</parameter>
    <parameter name="0x0021" class="patch">0xC9</parameter>
    <parameter name="" class="patchcode">MSXDiskRomPatch</parameter>
  </device>

  <device id="ppi">
    <type>PPI</type>
    <parameter name="volume">16000</parameter>
    <parameter name="key_ghosting">true</parameter>
  </device>

  <device id="VDP">
    <type>VDP</type>
    <parameter name="version">V9938</parameter>
    <parameter name="limit_sprites">true</parameter>
    <parameter name="vram">128</parameter>
  </device>

  <config id="Mixer">
    <parameter name="frequency">22050</parameter>
    <parameter name="samples">512</parameter>
  </config>

  <device id="psg">
    <type>PSG</type>
    <parameter name="volume">21000</parameter>
  </device>

<device id="FM PAC">
    <type>FM-PAC</type>
    <slotted>
      <ps>2</ps>
      <ss>0</ss>
      <page>1</page>
    </slotted>
    <parameter name="filename">FMPAC.ROM</parameter>
    <parameter name="volume">9000</parameter>
    <parameter name="mode">left</parameter>
    <parameter name="load">true</parameter>
    <parameter name="save">true</parameter>
    <parameter name="sramname">FMPAC.PAC</parameter>
  </device>

  <device id="Real time clock">
    <type>RTC</type>
    <parameter name="mode">EmuTime</parameter>
    <parameter name="load">true</parameter>
    <parameter name="save">true</parameter>
    <parameter name="filename">RTC.SAVE</parameter>
  </device>

  <config id="RealTime">
    <parameter name="sync_interval">50</parameter>
    <parameter name="max_catch_up_time">2000</parameter>
    <parameter name="max_catch_up_factor">105</parameter>
  </config>

  <device id="cpu">
    <type>CPU</type>
  </device>

  <device id="Printer Port">
    <type>PrinterPort</type>
  </device>

  <config id="Console">
    <parameter name="font">ConsoleFont.png</parameter>
<!--
    <parameter name="background">ConsoleBackground.png</parameter>
-->
  </config>

</msxconfig>



<Consola de comandos>

Una vez el emulador est� en marcha, es muy �til saber usar la consola
de comandos. Con la tecla F10, abriremos la consola, lo que nos
permitir� introducir comandos �tiles, como por ejemplo para el cambio
a media emulaci�n de disketes:
diska ys1.dsk
diska eject
diska ys2.dsk
diskb saves.dsk

O cambios en la velocidad de emulaci�n, sonido, render, etc.... Leeos
Commands.txt para una lista de ellos.

<Finalizando!!>

Espero que con estos pasos b�sicos hayais visto lo completo que es el
OpenMSX, la de par�metros que permite manipular y cambiar, pero lo
�til del sistema de XML ( aunque la primera vez parezca muy lioso ^_^)
para mantener varias configuraciones diferentes sin problemas.

Esperando que os haya sido �til, se despide a las 3 de la ma�ana
vuestro amigo:

Skyblasc ^_^
Technical Details
Message-ID: <3e2f32b8.15750260@news.CIS.DFN.DE>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!nntp.cs.ubc.ca!fu-berlin.de!uni-berlin.de!212-73-62-218.red-acceso.airtel.NET!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: 10727c,376155636f72a59f,start
X-Google-Attributes: gid10727c,public
X-Google-ArrivalTime: 2003-01-22 18:05:03 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!nntp.cs.ubc.ca!fu-berlin.de!uni-berlin.de!212-73-62-218.red-acceso.airtel.NET!not-for-mail
From: sagaroina@terra.es (Skyblasc)
Newsgroups: es.comp.msx
Subject: OpenMSX-Win32-Unofficial Gu�a de Configuraci�n!
Date: Thu, 23 Jan 2003 02:16:26 GMT
Lines: 466
Message-ID: <3e2f32b8.15750260@news.CIS.DFN.DE>
NNTP-Posting-Host: 212-73-62-218.red-acceso.airtel.net (212.73.62.218)
X-Trace: fu-berlin.de 1043287499 29238889 212.73.62.218 (16 [140046])
X-Newsreader: Forte Free Agent 1.21/32.243