BallyAlley_r1_c1.gif BallyAlley_r1_c2.gif BallyAlley_r1_c4.gif
BallyAlley_r2_c1.gif Z80 Machine Language Documentation BallyAlley_r2_c4.gif

30 Customized Microprocessor Projects, Delton T Horn "30 Customized Microprocessor Projects"
By Delton T. Horn
Copyright 1986, by TAB BOOKS (ISBN - 0-8306-0705-6)

     Despite the seemingly generic name, this book covers, exclusively, Z80 hardware projects. Here is what the 300-page book contains:
Table of Contents
List of Projects
Section I - The Basics
     Chapter 1 - The Basics of Circuit Design
     Chapter 2 - Digital Basics
     Chapter 3 - The CPU
     Chapter 4 - Semiconductor Memory
     Chapter 5 - Interfacing
Section II - Projects
     Chapter 6 - CPU Breadboard
     Chapter 7 - EPROM Programmer
     Chapter 8 - Timer / Automation Systems
     Chapter 9 - Security Systems
     Chapter 10 - Test Equipment
     Chapter 11 - Robots
     Chapter 12 - Sound Synthesis
     Chapter 13 - Programming
     Appendix A - The Z80 Instruction Set
     Appendix B - Hexadecimal Instruction Codes for the Z80
     Appendix C - Sample Computer Programs
ASM83 Guru - TI-83 ASM Tutorials, by James Matthews "ASM83 Guru - TI-83 ASM Tutorials"
By James Matthews.

     ASMGuru is your one-stop file to learning 83 ASM! This help file should be just about all you need to learn ASM proficiently (and time, of course), as I've written over 50 tutorials, and included a large reference section for you to look at. This is a zipped Windows Help File.
Introduction to Z80 Assembler, by James Hollidge "Introduction to Z80 Assembler"
By James Hollidge.

     This document will give an introduction to all aspects of the Z80 assuming no knowledge of programming.
Learn TI-83 Plus Assembly In 28 Days v2.0, by Sean McLaughlin "Learn TI-83 Plus Assembly In 28 Days v2.0"
By Sean McLaughlin

     This html guide is intended so that people who have little or no experience in assembly can learn how to make calculator programs. This is guide is intended for TI-83 calculator users, but other Z80 users will probably get some use out of it as well. There are two versions of the document: an HTML and Windows Compiled Help File.

     If you would rather use the Windows Compiled Help file than the html file, you can download that here:
  1. Learn TI-83 Plus Assembly In 28 Days v2.0 - Compiled Help File
Programming the Z-80 (3rd Edition), Rodnay Zaks "Programming the Z-80"
By Rodnay Zaks.
Copyright 1980, Sybex. (ISBN 089588-057-1)
624 pages.

     From the back of the book:

     "Programming the Z80" has been designed both as an educational text and as a self-contained reference book. As such, it can be used as a complete introductory book on programming ranging from the basic concepts to advanced data structures manipulations.

     It also contains a comprehensive description of all the Z80 instructions as well as its internal operation, and should provide a comprehensive reference for the reader who is already familiar with the principles of programming, but wishes to learn the Z80.

     This book is the result of extensive experience by the author in the field of education and programming. As such, it has been designed to be clear and easy to read. All concepts are explained in simple yet precise terms, building progressively towards more complex techniques. The reader will gain not only an understanding of programming in the language of the Z80 rut also a detailed understanding of the way a microprocessor such as the Z80 actually executes instructions. The reader will follow the flow of execution between the various registers and along the buses. This is indispensable for effective programming at machine level in the world of microprocessors because programming is not just the skill of coding in algorithm into a programming language but also the art of designing appropriate data structures. An extensive chapter on data structures is presented which both introduces the concepts and actual application algorithms. The reader will find there lists, tables, binary trees, and the required algorithms.

     After reading this book, the reader should have acquired all the basic skills required to program not just at the elementary level, but in most practical cases.
Undocumented Z80 Documented, Sean Young "The Undocumented Z80 Documented"
By Sean Young.
Version 0.91, September 18, 2005.

     Documents all of the undocumented Z80 commands. Written by an emulator author.
Z80 Assembly Language Programming, By Lance A Leventhal "Z80 Assembly Language Programming"
By Lance A Leventhal

     This is just ONLY chapter 3 which covers the Z80 assembly language instruction set. It is a good reference. If you can get your hands on the book then you should pick it up.
Z80 Assembly Language Subroutines, by Lance A Leventhal "Z80 Assembly Language Subroutines"
By Lance A Leventhal
1983, ISBN 0-931988-91-8

     This is the complete 512 page book. The back cover of the book notes:

     Save valuable programming time with this collection of more than 40 useful subroutines. Each routine has been documented, tested, and debugged, and is ready to use immediately. "Z80 Assembly Language Subroutines" provides you with:
  • General Z80 programming methods (including a quick summary for experienced programmers).
  • Routines for array manipulation, arithmetic, bit manipulation, code conversion, string processing, input/output, and interrupts.
  • A discussion of common Z80 assembly language programming errors, as well as the strengths and weaknesses of the Z80 instruction set.
  • Directions for implementing additional instructions and addressing modes.
     With these subroutines, you can
  • Run a specific routine.
  • Speed up a program written in a high-level language such as BASIC, Pascal, or Fortran.
  • Assist in programming an I/O driver, a diagnostic, a utility, or a systems program.
  • Debug, maintain, or revise an existing program.
Z80 Assembly Optimization Tricks, by Adam Ziemba and Leif Astrand "Z80 Assembly Optimization Tricks"
By Adam Ziemba and Leif Astrand

     In hopes of getting Z80 Assembly programmers to write more efficient programs, this list of optimization tricks has been comprised. It is suggested that you memorize these tricks so that you can become quick and adept at writing efficient assembly programs. (15 Pages)
Z80 Family CPU User Manual, by Zilog "Z80 Family CPU User Manual"
By Zilog
User Manual 008005 (Document No. UM008005).
February 2005.

     This is Zilog's official "Z80 CPU Family User's Manual." Recommended.

     An older verson of this manual from February 2002 is also available here:
  1. Z80 Family CPU User Manual - February 2002
Z80 CPU Instant Reference Card Z80 CPU Microprocessor Instant Reference Card
By Micro-Logic Corp
Published 1981

     This 8 1/2" x 11" double-side plastic Z80 reference card sums up just about all the programming information needed for the Z80 microprocessor. The regular link is a B&W scan of the original card. This will probably work best for most people under most circumstances. However, some parts of the reference card were meant to be used in color. Thus, other scans are available:
  1. Z80 CPU Instant Reference Card - Grayscale
  2. Z80 CPU Instant Reference Card - Color
     If you can find a used or new old-stock copy of this card then pick it up. It's a valuable tool and is very handy to have in its original durable plastic form.
Z80 Instructions Sorted by Opcode "Z80 Instructions, Sorted by Opcode"
By Sean Young.
November 29, 1997.

This should be the complete list of all the opcodes of the Zilog Z80.
Z80 Opcode List, by J.G. Harston "Z80 Opcode List"
By J.G. Harston.
September 9, 1997.

     Full Z80 Opcode List Including Undocumented Opcodes.

     Here is an alternate version of the list. This one isn't dated, nor is there anyone that claims it as their own work:
  1. z80_opcodes.txt
Z80 Instruction Set Summary, compiled by Simon Owen "Z80 Instruction Set Summary"
Compiled by Simon Owen.
Z80 MICROPROCESSOR Instruction Set Summary "Z80 MICROPROCESSOR Instruction Set Summary"

     This is a very neat, compressed setup that can be printed in just four pages.
ZINT Z80 Interpreter Assembler Handbook, James Moxham "ZINT Z80 Interpreter Assembler Handbook"
By James Moxham.

     Introduction to the Z80 Instruction Set based on ZINT (the Z80 Interpreter). This has Z80 opcodes with detailed usage.

     A text version of the html link is also available. It might be preferable if you want to print the document.
  1. ZINT Z80 Interpreter Assembler Handbook (Text) - Text Version
Z-80 Microcomputer Design Projects, William Barden Jr. "Z-80 Microcomputer Design Projects"
By William Barden Jr.
Copyright 1980, Howard W. Sams & Co., Inc. (ISBN 0-672-21682-5)

     From the Preface:

     "This book provides a step-by-step guide in building a complete microcomputer, the EZ-80, and for implementing a number of different applications. Although some kit-building experience may be of help, every attempt has been made to provide a trouble-free guide to construction even for the neophyte.

     The applications range from a music synthesizer that will play one-voice musical scores with special effects, to a Morse code generator that generates code for practice or transmission, to a telephone dialer, to a timer that times external events over 100 days. Each application is fully documented in detail. For those readers who are interested in implementing their own unique applications, this book provides the ground work in programming methods so that they may create their own programmed "applications packages" using the input and output lines of the microcomputer to talk to the external world." (208 pages)

     For a more thorough look into the book, the complete preface and an overview of the table of contents can be found here:
  1. Preface and Table of Contents Overview - Text Format
Z80 Microcomputer System, by Zilog "Z80 Microcomputer System"
By Zilog

     This 86 page databook for the Z80 and Z80A is very hardware oriented. There are many diagrams and timing diagrams. This book was printed by SGS, but I'm pretty sure this is actually by Zilog.
Zilog Z80 Assembly Code Optimization, by unknown TI-calculators coder "Zilog Z80 Assembly Code Optimization"
By Unknown TI-Calculators Coder.

     Programs can be made to run substantially faster by optimizing their code. This short, 3-page document gives some pointers on how to do that.
BallyAlley_r4_c1.gif pic BallyAlley_r4_c4.gif