The 40 year old Amstrad CPC 464, with its distinctive green and blue keys and extraordinary length due to its built in tape drive.
I purchased this recently, which was advertised as for parts or spares and untested, so looking forward to seeing what works and how it will look when cleaned up.
It's doing it's first set of instructions. Note that the rom loaded won't boot fully because of a lot of missing instructions. The checker pattern is actually debugging information added.
J'ai envie de compiler les jeux qui m'ont marqué sur Amstrad CPC 6128. Machine qui a accompagné mes premiers pas de joueur.
Je commence avec Ranarama, une sorte de jeu d'exploration, vue du dessus, où l'on jouait un sorcier transformé en grenouille. Les niveaux étaient labyrinthiques et dangereux.
MASK.
J'aimais bien ce jeu mais je n'ai jamais rien pigé de ce qu'il fallait faire: C'était encore un jeu d'exploration (un peu action il me semble) où on errait dans le désert comme un âme en peine. Et je me retrouvais toujours bloquer à un moment. Mais y avait la voiture de MASK alors c'était cool
Un run'n'gun très chouette mais, comme d'hab, incroyablement difficile: un saut mal négocier vers un ennemi ou le vide et c'est foutu. Sur l'image, on voit ce que je prenais pour des gâteaux apéritifs de Belin.
Il s'agit aussi d'un des 2 seuls jeux auquel j'ai fait jouer ma mère (sans succès).
Jet Set Willy.
Mon jeu préféré sur CPC. Un jeu aussi passionnant qu'inquiétant. Du moins pour un gosse: l'humour distillé dans le jeu allouait une atmosphère étrange à l'ensemble. L'aspect non linéaire à l'aventure me donnait toujours envie de revenir dessus et tenter de choper un max d'objets.
Head Over Heels.
Un magnifique jeu chelou en vue isométrique. A la fois un jeu d'aventure et de casse-tête, notamment avec le fait de devoir jongler avec les deux chiens à la morphologie improbables. Encore un des meilleurs jeux sur CPC.
Un platformer vertical original et visuellement intéressant: On jouait une grenouille alien qui devait détruire des tours dispatchées dans un océan. Il existait un code pour sauter de niveau. Je ne le connaissais pas, alors j'appuyais sur toutes les touches du clavier pour l'actionner.
Cybernoid
Un shoot'em up à tableaux formidable dans lequel les ennemis disparaissaient dans une explosion évoquant un feu d'artifice. Musique incroyable (sur CPC du moins). Et 2e jeu que j'ai fait essayer à ma pauvre maman. Spoiler: Elle n'a pas eu plus envie de jouer aux JV après ça.
Sorcery
Un des meilleurs jeux CPC. Encore un jeu d'aventure labyrinthique vachement stylé pour l'époque. Les animations étaient folles et c'était un énième jeu un peu effrayant. Il fallait dénicher des objets pour sauver des collègues sorciers en collectant des items en chemin.
Le plus célèbre des casse-briques et un des plus rigolos à jouer. Quel plaisir de tomber sur l'item mitraillette qui permettait de nettoyer une zone ultra vite. Un des rares jeux que mon père aimait jouer.
@pallenberg Ja. Das habe ich mir dann extern zum 464 dazugekauft. Sehr cool. Kein Kassetten-Gezwitscher mehr, sondern leises Disketten-Surren. Einen NEC-Nadedrucker gab es dann auch noch. #CPC464#Schneider#Amstrad
With sound done (ok I have weird white noise in Gryzor but don't tell anyone), what remains is handling the other CPC models (not the Plus, they're weird).
The CPC664 is almost identical to the 464 but with floppy integrated. The CPC6128 has... 128KB of RAM. Slightly different ROMs.
I had to implement the banking like they did. This required adding a way to swap in or out partial memory blocks ("banks" are 64K, but are swapped in or out in 16K "pages")
The CPU can only see 64K. The way they implemented extended memory is to have ram modes where you replace pages of the base 64K with pages from extended RAM banks.
First you select a bank (0..7, allowing 512K extended memory + 64K base).
Then you select a RAM Mode (0..7):
Mode 0 is "normal"
Mode 1 maps page 3 of extended RAM
Mode 2 is "all-extended"
Mode 3 is funky (see handy chart)
Modes 4-7 map a single page from ext RAM to page 1
Fortunately the CPC uses the same floppy controller as the IBM PC so at least I won't have to go through that hell again.
First, we need to load the 'AMSDOS' ROM which provides the support and additional commands such as |DIR. I had to add support for multiple extension ROMs but that wasn't too bad.
Disk images comes in a .DSK format. Ok, I'll add a loader.
Let's connect everything and... what, sectors are not numbered 1-9? (1/2)
Nope, 'Data' disk sectors are numbered C1 to C9, 'System' disks 41 to 49 (IBM: 1-9).
The system detects the type by looking at the ID of a sector that flies by.
And my floppy class only support raw images with no interleaving and assumes sectors start at 1. And takes a lot of shortcuts. Of course it does.
Well, I won't redo everything now, let's just add a 'sector offset' to the geometry for a disk image and it'll be our little secret.
Mastodon, we have a keyboard! :meow_bongo_keyboard:
But how, might I hear you ask, since there's no sound chip yet?
Well, who needs that pesky sound chip. The only thing we read from it is the keyboard data. So just skip the chip for now and always return keyboard data when port A is read. Ta-da! :meow_code:
(oh and that Amstrad BASIC looks pretty neat. Like... much better than the Commodore one)