Changes

Jump to: navigation, search

CPSoft

725 bytes added, 14 February
My name Chris Perver and I am from Northern Ireland. My first Amstrad was a CPC 464, a Christmas present from my parents around the year 1987. I really enjoyed playing the [[Amsoft]] games the machine was bundled with, as well as typing in the many example programs contained in the manual. I bought a 464+ in the nineties, unfortunately after the machine had already flopped. I always had a great interest in programming, and reminiscing about my childhood days, decided to teach myself Z80 assembly. Using WinAPE's built-in assembler, and following examples from [https://www.chibiakumas.com/z80/AmstradCPC.php ChibiAkumas] and other websites, I gradually learned how to code in assembly. I had a desire to create an open world game, using procedural generation, and so began programming my first assembly game [[Mimo's Quest]]. Although development on this has paused. I have also upgraded some of my favourite childhood games by disassembling them and redeveloping them for the Plus. Hence the name 'CPSoft', as this was the shortest name that could fit into the Harrier Attack scoreboard! I am currently working on an 'arcade perfect' conversion of [[Qbert|Q*bert]] and hope to develop other games when this project is completed. I would heartily recommend anyone learning Z80 assembly!
 
== Programming environment
 
[[File:Environment.png|thumbnail|Programming environment]]
 
The programming environment I use is Ubuntu Linux, with Notepad++ running through Wine emulation. I find Notepad++ very handy for categorizing project files. Its Z80 assembly syntax highlighter makes the code very readable, and its label name completion function saves a lot of time.
 
I ause RASM to compile my source code, along with RomInject and BuildCPR to create the Amstrad Plus cartridge files, and 2CDT to create the emulated tape files. This enables me to make modifications to my code and see the results within a few seconds.
 
I use WinAPE as my Amstrad emulator. Its debugger is very useful for inspecting memory addresses.
== Games ==
216
edits