article

Interview Richard Wilson

Richard Wilson est bien connu pour son emulator WinAPE. Mais ses activités liées à l’Amstrad CPC n’ont pas commencé récemment et ne sont absolument pas liées au développement de l’emulator WinAPE. En réalité, il est très productif depuis très, très longtemps… J’étais vraiment curieux d’en savoir plus sur tout cela… Voyez comme j’ai de la chance : Richard a gentiment accepté de répondre à mes questions, youpi ! :)

1. Salut Richard. Peux-tu te présenter ? (ton âge, ton pays, ce que tu fais dans la vie réelle, etc.).

Salut Arnaud. J’ai maintenant 40 ans et je vis dans la petite ville de campagne de Westbury, en Tasmanie, Australie. C’est l’un des endroits où j’ai grandi et mes parents y vivent depuis 1978. Je suis né en Tasmanie, mais mon père vient du Lancashire, au Royaume-Uni et j’ai passé pas mal d’années au Royaume-Uni.

Dans la vraie vie, je dirige une entreprise sur internet appelée Tassie Cars, où nous publions des annonces de véhicules à vendre en Tasmanie pour les concessionnaires et le grand public, et je fais aussi du développement pour une société appelée TraderServe, basée à Londres. Quasiment tout le développement que je fais ces temps-ci, c’est du Java, mais j’aime toujours autant me plonger dans quelques projets Z80.

2. Quand as-tu rencontré l’Amstrad CPC pour la première fois ? Était-ce ton premier ordinateur ?

Mon premier ordinateur était en fait un Dick Smith VZ-200. Connu sous le nom de Laser 200, Texet (?) ou Salora Fellow dans d’autres pays. C’est un ordinateur simple à base de Z80 avec une puce graphique 6847 (complètement différente du 6845). J’ai appris l’assembler Z80 dans Programming the Z80 de Rodney Zacks, et j’écrivais des jeux en Z80 le week-end, en 1983. Je n’avais pas vraiment d’assembler, alors j’écrivais tout sur papier, je calculais tous les op-codes sur le papier, puis je les poussais en mémoire avec un programme BASIC d’une seule ligne.

Mon premier CPC est arrivé deux ans plus tard (1985), après que mon oncle en a eu un pendant un temps et que j’avais écrit dessus un jeu Frogger en BASIC. J’allais admirer le 6128 dans les magasins, où il a fait tourner un moment la demo des disquettes CP/M, jusqu’à ce que je convainque enfin mes parents de casquer pour un CPC6128 avec moniteur couleur pour mon anniversaire. J’ai trouvé près de chez moi un ami avec un 464 qui avait des tonnes de jeux crackés et je me suis mis à faire les miens. En 1987, j’ai décroché un travail dans un magasin d’électronique/informatique à Launceston et j’avais accès à tous les jeux, que je pouvais ramener à la maison pour la nuit afin de les cracker.

3. Je sais que tu as sorti quelques cracks sous le pseudonyme d’Equalizor. Peux-tu nous en dire plus ? (la période, quelques souvenirs…)

Tous les jeux que j’ai crackés sont restés le plus proches possible de l’original, mais avec des loaders AMSDOS standard. J’ajoutais parfois un mode triche si l’on maintenait SHIFT pendant le chargement du jeu. Je ne me suis jamais vraiment lancé dans les cracktros. Le pseudonyme que j’utilisais à l’époque était en fait Blakes 8. The Equalizor, c’est en réalité Rob Scott, qui devait être mon agent pour Xexor au Royaume-Uni, et j’ai fini par partager un logement avec lui à Barry (pays de Galles) pendant quelques mois.

4. Tu as aussi fait quelques demos à l’époque. Quels sont leurs noms ? Assistais-tu à des meetings à ce moment-là ?

Je n’ai jamais fait qu’une paire de demos, qui n’ont pas été officiellement publiées. L’une n’était qu’un grand scroller en split screen avec un fond en parallax, et l’autre était la demo River Scroll, que l’on peut télécharger depuis le site de WinAPE.

J’allais régulièrement aux réunions du club Amstrad que nous avions localement en Tasmanie, mais je n’ai réussi à me rendre qu’à deux meetings au Royaume-Uni. Un week-end à Manchester avec la bande de STS, où nous avons bu beaucoup de bière et écrit quelques bouts de code, c’était très sympa. Ça aurait été bien d’être impliqué dans davantage de choses.

5. Toujours au sujet des activités de la demoscene Amstrad CPC, la suis-tu encore aujourd’hui ?

Je la suis toujours, et je suis assez impressionné par certaines des demos sorties dernièrement, en particulier Batman Forever. Ce qui m’impressionne vraiment en ce moment, ce n’est pas tant la demoscene que le nombre de nouveaux jeux qui sont sortis et qui sont en développement, beaucoup d’entre eux réalisés par des gens qui viennent à l’origine de la demoscene et qui utilisent certaines des techniques que l’on ne voyait jusqu’ici que dans les demos.

6. Tu es l’auteur de la ROM Parados (qui permet de plus grandes capacités pour les disquettes). C’est probablement l’une des ROM les plus utilisées sur CPC. A-t-elle été difficile à développer pour toi ? Prévois-tu d’en faire un jour un nouveau développement ?

Après avoir fait du stop jusqu’au pays de Galles du Sud en 93, j’ai vécu quelque temps à Barry, et c’est là que Rob m’a fait découvrir S-DOS, l’équivalent STS de ROMDOS. Jusque-là, les seuls formats de disquette de grande capacité que j’utilisais étaient de simples variantes des formats standard AMSDOS DATA, SYSTEM et IBM. J’utilisais Norton Commander sur DOS et il n’existait pas pour le CPC d’utilitaire aussi simple d’emploi, utilisable facilement avec les grands formats, alors j’ai décidé de créer ParaDOS. ParaDOS 1.0 a demandé environ 4 semaines de développement ; le plus dur a été de tout faire tenir dans les 8K normalement utilisés par CP/M 2.2 dans la ROM AMSDOS.

Pour répondre à la dernière partie de la question : oui. Je prévois de faire une version simple de ParaDOS qui ne supprime pas la partie CP/M, avec les utilitaires dans une ROM séparée. Comme ça, j’aurais 16K à disposition pour l’UI et je pourrais introduire quelques utilitaires en ligne de commande comme |COPY, |FORMAT, etc.

7. Tu as sorti un moteur Wolf Enstein 3D, qui reste le moteur de raycast le plus impressionnant que j’aie jamais vu sur Amstrad CPC. Peux-tu nous décrire les défis techniques auxquels tu as dû faire face ? Développeras-tu un jour un jeu avec ce moteur ? Sinon, as-tu déjà envisagé de publier les sources afin que quelqu’un d’autre puisse écrire un jeu complet ?

Le moteur de ray casting a été développé dans l’intention d’écrire un jeu dans le style de Wolfenstein. Il est basé sur le code original de Wolfenstein sur PC, réécrit pour utiliser des maths en 8 bits. J’aimerais améliorer les performances du code avec les routines de multiplication et de division plus rapides que j’ai développées depuis. J’aimerais aussi améliorer le code de scaling (rendu). Le plus gros problème, c’est la mémoire. Il serait possible d’accélérer nettement le scaling si je disposais de 64K entiers pour les routines de scaling. Au passage, le code source est disponible sur la page de téléchargements de WinAPE.

8. Tu as vécu au Royaume-Uni, maintenant en Australie… Je sais qu’il y a une petite communauté Amstrad CPC dans ce pays. Peux-tu nous en dire plus ?

Il ne se passe vraiment pas grand-chose ici en Tasmanie. Jusqu’à il y a deux semaines, quand l’un de mes vieux amis qui est maintenant sur Facebook a mentionné une vidéo longplay de Fruity Frank sur YouTube, je pensais que tout le monde en Tassie avait oublié le CPC.

9. Tu es l’auteur de l’emulator WinAPE. À ce jour, c’est probablement l’un des emulator les plus précis pour l’Amstrad CPC. Cela fait 2 ans que tu n’as plus publié de mise à jour. Prévois-tu de le développer davantage ? Cf. l’éditeur de code source manque de certaines fonctionnalités, davantage d’accessoires Amstrad CPC pourraient être supportés (les disques durs Dobbertin, le synthétiseur vocal, ou même le récent périphérique HxC Floppy Emulator ?).

Euh, oui. Malheureusement, entre la vraie vie et la PS3, je n’ai pas eu beaucoup de temps pour le développer davantage. Quelques mises à jour ont déjà été faites et je compte sortir une version un de ces jours. J’ai aussi poursuivi le développement de JEMU, mais je dois maintenant trouver comment aligner le code Z80 sur les interruptions d’un VZ afin de finir d’écrire une routine qui vérifie le timing du Z80. L’un des changements sur ma liste, c’est l’annuler/refaire dans l’éditeur et le suivi des labels (c.-à-d. cliquer sur l’utilisation d’un label pour trouver sa déclaration).

10. Qu’est-ce qui te plaît dans l’Amstrad CPC, comment le compares-tu aux autres ? Quel est ton ordinateur préféré et pourquoi ?

Je ne me suis jamais vraiment intéressé aux ordinateurs 16 bits ou 32 bits. Le CPC est mon 8 bits préféré, surtout le Plus. Ils sont capables de bien plus que ce qui a été montré à l’époque où ils étaient répandus. Sans dénigrer la concurrence, le CPC est globalement une meilleure machine.

11. Enfin… sujet libre pour toi. Ai-je oublié de mentionner quelque chose, as-tu autre chose à nous dire ? :)

Surtout, j’aimerais remercier les gens qui sont encore impliqués avec le CPC de le garder intéressant. Gryzor pour CPC Wiki, Markus pour le bon travail sur JavaCPC, Axelay pour ses excellents jeux, et Johnny Olsen pour avoir testé pour moi quelques images disque sur la dernière version de WinAPE. J’ai plusieurs projets en cours en ce moment ; WinAPE et JEMU avancent tous les deux lentement, donc il y aura bientôt de nouvelles versions.

Un million de mercis à Richard d’avoir répondu à ces questions. C’était super de partager ce moment avec toi.

Je remercie aussi Kevin Thacker, qui m’a aidé à en savoir un peu plus sur les activités passées de Richard.