[Prev] [Next] [Up] [Main] [New] [Search] [Home]
Front page

The Complete Spectrum ROM Disassembly

Ian Logan and Frank O'Hara

In English
ISBN: 0-86161-116-0 (Fennica) (HelMet) (Kirjastot.fi) (Library of Congress)
National Library of Australia Card Number and ISBN: 0-86759-117-X
Publisher: Melbourne House (Publishers) Ltd

The Sinclair Spectrum is a complex microcomputer whose normal operation is controlled by the 16K ROM program that is inside of every Spectrum.

In this book, Dr. Ian Logan and Dr. Frank O'Hara examine this program and explain exactly what it is that makes the Spectrum operate in the way that it does.

Every routine in the ROM has been disassembled and has full comments on what its fuction is and how it relates to the other functions in ROM.

Each aspect of the Spectrum operation is discussed in detail:

The input/output routines:

These cover the keyboard routines, the loudspeaker, the cassette handling routines, and the screen and printer handling routines.

BASIC line and command interpretation:

This part of the ROM considers each BASIC statement as a set of commands. For each command there is a 'command routine', and it is the execution of the machine codfe in the appropriate 'command routine' that affects the 'interpretation'.

Expression evaluation:

The Spectrum has a most comprehensive expression evaluation allowing for a wide range of variable types, functions and operators.

The arithmetic routines and the floating point calculator:

This part of the ROM handles all the numbers in a unique five byte floating point form, as well as all the mathematical functions.

Overall, the 16K ROM programs offers on extremely wide range of BASIC commands and functions. This book makes all the functions and entry points available for use in your own programs or for modification into your own special routines.

The COMPLETE SPECTRUM ROM DISASSEMBLY is a must for all serious programmers of the Spectrum.

Table of Contents
The restart routines and tables1
The keyboard routines5
The loudspeaker routines11
The cassette handling routines15
The screen and printer handling routines33
The executive routines59
BASIC line and command interpretation84
Expression evaluation127
The arithmetic routines164
The floating-point calculator190
BASIC programs for the main series222
The 'DRAW' algorithm228
The 'CIRCLE' algorithm228
Note on small integers and -65536229
Index to routines231

[Prev] [Next] [Up] [Main] [New] [Search] [Home]
This page has been created by Sami Rautiainen.
Read the small print. Last updated Jan 22, 2006