Jump to content
Jet Set Willy & Manic Miner Community

Learning Z80 Assembly


SymbolShift

Recommended Posts

I've noticed many users of this forum talk "Z80" assembly. What is the best resource out there for learning Z80 in 2024?

It could be a series of modern YT tutorials, or a gem of a book that was written in the 70's/80's.
I'm curious if these was a single resource that made it "click" for anyone.

Thanks.

Edited by SymbolShift
Link to comment
Share on other sites

It'll depend on what programming experience you have already.

1. If you've not done any coding before at all, I definitely wouldn't recommend starting with assembly - follow a Python tutorial (effectively the modern BASIC) and learn the basic concepts before tackling assembly.

2. If you have knowledge of higher-level languages but have never done any assembly, Z80 isn't a bad place to start with that. You could follow the links in 3 and it wouldn't be too difficult. However, I do want to give a special shoutout to MarkeyJester's Motorola 68000 Beginner's Tutorial, as even though it's for a more complex processor it really does break everything down and you can apply the knowledge and concepts to every assembly language out there. I definitely recommend reading it, even if you're not interested in 68k ASM.

3. If you've done assembly before or read MJ's tutorial, or you're just feeling brave, then I'd go with two links. Patai Gergely has a breakdown of the Z80 that makes good initial reading for a surface level understanding. And then there's ChibiAkumas which will take you through the entire process of actually getting Z80 programs running. It's initially CPC-based but at the end of the day Z80 is Z80 and it covers a whole bunch of other platforms later.

Link to comment
Share on other sites

5 hours ago, DigitalDuck said:

It'll depend on what programming experience you have already.

1. If you've not done any coding before at all, I definitely wouldn't recommend starting with assembly - follow a Python tutorial (effectively the modern BASIC) and learn the basic concepts before tackling assembly.

2. If you have knowledge of higher-level languages but have never done any assembly, Z80 isn't a bad place to start with that. You could follow the links in 3 and it wouldn't be too difficult. However, I do want to give a special shoutout to MarkeyJester's Motorola 68000 Beginner's Tutorial, as even though it's for a more complex processor it really does break everything down and you can apply the knowledge and concepts to every assembly language out there. I definitely recommend reading it, even if you're not interested in 68k ASM.

3. If you've done assembly before or read MJ's tutorial, or you're just feeling brave, then I'd go with two links. Patai Gergely has a breakdown of the Z80 that makes good initial reading for a surface level understanding. And then there's ChibiAkumas which will take you through the entire process of actually getting Z80 programs running. It's initially CPC-based but at the end of the day Z80 is Z80 and it covers a whole bunch of other platforms later.

Thanks DD. I would say my experience falls into your #2 category. I'm no stranger to coding, but assembly has very specific knowledge (such as bit-shifting and CPU architecture) that I rarely use. I'm sure assembly shares many similar principles as modern languages, but it always seemed so different that many people (me included) have avoided learning it in the past.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.