Jump to content

BBC Micro Advanced BASIC ROM User Guide

From RetroTechCollection

The Advanced BASIC ROM User Guide for the BBC Microcomputer is a book by Colin Pharo, published in 1984 by the Cambridge Microcomputer Centre, 153–154 East Road, Cambridge (ISBN 0 946827 45 1). The hosted PDF is the remastered edition by dv8 (2017), second revision, March 2023: a retypeset text with a text layer, not a scan. Its numbered pages run to p. 182.

It is not an Acorn publication. It is a companion to Mark Plumbley's BASIC ROM User Guide: Plumbley describes how BBC BASIC works, and Pharo describes how to call the BASIC ROM's own integer, floating-point, conversion, mathematical and random-number routines from assembly language. Each routine is given with its BASIC 1 and BASIC 2 addresses; the example programs are written for BASIC 2, and the book explains what to change for BASIC 1.

Contents

[edit | edit source]
Chapter Sections (page)
1 Numbering systems Binary (9); hexadecimal (13)
2 Integers Work areas (17); defining constants (18); routines summary (21); routines description (22)
3 Floating point numbers Variables (55); integer versus floating point (58); work areas (59); defining constants (61); routines summary (62); routines description (63); interface program (92) and test (94)
4 Conversions Work areas (95); routines summary (96); routines description (97); ASCII conversion demonstration (105)
5 Mathematical functions Routines summary (108); routines description (109); demonstration (122)
6 Random numbers Work area (127); routines summary (128); routines description (129); demonstration (134)
7 BASIC memory map Zero page dedicated locations (137); zero page multiple-use locations (139); resident integer variables (140); floating point temporary areas (140); variable pointer table (141); stacks and buffers (144); token and action tables (144); tables summary (145)
8 Timings Units of time (150); processor speed (150); program speed (151); microsecond timer (151); BASIC timings (154)
9 Trigonometrical manipulations Fixed shapes (156); reduced accuracy (158); mathematical transform (159); symmetry (160); hybrid (164)
10 Large machine code programs BASIC 2 relocation (167); intra-module relocation (169–175); inter-module relocation (175); initial BASIC program (179)

What it settles

[edit | edit source]

Chapter 7 maps the memory BBC BASIC uses: its reserved zero-page locations, the resident integer variables, the floating-point temporary areas, the variable pointer table and the token and action tables. Chapter 8 gives BASIC timings and a microsecond timer program.

What this book does not contain

[edit | edit source]
  • Any hardware content: no circuit diagram, parts list or fault-finding.
  • Operating system detail. For OS calls, vectors and the hardware chapters, see BBC Micro Advanced User Guide.

Download: BBC_Micro_Advanced_BASIC_ROM_User_Guide.pdf

[edit | edit source]