> ZX Basic allows to inline assembly instructions!!! This is a killing feature
This feature got 14yo me to devour the Z80 Programming guide by Rodnay Zaks [i]. Which, introduced me to concepts like the address bus and registers that served me well through my 30+ year IT career.
The built in ZX Spectrum basic did not, though; What did you use? I remember using Picturesque assembler after giving up on hand-assembling instructions (though, I still remember a few random Z80 codes....)
It's possible I'm mixing it up with the Sinclair ZX-81 (which I had before the Spectrum).
At any rate, I ended up purchasing/installing a Z80 assembler EPROM (replacement for the original Sinclair ROM) which IIRC had a rudimentary debugger. I wonder if anyone else recalls such a thing?
Likely the ZX81 - external / replacement ROMs were more common for it (and for its predecessor, the ZX80) because there wasn’t enough ram for much software.
The ZX spectrum had 16K and 48K models (with the latter being significantly more popular from day 1 and the only one available a while later). most software depended on specific addresses in the built in ROM, the 64K address space was fully utilized AND there was enough RAM so software in ROM wasn’t popular.
Trying to write games for the Spectrum was pretty painful. I got as far as writing some sprite routines using the decimal opcodes in the back of the supplied manual as a reference, saving to cassette whenever I made any progress. But the enterprise basically collapsed under its own impracticality before I got far.
I later learned that a lot of commercial developers were writing code using assemblers on larger systems and subsequently transferring it to the Spectrum.
> I later learned that a lot of commercial developers were writing code using assemblers on larger systems and subsequently transferring it to the Spectrum.
I believe the same happened with other microcomputers, like my beloved C64, right?
I'm not sure about the Amiga though. I never owned one, but a friend who did told me it was a joy to program with. And its games looked fantastic. Were Amiga games written using an Amiga?
The Amiga line had several high-end, workstation-like models (2000, 3000, 4000) that would've been used for software development, among other things. The 3000 and 4000 also had versions in a tower-case form factor (i.e. like a modern PC, not a 1980s "pizza box") and there was an option to get the Amiga 3000 with a proprietary Unix operating system.
IIRC, "The way of the Exploding Fist" (usually referred to as "Fist") and it's sequel "Fist II" were written on a pair of C64s that were connected by a cable. They wrote the code on one machine, but ran it on the other so that crushes would not take down the editor/compiler.
I don't know if that scheme was widely used elsewhere, but unlike larger systems, this was basically within reach for any programmer doing work that was going to go on sale.
I don't really know. I guess the trusty C64 disk drive would have been handy if you were developing for the C64. I don't think the Spectrum ever had a decent disk drive available, or at least Speccy owners didn't seem to have them, maybe just because they were less likely to be able to afford them.
I don't know much about Amigas. I guess they had enough RAM to comfortably fit a compiler and / or assembler in and also had disk drives, which would have been relatively luxurious at the time.
Edit: This thread is making me go a bit Four Yorkshiremen.
The C64's disk and keyboard would have made life a bit less painful than the Speccy, but neither had decent video output, so I doubt much real development happened on them. There was some though, e.g. the true bedroom coders getting started.
I posted a few links to some examples of 80s coding and cross compilers in an answer down below.
The Apple II was the defacto 8-bit machine of choice for most of the North American developers, when looking at the collected anecdotes(Origin, Interplay, SSI and many independents like Jordan Mechner and the team that would form id software were all using them). Becky Heineman had a video where she explained why it was so much better than the C64 and most other options - the I/O and expansion potential was just a lot better on the Apple II architecture, and if you stepped up to the IIGS when that came around you also got some backwards compatibility with more CPU horsepower. Besides displays, the support for multi-disk systems was pretty good, and you could kit out the system to work with a generous amount of RAM and storage for the time. The competing Atari 8-bits also had good expansion capability through the SIO bus and dual cartridge slots which showed some very progressive design, but their potential went mostly neglected by Atari corporate at the time.
The C64 was a budget games machine at heart and didn't have the same kind of hardware support, but its reference manuals are famous for being a great introduction to computing. For many of the beginning bedroom coders this may have made all the difference.
Touché! My parents aspired to be in the BBC Micro class so I ended up with a BBC B but I lacked the cash to buy me anything to go with it so I use my Dad's Hifi tape deck to copy and load games.
In 1987 the Oliver Twins were writing Spectrum games on an Amstrad: http://www.olivertwins.com/history/page/7 - I would think the cross-compiler and cable arrangement would have been pretty common.
WoW, that looks so much more advanced than the HiSoft Pascal and HiSoft Assembler I had at the time. I still have the cassette tapes in the attic of my parents house somewhere.
In 2016 I sent him 20 pounds for HiSoft Assembler to slightly assuage my guilt for the massive amount of old software I downloaded over the years. He really appreciated it. Pretty sure I sent to the other Dave also (I hope).
This feature got 14yo me to devour the Z80 Programming guide by Rodnay Zaks [i]. Which, introduced me to concepts like the address bus and registers that served me well through my 30+ year IT career.
[i] https://archive.org/details/Programming_the_Z-80_3rd_Edition...