Pesquisa de opinião


Olá pessoal, nos ajude a entender melhor as necessidades da comunidade;

 

 

Obrigado a todos que puderem participar;

[]´s

Dex

Anúncios

Review : Fabricação de cartuchos para MSX


Olá pessoal;
Reportagem interessante que gostaria de compartilhar com vocês, a matéria original está no link;
Vale a pena acompanhar, e ver os desafios de se produzir hoje produtos com qualidade para nosso querido MSX.

Imagine que você passou alguns meses codificando um jogo MSX e agora está pronto para ser lançado. No entanto, há um pequeno problema: você quer vendê-lo como um cartucho. 

Você precisará fazer placas de circuito, componentes de solda, comprar estojos de cartucho e fazer um pacote que pareça bom.

Não é uma tarefa fácil.

Felizmente, há fabricantes que podem ajudá-lo com essa tarefa. Neste artigo, revisamos três deles: MSX Cartridge Shop, Repro Factory e Matra.

O objetivo deste artigo é ajudá-lo a escolher e entrar em contato com um fabricante para os seus cartuchos.

Pode haver alguma informação que não conseguimos incluir aqui, então fique à vontade para entrar em contato com eles para obter detalhes adicionais ou esclarecimentos.

Nota: este artigo possui muitas fotos. Pode demorar um pouco para carregar completamente.

Repro Factory MSX Shop

Baseado na França. Eric Boez lançou a Repro Factory em 2014 com um catálogo inicial de vários jogos e interfaces de hardware para o MSX.

Hoje, além dos kits de hardware e interfaces produzidos por ele, ele também ajuda outros desenvolvedores do MSX a produzir versões de cartuchos de seus jogos.

Pacote

Repro Factory oferece um único tipo de pacote: caixas de plástico Universal Game Case. Estes são casos semi-transparentes com inserções para vários tipos diferentes de cartuchos (Nintendo 64, SNES, Sega Megadrive, CDs …). Os cartuchos MSX são um pouco menores que esses formatos, então os cartuchos se movimentam um pouco dentro da caixa, mas não o suficiente para danificar qualquer coisa ou para supor um problema. Seus cartuchos ficarão perfeitamente bem nessa caixa.

Essas caixas têm vários pontos fortes: sendo feitos de plástico, eles não se danificam facilmente, e eles ficam lindos com uma capa bem projetada. Além disso, há espaço suficiente para um manual de tamanho decente, se você optar por incluir um. Como alternativa ao manual, você também pode optar por imprimir as instruções na parte de trás da capa e será perfeitamente legível através do plástico quando abrir a caixa. Eliminar a necessidade de um manual separado irá poupar-lhe algum dinheiro. Para o armazenamento, você pode optar por empilhá-los verticalmente ou armazená-los na prateleira como se fossem livros. Eles são de tamanho muito regular, então eles parecem bem juntos e são largos o suficiente para ficarem de pé sozinhos sem qualquer apoio.

Caso exemplo 1: Três cartuchos produzidos via Repro Factory. a interface HBI-232MKII RS232, o Incidente Zombie da nenefranz e a MÜLLWAND do SILICON SEX .

Exemplo de caso 2 : os três cartuchos (vista lateral).

Exemplo 3 do caso: Créditos do Incidente Zombie visto através da caixa plástica.

Exemplo de exemplo 4: MÜLLWAND usa a parte de trás da capa como manual de instruções.

Estojos de cartucho

Eric usa não produz seus próprios cartuchos. Em vez disso, ele usa os fabricados pelo usuário coreano Overrich . Estes casos são de alta qualidade: robustos e sem defeitos ou inconsistências visíveis externamente. As duas metades da caixa são juntas com um par de parafusos nas costas.

Até agora, Eric usou casos em preto ou branco, mas ele também pode obter outras cores se necessário. Isso provavelmente aumentaria o tempo de entrega, então confirme com ele quanto à disponibilidade.

Caso de cartucho exemplo 1: O cartucho HBI-232MKII (caixa semi-transparente preta)

Exemplo de exemplo de cartucho 2: incidente HBI-232 MKII, MÜLLWANd e Zombie visto do topo.

Exemplo de exemplo de cartucho 3: os mesmos três cartuchos, parte inferior. HBI-232 MKII no centro.

Exemplo de exemplo de cartucho 4: parte traseira do cartucho MÜLLWAND.

Especificações técnicas

O que você pode colocar em um cartucho? De acordo com Eric, ele pode produzir cartuchos de qualquer tamanho entre 16 e 2048KB. O tipo de mapeador pode ser ASCII8, ASCII16, Konami4K ou Konami SCC (neste último caso, estamos falando apenas do mapeador de memória, e não do chip de som).

Além dos arquivos ROM originais, ele também suporta imagens de disco convertidas em ROM usando o utilitário DSK2ROM . Nesse caso, note que a inclusão de arquivos protegidos por direitos autorais, como o COMMAND.COM e o MSXDOS.SYS do MSX- DOS (2) ou o compilador do MS-X -BASIC KUN , exigirá uma licença da MSX Licensing Corporation. É sua responsabilidade obter essa licença. Você pode contornar esse problema legal usando Nestor Soriano ‘s sistema operacional Nextor ea extensão NestorBASIC , respectivamente.

Como um hardware extra, ele também pode integrar o chip de som Texas Instruments SN76489 no seu cartucho. Este chip é semelhante ao gerador de som programável AY-3-8910 da MSX , e foi usado em muitos computadores domésticos e sistemas de jogos de console como o BBC Micro , a Colecovision , o Sega Genesis / Megadrive ou o SG-1000 .

Quantidades e tempo de entrega

Eric pode produzir lotes de qualquer lugar entre 1 a 100 unidades.

Produzir um lote geralmente demora cerca de duas semanas, mas o tempo pode variar dependendo da cor dos cartuchos, quantidade, etc.

Custo e métodos de pagamento

O custo básico por unidade começa em 15 € (cerca de US $ 17 ou ¥ 1900). Isso inclui a produção de uma unidade inteira: placa de circuito, caixa de cartucho e adesivo, pacote e tampa.

Confirme com Eric por outras opções, como produzir apenas os cartuchos sem pacote ou fazer cartuchos com arquivos ROM maiores.

Além disso, você pode aproveitar a loja online da Repro Factory. Eric pode vender seu cartucho em sua loja online e lidar com o envio para você. Sua comissão neste caso é de 10% do preço de venda.

Eric aceita pagamentos somente via PayPal.

Nota: no momento da redação (25 de junho de 2017) o site da Repro Factory foi mantido em manutenção porque Eric está no hospital para a cirurgia. Desejamos-lhe uma rápida recuperação!

MSX Cartridge Shop

Manuel Pazos começou seu site há muito tempo, em 2008. Desde então, ele produziu várias gerações diferentes de seu popular cartucho MegaFlashROM. Além de vender seu cartucho, ele também pode produzir e vender seus próprios jogos.

Pacote

Manuel pode ajudá-lo a produzir apenas os cartuchos, ou cuidar da caixa inteira + manual + conjunto de cartuchos.

Como Eric, ele oferece apenas um tipo de caixa. Os seus são mais compactos do que os de Repro Factory e são feitos de papelão. O cartucho fica perfeitamente no meio da caixa. O lado impresso do papelão é brilhante. No entanto, sendo papelão, ele deve ser tratado com cuidado ou começará a mostrar desgaste após algum tempo.

Os adesivos de cartucho e o manual de cores são de boa qualidade e são profissionais.

Caso exemplo 1: IMINAK ‘s Tina’s Adventure Island (frente)

Exemplo de caso 2: Tina’s Adventure Island (vista lateral)

Caso exemplo 3: Tina’s Adventure Island (voltar)

Caso exemplo 4: conteúdo da caixa. O manual fica sob o cartucho

Estojos de cartucho

Manuel faz seus próprios cartuchos usando uma máquina de moldagem por injeção de plástico . Seus estojos de cartucho não usam nenhum parafuso: as duas metades encaixam e é difícil abrir a caixa uma vez que foi fechada.

Até agora, ele fez casos em preto ou branco, mas ele diz que é possível fazê-los em qualquer outra cor, desde que a cor esteja disponível para a máquina de moldagem.

Seus estojos de cartuchos se sentem mais claros do que os de Eric, e têm imperfeições muito visíveis na superfície, especialmente na parte superior e inferior do cartucho. Isso não afeta a funcionalidade de nenhuma maneira, mas se você se importa muito com a estética, então isso pode ser algo que você pode querer levar em consideração.

Exemplo de exemplo de cartucho 1: Frente do cartucho Tina’s Adventure Island.

Exemplo de exemplo de cartucho 2: Tina’s Adventure Island (voltar)

Exemplo de exemplo de cartucho 3: Top of Destroyer, Tina’s Adventure Island e MegaFlashROM SCC + SD

Exemplo de exemplo de cartucho 4: parte inferior dos mesmos três cartuchos

Especificações técnicas

Os cartuchos produzidos por Manuel podem estar em qualquer lugar entre 16KB e 8MB (8192KB). Se você precisar de mais de 64KB, ele pode suportar qualquer mapeador de memória personalizado e hardware adicional, como um chip de som DAC , SCC, um PSG extra, etc. Isso ocorre porque seus cartuchos incluem um chip FPGA que pode executar as funções desses dispositivos. Novamente, confirme com Manuel sobre as extensões de hardware que podem ser usadas.

Como Eric, seus cartuchos podem ser ROMs nativas, ou programas MSX-DOS (2) ou MSX-BASIC convertidos em ROM com a ferramenta DSK2ROM.

Quantidades e tempo de entrega

A ordem mínima é uma unidade. Geralmente, não há problema em pedir grandes lotes de 100-200 unidades.

Supondo que ele tenha partes suficientes no tempo de entrega de estoque é quase imediato (na ordem de apenas alguns dias), se a Manuel estiver produzindo apenas placas de cartucho e casos. O material impresso, como a caixa eo manual, pode levar entre 2 a 4 semanas.

Custo e métodos de pagamento

Fazer um cartucho com um arquivo ROM plano de até 64KB custa 14 € (um pouco acima de US $ 15 ou ¥ 1750). Para ROMs maiores que 64KB, o preço é de 25 € (US $ 28 / ¥ 3110) porque eles requerem circuitos extras. Em ambos os casos, esse preço inclui apenas a placa de circuito e a caixa do cartucho.

A embalagem (caixa, etiqueta do cartucho e manual) custa 1 ou 2 € extra.

Como extra, ele pode vender seus jogos no MSX Cartridge Shop e lidar com a logística para você. Ele não cobra nenhuma comissão por isso, então esta opção o livra de fazer muito trabalho.

Manuel aceita pagamento via PayPal ou transferência bancária.

Matra

Além do MSX, a Matra possui uma longa história de produção de software para várias outras plataformas retro. Eles produziram software para MSX em disquete, fita e cartucho, e sempre tomaram muito cuidado no design de seus produtos.

Agora, além de seus próprios produtos, eles também ajudam outros desenvolvedores a publicar jogos.

Pacote

A Matra oferece uma escolha mais diversificada de embalagens:

  • Um orçamento, formato muito pequeno (SHOCKWARE)
  • Uma caixa de papelão semelhante em tamanho e design (mas não o mesmo) que o MSX Cartridge Shop’s
  • Um formato deluxe como o usado para o Bitlogic da OXiAB

Da esquerda para a direita: caso de luxo ( Bitlogic ), caso padrão ( Relevo ‘s La Corona Encantada ) e SHOCKWARE ( Karoshi ‘ s Malaika ).

Vejamos cada formato por sua vez.

Caso SHOCKWARE

Esta é uma pequena caixa de papelão, do mesmo tamanho que um cartucho MSX padrão. Dentro do gabinete, o cartucho compartilha espaço com um manual de cor pequeno e a abertura é coberta com uma inserção de papelão impresso que enche a fuga na frente e na parte de trás da caixa que permite que você tire facilmente o cartucho para fora.

SHOCKWARE caixa exemplo 1: Malaika (frente)

SHOCKWARE caixa exemplo 2: Malaika (comparação lateral e tamanho com um cartucho nu)

SHOCKWARE caixa exemplo 3: Malaika (lado da abertura da caixa coberto com inserção de papelão)

SHOCKWARE caixa exemplo 4: Vista explodida completa

SHOCKWARE caixa exemplo 5: detalhes de inserção (frente)

SHOCKWARE caixa exemplo 6: Detalhe do encaixe (para trás)

Manual do SHOCKWARE: Malaika

Caso padrão

Externamente, a caixa parece muito parecida com o MSX Cartridge Shop, mas há algumas diferenças. Parece um pouco mais robusto, provavelmente porque o interior da capa é duas vezes mais grosso do que o de Manuel. Isso também significa que as costas também são impressas e brilhantes em vez de serem de papelão branco.

Outra diferença é que este caso não suporta os lados esquerdo e direito do cartucho. As abas de papelão apenas mantêm a parte superior e inferior da caixa, de modo que o jogo tende a deslizar para cima e para baixo quando a caixa é armazenada verticalmente. Isso não suporta um problema, porque ainda é muito fácil remover o cartucho da caixa.

O manual, se incluído, fica sob o cartucho.

Não há outras grandes diferenças em relação à caixa da MSX Cartridge Shop.

Exemplo padrão da caixa padrão da Matra: Relevo’s La Corona Encantada (frente e lado)

Caixa padrão da Matra exemplo 2: Relevo’s La Corona Encantada (volta)

Exemplo de caixa padrão da Matra 3: Interior da caixa com cartucho

Estojo de luxo

Este pacote é um pouco maior do que a caixa de papelão padrão.

É composto de duas peças: uma caixa de papelão e uma capa de papelão mais fina abertas em ambos os lados que se encaixam na caixa. O cartucho fica no meio da caixa interna entre dois pedaços de espuma de preenchimento.

Este formato é muito mais resistente do que os outros dois, e também permite um manual maior.

Exemplo de exemplo deluxe Matra 1: Bitlogic (frente)

Exemplo de exemplo deluxe Matra 2: Envoltório de cartão (à esquerda) com estojo aberto. Cartucho está sob o manual.

Exemplo de exemplo deluxe Matra 3: manual a cores e cartuchos em caixa acolchoada.

Estojos de cartucho

A Matra também produz seus próprios cartuchos. Como o MSX Cartridge Shop, eles também usam uma máquina de moldagem por injeção. Esses estojos de cartucho não são parafusos e se encaixam quando fechados. O design é mais redondo do que a maioria dos outros casos que costumamos ver nas produções MSX, e temos uma grande depressão na parte de trás que os torna mais fáceis de agarrar e puxar do slot do cartucho.

A superfície de plástico não é suave, mas tem um acabamento mais liso e lixado. Não há irregularidades na superfície, com apenas uma pequena rebarba visível no fundo.

Nesses casos, o rótulo do cartucho não envolve a parte superior do cartucho. Em vez disso, ele fica dentro de uma inserção menor na frente do cartucho. Isso torna um pouco mais difícil identificar cartuchos autônomos quando eles são empilhados fora de sua caixa. Não há outras questões além disso.

A Matra pode fazer esses casos em qualquer cor plástica disponível para máquinas de moldagem por injeção, mesmo transparentes.

Exemplo de exemplo de cartucho 1: Malaika (frente)

Caso de cartucho exemplo 2: Malaika (volta)

Exemplo de exemplo de cartucho 3: Malaika (parte inferior)

Exemplo de exemplo de cartucho 4: Malaika (topo e lado)

Exemplo de exemplo de cartucho 5: A parte traseira deslumbrante do gabinete de Bitlogic

Exemplo de exemplo de cartucho 6: Exemplo de algumas cores disponíveis: Bitlogic (transparente), Malaika (preto), ZERO (amarelo)

Especificações técnicas

No momento em que escrevemos, não conseguimos obter todos os detalhes da Matra, então o que se segue é apenas a informação que temos do que vimos ser lançado. É improvável que esta informação esteja completa, então entre em contato diretamente com informações atualizadas.

Sabemos que a Matra produziu cartuchos com arquivos nativos da ROM, bem como jogos MSX-BASIC convertidos em ROM com DSK2ROM. Eles são capazes de produzir cartuchos de ROM plana de até 64KB, bem como megaROMs com mapeador interno. Não só isso, mas as customizações da placa de circuito também são possíveis. Por exemplo, se você olhar de perto o cartucho Bitlogic, você verá oito LEDs RGB dentro que produzem a luz ambiente de diferentes cores à medida que o jogo avança.

Quantidades, prazo de entrega, custo e métodos de pagamento

Como antes, não conseguimos confirmar esses detalhes por enquanto. Consulte o resumo abaixo para obter as informações de contato. Você poderá discutir os detalhes diretamente.

Resumo

Nós vimos que os três fabricantes oferecem opções diferentes de caixa, cartucho e extras de hardware. Este é um resumo para ajudá-lo a decidir.

Repro Factory MSX Shop

  • Pacote: Universal Game Case (caixa de plástico maior) com tampa de papel atrás de uma folha de plástico.
  • Estojo de cartucho: plástico moldado por injeção com dois parafusos. Acabamento muito suave e limpo.
  • Pode produzir qualquer coisa de ROMs nativas planas até 64KB sem mapeador, ou MegaROMs com mapeador até 2048KB.
  • Suporta arquivos DSK2ROM.
  • Pode incluir adicionar o chip de som SN76489 à placa de circuito.
  • O custo começa a partir de 15 euros
  • O tempo de entrega é de cerca de duas semanas
  • Método de pagamento: PayPal
  • Website: http://www.ebsoft.fr/shop/
  • Pessoa de contato: Eric Boez
  • E-mail de contato: eric.boez -at- gmail.com (substitua “-at-” por “@”, não vinculando o endereço de e-mail atual para evitar spammers)

MSX Cartridge Shop

  • Pacote: Caixa de papelão com impressão brilhante.
  • Estojo de cartucho: moldado por injeção sem parafusos.
  • Pode produzir qualquer coisa, desde ROMs planas até 64 KB sem mapeador, ou cartuchos personalizados de até 8192 KB com mapeador
  • Suporta arquivos DSK2ROM.
  • Várias opções de hardware extra, como SCC, DAC ou chip PSG extra que pode ser implementado em FPGA.
  • O custo começa a partir de 14 euros para ROMs de até 64KB, ou de 25 euros para ROM maiores ou hardware extra
  • O tempo de entrega é de alguns dias (ao solicitar apenas os cartuchos) ou entre 2 a 4 semanas ao solicitar material impresso, como caixa e manual.
  • Métodos de pagamento: PayPal e transferência bancária
  • Website: http://www.msxcartridgeshop.com
  • Pessoa de contato: Manuel Pazos
  • Email de contato: solicite -at- msxcartridgeshop.com (substitua “-at-” por “@”, não vinculando o endereço de e-mail atual para evitar spammers)

Matra Computer Automations

  • Pacote: três opções com diferentes tamanhos, materiais e custos
  • Estojo de cartucho: moldado por injeção sem parafusos.
  • Pode produzir ROMs planas até 64KB sem mapeador e MegaROMs. Não temos certeza sobre o tamanho máximo do cartucho ou os tipos de mapeador suportados.
  • Suporta arquivos DSK2ROM.
  • Os cartuchos podem suportar hardware extra (como LEDs no cartucho Bitlogic), mas não temos certeza sobre as opções disponíveis.
  • Custos, prazo de entrega e métodos de pagamento não confirmados no momento da redação
  • Website: http://www.matranet.net
  • Pessoa de contato: STAR
  • Email de contato: matracorp -at- gmail.com (substitua “-at-” por “@”, não vinculando o endereço de e-mail atual para evitar spammers)

Esperamos que esta comparação seja útil e que alguns de vocês serão encorajados a publicar novos jogos para o MSX. Atualizaremos a informação faltante assim que a obtenhamos.

Para mais detalhes, entre em contato com cada um de vocês e pergunte o que você precisa saber.

Links relevantes

Resumo;

Hoje em dia temos muitas pessoas e profissionais dedicados trabalhando para nos proporcionar produtos de qualidade para nossos equipamentos, e principalmente para nosso MSX.

Isso nos anima, pois sabemos que os micros da linha MSX estão muito longe de acabar, e me lembro bem que essa conversa do fim do MSX começou no final da década de 80, entre muitas discussões acaloradas.

Hoje sabemos que os micros antigos vão durar o tempo que ainda existir o amor de seus usuários.

Até +

Dexter

RetroWorks – The Sword of IANNA


 

Olá pessoal;

 

Como você provavelmente se lembra da The Sword of IANNA é um projeto promissor para o MSX2 da RetroWorks. Agora, podemos confirmar que o jogo já está terminado e as primeiras unidades estão sendo vendidas no evento espanhol RetroZaragoza realizado neste fim de semana.

Se você não for capaz de participar do evento, não se preocupe, da próxima semana visite a loja online do RetroWorks e obtenha sua cópia física por um preço de 40 €. Existe também uma versão para download.

 

Acima você pode ver a versão para ZX Spectrum(esquerda) em comparação com a versão para MSX 2(direita), podemos notar a diferença gráfica, cores, e melhor resolução além da jogabilidade que dão muita vantagem nessa versão para MSX.

Vale a pena dar uma conferida, esse jogo foi originalmente concebido para o ZX Spectrum, mas a versão para MSX 2 ficou muito boa.

Até +

Dex

NandemoESECC cartridge by NX Labs


Olá pessoal;
NX Labs, um construtor de hardware homebrew no Japão, lançou o NandemoESECC.
O nome vem de um trocadilho usando homônimos. Nandemo significa "qualquer coisa",
ESE significa "pseudo", e a ESECC é pronunciada como SCC.

À primeira vista, parece um cartucho ROM padrão. No entanto, possui alguns
interruptores de discagem e uma tomada de saída de som.

Cada um desses switches corresponde a um respectivo canal PSG.
Enquanto estiver inserido no seu MSX, a saída do PSG é modificada para os sons
do SCC pelo NandemoESECC. 

Você pode ajustar a cor do tom de cada canal ao seu gosto girando estes mostradores.
Além disso, você pode escolher entre apenas o som modificado ou misturá-lo com a saída
original do PSG.

O desenvolvedor, Norix, diz que a NandemoESECC é inspirada no NandemoSCC pela Tiny Yarou.

O NandemoSCC (do qual a conotação do nome deve ser claro até agora) é uma solução de
software para transferir qualquer saída de PSG para o SCC. 

Você pode assistir várias demonstrações no canal YouTube do Tiny Yarou.

O cartucho NandemoESECC pode ser seu por ¥ 12,800 (que é aproximadamente cerca 
de € 100 ou $ 115 no momento deste newspost) e é vendido por via postal por kadenken.

Vale a pena conferir;

[]´s

Dexter

VRoBIT Home Computer


Olá pessoal;

Em paralelo ao nosso projeto de um novo MSX, surgem diversos outros no mercado, e em análise pudemos observar esse projeto interessante e que tem tudo pra vingar no mercado.

Suas principais caracteristiscas são a retrocompatibilidade com todas as versões de MSX existentes no mercado.

ARM 64Bit CPU 1200 Mhz

512Mb RAM – 512Mb VRAM

4 x CARTRIDGE SLOTS (MSX compatible)

2 x DB9 GAME PORTS (MSX compatible)

2 x USB 2.0 Ports

1 x Audio Stereo Output

1 x MIC Input

1 x RCA Audio-Video Output

1 x HDMI Output

1 x POWER Button

1 x RESET Button

1 x PAUSE Button

1 x VCC SLOT Button

1 x LED Power

1 x LED IO Activity

1 x LED VCC Slot state (red: you can not plug / unplug cartridge)

1 x LED Caps

1 x LED Pause

1 x SD-Card Interface

Compatible with: MSX, MSX2, MSX2 +, MSXTR

 

Espero que esse projeto vá para a frente e nos dê muitas novas experiências de diversão.

 

Site do projeto VRoBIT

 

O importante de tudo isso é que está havendo grande mobilização e assim desse modo teremos novos MSX no mercado para inclusive novos usuários.

 

[]´s

Dexter

Programando em C no MSX


Olá pessoal, um artigo que achei interessante e quero reproduzir aqui pra vocês é do Giovanni Nunes sobre programar em C no MSX, realmente vale a pena a leitura.

É possível programar em C no MSX? Claro que sim, no MSX Archive é até possível baixar tanto o Hitech-C quanto o MSX-C. Este último foi desenvolvido pela japonesa ASCII e “tecnicamente” é o C oficial do MSX — se você ficou interessado o Javier Lavandeira tem uma uma série intitulada relearning MSX em seu blog onde ele resolveu um fazer guia passo a passo sobre desenvolvimento para MSX partindo bem do princípio e tratando deste compilador.

Porém, se preferir algo mais “moderno” há o Small Device C Compiler, ou simplesmente SDCC, que é um compilador padrão ANSI C que suporta uma série de microcontroladores e microprocessadores de “pequeno porte” e entre eles o Z80. E seguindo uma sugestão feita pelo Rogério Machado via grupo GDMSX do Google+ resolvi montar um passo a passo sobre como configurar este compilador para ser usado no MSX.

Antes de começar

Se preferir, prepare um ambiente separado, seja utilizando uma máquina virtual,contêiner, chroot etc. Vá lá que eu espero 🙂

Instalando o SDCC

Claro, a primeira coisa é instalar o SDCC e também algumas ferramentas que serão utilizadas para a geração dos programas, nas distribuições que usam apt-get faça:

$ sudo apt-get --yes install make sdcc wget

As dependências serão resolvidas pelo apt-get portanto é só aguardar o download e a instalação terminarem.

Adicionando suporte ao MSX

O SDCC tem um suporte para geração de código para o processadores Z80 mas para que ele produza executáveis específicos para o hardware do MSX é necessário “ensiná-lo” corretamente sobre como fazê-lo. Isto significa basicamente que você precisará baixar e compilar os arquivos preparados pelo Avelino Herreras Morales na pagina dele. Mas se preferir eu preparei este script para fazer a tarefa:

#!/bin/bash
# configure MSX support in SDCC

function Create_Directories() {

    OLDPWD=$( pwd )

    for DIR in ${SDCC_INC_DIR}; do
        if [ ! -d ${DIR} ]; then
            echo -n "Creating directory ./${DIR}..."
            mkdir ${DIR}
            Return_Status ${?}
       fi
    done

    cd ${OLDPWD}
}

function Compile_Libraries() {

    ASM=$( which sdasz80 )
    CC=$( which sdcc )
    OLDPWD=$( pwd )

    cd ${DESTINATION_PATH}

    for S in $( ls *.s ); do
        echo "Assembling ${S}..."
        ${ASM} -o ${S}
        #Return_Status ${?}
    done

    for C in $( ls *.c | sed 's/\.c//g' ); do
        echo "Compiling ${C}.c...."
        ${CC} -mz80 -o ${C}.rel ${C}.c
        #Return_Status ${?}
    done

    cd ${OLDPWD}
}

function Download_Files() {

    OLDPWD=$( pwd )

    if [ -d ${DESTINATION_PATH} ]; then
        cd ${DESTINATION_PATH}
        for FILE in ${FILELIST}; do
            echo -n "Downloading ${FILE}... "
            echo $( HTTP_Download ${REPOSITORY} ${FILE} 2>/dev/null )
        done
    else
        echo "---FAIL--- DESTINATION_PATH not found!"
        exit 2
    fi
    cd ${OLDPWD}
}

function HTTP_Download() {

    FETCH=$( basename $( which curl || which wget || which lynx ) )
    URL=${1}
    FILE=${2}

    case ${FETCH} in
        curl)
            curl -L -o ${FILE} ${URL}/${FILE} -C -
            ;;
        lynx)
            lynx -source ${URL}/${FILE} >${FILE}
            ;;
        wget)
            wget -c ${URL}/${FILE}
            ;;
        *)
        echo "---FAIL--- I can't download files! :("
        exit 1
    esac

    echo "OK"
}

function Return_Status() {

    STATUS=${1}

    if [ ${STATUS} -eq 0 ]; then
        echo ${OKEY}
    else
        echo ${FAIL}
    fi
}

OKEY="OK"
FAIL="FAIL"
DESTINATION_PATH='msx'
DIRECTORIES=${DESTINATION_PATH}
REPOSITORY="http://msx.atlantes.org/sdcc_msx"
FILELIST="crt0msx_msxdos.s crt0msx_msxdos_advanced.s
types.h putchar.s getchar.s dos.s dos.h dos2.s dos2.h 
interrupt.s interrupt.h ioport.s ioport.h conio.c conio.h 
heap.c heap.h keyboard.s keyboard.h vdp.s vdp.h mem.c mem.h"

Create_Directories

Download_Files ${DESTINATION_PATH}

Compile_Libraries

Compile_Libraries

exit 0

Crie um diretório, mova o script para lá e o execute. Ele se encarregará de  baixar todos os arquivos necessários e compilá-los:

$ mkdir -p ~/Projetos/msx
$ cd ~/Projetos$ 
$ ./sdcc_enable_msx_support ./msx
Downloading crt0msx_msxdos.s... OK
Downloading crt0msx_msxdos_advanced.s... OK
Downloading types.h... OK
...
Assembling keyboard.s...
Assembling putchar.s...
Assembling vdp.s...
Compiling conio.c....
Compiling heap.c....
Compiling mem.c....

Não se preocupe com as mensagens de aviso — os ?ASlink-Warning… — é normal.

No final da execução ele terá criado um diretório específico, o “./msx” contendo os arquivos baixados, compilados e também os cabeçalhos para serem usados no compilador C.

SDCC_msx_files

Ah sim, male a pena uma leitura na página do Avelino para entender as diferenças entre o crt0msx_msxdos e o crt0msx_msxdos_advanced.

Convertendo o IHX para binário

Os programas compilados pelo SDCC são gerados em Intel HEX — 😀 Yey! 😀 — e precisam ser convertidos em binário para rodar no MSX. Você pode baixar e utilizar o hex2bin mas acabei montando um conversor bem xexelento em Python para cuidar desta tarefa.

Daí será necessário também instalar:

$ sudo apt-get install python python-pip
$ pip install bincopy

Para executar estas mal traçadas linhas:

#!/usr/bin/env python2
import bincopy
import sys
def main(argv):
inputfile = argv[0]
f = bincopy.File()
with open(inputfile, r) as fin:
f.add_ihex(fin)
print f.as_binary()
if __name__ == __main__:
main(sys.argv[1:])
view raw hexbin.py hosted with ❤ by GitHub

Como ele foi feito para ser integrado ao Makefile, não sofistiquei muito mas contribuições são sempre bem vindas. 🙂

Montando um Makefile

Mas por que? Porque, como já disse em outra oportunidade, é muito chato ficar tendo de lembar a toda hora a sintaxe e os parâmetros do compilador:

CAT=cat
CC=sdcc
ECHO=echo
EMULATOR=openmsx
HEXBIN=../bin/hexbin.py
MKDISK=
RM=rm
INFILE=hello.c
OUTFILE=hello
INCLUDE=-I../msx
PARAMS=-mz80 –no-std-crt0 –data-loc 0
NORMAL=–code-loc 0x107 ../msx/crt0msx_msxdos.rel
ADVANCED=–code-loc 0x178 ../msx/crt0msx_msxdos_advanced.rel
RELOCATE=../msx/putchar.rel ../msx/getchar.rel ../msx/dos.rel ../msx/conio.rel
.PHONY: normal advanced clean superclean
default:
make advanced
normal:
${CC} ${INCLUDE} ${PARAMS} ${NORMAL} ${RELOCATE} ${INFILE}
${HEXBIN} ${OUTFILE}.ihx >${OUTFILE}.com
advanced:
${CC} ${INCLUDE} ${PARAMS} ${ADVANCED} ${RELOCATE} ${INFILE}
${HEXBIN} ${OUTFILE}.ihx >${OUTFILE}.com
clean:
${RM} ${OUTFILE}.com ${OUTFILE}.ihx
superclean:
${RM} -f ${OUTFILE}.asm ${OUTFILE.com ${OUTFILE}.ihx ${OUTFILE}.lk ${OUTFILE}.lst ${OUTFILE}.map ${OUTFILE}.noi ${OUTFILE}.rel ${OUTFILE}.sym
view raw Makefile hosted with ❤ by GitHub

Ele está está pronto para compilar programas em C e retornar um “.com”, por padrão ele utiliza o crt0msx_msxdos_advanced mas você pode usar “make normal” ou trocar para que este seja o padrão.

Fazendo um teste

E claro é preciso testar se está tudo certo com o compilador:

#include "conio.h"
#include "dos.h"

void main(void) {
    puts("Hello, world :-)\r\n");
    exit(0);
}

Este é o mesmo programa de testes da página do Avelino e para compilar use simplesmente make:

SDCC_make

Daí é transferir o arquivo para um disquete ou imagem de disco com MSX-DOS e rodar, mais ou menos isto aqui para as imagens de disco:

$ sudo mount msxdos.dsk /mnt -t msdos -o rw,loop
$ sudo cp hello.com /mnt/hello.com && sync
$ sudo umount /mnt

Para o caso do disquetes remova o “,loop” e substitua o “msxdos.dsk” pelo dispositivo que corresponde a unidade de disquetes.

Aliás estes procedimentos podem ser acrescentados ao Makefile fazendo-o gerar uma imagem de disco, acrescentando o(s) arquivo(s) e executando o emulador, mas isto fica como exercício. 🙂

E para terminar

Na página do Avelino há outros exemplos de código e bibliotecas, além dos arquivos para suporte a geração de imagens de cartucho (ROM) diretamente pelo SDCC. Outra fonte interessante é na página do Nestor Soriano (o Konamiman) com uma biblioteca alternativa para as funções básicas de console, suporte para as pilhas TCP/IP que ele desenvolveu entre outras coisas. E como o SDCC usa é compatível com o padrão ANSI-C, há uma grande quantidade de códigos em C que pode ser compilado com pouca/nenhuma modificação para o MSX!

 

O link original do artigo vocês podem encontrar em;

https://giovannireisnunes.wordpress.com/2016/03/11/usando-o-sdcc-no-msx/

 

Por enquanto é isso pessoal

[]´s

Dex

Lançamento – Quebra cabeça selvagem (Wild Puzzle) – Mapax


Olá pessoal;

O programador Mapax nos presenteou com mais um jogo para MSX, trata-se de Wild Puzzle, um jogo concebido para o MSX 2.0, esse jogo é a sequência do desenvolvimento do mesmo programador que já tinha feito antes o Mr.Ballon.

Desenvolvido utilizando-se da Screen 8 e MSX Music feito totalmente em assembler.

São 17 tipos de quebra cabeças a serem solucionados,com 3 níveis de dificuldade e 21 tipos de músicas diferentes.

mbp125_0002

Download do Jogo

A jogabilidade é muito boa,  vale a pena baixar….é diversão garantida.

Até mais;

MsxRevival

Expansor de slots – TecnoBytes


Olá pessoal;
A Tecnobytes, empresa que desenvolve hardware para computadores clássicos acaba de lançar mais um expansor de slots para MSX, abaixo mais detalhes do produto;
detalhe-led-expansor
The MSX Slot Expander prototype was ready and working very good!
Let´s talk more about it.
Specs:
– 4 Expanded slots that can fit even large cartridges;
– 60 cm buffered flat cable;
– Exclusive plastic cabinet (in development);
– 5V External power supply (included);
– You can easely disable a slot (you don’t have to remove the cartridge). Each slot have one key and one information LED; *
– “DC IN” Status LED: The main board and the cartridges are protected against incorrect voltage (low or high), any problem with the power suply, even if you forgot to conect one :-). The DC IN Status Led will blink in any of these cases;
– High quality board (as always);
Price: US$ 139,00 **
Shipment Prediction: February / March 2017 ***
No próprio site da empresa é possível fazer a compra do expansor;
Até mais pessoal
[]´s
MsxRevival

MSX Cartridge Shop – Lançamentos


Olá pessoal;

É com grande alegria que divulgamos que a loja de cartuchos de MSX ( msxcartridge shop ) está comercializando mais 2 títulos de jogos para o MSX.

Manbow 2;

Caos Begins.

 

cropped-msx_logo.png

MSX Cartdrige Shop

Vale a pena dar uma olhada, e também aproveitar e dar uma força aos desenvolvedores independentes que mantém o MSX em plena atividade perto de completar 40 anos de existência. (impressionante né !)

 

Feliz Natal e um próspero ano a todos;;;;;;

Att

MsxRevival