23 julho 2018

A transformacao do Yamaha CX-11 para MSX 2.0

UPDATE: Video mostrando como soltar as (malditas) travas da tampa
UPDATE: arquivos de ROM necessarios para a transformacao, la no finalzinho do artigo

Ola Pessoalzzzz.....Tabajara...zzzzz....na area!

Desculpem o sono, sao 5 da manha :o)

Hoje o assunto é legal, transformação de micro pra 2.0. Mas primeiro...Hora da mendingancia, né? :D Eu sei que voces adoram me ver pedindo para honrar nossos anunciantes, dar aquele click maroto ali em cima nos produtos anunciados...Voces gostam, falem a verdade :o)

Tambem vou lembrar da minha campanha no Apoia.Se.


Pessoal, deixem de ser pao-duros, paga ai uma pizza por mes pro Tabajara! Voces nao gostam de ler sempre posts interessantes? Custa tempo (e por consequencia dinheiro) trazer informacao legal pra voces. Que tal darem uma forcinha? ;o) 

Mas ok, mendinguei, agora vamos ao assunto do dia!

Um MSX 2.0 é um MSX 1.0 com um pouquinho de circuito a mais...
  • VDP 9938 com 4 memorias 4464
  • ROM e SUB-ROM de 2.0
  • Expansor de slots (normalmente no slot 3)
So isso. Qualquer MSX 1.0 pode virar 2.0. Basta voce adicionar o conjunto VDP + memorias, a ROM e SUB-ROM e o expansor de slots. Na verdade, voce nem precisa do expansor. A ROM vai no lugar da ROM que ja existe, e a SUB-ROM vai em um dos 2 slots disponiveis. É que nao vale muito a pena ter um MSX com um slot só, nao e mesmo?

Entao, kits para conversao de MSX1 para MSX2 se tornaram comuns no Brasil. La fora, lançaram maquinas ja 2.0 "de fabrica". Aqui no Brasil como a Gradiente e a Epcom nunca se interessaram...o jeito foi ter kits de conversao.

Porem, depois que aprendemos a comprar MSX la de fora, ficou muito comum trazer MSX2 "original de fabrica", mas tambem MSX1 aos borbotoes. E eventualmente, compra-se MSX1 pensando que é MSX2 :o) Foi o caso deste CX-11

 (hoje voces vao me desculpar a qualidade das fotos, fotografei com outra camera e ficaram um lixo)

Esse micrao lindo ai é o mesmo caso do YIS503/II que ja vimos aqui no blog. Ele é um MSX 1.½. Na realidade, gracas aos problemas de conversao, eu diria MSX 1.¼ :o)



Este micro é um MSX1 da Yamaha, tambem orientado a musica - vem com o SFG-01 embaixo - porem é simplificado a extremos. Realmente nao sei explicar o porque dele ser TAO simplificado. Mas pra resumir, esse micro é um MSX2 sem...
  • Memoria. Só tem 32K de RAM. E de um jeito muito doido, igual os YIS303/503 e o CX5M :\ 
  • Mapper. Nao tem nem o lugar na placa. 
  • Slot expandido. Parte do circuito vem faltando. E é so um integradinho TTL, mas nao tem nem o lugar dele na placa
  • 16K de VRAM. Ou seja, so daria pra usar 80 colunas como o YIS503/II e o CX5M/II. Mas como nao tem lugar pra SUB-ROM, entao nao tem o codigo necessario pra aproveitar o recurso
  • Slot frontal. Nao tem nem a furação na placa
  • ROM. Só tem um soquete pra ROM
Resumo? É o MSX 1.½ mais capado que eu vi na vida :o)

So que sabe como é, né? O amigo que comprou ficou tristaço, gastou mó grana pra trazer do Japao, chegou aqui...Fuééé, era MSX1. Pra te ser sincero ate eu pensei que era MSX2, mas nao tinha me tocado quando vi a foto.

MISSAO DADA É MISSAO CUMPRIDA. Dane-se. Vamos fazer essa jaca virar MSX2.



ANTES DE QUALQUER COISA:
Como soltar as (malditas) travas da tampa.




Agora sim, aquela olhada marota por dentro


Olhando assim, parece um CX5M/II ou um YIS503/II ne?


Mesmo modulador


Mesma fonte tambem


Mesmo teclado e seu maldito conector


EITA NOIS!!! Que placa cheia...de espaço vazio! O_O

Observem como essa placa é radicalmente diferente da placa do YIS503/II



Nao tem jeito, vamos começar logo porque eu ja to ansioso pra ver o boot do 2.0 :oD


Primeiro eu fui checar o espaço entre o modulador e a placa, pra ver se cabe uma "torre" de VRAMs aqui


Cabe. Entao vamos começar


Primeira etapa, torre de VRAM. Nao tem muito misterio ai. Voce pega 4 memorias 4464 e em duas delas voce levanta o pino 16. Solda uma memoria com o pino levantado, em cima de outra memoria sem o pino levantado. Faz um par desse conjuntinho e liga os dois pinos 16 levantados ao pino 60 do processador de video. Nao requer pratica, taopouco habilidade. O que voce está fazendo é ligar um par de memorias 4464 onde havia um par de 4416 (que - pasmem - tem a mesma pinagem) e ligando outro par tambem nos mesmos pinos, mas o pino de /CAS (o pino levantado) em outro /CAS do processador de video. Feito isso, voce tem 128K de VRAM.


Agora, nessa foto eu vacilei. Eu fiz um monte de coisas ao mesmo tempo e, como ficou mó bagunça (isso ai foi so um teste), eu vou detalhar mesmo sem fotos


Baguncinha boa, né? :o)

Primeiro eu testei o boot do micro com as roms 2.0. Pra isso eu coloquei a MAIN rom no lugar de sempre, e a SUB rom eu coloquei num cartucho gradiente em um slot qualquer. Como fazer? Grave a SUB ROM em uma 27C128, coloque no cartucho gradiente e naquele jumper de seleção de 4000/8000, ligue o pino do meio aos pinos 20 e 22 da memoria. Assim a memoria vai ser selecionada a partir de 0000h que é a posicao correta pra sub-rom

Funcionou direitinho, parti pro expansor de slots.

O S3527 (que nesse micro, curiosamente, se chama X3527) tem uma peculiaridade pouco conhecida - voce precisa de uma porta NAND de 8 entradas para gerar um sinal que ele precisa chamado /RSEL

Esse circuito ja se faz presente praticamente em todo micro com o S3527. Só que nesse nao tem :\

É facil de fazer, veja aqui


Eu levantei todos os pinos de um 74LS30, menos o 7 e o 14. Esses eu soldei no pino 7 e 14 de um outro integrado proximo ao Z80

As entradas sao os pinos 1, 2, 3, 4, 5, 6, 11 e 12. Vamos ligar o pino 12 a VCC (ou seja, ligar o pino 12 ao pino 14) e ligar A2 no pino 1, A8 no pino 2, A9 no pino 3, A10 no pino 4, A11 no pino 5, A12 no pino 6 e A13 no pino 11.

O pino 8 e a saida. Ele vai ligado no pino /RSEL do S3527.. E felizmente, nao precisamos soldar esse fio numa das perninhas minusculas do chip. Voce pode soldar no pino de baixo do R342


Tao vendo, o fiozinho preto? É ali que liga, perto do R.

Feito isso, a expansao de slot está habilitada. Corte tambem o fio cinza que tem embaixo a direita, pra que o slot expandido seja o 3


Beleza, agora vem a parte REALMENTE dificil.

Temos que soldar um fio que será a habilitação da SUB-ROM. Esse fio nao tem jeito. Ele vai no terceiro pino da esquerda pra direita, na face virada pra cima do S3527


Esse fio NAO TEM JEITO. Reparem que nao ha trilha ligada a ele. É o pino de selecao do slot 3.1 e voce obrigatoriamente vai ter que ligar um fio ali. Lamento, nao tem como pular essa etapa.

Feito isso, precisamos gravar os arquivos da ROM **SEM O CODIGO DO RTC** e fazer mais uma "torrezinha", dessa vez de EPROMs :)


O que eu fiz aqui foi soldar uma eprom em cima da outra. A de baixo vai com o codigo "MAIN" e a de cima, a "SUB-ROM"

Na EPROM de cima voce levanta os pinos 20 e 22. O pino 20 voce liga ao fio que voce ligou laaaa no S3527. O pino 22 voce liga ao pino /RD (21) do Z80

Com isso, o micro ja funciona como 2.0 :o)

So que voce ainda tem 32K de RAM. Voce precisa acertar esse "pequeno detalhe"

Eu nao sou a maçã mais brilhante do mundo MSX. Tem coisas que eu - REALMENTE - nao entendo. Uma delas é o mapeamento de memoria maluco desse S3527


Sim, voce esta vendo direito
16K no slot 0 e 64K no slot 3.2

EU NAO FAÇO A MENOR IDEIA DO PORQUE DESSA SANDICE. Como esse micro nao tem mapper, voce fica obrigado a usar esse mapeamento biruta. Se alguem puder me explicar o porque disso, ficarei grato.

Esta é a area de memoria desse micro:


Sao 4 memorias 4416. Voce tem que tirar IC322 e IC324, e substituir por duas 4464


Por fim, o micro funciona perfeitamente :o)

No final, o mapa de memoria fica assim:
(desconsidere o slot 1 expandido, porque eu estava usando a SD/Mapper)


Me fizeram uma pergunta..."Alexandre, esse micro entao é uma droga!?"
De forma alguma. Ele é apenas um micro que nao e tao facil de expandir quanto os outros. E agora, depois que eu pastei que nem um tonto, voces tem tudo de mao beijada. Com essas fotos e os arquivos desse post, qualquer pessoa com alguma pratica em eletronica faz esse serviço em 2 ou 3 horas. O dificil foi chegar ate aqui :o)

Entao, o micro está "pronto"


O "pronto" entre aspas é porque a ROM vai ter que ser mudada...

A ROM que rola por ai do CX7M/128 parece que nao é dele. É na realidade de um micro europeu de 50 Hz com um mapa de teclado aparentemente diferente.

Eu pedi aos abnegados amigos que manjam mais de programacao de MSX do que eu, que por favor modificassem a rom do meu YIS503/II para nao usar o RTC, uma vez que é (bem) enrolado de implementar o RTC nesse computador. Fazendo isso, o micro fica perfeito. Por enquanto ele funciona, com 4 ou 5 teclas trocadas e em 50 Hz.

De qualquer forma, o pior ja ta feito. A hora que alguem alterar a ROM, eu so gravo mais um par de EPROMs e esse micro fica 100%. Do jeito que esta, ja está usavel

E o meu amigo se salvou dessa encrenca que foi ter comprado um MSX1 com cara de MSX2 :o)

Ate a proxima, pessoal! E nao se esqueçam dos clicks dos anunciantes ;o)

ARQUIVOS NECESSARIOS
Aqui voce tem todos os arquivos para transformação dos Yamaha tipo 2 (YIS503/II, YIS603, CX5M/II, CX7M/128, CX11, AX200, AX250, etc)
Agradecimentos ao Leonard Oliveira por ter criado os arquivos patcheados e testados!

3 comentários:

Josue disse...

Trabalho bacana, e bem difícil, parabéns, muito bem explicado gostei muito.

emersonwsm disse...

É uma daquelas cópias de design do УКНЦ... Quero mesmo é ver vc colocar um VDP V99x8 em um UKNC (evitando o cirílico, agora). Ai sim vou me surpreender pra caralho!!!

micros8bits disse...

E ai amigo, tudo bem? ... acompanho todas suas publicacoes...
Alexandre...vi um negocio na net que é simples e que eu e a maioria dos applemaniacos comprariam... ve o link.. abaixo

https://www.bigmessowires.com/shop/product/apple-disk-drive-ab-switch/

é simples mais usual, uma vez comentei com o pessoal da appleIIbr se existia alguma viabilidade de mudar a unidade via comando ou fazer algo parecido com a plaquinha do link acima e ninguem deu muita bola..
o que vc acha de fazer?

abraço
Wesley