GDMSX no Telegram

A última semana aqui no Brasil foi bastante movimentada nas diversas redes sociais, por conta do bloqueio do aplicativo WhatsApp por um juiz de São Bernardo do Campo.

Entretanto há algum tempo já existe uma alternativa, extremamente superior, com interface muito mais bonita e mais fácil de usar, com protocolo e API abertos sendo altamente integrável com qualquer coisa que você possa e venha imaginar, dependendo apenas da sua criatividade, além de ser Open Source.

Estou falando do Telegram, que é o mais forte concorrente do WhatsApp e pelo simples fato de ser desenvolvedor de tecnologias de mensagens instantâneas, estou utilizando-o há algum tempo afim de conhecer alternativas abertas, concorrentes ao WhatsApp.

Telegram logo

Telegram Logo

Realmente é um excelente software, muito completo e com versões para Windows, MacOSX e Linux, além das versões mobile disponíveis para Android, iPhone e Windows Phone. Com tudo isso, além dos grupos que também existem no WhatsApp, o Telegram tem uma feature extra imbatível que são os canais.

Aproveitando a onda Telegram que assolou o Brasil, após a queda do WhatsApp, aproveitei para criar mais um branch do GDMSX, no formato canal do Telegram, podendo ser acessado nesse link, ou buscando por gdmsx na lista de canais do Telegram.

Posso dizer que há tempos eu não ficava tão empolgado com um software de mensagens instantâneas como estou com o Telegram.

Long live to Telegram. 🙂

[]’s
PopolonY2k

Desenvolvendo com OpenMSX

Acredito que toda, ou grande parte da comunidade MSX conheça o excelente emulador OpenMSX, principalmente os usuários de Linux e MacOSX.

Bom, confesso que depois de voltar a ativa no mundo MSX, eu utilizo uma máquina real em 100% do meu tempo desenvolvendo coisas, até porque não jogo no MSX há anos. Entretanto desde o último ano, não tenho conseguido tempo para estar à frente da minha máquina de desenvolvimento preferida, que é o meu MSX TurboR A1ST com 1MB de RAM, IDE Tecnobytes com 8GB de Compact Flash, Expansor de slots ACVS, placa de rede Obsonet Tecnobytes, dentre outras coisas que estão conectadas nessa máquina.

Desde o início dos anos 2000, senão me engano lá por 2002 ou 2003, quando a “batalha de emuladores” era mais intensa entre os RuMSX, ParaMSX, fMSX e seus mais diversos sabores, duas opções “definitivas” começaram a se fundamentar no meio da comunidade MSX mundial e hoje reinam absolutas em sua preferência.

Estou falando do BlueMSX e do OpenMSX.

BlueMSX LogoBlueMSX logo

Usei muito o BlueMSX, principalmente quando jogava no emulador, mas como desenvolvedor, percebi desde cedo que o OpenMSX se tratava de um projeto mais aberto e poderoso no que diz respeito a sua utilização no desenvolvimento de novos projetos, sejam de hardware ou de software, além do fato de seu projeto ser extremamente bem feito, com um código muito bem escrito e documentado, além de ser multiplataforma.

openmsxOpenMSX logo

OpenMSX como plataforma de desenvolvimento.

Além de já ter sido vastamente utilizado como plataforma para desenvolvimento de hardware, em projetos como o MSXARM, o OpenMSX é uma excelente plataforma de desenvolvimento de software, principalmente pelo fato do mesmo emular quase todos (ou todos) os dispositivos que podem ser conectados a um MSX real, como os famosos LaserDiscs, por exemplo.

Por esse motivo e também incentivado pela série que vem sendo escrita no site de Javier Lavanderia, sobre programação para MSX utilizando MSX C, eu decidi que era hora de testar o nível de compatibilidade do OpenMSX, bem como todas as capacidades desse emulador, no desenvolvimento de novos projetos para MSX.

OpenMSX console

O OpenMSX possui um console embutido, que você ativa toda vez que pressiona F10 e a partir daí, em paralelo com a emulação, é possível interagir com a máquina utilizando um conjunto extenso de comandos disponíveis no emulador, conforme pode ser visto nesse link aqui.

Inclusive, via comandos Tcl, você pode controlar o emulador utilizando uma interface através de alguns meios de comunicação disponíveis no emulador, como pipes, named pipes, a saída padrão (stdio), TCP Sockets e UNIX domain sockets, ou seja, é um emulador modular ao extremo, permitindo até que você escreva seu próprio launcher, caso não esteja satisfeito com o OpenMSX Catapult, que para mim poderia ter sua interface tão poderosa e até mais do que a do emulador BlueMSX por exemplo.

Abaixo segue um excelente vídeo demonstrando essa integração do OpenMSX com Tcl/Tk, através do console de Tcl embutido nesse emulador.

Integrando OpenMSX com Tcl

Preparando seu disco.

Apresentado o console do OpenMSX, agora vale a pena citar um comando muito especial e poderoso, o diskmanipulator.

Resumindamente, o diskmanipulator é capaz de criar imagens de disco bem como gerenciar seu conteúdo. As imagens criadas são compatíveis com FAT12 e FAT16 e poderão ser utilizadas no OpenMSX como floppy disks comuns e também como hard disks  IDE.

OpenMSXOpenMSX console

A página de instruções do diskmanipulator contém diversas explicações de como criar imagens para discos flexíveis de 720Kb, discos rígidos com partições de FAT12 e FAT16, bem como instruções de como importar dados para esses discos a partir do disco local da máquina host em que o OpenMSX está sendo executado.

Como o objetivo desse post é justamente apresentar o OpenMSX como uma plataforma real para desenvolvimento de softwares para MSX, então preparei um disco com duas partições, sendo a primeira FAT12 e outra FAT16, com diversos softwares específicos para o desenvolvimento de software no MSX. Segue abaixo a lista do que atualmente está contido no disco criado e pronto para usar:

DRIVE A: (FAT12)

MSXDOS2 operating system compatible

[DEV]     (Editors, compilers, assemblers and general purpose development tools)
—|———[M80] (Microsoft/ASCII – Z80 Assembler)
—|———[DEVPAC80] (HiSoft Z80 Assembler)
—|———[TP33] (MSX Computer club Turbo Pascal 3.3 compiler)
—|———[TP3] (Borland Turbo Pascal 3.00A compiler)
—|———[TED] (MSX2.0 and higher Text Editor)
—|———[APED] (MSX2.0 and higher Text Editor)
—|———[TOR] (MSX1&2 text editor)

DRIVE B: (FAT16)

[PROJECTS]   (Projects source code)
——-|—-[PASCAL] (Turbo Pascal compatible source code)
——-|———|
——-|———|——[PCX]  (Source code for PCX file format handling)
——-|———|——[INLASS] (Turbo Pascal Inline assembler)
——-|———|——[MKINL] (Another Turbo Pascal Inline assembler)
——-|———|——[PMLINK] (Another Turbo Pascal Inline assembler)
——-|———|——[INLINE] (Another Turbo Pascal Inline assembler)
——-|———|——GRAPH.INC (Graphical library for MSX)
——-|———|——PARSE.INC (Command line parameter parser)

Lembrando que essa é apenas uma configuração de disco inicial em que ainda estou trabalhando, portanto no futuro certamente serão adicionados a esse hard disk, os pacotes do MSXC (1 e 2), HiSoftC, dentre outras excelentes ferramentas destinadas ao desenvolvimento de software para o MSX.

Baixando e usando o hard disk

O harddisk citado acima, pode ser encontrado nessa URL aqui, e de fato é um compartilhamento de minha pasta do DropBox que deixo disponível à comunidade. Os arquivos dessa URL serão atualizados com o tempo, visando a adição de novos compiladores e ferramentas de desenvolvimento para a plataforma MSX.

Nesse mesmo link você encontrará dois arquivos, os quais descrevo abaixo:

dev_hd.dsk -A imagem de 64MB com as duas partições (A: FAT12 e B: FAT16) pronta para uso no OpenMSX;
dev_hd.tcl  – Script Tcl utilizado para dar boot no OpenMSX, usando a imagem de disco acima;
Passos para utilização do disco no OpenMSX:
  1. Baixe esses dois arquivos em qualquer diretório de sua máquina. O único ponto de atenção a ser tomado é que esses dois arquivos devem estar no mesmo diretório pois o script TCL <dev_hd.tcl>, busca pela imagem do hard disk no mesmo diretório em que o script está sendo executado;
  2. Abra o OpenMSX utilizando a sua configuração de máquina preferida;
  3. Com o OpenMSX rodando, pressione a tecla F10, para invocar o console Tcl do OpenMSX;
  4. Já na tela do console, digite o comando abaixo:
    source <caminho_onde_você_baixou_a_imagem_de_disco_e_o_arquivo_tcl/dev_hd.tcl>
  5. Pressione <ENTER>
  6. Divirta-se 🙂

Pronto, o seu OpenMSX irá reiniciar já fazendo boot com a imagem de hard disk que você baixou no link acima.

Isso é apenas uma pequenina amostra do potencial desse que, para mim, é o melhor e mais completo emulador da plataforma MSX, na atualidade.

Fiquem antenados nos novos updates da imagem de disco, que disponibilizei no link do Dropbox.

[]’s
PopolonY2k

Referência na internet

OpenMSX home
http://openmsx.org/

Linux (Wikipedia)
https://en.wikipedia.org/wiki/Linux

MacOSX (Wikipedia)
https://en.wikipedia.org/wiki/OS_X

RuMSX home
http://www.lexlechz.at/en/software/RuMSX.html

ParaMSX (MSX.org)
http://www.msx.org/news/emulation/en/paramsx-048b

fMSX home
http://fms.komkon.org/fMSX/

BlueMSX home
http://www.bluemsx.com/

MSXARM primeiro teste de hardware (PopolonY2k Rulezz)
http://www.popolony2k.com.br/?p=2074

LaserDisc (Wikipedia)
https://en.wikipedia.org/wiki/LaserDisc

Relearning MSX (Lavanderia.net)
http://www.lavandeira.net/relearning-msx/

OpenMSX console commands.
http://openmsx.org/manual/commands.html

Tcl Tk home
https://www.tcl.tk/

Controlling OpenMSX
http://openmsx.org/manual/openmsx-control.html

Pipe communication
http://www2.cs.uregina.ca/~hamilton/courses/330/notes/unix/pipes/pipes.html

Named Pipes (Wikipedia)
https://en.wikipedia.org/wiki/Named_pipe

Network socket (Wikipedia)
https://en.wikipedia.org/wiki/Network_socket

UNIX domain sockets
https://en.wikipedia.org/wiki/Unix_domain_socket

DiskManipulator (OpenMSX)
http://openmsx.org/manual/diskmanipulator.html

PopolonY2k’s OpenMSX development hard disk (DropBox sharing)
https://www.dropbox.com/sh/smo2dz1kwl6wvfm/AAAYfFbZGjoksmoIRE4TlwPGa?dl=0

DropBox website
http://www.dropbox.com

Computer made music

Chiptune is a music category that has grown over the last few years and it is composed often by musicians, users and fans of old computers. This new music category is growing thanks to a generation whose childhood was affected in some way by computers.

Those who were born in the 70‘s and 80’s know exactly what about I’m writing, because in those days anyone who could get any kind of computer now was able to remember the magic behind it’s sounds and songs created for those machines.

If you lived those magic days, brands like Commodore, Apple, Texas, Philips are familiar to you and some systems and computers standards like C64, AppleII, Amiga, Spectrum, Amstrad CPC and MSX in some way have had some importance and maybe influenced you in your career or hobby.

Today several mainstream artists have been submitting their songs to be produced by producers that were influenced by C64 game made songs and by Amiga demosceners artists. The most famous example of this influence is a recent scandal involving the well known producer Timbaland that has been accused of plagiarism by Amiga computer fans, when he worked for Nelly Furtado’s album, Loose, released in 2006.


Comparing both songs

This is a well known story and in fact Timbaland revealed to have plagiarized some elements of several Amiga’s composers including the demoscener artist Janne Suni (a.k.a Tempest). One of the songs plagiarized by Timbaland was composed by Tempest for the Oldskool Music competition (Assembly 2000) which occurred in 2000 in Helsinki, Finland and reached the first place in the competition.


Nice try Timbaland 🙁
.

To be continued...

[]’s
PopolonY2k

Reference

ChipTune (Wikipedia)
http://en.wikipedia.org/wiki/Chiptune

Timbaland (Wikipedia)
http://en.wikipedia.org/wiki/Timbaland

Nelly Furtado (Wikipedia)
http://en.wikipedia.org/wiki/Nelly_Furtado

Timbaland Plagiarism controversy (Wikipedia)
http://en.wikipedia.org/wiki/Timbaland_plagiarism_controversy

Pop!Dev – Concurso de desenvolvimento de software para MSX (MegaRAM edition) – Cancelado

Há alguns meses atrás fiz um anúncio aqui no blog, sobre o primeiro concurso de desenvolvimento de software para MSX, patrocinado pelo site PopolonY2k Rulezz, o Pop!Dev.

Conforme anunciado em outubro do ano passado, o objetivo era fomentar o desenvolvimento de software para MSX utilizando a MegaRAM, sendo o prêmio uma MegaRAM de 2MB da ACVS (limited edition).

MSX Basic Screen

MSX Basic Screen

A data limite para entrega dos trabalhos foi no 25 de abril e infelizmente não houve inscrições no concurso, o que o cancelou automaticamente.

Infelizmente não consegui notificar o cancelamento do concurso na época, devido a um momento bastante corrido pelo qual eu estava passando (de fato ainda estou, mas em escala menor hoje).

Em breve vou reeditar o concurso, talvez abrindo também para a comunidade internacional, mas no momento não tenho previsão de quando fazê-lo.

[]’s
PopolonY2k

Game review – Mr.Bree+

No final de 2012, participei de uma pequena palestra do pessoal da Taw Studio, um pequeno estúdio localizado na cidade de Pindamonhangaba no interior de São Paulo, promovida nas instalações do Acrópolis estudio de Arte e escola de mangá, a respeito de seu principal game na época, o Mr. Bree+.

Mr.Bree+ Wallpaper

Mr.Bree+ Wallpaper

Desde então, fiquei bastante interessado em adquirir o game, uma vez que os autores disseram que em breve o mesmo estaria disponível em algumas game stores nacionais. Pouco tempo depois me tornei parceiro para reviews de jogos da SplitPlay desde o inicio de suas operações, mas naquela época a SplitPlay ainda estava se organizando e fechando parcerias com diversos estúdios indies nacionais e o Mr. Bree+ ainda não estava em sua loja, entretanto em menos de 2 meses, felizmente o mesmo foi adicionado à sua lista de jogos. Lembrando que hoje a SplitPlay lança jogos indies nacionais instantaneamente a seu lançamento no mercado, tendo alguns lançados primeiramente lá.

O Jogo

O jogo começa com uma excelente apresentação do porquinho (Mr.Bree) caindo ferido na floresta, visivelmente perdido e sem memória. Após a apresentação o jogo inicia em um pequeno labirinto, onde Mr. Bree deve avançar, passando por obstáculos que vão dificultando a cada novo estágio. Além de passar pelos obstáculos, Mr.Bree deve coletar umas peças vermelhas no formato de um quebra-cabeças, que de fato são as “suas memórias”.

Ao coletar uma “memória”, Mr. Bree vai relembrando as suas habilidades, que lhe serão essenciais para a finalização do jogo.

Mr.Bree+ Promo

Mr.Bree+ Promo

Foi impossível não comparar o Mr.Bree+ com alguns jogos de MSX, como o The Goonies e principalmente o jogo onde Popolon (e Aphrodite) são protagonistas da saga Knightmare, The Maze Of Galious, pois em minha opinião esses jogos estão na mesma categoria (platform puzzle games).

The Goonies.

The Goonies (MSX)

Kinghtmare - The Maze of Galious

Kinghtmare – The Maze of Galious (MSX)

O porquinho Mr.Bree, de fato é um porquinho fazendeiro que repentinamente é aprisionado e separado de sua família. A partir daí a sua saga se inicia em busca de suas lembranças e de seus familiares.

Análise técnica

A arte do jogo é excepcional, sendo cada detalhe gráfico muito bem desenhado e cuidadosamente detalhado. As animações que ocorrem no decorrer do jogo também são muito bem feitas, seguindo o mesmo padrão gráfico do jogo.

A partir da segunda fase é possível perceber que os desenvolvedores utilizaram pelo menos 3 layers de fundo, o que proporcionou um ótimo efeito no scroll parallax a medida que o Mr.Bree se movimenta.

Apesar de todas as 45 fases e das 15 secretas que o jogo possui, o diferencial do Mr.Bree+, em minha opinião, ficou por conta da excelente música e como todo bom jogo, Mr.Bree+ tem em suas músicas o  essencial para manter o interesse dos fans no jogo durante todas as fases.

Infelizmente o jogo não está disponível para todos os principais sistemas operacionais e só é compatível com Windows e MacOSX.

Notas finais

  1. Gráficos  10
  2. Efeitos sonoros 10
  3. Trilha sonora 10
  4. Jogabilidade 10
  5. Portabilidade 6.5
  6. Nota final 9.3

Um ótimo jogo nacional, e ainda por um ótimo preço na SplitPlay.

[]’s
PopolonY2k

Referência na internet

Taw Studio
http://tawstudio.com/

SplitPlay (PopolonY2k rulezz)
http://www.popolony2k.com.br/?p=2331

The Goonies (Wikipedia – MSX)
http://en.wikipedia.org/wiki/The_Goonies_%28MSX%29

Maze of Galious (Wikipedia)
http://en.wikipedia.org/wiki/The_Maze_of_Galious

Platform games (Wikipedia)
http://en.wikipedia.org/wiki/Platform_game

Parallax Scrolling (Wikipedia)
http://en.wikipedia.org/wiki/Parallax_scrolling