Old Design Design games sources and stuff... (Last update - 18:27:53 27/03/2012) |
| Software |
New files - many thanks to Graham Stafford for providing the complete source to many of his games, I will be adding these to the site as separate games shortly. For the moment they're all in one zip file, have a look in the Graham Stafford section below for it...
Note that lots of formatting information has been lost, some of these files have been recovered using a dissassembler, or pieced together from fragments in slack space on discs, and so on. Basically, what I'm saying is don't assume the text you see here is formatted the way we'd have seen it then, especially for some of the earlier files. The white space may well be completely different, etc, etc. We designed our own in-house development machines, and our editor/assembler packages for these compressed the source files both for speed and in order to save space. The files published here cover several generations of these machines, and I've had to deduce the file formats for the early ones, so I expect that there may well be some glitches here and there. In particular, all the syntax highlight information has been removed. The original spacing is often lost, comments are stripped from some files, line time/date stamps and source markers deleted. (Looking at the history of it I think we actually invented syntax highlighting, certainly had it in our tools before any other mention I can find) Back in 1983 (Halls) the machine I used was called Lurch. I think there's a picture of me holding Lurch on t'web. By 1985 (Dark Star onwards) my machine was called Basil, I'll upload some photos of Basil later; in some respects it was nicer to write code on Basil than on the PC I'm using to write this - Basil had hardware window support so it could soft-scroll text windows in the editor. Hell, I still miss that.. The Z80 sources generate accurate binary (if assembled with zeus). The 68000 sources should be OK, but the NS32000 sources are corrupt - I've expanded them from the tokenised source using the Z80 tokens. Too much trouble to work out the NS32000 ones; the NS32000 was a dog anyway, wish I hadn't wasted time on it. About a decade ago someone took a box full of Design Design floppies from my factory in Wrexham (MDS). These had nearly all my games sources - it's insanely unlikely, but if anyone reading this knows where they are I'd love to have them back. Because they're gone I have lost nearly all the Amstrad games and some of the Spectrum ones. It doesn't in any real sense matter but I do wonder what comments and observations those sources contained, which are now lost. We had fun writing this lot; I hope it provides amusement still. To me, much of it seems painfully naive and childish, and if I was to go back and be there again I'd do things differently, but such is life; we wrote games to amuse ourselves, it was fortunate that we were able to make a living selling some of them. I don't suppose there'll be a time like the early daze of the home computer revolution again in a hurry...
|
|
| Zeus Z80 Assembler. A PC Z80 cross-assembler that generates szx files. Use it to assemble the spectrum sources on this website... | ||
| Now includes the Diana disassembler - this can convert Z80 binary to useful source code. Zeus is now a serious tool, please read the example code below... |
||
| zeus.exe 873KB | 27/Mar/2012 | (Version 2.73) - windows application (now includes experimental syntax highlighting editor) v2.73 adds a data compression option |
| zeus.zip 1282KB | 27/Mar/2012 | (Version 2.73/2.73) - same again but zipped |
| zcl.exe 441KB | 27/Mar/2012 | (Version 2.73) a command line only version. Error messages similar to gcc format. Usage "zcl filename". I will provide some more documentation later... |
| zeus_ex1.asm 2448 bytes | 18/Oct/2008 | Some documentation for it |
| zeus_ex2.asm 12KB | 19/Oct/2008 | [Revised] Some more documentation for it |
| zeus_ex3.asm 4929 bytes | 18/Oct/2008 | Some more documentation for it |
| zeus_ex_if.asm 1898 bytes | 18/Oct/2008 | Demo source: Conditional assembly - if/elseif/else/endif |
| zeus_ex_loop.asm 1084 bytes | 18/Oct/2008 | Demo source: Conditional assembly - loop/lend |
| zeus_ex_repeat.asm 1177 bytes | 18/Oct/2008 | Demo source: Conditional assembly - repeat/until |
| zeus_ex_while.asm 1674 bytes | 18/Oct/2008 | Demo source: Conditional assembly - while/wend |
| zeus_ex_files.asm 3160 bytes | 23/Oct/2008 | Demo source: Covering multiple source files, output file formats and binary data |
| zeus_ex_struct.asm 4170 bytes | 18/Oct/2008 | Demo source: Structures (well, -ish) |
| zeus_ex_ld16.asm 4283 bytes | 18/Oct/2008 | Demo source: 16-bit load pseudo-ops |
| zeus_ex_macros.asm 13KB | 21/Oct/2008 | Demo source: Macros |
| zeus_ex_procedures.asm 19KB | 18/Oct/2008 | Demo source: Procedures (local label support) (includes print code example) |
| zeus_ex_segments.asm 6222 bytes | 24/Oct/2008 | Demo source: Segments |
| zeus_ex_sym.asm 2869 bytes | 19/Oct/2008 | Demo source: exporting the symbol table |
| zeus_ex_maths.asm 1089 bytes | 18/Oct/2008 | Demo source: use of the expression evaluator |
| zeus_ex_editor.asm 5335 bytes | 27/Oct/2008 | Some documentation for the editor. |
| zeus_ex_options.asm 5974 bytes | 7/Nov/2008 | [New in v2.10] Some documentation for the new assembler options. |
| zeus_ex_graphics.asm 3438 bytes | 7/Nov/2008 | [New in v2.10] Some documentation for the DG pseudo-op - eases graphical character definition. |
| zeus_ex_v222.asm 49KB | 9/Dec/2008 | [New in v2.22] Example documentation and source for features added in v2.20..v2.22 of Zeus (encryption, checksumming, random numbers, etc). |
| zeus_ex_v250.zip 6459 bytes | 30/Aug/2010 | [New in v2.50] Example documentation and source code for features added in v2.32..v2.50 of Zeus (binary file comparison, etc). |
| zeus_ex_v264.asm 54KB | 9/Jun/2011 | [New in v2.64] Example documentation and source code for features added in v2.64 of Zeus (single-step and breakpoints, etc). |
| fp.def 31KB | 12/Oct/2008 | Diana definition file - an example file for the Diana disassembler, it disassembles Forbidden Plant (binary below) reasonably accurately. |
| fp.bin 64KB | 1/Oct/2008 | Forbidden Planet binary (see above) |
| rr.def 7042 bytes | 22/Oct/2008 | Diana definition file - an example file for the Diana disassembler, early start of a definition file for Rommel's Revenge. |
| rr.bin 64KB | 14/Oct/2008 | Rommel's Revenge binary (see above) |
| fp_zeus.zip 64KB | 18/Oct/2008 | A large application - Forbidden Planet as a multi-source file. (slightly revised for Zeus v1.7) |
| on_the_run_zeus.zip 48KB | 27/Aug/2010 | Another complete game - On The Run (Spectrum) |
| kat_trap_zeus.zip 116KB | 30/Aug/2010 | Another complete game - Kat Trap (Spectrum) |
| Halls of the Things executables (c) Simon Brattel, Martin Horsley and Neil Mottershead. | ||
| hott2011rc.szx 48KB | 31/May/2011 | The release candidate of a new emulator-friendly ZX Spectrum release of Halls of the Things. Comments, please... |
| hott2011_7r_1k.rzx 471KB | 31/May/2011 | An action-replay file for emulators of me playing the new Halls on the most aggressive settings... |
| halls.tzx.zip 17KB | 1983 | The ZX Spectrum release of Halls of the Things. |
| hallsremix.z80.zip 13KB | 1986 | A ZX Spectrum remixed version (more interesting mazes) of Halls of the Things. |
| halls - how she is played.rzx 524KB | 1983 & 2007 | A walk-through of halls - it can be done... |
| halls_easy.szx 12KB | 1983 | Pre-release version of Halls of the Things - ZX Spectrum. This had a strength bargraph, we did away with strength later. Game difficulty set low. |
| halls_hard.szx 12KB | 1983 | Pre-release version of Halls of the Things - ZX Spectrum. This had a strength bargraph, we did away with strength later. Game difficulty set high. |
| halls86.zip 62KB | 1991?? | An IBM PC version. Unfinished and far, far, far too fast on modern hardware... |
| Halls of the Things sources (c) Simon Brattel, Martin Horsley and Neil Mottershead. | ||
| hott2012src.zip 63KB | 27/Mar/2012 | The sources for a new emulator-friendly ZX Spectrum release of Halls of the Things. |
| hott2011rc_src.zip 57KB | 31/May/2011 | The sources for a release candidate of a new emulator-friendly ZX Spectrum release of Halls of the Things. |
| halls.asm 242KB | 7/Nov/2008 | The complete halls source as one file. Use the zeus.exe assembler (above) to assemble this... |
| halls83_chars.rtf 77KB | 10:10pm 3/Mar/1983 | Spectrum (Original 1983 released version) The character set |
| halls83_front.rtf 20KB | 10:10pm 3/Mar/1983 | Spectrum (Original 1983 released version) The front end source code |
| halls83_main.rtf 124KB | 10:10pm 3/Mar/1983 | Spectrum (Original 1983 released version) The main source code |
| halls_chars.rtf 79KB | 26/Feb/2007 | Spectrum The character set |
| halls_front.rtf 24KB | 26/Feb/2007 | Spectrum The front end source code |
| halls_main.rtf 200KB | 26/Feb/2007 | Spectrum The main source code |
| halls8256.zip 168KB | ?? | All the files for the Amstrad 8256 version, plus others? Modified mazes... |
| halls68k_a.txt 37KB | 1988?? | 68K version for Warp board. Main code part A |
| halls68k_b.txt 85KB | 1988?? | 68K version for Warp board. Main code part B |
| halls86.zip 62KB | 1991?? | An IBM PC version. Unfinished and far, far, far too fast on modern hardware... |
| Invasion of the Body Snatchers sources (Spectrum) (c) Simon Brattel and Neil Mottershead. | ||
| If you liked this, have a play with Return of the Body Snatchers, below. | ||
| Inv 15_7_83.txt 46KB | 15/Jul/1983 | (Original 1983 release version) Part of the source. |
| Inv Ai 2_46 AM 6_9_83.txt 40KB | 2:46am 6/Sep/1983 | (Original 1983 release version) Another part of the source. |
| Inv Bi 2_46 AM 6_9_83.txt 42KB | 2:46am 6/Sep/1983 | (Original 1983 release version) Yet another part of the source. |
| Warlock of Firetop Mountain sources (Spectrum) (c) Simon Brattel and Neil Mottershead. (And Martin Horsley, of course. Lots of Halls in there). | ||
| They looked at Halls and asked us to write something like it, but without the magic. They got something without the magic... | ||
| Puffin FE.txt 19KB | 1984 | (Original released version) The front end source code |
| Puffin Source 0,10.txt 29KB | 1984 | (Original released version) Part of the game. |
| Puffin Source 1a,10.txt 47KB | 1984 | (Original released version) Another part of the game. |
| Puffin Source 1b,9.txt 26KB | 1984 | (Original released version) Yet another part of the game. |
| Rommel's Revenge sources (Spectrum) (c) Martin Horsley | ||
| This was written by Martin Horsley on a Spectrum using Zeus, which is why the source was broken into small sections and the files are so compressed. It amazed me at the time that he could write such an impressive game just on the machine itself, I certainly couldn't have done that... These are all the files I now have, so it looks like I've lost one or more files. I presume they're intended to be assembled in order and then run, but these files don't contain any of the data or front-end stuff... |
||
| RR_Source1.txt 10KB | 1983 | One of the Zeus (spectrum) source files. |
| RR_Source2.txt 12KB | 1983 | Another... |
| RR_Source3.txt 3708 bytes | 1983 | Another... |
| RR_Source4.txt 10KB | 1983 | Another... |
| RR_Source5.txt 266 bytes | 1983 | Another... |
| RR_SourceX.asm 116KB | 21/Oct/2008 | A Diana disassembly of Rommel's, combined with Martin's sources. Doesn't assemble yet, a work in progress... |
| rr.def 7042 bytes | 22/Oct/2008 | Diana definition file - an example file for the Diana disassembler, early start of a definition file for Rommel's Revenge. |
| rr.bin 64KB | 14/Oct/2008 | Rommel's Revenge binary (see above) |
| Dark Star sources (Spectrum) (c) Simon Brattel. | ||
| New - I've added a reconstructed source for the Spectrum version. | ||
| ds2012src.zip 68KB | 27/Mar/2012 | The sources for a new emulator-friendly ZX Spectrum release of Dark Star. Reconstructed using Diana and fragments of old sources |
| ds_dev.zip 75KB | 13/Mar/2012 | NEW - working recreation of the Dark Star sources - a work in progress. Added analogue joystick support... |
| Surface spekki most of towers 5_00pm 1_4_84.asm 36KB | 5:00pm 1/Apr/1984 | An early version. Source compatible with zeus.exe, see above. |
| dsu_1.szx 3820 bytes | 5:00pm 1/Apr/1984 | The above file assembled and running. Controls are Q/A fast/slow Z/X left/right N/M up/down and H/J/K for fire. Try flying slowly forward and shooting... |
| Dark Star + coloured thingys 2_35am 14_6_84.asm 251KB | 2:35am 14/Jun/1984 | Most of it. Source compatible with zeus.exe, see above. |
| dsu_2.szx 16KB | 2:35am 14/Jun/1984 | The above file assembled and running (grafted onto the released front-end code, which provides the key-scan routines for it). |
| Loader v2 Wednesday 05_36_49 am 21_08_85.txt 4508 bytes | 5:36:49am 21/Aug/1985 | Tape loader for it? |
| Forbidden Planet (Spectrum) (c) Simon Brattel | ||
| New - revised the sources | ||
| fp2012src.zip 69KB | 27/Mar/2012 | The sources for Forbidden Planet. Updated for emulators but can (optionally) generate the original code. |
| fp.asm 558KB | 7/Nov/2008 |
The complete source code for the Spectrum version of Forbidden Planet, for use with the Zeus assembler provided on this site. This has the whole project as a single file. See above... |
| fp_zeus.zip 64KB | 18/Oct/2008 |
The complete source code for the Spectrum version of Forbidden Planet, for use with the Zeus assembler provided on this site. This is a multiple-source version. See above... |
| fp_zeus_2_10.zip 84KB | 8/Dec/2008 |
The complete source code for the Spectrum version of Forbidden Planet, for use with the Zeus assembler provided on this site. This is slightly changed to take advantage of features available in Zeus v2.10 onwards. |
| fp_spin.asm 530KB | 3/Oct/2008 | The complete source code for the Spectrum version of Forbidden Planet. Various ugly changes to work round bugs in the zx-spin assembler. [muffled noises] |
| Tank Busters sources (Various: Amstrad CPC, Lurch/Basil, Amiga) (c) Simon Brattel... | ||
| These need organising. Mixed targets in here... | ||
| TB 4b Friday 05_28_29 am 29_03_85.txt 60KB | 5:28:29am 29/Mar/1985 | A front end source |
| TB Sunday 04_33_39 pm 30_12_84.txt 37KB | 4:33:39pm 30/Dec/1984 | A version of the main source? |
| TB Sunday 05_25_13 pm 30_12_84.txt 37KB | 5:25:13pm 30/Dec/1984 | A version of the main source? |
| TB Sunday 06_02_33 pm 30_12_84.txt 39KB | 6:02:33pm 30/Dec/1984 | A version of the main source? |
| TB Main Friday 08_03_00 pm 15_02_85.txt 46KB | 8:03:00pm 15/Feb/1985 | A version of the main source? |
| TB Main Monday 02_06_48 am 18_02_85.txt 50KB | 2:06:48am 18/Feb/1985 | A version of the main source? |
| TB Main Thursday 03_36_31 pm 21_02_85.txt 49KB | 3:36:31pm 21/Feb/1985 | A version of the main source? |
| TB Main (Half-size) Thursday 04_13_17 pm 21_02_85.txt 49KB | 4:13:17pm 21/Feb/1985 | A version of the main source? |
| TB Main 4b Friday 04_23_48 am 29_03_85.txt 71KB | 4:23:48am 29/Mar/1985 | A main source? |
| TB Subs + N 7a Friday 01_53_02 pm 29_03_85.txt 75KB | 1:53:02pm 29/Mar/1985 | A version of some common subroutines source? |
| tank_amiga.txt 111KB | 1988?? | 68K battlezone demo for Commodore Amiga. |
| ta_data.bin 2048 bytes | 1988?? | 68K battlezone data file, sin lookup? Part of demo for Commodore Amiga. |
| ta_mountains.bin 24KB | 1988?? | 68K battlezone data file, mountain data lookup? Part of demo for Commodore Amiga. |
| Return of the Body Snatchers (PC) (c) Simon Brattel... | ||
| This ran smoothly at frame rate on a 20MHz '286, if you run it under XP or Vista on a modern PC it jerks badly - but you can get around this by running it under DOSBox, a DOS emulator that I highly recommend. | ||
| ROTBS.exe 69KB | 1992 | Return of the Body Snatchers - a PC follow up to IOTBS. |
| ROTBS.ZIP 606KB | 1992 | All of the source code for Return of the Body Snatchers... Assembles under MASM or TASM. |
| ROTBS.ICO 766 bytes | 1992 | An icon for it |
| rotbs_avi.zip 3557KB | 18/Sep/2008 | A zipped avi file showing me entirely failing to survive on the easy setting. (Some unusual extra options set)... |
| Doctor Strangefruit (PC) (c) Simon Brattel and Dave De-Leuw... | ||
| An unfinished platform game. Would have been nice, I suspect. This ran smoothly at frame rate on a 30MHz '486, if you run it under XP or Vista on a modern PC it jerks badly - but you can get round this by running it under DOSBox, a DOS emulator that I highly recommend. If you use DOSBox, make sure you give the game enough CPU cycles. These are shown in the caption line. While it's playing hit Ctrl-F12 until the game runs very smoothly. It needs about 12,000... [snip]
|
||
| STRANGE1.ZIP 212KB | 1993-ish | Half the sources and executables. Put in ("C:\whatever") |
| STRANGE2.ZIP 147KB | 1993-ish | Other half of 'em. Put these in a subdirectory "GAMECODE" under the gameroot ("C:\whatever\GAMECODE")... Run G.BAT |
| Graham Stafford's files | ||
| graham_games_src.zip 880KB | 26/Aug/2010 | Most of Graham Stafford's games as Z80 source. 2112, Kat Trap, Nexor, Nosferatu and On The Run... Tidier sources than mine, the utter bastard! |
| on_the_run_zeus.zip 48KB | 27/Aug/2010 | Graham's "On The Run" for the Spectrum in Zeus-compatible source format. Revised (27 Aug 2010) so it uses $NNNN hex numbers. |
| kat_trap_zeus.zip 116KB | 30/Aug/2010 | Graham's "Kat Trap" for the Spectrum in Zeus-compatible source format. |
| hexconv.exe 170KB | 27/Aug/2010 | A windows tool that reads source files containing leading-zero hex numbers and converts them all to $format, so 01234 => $1234, for example. Also strips the strange characters (0x8A) out of Grahams sources. |
| Various sources/bits and pieces | ||
| emu_hb.zip 195KB | 1979 | One of my first programmes and a PC emulator to run it - a space invaders game (of course). Written in 1979 or so... Unzip the files into a directory and run EmuHB.exe |
| sp_inv.asm 35KB | 1984 | Ye Olde space invaders. Spectrum. This was hidden in Dark Star (hold I down during load)... Compatible with the Zeus assembler provided on this site. See above... |
| invad.txt 35KB | 9/Dec/1989 | Another Z80 space invaders, nicer source. This was written for Virgin, part of some airline games console... |
| tetris.txt 17KB | 1/Apr/1991 | A version of tetris for the PC. Complete source for the game, but without some other files it can't be linked. |
| AVR_Invaders.rtf 96KB | 16/May/2005 | Same again, written in AVR assembler (Zeus format - converted from the Z80 source). |
| si_emu.zip 204KB | 16/May/2005 | A PC emulator for the AVR space invaders - i.e. an AVR emulator written in Delphi. |
| MartinSource.zip 13KB | 1984? | The unfinished source for Martin's spinning around game. (c) Martin Horsley. |
| Morse thingy + mess Tuesday 05_38_30 pm 26_02_85.txt 6188 bytes | 5:38:30pm 26/Feb/1985 | A morse code transmitter that pissed wookie off... |
| Spectacle Editor am 12_54 11_9_84.txt 33KB | 12:54:00pm 11/Sep/1984 | The text editor used for editing Spectacle pages |
| Ass11.txt 83KB | 11:47:32pm 4/Aug/1986 | Part of the development tools, a Z80 cross assembler. |
| Ass68.txt 187KB | 4:21:00am 10/Sep/1990 | Part of the development tools, a 68000 cross assembler. |
| Editor20.txt 96KB | 1985? | Part of the development tools, a text editor. |
| ns32000.zip 90KB | various 1988 | Some NS32000 development files. Assembler, editor, mandelbrot and hopalong demos. Basic OS. |
| msx.zip 76KB | 1986 | Various MSX files. A memory manager written for Abdul - the code that got me kicked out of my own company... [grin] |
| da_z80.asm 96KB | 10:14:02am 22/May/1989 | Some typical Design Design commercial code. Part of an air traffic control console. (slight mods for zeus-ish) |
| rel_4.asm 117KB | 01:48:31pm 25/Jun/1991 | Some typical Design Design commercial code. A solder reflow oven controller. (slight mods for zeus-ish) |
| vibe.rtf 207KB | 2007 | Source code for an AVR based vibrator. Replacement for the PIC in an Ann Summers toy - who'd want their friends having sex with a PIC? |
| Games-related files provided by "Friends of Design Design"... | ||
| Contributions from third-parties - received with thanks :) | ||
| desdes_loader.asm 10KB | 29/Oct/2008 |
[revised] Robert Crawford has kindly used Diana to disassemble the tape loader we used to use on the Spectrum. This is the reconstructed source... Rather better commented than the original, by the look of it... |
| invade_load_v1.0.def 2567 bytes | 29/Oct/2008 | [revised] His Diana definition file |
| inv_load.bin 63KB | 21/Oct/2008 | The binary he was working from. |
| Various pictures | ||
| Basil.jpg 1043KB | Basil, still running perfectly after more than 23 years... Bet the machine the monitor's standing on won't... | |
| B_Side.jpg 891KB | Basil from the side. CPU, Misc, VDU, FDC, SCSI and flying winchester boards. | |
| B_CPU_T1.jpg 1042KB | This is Basil's main CPU board, component side. | |
| B_CPU_B1.jpg 1088KB | This is Basil's main CPU board, wiring side. Wiring this took a couple of days... | |
| B_Detail.jpg 935KB | Closeup of the wiring. | |
| zeuspara.jpg 205KB | 23/Oct/2008 | A picture of zcl.exe running as a backend assembler in my ParaSys IDE. |
| Third party tools and utilities: | ||
| Adobe Acrobat
Reader (necessary to read the PDF files on this site) |
||
| DOSBox | The DOSBox PC emulator - this will allow the PC files to be run perfectly, even under windoze XP and Vista. Thanks Bill :( | |
| Home |
Author: crem@cix.co.uk Copyright 2008, Design Design. All rights reserved. |