The Art of Programming
the 16K ZX81
INDEX
FRONT COVER
INTRODUCTION
PUBLISHING INFORMATION
PREFACE
CONTENTS
ACKNOWLEDGEMENT
EXTENDING YOUR ZX81
The 16K RAM pack
New programming considerations
The ZX printer
How to use this book
AN EXTRA 16K
Memory map and system variables
Manipulating memory locations
More memory locations
A memory test program
PROGRAMMING UTILITIES
Utility One - Memory use
Utility Two - Variable use
Utility Three - Renumber
16K GRAPHICS
Full graphics - Depth charge game
Squash
Screen layout
Screen PEEKing and POKEing
Maze game
Scrolling graphics
Ski run game
Paged graphics
Conclusion
DESIGNING LARGE PROGRAMS
Designing a program
Using subroutines
An extended RETURN
Collections of programs - Menus
User-friendly programs
Debugging
TAPE STORAGE OF DATA
The tape system
Data storage
Statistics program
NUMBER FORMATING
Truncating and rounding
Aligning decimal points
PRINT USING
Interest calculator
THE PRINTER
How the printer works
Low resolution printing
High resolution plotting
Plotting a sine curve
A lower case or special character set
Conclusion
ADVANCED RANDOMNESS
Continuous events
The Normal Distribution
The CHI Squared Distribution
The Exponential Distribution
The Binomial Distribution
The Poisson Distribution
Monte Carlo integration - finding PI
Problems with random numbers
A business simulation
Sinclair's Triangle
Conclusion
MACHINE CODE PROGRAMMING
Why is BASIC so slow?
The characteristics of machine code
The ZX80
The instructions LD and ADD
A short example program
A second example - reversing the screen
Next steps
ALSO RECOMMENDED
TAPES
NOTE
BACK COVER