O desafio dos monstros – parte 3

desafio-3_monster

Agora é a vez da versão para MSX-BASIC d’O desafio dos monstros ou, mais precisamente, uma versão específica para este dialeto de BASIC já que o programa do livro trata-se de uma versão “genérica”.

Continuar lendo

Anúncios

Declaração de variáveis no Bash

declare1_abertura

Depois de ter tratado, não necessariamente nesta ordem, de arrays, números inteiros e strings em Bash seria interessante fazer duas coisas: (i) citar os outros tipos de variáveis disponíveis e (ii) tratar de opções bastante interessantes disponíveis no comando declare. Ele é utilizado para definir tanto o tipo da variável como também habilitar, ou desabilitar, determinados atributos desta.

Para facilitar seguirei a ordem das opções conforme estão listadas em “help declare” e assim aproveitar para também comentar algo mais sobre os tipos já citados.

Continuar lendo

Telas do speccy no MSX – parte 3

tbzscmcb-3_abertura

Depois do hiato da semana passada segue continuação da série sobre a construção de um visualizador de telas do ZX Spectrum para MSX-DOS. Só para recordar a primeira parte tratou da organização da memória de vídeo do speccy, das diferenças dela com a do MSX e de como compensar as tonalidade das cores. Na segunda parte foi sobre como reorganizar os dados do arquivo SCR para apresentá-los na VRAM do MSX e, claro, como fazer a carga dele usando diretamente as rotinas da BDOS.

Há também uma parte complementar com um pequeno programa em Python que converte telas do ZX para dumps da VRAM em arquivos binários do MSX.

Nesta parte, conforme foi prometido, é a recuperação e tratamento dos argumentos passados pela linha de comando do MSX-DOS e como o assunto é meio chato tentarei ser breve — eu juro 😀

Continuar lendo

Emulando o HB-4100 no openMSX

hb4100_abertura.png

Um pouco de arqueologia… em algum ponto de 1987 a EPCOM SHARP lançou¹ diversos periféricos para a linha MSX, mais especificamente para o modelo deles, o HOTBIT (ou HB-8000 de 1985). Os mais conhecidos deste pacote são certamente o HB-3600 (conjunto com a interface controladora, fonte de alimentação e a unidade de drive de disquetes de 5,25″ DD) e o HB-6000 (a unidade adicional de drive de disquetes).

Entre os lançamentos também estavam o HB-3000, uma interface serial, o HB-4000, cartão de 80 colunas, o HB-4100, expansão de 64KiB de RAM — estes dois últimos pensados como complemento ao HB-3600 — e ainda haveria o HB-4200, um (necessário) expansor de slots que acabou não passando da fase de protótipo.

Tanto o HB-3600 quanto o HB-4000 são emulados pelo openMSX e justamente para matar minha curiosidade com relação ao funcionamento da HB-4100 acabei criando por acidente uma extensão dela para o openMSX.

(¹) Esta sequência culminou com o lançamento da versão 1.2 do HOTBIT (o “HOTBIT preto”) no final deste mesmo ano.

Continuar lendo

Telas do speccy no MSX – parte 2

tbzscmcb-2_abertura

Na parte anterior cuidou das diferenças no vídeo entre os dois computadores, ou seja, o modo como são dispostos os padrões e atributos que compõe a imagem na tela, assim como os tipos de atributos disponíveis, as cores geradas pelos respectivos circuitos de vídeo e também o “truque” usado para simular a relação de luminância das cores do ZX Spectrum no MSX.

Agora é a vez do arquivo que armazena a tela de vídeo do speccy, um programa para visualizá-lo em MSX-BASIC e, o mais importante de todos, uma rotina em assembly para carregar arquivos do disco para a memória.

Continuar lendo