Ganhei de presente dum grande amigo lá do ES uma TERASIC DE0, a
placa de experiências da Terasic usando o Altera Cyclone III. O CARO
portou o código do MSX OCM para as placas DE0 e DE1 da Terasic, e ainda
deu uma grande melhorada no funcionamento, conseguindo instanciar um MSX
2+ a 10MHz com uma pregada de expansões (SCC+, ESE-SCC, 4 megas de
mapper, teclado PS2, volume com o tamanho todo do cartão SD, etc).
Obvio que a primeira coisa que eu fiz foi rodar o MSX OCM na
Terasic
E a segunda foi quebrar a cabeça pra saber como usar
Como eu sei que mais gente vai pastar pra fazer isso funcionar,
fica aqui a dica. Obviamente, quase tudo se aplica a DE1, só mudando
talvez os microswitches da configuracao. Mas software é igualzinho.
Gravando o código do MSX OCM na placa
Passo a passo:
1 - Abra o Quartus II, vai em
FILE, CONVERT PROGRAM FILES
2 - Na opção PROGRAMMING FILE TYPE, escolha "JTAG indirect
configuration file (.jic)"
3 - Na opção "Configuration Device", escolha EPCS4
4 - Clique em "Flash Loader", e clique em "Add device". Escolha
Cyclone III e ao lado EP3C16. Note que quando você clicar em Cyclone
III, ele não vai ticar a caixa ao lado do nome. Mas quando você
clicar na EP3C16, ele vai ticar em ambas as caixas.
5 - Clique em SOF DATA, e clique em "Add File". Ai você escolhe o
seu arquivo SOF (provavelmente o de0_131012.sof)
6 - Clique em "generate". Vai ser criado um arquivo "output_file.jic"
7 - Vai no Quartus Programmer (Quartus II, tools, programmer).
Clique em "Add File" e selecione seu arquivo .jic
8 - Clique na caixinha "program/configure" (ta no meio da janela
branca de cima), senão não vai habilitar o botao "Start"
9 - Clique em Start e divirta-se! Depois de programar, desligue e
ligue a DE0 ja com o cartão de memória com o BIOS MSX.
Eu não sei se isso ai é
conhecimento comum e nunca vi ninguém discutindo isso. De qualquer
forma, isso ai não é achismo. Foi o que eu fiz pra gravar minha DE0.
Divirtam-se.
Rodando o DOS
Agora que você já fez seu 2+ funcionar, como fazer o DOS funcionar?
Fácil. So funciona com o DOS2. Copie estes arquivos pro cartão de
memória:
COMMAND2.COM
MSXDOS2.SYS
MSXDOS.SYS
Claro, você pode copiar
todo o MSXDOS2. Isso ai é o mínimo pra funcionar...
Carregando jogos de ate 32K
Mole pra nós. É só usar o excelente
EXECROM do Adriano (saudades, cara!) e pronto, a ROM carrega. Não
requer pratica, tampouco habilidade.
Carregando jogos MegaROM
Ai já muda um pouco o método. Isso porque o MSX OCM não emula
MegaRAM, mas emula a ESE-SCC+. Portanto praticamente só muda o programa
pra carga.
Primeiro, mudemos as chaves pra:
Chave 3 - on
Chave 4 - off
Chave 5 - On
Lembrando que as chaves são contadas
da direita (conectores de 40 pinos) pra esquerda (displays de 7
segmentos, os cinzinha).
Depois, basta usar o ROMLOAD para carregar os seus jogos. Lembre de
incluir o /R no final da linha de comando pro jogo ser executado logo de
cara.
Ex: A:\> romload nemescc.rom /r
Diversão garantida! Por via das
duvidas coloco aqui um pacote com tudo que você vai precisar pra se
divertir. Basta copiar esses arquivos pro cartão de memória. A DE0 faz
**absoluta questão** que o primeiro arquivo do cartão seja o bios_m2p.rom,
então formate o cartão em FAT, extraia primeiro o bios_m2p.rom e depois
extraia o resto dos arquivos.
Lembrando que:
Page Up = + Volume
Page Down = - Volume
F12 = Modo normal/turbo
PrtScr = Muda o modo de vídeo pra 31/15KHz e 50/60Hz