-Simplicity: The Z80's instruction set is dead simple, and thus easy to wrap your head around.
-Availability: Z80 chips are dirt cheap (and if you want to build a computer around it, designs are readily available).
-Ease: As a new assembler programmer, Z80 assembler is considerably more high level than, say, 6502 assembler.
-Other Factors: GBZ80 is hugely useful, especially to me, because I've got a Gameboy.
Some of those other architectures are on my list as well. Like m68k (and its cousin, the 6809): if only I could still buy the chips. 6502 isn't on your list, but it's on mine.
Also, ARMv4T, for the ARM7TDMI: GBA hacking could be fun.
Well, you could just make use of the ARM chip on your mobile phone and besides some boilerplate code to start your own Assembly code, do some ARM demos. :)
Thanks! But it wasn't the prospect of the assembly that scared me: Android's Java API is a disgusting mess that I would happily never touch again for as long as I live.
I'd buy that. As much as I hate Microsoft, they have a much more fun ecosystem to work in than Android's (or so I've heard). C# isn't my favorite language, but there's less brain damage than there is in Java.
Not only C#, all the OS APIs are available to all languages including C++, not the half baked NDK experience and everything is compiled to native code on the store before downloading into the devices.
Not like the great idea from Google to do AOT on the device itself, which was so good that had to create an hybrid solution on Android N.
This is so, so true. I cannot even imagine such a book for kids or even teenagers now. Something was lost when computers became powerful and boring.