terça-feira, 26 de maio de 2020

8BitTris


Nome: 8BitTris
Editora: DEFB Studio
Autor: Stephen Coppack
Género: Puzzle
Ano de lançamento: 2020
Teclas: Não redefiníveis
Joystick: Não
Memória: 48 K
Número de jogadores: 1

O segundo jogo lançado em simultâneo por Stephen Coppack, depois de Pacman: the Curse of the Slimers, foi 8BitTris, que é como quem diz, Tetris para os 8 bits. Também não vale a pena fazer grandes dissertações sobre o Tetris, duvida-se que exista alguém que não o tenha experimentado, ou pelo menos o conheça, referindo apenas que o objectivo é encaixar as peças que vão caindo no tabuleiro, por forma a ir completando linhas, que consequentemente desaparecem do ecrã. Se alguma peça chegar ao cimo, o jogo termina.

À medida que as linhas vão sendo completadas, a pontuação vai aumentando, mas também a velocidade com que as peças caem aumenta. Assim, de 10 em 10 linhas totalmente preenchidas, o nível aumenta, chegando até um ponto em que a velocidade aumenta de tal forma que se torna impossível de se posicionar as peças no tabuleiro. Que tenhamos conhecimento, o jogo não tem fim.


A versão agora criada Stephen Coppack não tem nada que a distinga das mil e uma outra versões existentes. Assim, as peças são as habituais no jogo, com gráficos minimalistas, como é também habitual, mas com uma grande lacuna: não existe som. Jogar Tetris em silêncio absoluto não é a melhor das experiências.

Se bem que a jogabilidade seja interessante, com grande fluidez nos movimentos das peças, não deixa de saber a pouco alguma falta de ambição revelada pelo programador nesta versão, que poderia ter concedido alguns extras para a tornar mais apetecível. Por outro lado, pressente-se que apenas o tenha feito para satisfação pessoal e mostrar aquilo que conseguia fazer, pois mal foi anunciado. Sendo este o objectivo, pode dizer-se que cumpre.

Entretanto estejam com atenção a Tetris CE, que já não deverá faltar muito até estar finalizado. Esse sim, promete rebentar a escala...

Competição Mazmorras 2020


Depois do enorme sucesso que foi a competição BASIC 2020, Radastan volta à carga com nova competição também em Basic, mas desta vez com uma temática muito específica: Masmorras.

Os trabalhos deverão ser criados em Basic puro e entregues até 21 de Dezembro, saindo os resultados dois dias depois, mesmo a tempo de dar uma prenda natalícia ao vencedor (um Spectrum 48K).

A probabilidade de serem desenvolvidas aventuras de texto, ou "conversacionales", como os nossos vizinhos lhe chamam, é grande, pelo que nesses caso os jogos deverão estar traduzidos para castelhano.

Poderão aqui aceder às regras da competição, assim como aos trabalhos que vão sendo criados.

segunda-feira, 25 de maio de 2020

Biocal, Paintbox e Blast!


A disquete que hoje disponibilizamos tem dois programas, Blast! e Paintbox, certamente utilizados no seu dia-a-dia por Edmundo da Assunção, a quem as mesmas pertenciam. Estes programas estão devidamente preservados nos canais habituais, pelo que não vamos aprofundar os mesmos. O que realmente tem bastante interesse é Biocal.  Não é o programa lançado pela Astor em Julho de 1983, programado por Pedro Brito e Cunha (autor do clássico Brum Brum), no entanto deve ter sido inspirado nele, pois duas das opçóes encontram-se também no programa da Astor (Calendário e Biorritmo). Talvez tenha sido o próprio Edmundo da Assunção a trabalhar o programa, acrescentando-lhe três novas opções.

Independentemente de quem foi o autor, temos agora mais um programa devidamente preservado, podendo a imagem da disquete ser aqui obtida.

Representação numérica em BASIC (IV) - virgula flutuante

Este artigo sobre virgula flutuante, é acerca de como nela armazenar um número na representação de 5 bytes. Vamos reproduzir o texto do manual do Spectrum:

From the ZX Spectrum BASIC Manual:

Any number (except 0) can be written uniquely as

 m x 2e where
 is the sign,
m is the mantissa, and lies between 0.5 and 1 (it cannot be 1),
and e is the exponent, a whole number (possibly negative).

Suppose you write m in the binary scale. Because it is a fraction, it will have a binary point (like the decimal point in the scale of ten) and then a binary fraction (like a decimal fraction); so in binary:
a half is written .1
a quarter is written .01
three quarters is written .11
a tenth is written .000110011001100110011 ... and so on.

With our number m, because it is less than 1, there are no bits before the binary point, and because it is at least 0.5, the bit immediately after the binary point is a 1.

To store the number in the computer, we use five bytes, as follows:

I. write the first eight bits of the mantissa in the second byte (we know that the first bit is 1), the second eight bits in the third byte, the third eight bits in the fourth byte and the fourth eight bits in the fifth byte;
II. replace the first bit in the second byte which we know is 1 by the sign: 0 for plus, 1 for minus;
III. write the exponent +128 in the first byte. For instance, suppose our number is 1/10
1/10 =4/5x2-3

Thus the mantissa m is .11001100110011001100110011001100 in binary (since the 33rd bit is 1, we shall round the 32nd up from 0 to 1), and the exponent e is 3.

Applying our three rules gives the five bytes

Fica aqui o programa em C, para ajudar à compreensão:

#define Z_UNDERFLOW -2
#define Z_OVERFLOW -1

int d2zx(unsigned char *out, double in) {
long mantissa;
bool sign = in < 0;

if(sign) in = -in;
out[0]=0x80;

// expoente negativo
 while(in < 0.5) {
in *= 2.0;
out[0]--;
if(!out[0]) return Z_UNDERFLOW;
}

// expoente positivo
while(in >= 1) {             
in *= 0.5;                    
out[0]++;
if(!out[0]) return Z_OVERFLOW;
}

in *= 0x100000000l; // máximo tamanho mantissa + 1 (33 bytes)
in += 0.5;          // rounding 
mantissa = in;

 // 32 bits distribuídos em 4 bytes
out[1] = mantissa >> 24;
mantissa &= 0xFFFFFFl;
out[2] = mantissa >> 16;
mantissa &= 0xFFFFl;
out[3] = mantissa >> 8;
mantissa &= 0xFFl;  
out[4] = mantissa;

if(!sign) out[1] &= 0x7F; // se positivo, bit esquerdo da mantissa
                           // zerado
return 0;
}

Ver: Binary numbers – floating point conversion

domingo, 24 de maio de 2020

Packobilly lança MagicAble


E também o conhecido Packobilly Urbaneja, que ainda recentemente tinha disponibilizado dois jogos, fez magia e criou mais um. MagicAble: A Kind of Magic já está por aqui a rodar, tem muito bom aspecto, e contamos fazer uma review nos próximos tempos.

Até lá, poderão vir aqui descarregar este jogo que promete fazer magia.

Nota adicional: por favor, respeitem os programadores, não coloquem um walkthrough completo nas horas seguintes ao jogo sair.

IADVD lança The Hoarder


IADVD ainda não tinha lançado nenhum jogo este ano, o último foi em Dezembro do último ano, Moon and the Pirates.  Achou assim por bem pegar no tema da pandemia, mais precisamente no hábito patético e irracional das pessoas comprarem papel higiénico, e em pouco tempo, segundo El Mundo del Spectrum, criou um jogo com essa temática.

As coisas até estiveram calmas na semana passada, mas começamos a nova semana com mais um jogo para analisar. Enquanto não o fazemos, poderão aqui vir descarregá-lo.

Russian Railway Magnate


Nome: Russian Railway Magnate
Editora: NA
Autor: Andrew771
Ano de lançamento: 2020
Género: Estratégia
Teclas: Não redefiníveis
Joystick: Não
Memória: 48 K
Número de jogadores: 1

Desde que o ZX Spectrum ganhou nova vida (período pós 2013), que os jogos saem com uma frequência apenas comparável à dos anos 80. No entanto, a maior parte são jogos de arcada ou aventura, ficando alguns géneros de fora desta abundância, casos dos simuladores desportivos, mas também dos jogos de estratégia pura. Um dos raros que apareceu foi Euphoria 2D, lançado em 2012 por Andrew771, grandioso (e longo) jogo de guerra, por turnos, que nos colocava na pele de um conquistador, trazendo desde logo à memória Sid Meier.

Foi também o motor de Euphoria 2D que serviu de base ao novo jogo de Andrew, Russian Railway Magnate. As semelhanças ao nível gráfico são óbvias, assim como ao nível da própria mecânica de funcionamento. Mas ficam-se por aí, pois enquanto que no primeiro estávamos perante a guerra militar ("war strategy"), aqui estamos perante a guerra económica e monopolista.


A ideia do jogo é ficarmos donos e senhores do sistema ferroviário Russo, para isso competindo com outras duas ilustres personagens bem conhecidas nas estepes. Existem oito à escolha, desde o século XIX, até à era moderna, sendo um pormenor interessante podermos no menu inicial conhecer um pouco da história de cada uma delas. Para cumprirmos com o objectivo proposto, teremos que ligar o maior número possível de cidades do Império Russo à sua rede ferroviária e impedir que os concorrentes o façam, eventualmente levando-os à bancarrota e alcançar o monopólio, fim último deste jogo.

Depois de seleccionada a personagem com que queremos iniciar a missão, é-nos apresentado um mapa da Rússia. Todos os concorrentes iniciam o seu império a partir de Moscovo, como seria de esperar. À direita, em cima, temos um mapa do país, identificando alguma das principais cidades, às quais deveremos tentar conectar a linha férrea. Do lado esquerdo, e representando cerca de 75% do ecrã, o mapa em detalhe e no qual iremos exercer as acções possíveis.


Construir e manter uma rede não sai barato. Cada cidade gera uma receita, dependendo da quantidade de carga expedida, além da tarifa estabelecida para o transporte. Se uma cidade está ligada a vários magnatas (os concorrentes), toda a renda da cidade vai para aquele que tiver a tarifa mais baixa (é o caso de Moscovo, ponto inicial de todos. Se as tarifas forem as mesmas, a receita será dividida igualmente pelos três.

As tarifas, que vão de 1 a 30, são mesmo o elemento mais importante deste jogo, e à qual deveremos estar sempre com atenção. Conseguimos ver as tarifas cobradas pelos concorrentes colocando o cursor na própria cidade e carregando na tecla "C", ou, mais eficaz, pressionar "M" que fornece informação muito abrangente sobre a concorrência. Com a tecla "T" poderemos definir o valor de tarifa que queremos cobrar, e devemos estar constantemente a mudá-la, de acordo com o que a concorrência faz, única forma de se conseguir ganhar dinheiro dos serviços, e, mais importante, evitar que os outros ganhem. A ideia é levá-los à falência, lembrem-se sempre disso.

A forma como vamos expandir a ferrovia também é outro dos pontos fulcrais. Assim, se conseguirmos cortar os caminhos aos nossos concorrentes (as cidades podem ser ligadas por vários competidores, mas as linhas férreas não se podem cruzar), evitamos que esses possam expandir-se, cortando-lhes as receitas. E depois de já termos amealhado algum, poderemos então passar à fase do ataque, isto é, fazer ligações às cidades dos outros e entrar numa guerra de preços, delapidando os recursos adversários. No fundo praticar "dumping", sistema proibido no nosso mercado (tal como os monopólios, salvo raras excepções), mas altamente eficaz.


Ao contrário de muitos jogos de estratégia que, quer por um elevado grau de dificuldade, quer por um sistema pouco intuitivo de controlo da acção, impediam que os iniciados deles usufruissem, Russian Railway Magnate não irá impedir ninguém de entrar. Mesmo os arcade gamers mais hardcore rapidamente apanham o fio à meada. Mas toda esta simplicidade, sendo um ponto forte, é também a sua principal lacuna, pois normalmente quem gosta deste género, exige desafios complexos e difíceis. No fundo, apenas temos duas variáveis para monitorizar, o preço das tarifas, e o local para onde vamos expandir a linha férrea. E o foco até está demasiado assente na primeira das variáveis. Esta falta de diversidade, se bem que possa atrair inicialmente mais jogadores, os que não estão tão habituados a este género, por outro irá limitar fortemente a longevidade.

Por outro lado, um dos aspectos que mais gostámos foi a apresentação das personagens, que inclui uma fotografia digitalizada de cada magnata. É sempre diferente competirmos com alguém a quem podemos ver a cara, e neste aspecto, nota máxima para Andrew.

Outro aspecto interessante e que demonstra o cuidado do programador: existe a versão russa, mas também a versão inglesa, aumentando o leque de potenciais jogadores. E até o código fonte é colocado à nossa disposição, possibilitando os mais talentosos de criarem diferentes mapas ou até, quem sabe, aumentar o número de variáveis a controlar. Sem dúvida que aumentaria bastante a esperança de vida de Russian Railway Magnate.

sábado, 23 de maio de 2020

Capa alternativa de Astor Roleta


Também Astor Roleta teve direito a uma capa alternativa, esta que hoje deixamos, impressa em papel fotográfico e também com um número de referência diferente da versão que tínhamos deixado inicialmente.

Será que isso aconteceu com todos os lançamentos da Astor? E afinal de conta que referências são essas?

Totoloto (MIA)


Já antes o referimos, a Astor Software tem, pelo menos para alguns dos seus lançamentos, duas capas de cassetes (e em pelo menos um caso até tem duas versões diferentes do programa, Subrotinas de Matemática, com a versão 1 e versão 2). Quanto a Totoloto, este já se encontrava preservado nas páginas principais do Spectrum, no entanto apenas uma das capas e o próprio .tzx, devido ao sistema de protecção da Astor, não funcionava devidamente em todos os emuladores).

Este problema ficou agora resolvido, e de uma assentada preservámos o .tzx correcto, assim como disponibilizamos a capa alternativa.

Poderão aqui vir buscar este lançamento, agora completo.

sexta-feira, 22 de maio de 2020

Fusion Annual 2021 - lançamento da campanha de crowdfunding



Foi hoje iniciada a campanha de crowdfunding para a edição do novo volume da revista anual Fusion 2021 Annual. Depois do sucesso de iniciativas como a Crash! e ZZap! 64, surge esta revista, que já vai na sua oitava edição, tenta cobrir uma mistura de jogos retro, modernos, indie, de tabuleiro e até brinquedos.

Podemos contar com uma edição de 120 páginas tamanho A5, com capa dura e totalmente a cores numa impressão de alta qualidade. A capa será, de novo, desenhada por Trevor Storey e vários membros reconhecidos da comunidade do retrogaming irão dar o seu contributo.

Falamos de Dave Perry (The Games Animal), Simon Butler (da Ocean Software), Philip e Andrew Oliver (mais conhecidos como Oliver Twins), Stoo Cambridge (da Sensible Software), Roger Kean, Oliver Frey e Neil Thomas. Também estarão presentes Stuart Ashens, Toy Polloy, Perifractic e Octavius, mais conhecidos pelo seu trabalho no Youtube.


Para além disto existem vários perks disponíveis, tendo em conta o valor com que pretenderem contribuir, sendo aquele que mais interessa ao nosso blog - Pi-Dentity - um videojogo de Team Moritz que conta com a colaboração musical deste vosso escriba numa edição exclusiva com caixa tipo clamshell.

Convidamo-vos portanto a visitar a página e a contribuir caso tenham interesse, pois podemos garantir pelo histórico desta editora que o resultado final, a sair no final do ano, será de extrema qualidade.

Podem seguir a campanha aqui.

A Capital: Pokes & Dicas - 15 de Julho de 1988

Também no Suplemento d'A Capital se nota que estamos em período de férias. Os jogos são poucos, tanto que até se dá destaque a outros sistemas. Mesmo assim, é de revelar Action Force 2, sem dúvida um bom jogo.


Dicas e mapas é também o pão nosso de cada dia, incluindo jogos de estratégia e gestão desportiva, como são os casos de Vulcan ou Football Director. Destaca-se também o mapa de Mistery of the Nile, jogo bastante conceituado, mas que nunca cai nas nossas graças. Realce-se, no entanto, o trabalho de Jorge Sobral, de Alcobaça.


Podem descarregar o suplemento na nossa Dropbox.

Versão beta de Nam-cap lançada


É a semana de Pac-Man. Depois de ter sido lançada uma curiosa versão, intitulada Pacman: the Curse of the Slimers, agora é a vez de Cristián González disponibilizar a versão beta de Nam-Cap. Este foi um jogo do qual falámos há mais de um ano (ver aqui), e que esteve parado durante algum tempo, mas que pelos vistos vai ter agora o impulso necessário para ser terminado (pelo que nos parece, faltará muito pouco).

Esta versão confirma tudo aquilo que tínhamos visto e dito antes, vai ser uma versão muito agradável de Pac-Man. Entretanto poderão aqui descarregá-lo.

Pacman: the Curse of the Slimers


Nome: Pac-Hack
Editora: DEFB Studio
Autor: Stephen Coppack
Género: Labirinto
Ano de lançamento: 2020
Teclas: Não redefiníveis
Joystick: Não
Memória: 48 K
Número de jogadores: 1

Clones de Pac-Man há às dezenas, se não centenas, e ainda recentemente tínhamos feito a análise de um que recria na perfeição a máquina de arcada, Pac-Hack (ver aqui). E surge agora uma nova versão, da autoria de DEFB Studio, autor até agora desconhecido (será este e Tetris os seus primeiros trabalhos?). O anúncio foi feito de forma tão enigmática, que achamos que pode ser o caso.

Vamos abster-nos de contar a história deste jogo, já que é igual a quase todas as versões de Pac-Man, por todos conhecida, e todos sabem como se joga, apenas referindo que os fantasmas têm aqui o nome de Ready, Cylimber, Grimer e Maggy. Existem também quatro diferentes níveis, e quando se completa o quarto, regressa-se ao segundo até se perder todas as vidas. Curiosamente este segundo nível é igual ao das máquinas de arcada.


Quem gosta do género vai aqui ter um desafio à altura, pois é das versões mais difíceis que vimos. Os fantasmas têm um nível de IA alto, sendo imprescindível conhecer a estratégia de cada um deles, algo que já acontece na versão original. Quando se come a super pílula, podemos perseguir e eliminar os fantasmas, mas este poder está activo apenas por breves segundos. Talvez não fosse má ideia aumentar um pouco o tempo de imunidade.

Quem aprecia Pac-Man vai seguramente gostar desta versão, que embora não trazendo nada de novo ao género, tem uma boa jogabilidade e é entretenimento suficiente para um par de horas. Quem esperava um desafio diferente, não é aqui que o vai encontrar.

quinta-feira, 21 de maio de 2020

Bonnie and Clyde



Nome: Bonnie and Clyde
Editora: NA
Autor: ZOSYA Entertainment
Ano de lançamento: 2019
Género: Plataformas
Teclas: Redefiníveis
Joystick: Kempston, Sinclair
Memória: 48 K /128 K
Número de jogadores: 1

Será a ZOSYA Entertainment a nova Ultimate Play the Game? Senão vejamos...

Cada novo jogo que lança apanha-nos de surpresa, não obstante sabermos que têm em carteira uma imensidão para serem lançados nos próximos tempos (já tivemos oportunidade de ver alguns ecrãs, e o que podemos dizer é que vão rebentar com tudo).

O próprio secretismo associado aos projectos, mesmo sabendo que é uma equipa grande e que Oleg Origin, o criador de Metal Man, está nela envolvido, mas pouco mais se sabe. Mas também que Natasha Zotova está à frente da editora, o que para nós é motivo de grande regozijo ver que a cena Spectrum não se torna exclusiva (ou quase) do sexo masculino. Esperemos que apareçam mais Natashas neste mundo.

Depois, a própria qualidade dos lançamentos. Aliás, não só a qualidade, bem patente em Valley of Rains, mas também o factor da inovação (Drift, por exemplo). Cada novo jogo que aparece, tem sempre qualquer coisa que nos deixa de boca aberta de espanto.

Finalmente, todo os extras que rodeiam os próprios lançamentos, a começar pela música, que no caso de Valley of Rain, por exemplo, até deu origem a uma banda sonora belíssima (poderão aqui ouvir as músicas - aproveitámos para as colocar a rodar novamente). Aliás, esse jogo até teve uma modelo associada, que aparece no próprio ecrã de carregamento. Não esquecendo os posters, flyers, etc.. Mal podemos esperar para que surjam os lançamentos físicos, seguramente irão fazer parte da nossa colecção.

Perante tudo isso, o que podemos dizer é que a manobra de marketing à la Ultimate tem resultado em pleno, mas isso também só é possível devido à alta qualidade dos jogos que a equipa apresenta.


Bonnie and Clyde é então a nova aventura desta equipa. Tal como o título o indica, inspira-se na história da dupla de criminosos mais famosos dos Estados Unidos. Bonnie Elizabeth Parker e Clyde Chestnut Barrow formavam um casal que viajava pela região central dos EUA com o seu grupo (Barrow Gang), durante a Grande Depressão, roubando e matando pessoas quando encurralados ou confrontados. A actividade criminosa terminou a 23 de Maio de 1934, quando foram emboscados e mortos por policiais perto de Sailes, Paróquia de Bienville, Louisiana. Mas as suas façanhas ficaram para a história, sendo transpostas para a Sétima Arte. E agora para o ZX Spectrum...

Assumimos naturalmente a personagem de um dos elementos da dupla, Clyde, sendo a principal diferença a de serem caricaturados como gatos. Aliás, um dos (muitos) pormenores deliciosos do jogo é a forma como o número de vidas é representado: através de um chapéu. E não é coincidência iniciarmos a aventura com nove vidas, tais como os gatos.

O objectivo é ao longo de 90 níveis recolhermos todas as moedas dispostas no cenários. Depois de todas serem recolhidas, um cofre fica visível e cai aleatoriamente do céu dinamite, que teremos que apanhar. Esta, depois de chegar ao solo, permanece uns segundos activa, sendo que se não for recolhida, desaparece, voltando a aparecer nova remessa. Após recolhermos a dinamite, teremos que a levar até ao cofre. Nessa altura temos que nos afastar rapidamente, pois o cofre explode, matando tudo o que esteja nas proximidades. Surge então uma escada que vai até ao telhado e que teremos que alcançar, para chegarmos em segurança até Bonnie e passar de nível. Como a equipa conseguiu colocar 90 níveis em apenas 48K de memória, não nos perguntem, mas não deixa de ser espantoso.


Mas além da principal missão ser chegar ao fim dos 90 níveis, também o podemos que fazer em grande estilo. Para isso teremos que tentar fazer o máximo de pontuação possível, que é obtida de diversas formas. Cada moeda concede 1 ponto. Cada inimigo eliminado vale 5 ou 10 pontos, dependendo da forma como proporcionamos a cerimónia fúnebre. Por vezes caem sacos de dinheiro do céu, concedendo 25 pontos, e se depois de rebentarmos o cofre, recolhermos o conteúdo, somam-se 50 pontos ao nosso pecúlio.

Quanto aos inimigos, são apenas dois. O primeiro, os muito capangas armados que vão aparecendo aleatoriamente nas portas de serviço (são todos iguais, mas a memória também não permitia mais). Normalmente existem muitas portas, dificultando a nossa tarefa, pois teremos que as atravessar com o máximo das precauções, não vá um dos inimigos aparecer inesperadamente e ceifar-nos uma vida. Não lhes podemos tocar, mas além disso disparam quando nos deitam a vista em cima, e pior, as balas ultrapassam os elementos do cenário. Convém assim disparar, mas certeiro, pois as munições não são infinitas, e gato desarmado num cenário de guerra, escaldado fica...

O segundo dos inimigos é o tempo. Cada ecrã tem um determinado tempo limite para ser limpo, normalmente o suficiente para se conseguir ultrapassar sem grandes problemas. Mas isso quando conhecemos o caminho a ser feito, pois as plataformas estão por vezes colocadas de forma estratégica a dificultar-nos a vida, provocando autênticas gincanas para se chegar  às moedas. Se por acaso nos enganamos no caminho a fazer para as recolher, começamos a ver o tempo a esgotar-se demasiado rápido.


Do céu também caem outras coisas que não dinamite. Assim, e porque as nove vidas do gato seriam poucas para tão grande empreitada, a equipa programadora resolveu conceder algumas ajudas. E estas aparecem num ritmo suficientemente grande para que Clyde não seja apanhado de calças nas mãos, isto é, sem munições. Assim, um dos objectos mais importantes a não deixar escapar são as caixas com munições, pois permitem repor as balas na nossa metralhadora, sempre importante, já que dedo leve no gatilho é fundamental para se conseguir tirar o sebo aos muitos capangas que aparecem.

Por vezes surgem ampulhetas, e essas naturalmente colocam o tempo para se completar o nível, no máximo. Quando surge um cabide, este imediatamente assenta em Clyde que nem um fato de gala, e podemos então passear durante alguns segundo por entre os inimigos, sem que esses nos detectem. Finalmente, a estrela bloqueia-os durante uns segundos, podendo serem eliminados quando lhes tocamos, sem necessidade de gastarmos munições, numa sequência muito semelhante a Bomb Jack.

Aliás, e já que falamos neste mítico jogo, é mesmo a principal fonte de inspiração de Bonnie and Clyde, com uma mecânica idêntica, ou muito parecida (não é por acaso que no ecrã de carregamento aparece 1986, ano de surgimento de Bomb Jack). Aliás, a própria Natasha reconhece a sua influência.

O ritmo de jogo é frenético, por vezes terminamos os níveis em 30 segundos, o que também já acontecia em Bomb Jack. E tal como nesse, também existe um cenário de fundo (são 13 diferentes), sob o qual assentam as plataformas que temos que ir contornando. As cores são tão intensas que por vezes se torna difícil descobrir onde estão os inimigos ou as balas que disparam, mas dado a grandiosidade dos mesmos, isso é apenas um pormenor.


Quanto à música, é outro dos pormenores interessantes. Ou melhor, as músicas, pois são quatro e todas de grande nível, inspiradas nos anos loucos 30, tendo sido criadas por Scott Joplin. Será um pseudónimo a remeter para Scott Joplin, pianista de final do século 19 e início do 20? Não nos admiraríamos que fosse...

Voltando a Bomb Jack, aquilo que o tornou imortal foi uma imensa jogabilidade, capaz de nos prender ao ecrã horas a fio, mesmo depois de corremos vezes sem conta os cenários, nem que fosse para tentar fazer a maior pontuação possível. E é isto que exactamente se passa com Bonnie and Clyde, que tem a rara capacidade de nos fazer ficar colados ao ecrã até se terminar o jogo, e de depois voltarmos a ele vezes e vezes sem conta. Um autêntico vício, conseguindo mesmo superar Black & White, que já nos tinha deixado maravilhados há uns meses.

Deixamos ainda uma dica final: por vezes as plataformas estão colocadas de forma que parecem inalcançáveis. Mas não se esqueçam que os gatos são bons a trepar paredes. Experimentem a subir movendo rapidamente Clyde em ambas as direcções...

Assim, e em jeito de resumo, não temos qualquer dúvida que Bonnie and Clyde vai estar incluído em todas as listas com os melhores jogos de 2020. E se não apostamos no top 3, é porque esta equipa ainda vai trazer muitos jogos nos próximos tempos.

Representação numérica em BASIC (III) - virgula flutuante

Os 5 bytes de representação numérica do stack de virgula flutuante em Spectrum/em BASIC, foram criados na realidade, para representar números em virgula flutuante. A representação numérica inteira que vimos até agora, é apenas uma optimização para acelerar o tratamento de inteiros em BASIC.

A representação será de vírgula flutuante, não sendo o primeiro byte 0, que é o sinal de inteiro.

O formato da representação em vírgula flutuante, é a seguinte:


1º byte expoente + 128

2º, 3º, 4º e 5º byte, mantissa de 32 bits, sendo o bit 7 mais à esquerda o sinal.

Temos portanto, uma precisão de 31 bits na representação numérica de um float (8 bits * 4 bytes, menos o bit do sinal). (2^31 = -2147483648  < x > 2147483648)

O expoente também que é aceitável,  vai desde x^-127 até x^127.

Para melhor entendimento do formato, deixamos também 3 rotinas, 2 alternativas de C, e uma em ZX BASIC, que dado uma string dos 5 bytes da representação numérica, devolvem o número que esta representa.

double zx2d(unsigned char *in) {
int e = in[0];           // expoente
unsigned long m[] = {    // mantissa
in[1], in[2], in[3], in[4]
};
return e ?

(pow(2, e - 160)) * (

   // assemblagem dos 32 bits da mantissa
0x80000000
+ ((m[0] & 0x7f) << 24)
+ (m[1] << 16)
+ (m[2] << 8)
+ m[3]
) * ((in[1] & 0x80) ? -1.0 : 1.0)  // sinal
   : 

(in[1] ? -0x10000 : 0 ) + m[1] + (m[2] << 8);
}

double zx2d(unsigned char *in) {
int e = in[0];              // expoente
long m[] = {                // mantissa
in[1], in[2], in[3], in[4]
};

return e ?

pow(2,e - 128) * ( .5
+ ((m[0]&0x7F) / 256.0 )
+ (m[1] / 65536.0 )
+ (m[2] / 16777216.0 )
+ (m[3] / 4294967296.0 )
) * ((in[1] & 0x80) ? -1.0 : 1.0) // sinal
   :

(in[1] ? -0x10000 : 0 ) + m[1] + (m[2] << 8);
}

7926 IF NOT PEEK (n+1) THEN LET c=PEEK (n+3)+256*PEEK (n+4): RETURN
7927 LET c=2*(.5+(PEEK (n+2) AND 127)/256+PEEK (n+3)/65536+PEEK (n+4)/16777216+PEEK (n+5)/4.2949673e9)*2^(PEEK (n+1)-129): IF PEEK(n+2)>127 THEN c=-c:RETURN

ver:

Binary numbers – floating point conversion

PS. Primeira função de  C e rotina de Basic de Daniel A. Nagy e 2a rotina de C, Slavo Labsky.

quarta-feira, 20 de maio de 2020

MicroSe7e n.º 52


Vê-se bem que estávamos em período de férias... Mais um suplemento MicroSe7e versão reduzida (quatro páginas), e com poucos assuntos relevantes para a comunidade. Mas é engraçado ver que chegava a Cabo Verde e que havia Spectrum por lá. Curioso, pois já lá estive mais de 15 vezes, e nunca encontrei algum...

Podem descarregar aqui o suplemento, cortesia do Museu LOAD ZX Spectrum, Cantanhede, Portugal.

Biorritmos (MIA)


Hoje é dia de Biorritmo, daí disponibilizarmos agora um outro programa sobre o mesmo tema. A cassete tem duas partes, a primeira apenas com as instruções, avançando-se depois para novo ficheiro com o utilitário. Podemos dizer que para o género, será talvez o programa mais completo que se pode encontrar.

Incluímos ainda a capa original, semelhante a outras lançadas pela Timex no nosso país. Até tem o número de catálogo G8/S, não obstante neste caso tratar-se de uma cópia pirata. Talvez seja também essa a razão porque o ficheiro que convertemos desta cassete com capa seja diferente daquela que retirámos de uma cassete que o José Gomes nos emprestou, e que provavelmente será o lançamento oficial da Timex.

Poderão aqui vir descarregar Birorritmos, tendo sido deixado na dropbox a versão oficial da Timex, bem como a pirata.

Biorritmo (MIA)


Programas com o biorritmo há às dezenas, mas este que agora disponibilizamos tem uma apresentação um pouco diferente. Vinha num lote que comprámos, e que incluía mais algumas coisas apetecíveis que iremos disponibilizar nos próximos tempos...

Poderão aqui descarregar Biorritmo.

terça-feira, 19 de maio de 2020

The Lost Treasures of Tulum


Nome: The Lost Treasures of Tulum
Editora: Retroworks
Autor: Sejuan, WYZ, Utopian e Metalbrain
Ano de lançamento: 2020
Género: Plataformas
Teclas: Não redefiníveis
Joystick: Kempston
Memória: 128 K
Número de jogadores: 1

Um novo jogo da Retroworks é sempre um acontecimento especial. Cada um dos seus trabalhos, além de tecnicamente ser perfeito ou estar muito próximo disso, é alvo de todo os cuidados e detalhe, desde a história, passando pelos extras que acompanham os seus lançamentos digitais ou edições físicas, até às vertentes intrínsecas que fazem parte parte do jogo, isto é, o grafismo, som, jogabilidade, etc.. Não obstante, e apesar de The Lost Treasures of Tulum incluir todos estes predicados, e ser um bom jogo, não achámos que estivesse ao nível de alguns outros desta editora. Mas isto apenas porque as expectativas criadas são sempre enormes. Estamos mal habituados, reconhecemos...

A história remete-nos para o antigo império Asteca. Assim, Coatlicue era reverenciada como a mãe dos Deuses, representada como uma mulher vestida com uma saia de cobra. Os seios estão descaídos,  simbolizando a fertilidade, e com um colar com mãos e corações humanos que representam a vida. Tinha como marido Mixcoatl e morava na colina de Coatepec, estando em penitência, varrendo. E certo dia, enquanto varria, uma bela pluma caiu do céu, tendo-a apanhado e colocado no peito. Quando terminou de varrer, procurou a pena, mas não a encontrou. Naquele momento ficou grávida do Deus Huitzilopochtli (Deus do Sol). Aquela misteriosa gravidez ofendeu os seus quatrocentos filhos (os Deuses das Estrelas Centzon Huitznáhuac) que, instigados por sua irmã Coyolxauhqui (Deusa da Lua), decidiram matar a sua mãe. Mas Huitzilopochtli, filho recém-nascido de Coatlicue, defendeu a sua mãe, matando a sua irmã e seus irmãos, salvando-a.

Até aqui tudo típico das lendas astecas, com muito sangue e crimes pelo meio, mas o nosso protagonista, Juanín Joe Díaz, encontrou um pergaminho antigo no México, numa das tumbas que estava a explorar. Nesse pergaminho, uma história estranha foi narrada dizendo que Coatlicue fugiu dos vales Tollan-Xicocotilan, dando a entender se foi esconder no templo de Tulum, que na época era conhecido como Zamá (na linguagem Maia significa amanhecer), ajudado pelo seu filho Sol e perseguido pelo espírito de sua filha Lua. Juanín ficou tão impressionado com a lenda, que decidiu seguir as indicações do pergaminho para aceder à área de Tulum, onde aparentemente estavam localizados as alas de Coatlicue. No entanto, assim que entrou, ficou preso, e agora, a única forma de escapar é conseguir recolher as jóias deixadas por Coatlicue, com a ajuda do Deus Sol, e evitando os ataques dos Deuses das Estrelas e as maldições da Deusa da Lua.

A história é complexa, mas fundamental para percebermos o jogo, dando dicas sobre como se levar a missão a bom termo, isto é, ajudar Juanín a escapar do templo.


Iniciamos a missão numa gruta secreta do templo de Tulum. A escuridão é quase total, mas temos uma tocha em nosso poder, e esta vai alumiando o caminho. O efeito, mesmo não sendo inovador (Dark Castle já utilizava esta mecânica, por exemplo), é sempre visualmente muito interessante, sendo um chamariz muito forte para se ir avançando. E já que falamos em avançar, temos que o fazer da forma mais cautelosa possível, pois as grutas estão recheadas de armadilhas (espigões), que assim que lhes tocamos, rapidamente nos roubam energia, medida pela barra superior. Quando esta se esgota o jogo termina (apenas temos uma vida). Estes espigões estão colocados, como seria de esperar, nos locais menos convenientes, sempre prontos a aparar as nossas quedas (os astecas eram crédulos e sanguinários, mas não eram estúpidos).

Mas as armadilhas não são os únicos obstáculos com que temos que nos preocupar. A patrulhar as salas, uns segundos depois de entrarmos, aparecem os inimigos. Estes terão que ser evitados a todo o custo, pois a única forma de os eliminar é estranha. Não a forma em si, à lei de chicote, mas porque antes deste poder ser usado, teremos que deitar fora a tocha. Sem a tocha deixamos de ver os novos caminhos (os que já percorremos continuam alumiados), pelo que teremos que voltar a apanhá-la no facho amarelo que representa a tocha eterna, normalmente junto ao ponto onde iniciámos o nível. Uma outra situação estranha, mas que neste caso até joga a nosso favor, está relacionada também com esta questão. Assim, quando os inimigos entram numa zona escura, isto é, não alumiada, simplesmente desaparecem. Além disso não são particularmente inteligentes, pois amiúdes vezes caem nas armadilhas.


Embora sendo estranho termos que lançar fora a tocha para se utilizar o chicote, esta acção acaba por ter uma utilidade. Assim, quando a atiramos, a tocha percorre horizontalmente o ecrã, alumiando por momentos o caminho e revelando as jóias que necessitamos para passar o nível, pressupondo que essas se encontram no trajecto percorrido pela tocha.

Para se conseguir passar de nível é necessário recolher todas as jóias. Apenas nessa altura se abre a porta que permite avançar para a sala seguinte. Por vezes encontram-se algumas arcas, ocultas na escuridão, que depois de abertas, poderão conter alguns objectos, nem todos úteis. Estes são:
  • Jóias: são necessárias quatro para passar de nível e também aumentam a energia. Não se encontram nos baús. 
  • Chave: permite passar de nível sem a necessidade de apanhar as jóias. 
  • Lua: representa Coyolxauhqui, um Deus menor, filha de Coatlicue. Envolve-nos na escuridão.
  • Sol: Huitzilopochtli, outro Deus menor, que ajuda iluminando a gruta.
  • Coração - permite recuperar a energia.
Periodicamente encontramos uma gruta sem inimigos. Mas não se pense que a tarefa se torna mais fácil, pois nesses níveis não existe a tocha eterna e por isso o nível não vai ficando iluminado. Teremos que o percorrer pé ante pé, com o máximo cuidado, pois um passo em falso e caímos numa armadilha. Aliás, muitas das vezes teremos mesmo que usar a nossa intuição para prever onde se encontram os espigões ou as videiras que permitem trepar, alcançando as plataformas superiores, ou simplesmente para não cairmos no desconhecido.


Os gráficos e cenários estão ao nível habitual da Retroworks, embora tanto colorido provoque algum attribute clash, não que este nos preocupe minimamente. Tal como a melodia bastante atmosférica, criando o ambiente perfeito para um jogo com as características deste. E a jogabilidade é também muito boa, com um nível de dificuldade ajustado, dificil, mas não que impeça mesmo os mais aselhas de avançarem. Capacidade de memorização é exigida, pois estando os níveis escondidos, isto é, não alumiados, sabermos onde se escondem as armadilhas é meio caminho andado para o completarmos. A curva da experiência é assim bastante intensa, e é daqueles desafios que além de ter o toque de "vamos lá tentar mais uma vez", permite também ir um pouco mais longe de cada vez que se joga.

Então porque é que achámos que The Lost Treasures of Tulum não estava ao nível de excelência de outros jogos da Retroworks. É certo que não se pode ter um The Sword of Ianna todos os meses, mas este parece-nos curtinho. São apenas 24 níveis, que se consegue terminar ao final de meia hora. Além disso aconteceu algo muito estranho, pois quando completámos o nível 19, apareceu uma imagem da Deusa e o jogo foi abaixo. No entanto, já vimos o jogo a ser terminado e tem 24 níveis. Algo inexplicável aconteceu, portanto.

Resumindo, The Lost Treasures of Tulum é um jogo divertido, com um "instant appeal" enorme, capacidade de nos prender, mas que mesmo assim fica aquém de outros lançamentos dos mesmos autores. É mau? De forma alguma, simplesmente não é excelente, o que não deixa de ser ingrato como conclusão para um produto que vai ser do agrado de todos.

segunda-feira, 18 de maio de 2020

Desenhar


Nas disquetes de Edmundo da Assunção encontrámos mais um programa de desenho (Desenhar), acessível curiosamente através de um menu que este programador criou para acondicionar alguns programas de desenho que estavam numa outra disquete. Nesta apenas encontrámos este programa, embora o menu inicial dê a entender que ainda iremos encontrar mais algumas preciosidades.

Poderão aqui vir descarregar o conteúdo de mais esta disquete.

3.5MHz no ZX Spectrum, o que significa? (II)

Embora tenhamos referido que o Spectrum 48K tem um Z80A a correr a 3.5MHz, convém ter a noção que os clones não tem todos um processador Z80 com a mesma velocidade, nisso se incluindo os próprios modelos 128K da Sinclair.

É importante ter isso em vista, quer ao escrever rotinas sensíveis a timings, quer a escrever emuladores.

Para o demonstrar, fica aqui uma tabela com computadores de diversas gerações Sinclair, e alguns clones:

modelo scan lines 1/50 t-states frequência
ZX80
64896T
3.25 MHz
ZX81 64896T 3.25 MHz
48K 321*224 69888T 3.5 MHz
Timex TC 2048/2068 70478T 3.528 MHz
TK90X 60Hz 1/60 59792T 3,57 MHz
128K 311*228 70908T 3.5469 MHz
Pentagon 320*224 71680T 3.59 MHz

ver Determinação da frequência do TK-90X

domingo, 17 de maio de 2020

Sqij'd (Sqij and the Tree of Ener!)


Nome: Sqij'd (Sqij and the Tree of Ener!)
Editora: Monument Microgames
Autor: John Blythe
Ano de lançamento: 2020
Género: Plataformas
Teclas: Não redefiníveis
Joystick: Kempston, Sinclair
memória: 48/128 K
Número de jogadores: 1

Em primeiro lugar, não confundir este Sqij'd (Sqij and the Tree of Ener!), com SQIJ! lançado pela Power House em 1987, que era injogável e por muitos considerado o pior jogo a aparecer para o Spectrum, apesar de ter sido programado por um estudante de apenas 13 anos, nem com o remake com o mesmo nome, lançado em 2018. Este novo jogo de John Blythe é muito mais uma sequela do que propriamente um remake, como aliás o próprio título o dá a entender.

De realçar ainda que o jogo foi criado em 2018, mas apenas foi lançado pela Monument Microgames no início de 2020. Esteve assim mais de uma ano parado, à espera de distribuição física (o jogo não está ainda disponível digitalmente), o que é uma pena, pois está ao nível da restante obra de John Blythe, de quem somos admiradores confessos.


Mas vamos à história desta nova aventura de um dos pássaros mais famosos do Spectrum. Este voltou, mas nem tudo está bem no paraíso. A árvore Ener, que SQIJ criou há muitos anos para resolver os seus problemas alimentícios, espalhou-se por todo o planeta, exigindo-lhe comida a toda a hora. Esta é uma situação que SQIJ não pode aceitar, pois não é lacaio de ninguém, muito menos de uma árvore de má índole. Criou assim um plano, que o irá tornar o pássaro mais poderoso do universo e arredores. Bem, pelo menos do Reino Undercave.

O objectivo será então deixar a árvore enfardar, até estoirar, só nessa altura seremos novamente livres. Para isso teremos que localizar de cada vez dois Dovelets (tm), que se encontram nas 10 Dove Caves existentes no Reino, disparar contra eles, estes ficam imediatamente assados e prontos para a degustação, devendo então ser levados até à árvore. Nessa altura vê-se a árvore a digerir os passarocos, num espectáculo não recomendado aos mais impressionáveis (engraçado o efeito no "border").


Depois de digeridos inteiros, a árvore de Ener cria uma força vital (life force) que temos que localizar, mais uma vez nas Dove Caves. Depois de a apanhar, repete-se o ciclo, e temos que procura por mais dois Dovelets (tm), num processo que apenas termina quando a barra lateral à direita estiver totalmente preenchida, querendo dizer que a árvore se encontra saciada e pronta a rebentar. Onde terá John Blythe ido buscar esta ideia? Talvez ao clássico "The Meaning of Life", dos Monty Python...

De referir que as Dove Caves são zona segura para SQIJ, pois estão livres de inimigos. O mesmo não se passa nas restantes grutas (existem 35 ecrãs com áreas perigosas, e 10 ecrãs de área segura). Estas estão infestadas de inimigos, que se materializam a uma velocidade estonteante. De cada vez que tocam em SQIJ, lá se vai mais um pouco da sua energia, e embora possa disparar suco gástrico contra os outros seres, este é limitado. Felizmente que pode ser reabastecido nas muitas piscinas que se encontram nas grutas. Mas muito cuidado, pois um dos inimigos, as caveiras vermelhas, não podem ser eliminadas, ai só resta fugir e esperar que não se perca muita "vida" no processo, pois esta esgota-se rapidamente nos múltiplos encontros com os outros seres, e apenas é reabastecida, e parcialmente, quando encontramos a força vital.

Finalmente, cuidado ainda com as duas cavernas vermelhas, pois estas apenas geram caveiras. É área a passar o mínimo possível e com a corda toda nos sapatos, neste caso nas patinhas de SQIJ.


Sqij'd (Sqij and the Tree of Ener!) tem o cuidado habitual de John Blythe nos seus trabalhos. Os cenários e os gráficos são fantásticos, do melhor que se pode encontrar para o Spectrum. O bom gosto impera sempre neste programador, que aliás, tem formação na vertente gráfica. E o som é também uma pequena maravilha, com uma melodia hipnótica e que se enquadra na perfeição no jogo.

A movimentação de SQIJ e dos restantes personagens também é um delírio para os sentidos, e dá gosto esvoaçar pelo Reino do Undercave. No entanto, e apesar de ser um jogo cativante e que convida a voltar vezes sem conta, desta vez não damos o estatuto de Mega Jogo. E porquê? Fundamentalmente por duas razões. A primeira porque o jogo tem um custo, e para quem não viva no Reino Unido, com os portes, não fica barato. Apesar de não estar no gráfico da pontuação o factor custo / beneficio, temo-lo sempre em conta. Em segundo lugar, pela repetitividade. As tarefas são repetitivas (apanhar os passarocos e a força vital), e podendo estar em 10 pontos diferentes, colocados de forma aleatória, quer isso dizer que temos que percorrer o labirinto de grutas dezenas de vezes até se conseguir terminar o jogo. A certa altura torna-se um pouco monótono, o que aliado a um elevado grau de dificuldade, poderá fazer desistir alguns.

De qualquer forma, mesmo tendo estes dois pontos menos favoráveis, quem gosta dos trabalhos de John Blythe, de certeza que não irá ficar desiludido. Os restantes, também não será com Sqij'd (Sqij and the Tree of Ener!) que irão ser convencidos.