Spectrum version of Defender
These sources are designed to be assembled using Design Design's ZEUS assembler. Just assemble defender.asm (from the command line, "zcl defender.asm") and it will pull it all the necessary source files to complete the build.
There are two options for the output generated by the build:
- An SZX file for loading into an emulator
- A tape file for loading into an emulator, loading into a real machine by tape/HDD/memory card/network etc. Just set the snapshot flag at the very beginning to determine the outcome.
This is still very much a work in progress while I work on disassembling the original Defender ROMs so no guarantees are made that I will even be able to finish this. Let's just say that I intend to complete it and have it playable as Defender is probably my all-time favourite arcade game.
The following is a list of current source files and a rough description of their function
charset.asm The character set used by the game
defender.asm The main game loop and initialisation code
fx.asm General special effects
input.asm User input handling
landscape.asm Drawing and erasing the scrolling landscape
screen.asm General purpose display-related subroutines
sprite_code.asm Code for managing sprites
sprite_data.asm Graphic data for the sprites
sprite_macro.asm Macros used by the sprite management code
tables.asm Lookup tables for screen address translation and other stuff
vars.asm Most of the variables used by the code
view.asm Camera management routines to handle the panning and inertia effects