Manual de com construir-te i utilitzar el teu propi ONE CHIP MSX

Article original per Aivalahostia el Dv, 26/10/2012 - 18:27 (Cesc: editat el contingut per millorar el format i fer correccions menors)

El fet de crear el One Chip MSX com un projecte obert ha propiciat la evolució i el desenvolupament de projectes molt interessants. Segur que en vindran de nous !

Hola, com ja fa temps vaig dir aquí el teniu, espero que sigui d'utilitat per a tothom. Si teniu algun dubte, no dubteu en preguntar-me.

Manual de com construir-te i utilitzar el teu propi ONE CHIP MSX

A continuació intentaré descriure el més detallat i clar possible com convertir la placa Altera DE1 o la DE0 en un MSX, no soc cap expert i els meus coneixements d'electrònica o programació són escassos tirant a nuls, amb això vull dir dues coses, que tothom que ho vulgui pot fer-se el seu propi OCM, i que les descripcions i termes utilitzats poden ser poc professionals. Jo no soc cap creador, senzillament he recopilat i organitzat la informació. El article original el vaig publicar, a la revista MSXAREA, a qui els vull agrair que m'ho deixessin fer.

La placa:

El primer que tenim de fer si volem fer-nos un OCM es obtindre una placa Altera DE1 o DE0, jo ho he fet amb la DE1 però la DE0 funciona igual i és mes econòmica, l'únic inconvenient és que no te sortida de so de fàbrica, a traves la la construcció d'un simple circuit s'aconsegueix.

Jo la vaig aconseguir directament d' Altera a la següent direcció: http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&No=83

En el seu moment allà el 2008, la placa, el soft, la font d'alimentació i el cable varen costar aproximadament uns 150 €, depenent del canvi i del preu actual pot variar, i el temps d'entrega va ser d'una setmana.

Un cop tenim la placa, ens fa falta instal·lar el “Quantus web edition” que ens ve amb el soft de la placa i aconseguir els arxius “.pof” i la “Bios” el primer per la placa i el segon per la tarja SD.

Els arxius es poden aconseguir fàcilment de caro.su, tot i que la pàgina està en perfecte rus, amb el traductor de Google no tindrem cap problema per entendre-ho.

Per “flasejar” hem de seguir els següents passos:

  • Connectar la placa per USB al PC, no hem de tindre la placa connectada a la corrent.
  • Posar la pestanya de “RUN” a “PROG”.
  • Obrir el “Quantus web edition”.
  • Posar en marxa la placa.
  • En el cas que no estigui el driver del “USB blaster” instal·lat, aquest està a ditre de la carpeta Altera a a dintre de la carpeta Usb blaster a dintre de drivers.
  • A dintre del “Quantus web edition” anem a “programmer” i canviem la pestanya de “JTAG” a “Active serial programming”.
  • Seleccionem “Add file” i seleccionem el fitxer “.pof” que ens hem baixart.
  • Seleccionem la primera casella, i automaticament es seleccionen les dues de sota.
  • Cliquem “Start” i esperem que faci el proces.
  • Un cop acabat desconnectem la placa i tornem a posar el “Prog” a “Run”

Ja tenim la placa configurada com a MSX.

Els interruptors, polsadors i equivalències de teclat

I aquests interruptors perquè serveixen? Majoritàriament serveixen per a configurar característiques del MSX. Tota aquesta part esta treta de http://caro.su/msx/ocm_de1.htm i d'una versió a a la següent pot variar.

Interruptors o SW:

Interruptors de configuracióDescripció i funció
SW1 i SW0Configuració del mode de sortida de vídeo (commutable amb la tecla PrintScreen)
0031 kHz VGA 60 Hz
0131 kHz VGA 50 Hz
1015 kHz RGB (SCART)
1115 kHz TV amb audio
  
SW2Desactivar Activar SD / MMC (Cal fer un Reset)
OffSD / MMC actiu
OnSD / MMC inactiu
  
SW3Mode de funcionament al slot 1 (Cal fer un Reset)
OffRanura externa per a cartutxos
OnESE-SCC: 1024 K + SCC-I
  
SW4 i SW5Seleccio del mode al slot 2 (Cal fer un Reset)
00Ranura externa per a cartutxos
10ESE-SCC: 1024 K + SCC-I
01ESE-RAM: 1024 K + ASCII8
11ESE-RAM: 1024 K + ASCII16
  
SW6Selecció del tipus de teclat connectat
Off101/104 tecles, disseny internacional
On106/109 tecles, disseny japonès directe
  
SW7Seleccioneu el rellotge de la CPU (Es pot fer servir la tecla F12)
Off3,58 MHz
On10,74 MHz
  
SW8Control de connexió al slot 1 amb la targeta de memòria estàndard MegaRAM (512 Kb)
OffMegaRAM inactiu ( slot 1 és controlat per l'interruptor SW3 )
OnMegaRAM connectat (independentment del SW3)
  
SW9Ajustar la quantitat de memòria RAM (Cal fer un Reset)
Off2048 Kbyte
On4096 Kbyte

Pulsadors:

KeyDescripció
Key0El Pulsador 0 equival al botó de Reset.
Key1No definit.
Key2No definit.
Key3No definit.

Tecles i controls:

Teclat MSXTeclat PS/2
GraphF6 Alt i Alt Gr
KanaF7
SelectF8
StopFin
  
TeclaFunció
Av PagApuja el volum
Re PagAbaixa el volum
F12Canvia la velocitat del processador
Pr scr.Canvia el tipus de sortida de vídeo.

Els programes per utilitzarlo.

Casi tota la part de software està extreta del manual del “1chip” creat per “lasekta.org”.

Per poder utilitzar el nostre OCM ens farà falta una tarja SD o MMC de com a màxim 2 GB formatada en FAT 16. Esperem que en un futur poder utilitzar targes amb més capacitat. El primer que farem des de qualsevol PC es copiar-hi la “BIOS” que teníem baixada de “caro.su”, en aquest moment ja ens arranca i podem utilitzar el BASIC, per a poder fer servir el DOS ens farà falta copiar el MSXDOS2.SYS i COMMAND2.COM, els arxius els podeu trobar a http://msxbanzai.tni.nl/computers/ese3 però googlejant una mica podreu trobar versions més actuals.

Per a facilitar la tasca amb DOS podem fer un autoexec.bat amb qualsevol editor, jo particularment faig servir el TED, i el meu autexec es el següent:

SET EXPERT ON
PATH=A:\UTILS
VER

Com podeu veure poso tots els programes a UTILS, depenent de la versió instal·lada el \ equival al signe del Yen japonès.

Els programes mes utilitzats que hi poso a la carpeta UTILS són:

  • EP ep.com ens permet utilitzar imatges de disquet (.DSK)

    • Execució d'un sol disquet: ep nom.dsk /b/d/r, un cop executat reseteja el OCM i arrenca com si del disquet original és tractés.
    • Inserció d'un disquet a la unitat b:\ : ep nom.dsk b: accedint a b: podem accedir al disquet.
    • Inserció de varis disquets: ep nom* /b/p/r el signe * el col·locarem on vagi el numero de disquet. Amb F7 es cambia el disquet, el primer es la tecla 0.
  • ODO odo.com. Odo nom.rom, És la millor eina per a executar roms petites de fins a 48k.

  • Romload romload nom.rom /modificadors Romload per a mi és un dels millors carregadors de megaroms, existeixen alternatives com mgload, scrom, loadrom... pero per la majoria jo utilitzo el romload, ames pot carregar diferents tipus de mappers sense tocar cap SW.
  • Loadcas, ens permet carregar imatges de cinta .cas, no funciona amb multi carrega, aquest a diferencia dels programes anteriors funciona amb el Basic. El programa transforma les imatges .cas per a ser carregades amb un simple bload"nom",r. Només s'ha de utilitzar un cop per fitxer, un cop tenim el fitxer transformat, per si sol funciona. Accedim al BASIC des de la carpeta on estiguin els .cas i el loadcas i teclegem: copy loadcas to nom.cas i ja esta un cop transformat el fitxer amb bload"nom",r ja ens funcionarà.

Hi ha molts més programes, aquests són els que faig servir jo, Existeix un arxiu de 2GB creat per “Taburoto” que conte la majoria de programes i jocs d'MSX nomes modificant uns arxius funciona molt be per al OCM i ja ve tot pràcticament fet.

Construcció de les plaques dels conectors.

Per a construir els connectors de cartutx, joystick, so i casset em vaig basar en el següent esquema: http://caro.su/msx/ocm_de1/slotsde1.pdf En podeu trobar la versió més actual a caro.su.

És la part més costosa de totes, i per a mi va requerir molt temps, l'ideal seria fer-ho sobre un circuit imprès (PBC) ja que ens facilitaria molt la feina (estic intentant fer-ho però encara no en se prou) però de moment ho he fet amb planxes perforades i tirant fils.

Els materials utilitzats no son difícils d'aconseguir, la majoria en una tenda d'elecrònica es troben, jo he fet servir el el següent:

Material fàcil de trobar:

  • Soldador d'estany.
  • Estany.
  • 3 planxes perforades.
  • Resistències.
  • Condensadors.
  • Fil elèctric de diferents colors.
  • 5 Rengles de pins per fer connexions.
  • 200 aprox. pins individuals per a realitzar les connexions.
  • 1 connector femella d'àudio estèreo. (sortida de so)
  • 2 connectors femella d'àudio mono (casset)
  • 1 connector Ps2 (ratolí)
  • 2 connectors Db9 (joysticks)
  • 1 Interruptor.

Material més complicat de trobar:

  • 2 cables ide de 40 sense cap forat ceg (Onda rambla)
  • 2 connectors de cartutx (L. Padial)

Per els connectors IDE de 40 també podeu fer servir els de disqueteres antics, i per els connectors de cartutx es poden re utilitzar els d'algun MSX vell que no funcioni. Jo us dic on he trobat els més difícils.

La construcció dels connectors jo la he dividit en 3 planxes, i el segon cop que ho he fet ho he fet amb pins per a poder canviar les connexions en el cas que surti una actualització nova poder canviar les connexions fàcilment i adaptar-ho a la nova situació.

1º placa: la sortida de la Altera DE1. En aquesta he soldat la entrada de la placa DE1, per poder connectar els cables IDE, he et servir dos línies de de 20 pins (GPIO0 i GPIO1 al esquema), he soldat fils a cadascuna i els he numerat per a poder diferenciar-los entre ells, també he fet el petit circuït de la part inferior esquerra (X8) que serà el que donarà corrent a totes les connexions.

2ª placa: Sortides d'àudio, casset, joystick i ratolí, al esquema sembla que hi ha un petit error, concretament al port A del joystick, al pin 7 hi van 2 resistències i al 8 cap, jo n'he fet parar una al 7 i una al 8, la connexió del ratolí no he aconseguit que funciones correctament no se si és per alguna errada meva o bé per que encara no està implementada. Per la resta no és gaire complicada.

3ª placa: connectors de cartutx, és en si la més laboriosa, es la que te més fils i si en poses un de malament o es creua la soldadura amb un altra, aquesta no funcionarà.

Consells:

  • Si sou valents ho podeu fer tot en una sola placa, però el meu consell es que deixeu força espai entre els components, així us serà més fàcil fer les soldadures.
  • Identifiqueu els pins per la cara de les connexions i per la cara de les soldadures, així sabreu on va cada fil.
  • Maqueu TOTS els fils, utilitzeu fils del màxim de colors, així serà mes difícil de creuar soldar-ne un de malament.
  • Comproveu les soldadures, que estiguin bé, soldar no és gaire difícil i no costa aprendre'n.
  • Si hi ha alguna part, cosa que no enteneu, demaneu ajuda, molta gent dels “foros” i jo mateix en la mesura del possible us ajudarem. El “foro” mes actiu relacionat amb el OCM és: http://www.msx.org/forumtopicl8494.html

Advertències:

  • El funcionament del OCM casolà es força correcte, però encara queda molta feina per fer, hi han errors de so i de vídeo que poc a poc es solucionen. El OCM original molts dels errors que te els comparteix amb el OCM casolà, gran part del codi el comparteixen.
  • Tot el descrit en aquest manual, cadascú ho pot fer sota la seva responsabilitat, no em responsabilitzo de danys causats al hardware i/o software.

Agraïments:

A tota la gent del “foro” http://www.msx.org/orumtopicl8494.html i a en Caro que és l'usuari que ha “creat” i adaptat els programes per a poder fer el OCM casolà.

A la gent de la AAMSX per deixar-me presentar els meus OCM a les RU.

A la gent de MSX AREA per deixar-me publicar l'article original a la seva revista.

A tots els creadors, programadors i usuaris del MSX, tots contribuïm a mantenir-lo viu.

I molt especialment a la meva família per deixar-me fer tot això.

Xavier S. (Aivalahostia) Tardor 2012