The Advanced User Guide for the Acorn Electron



Download 1.6 Mb.
Page1/20
Date29.01.2017
Size1.6 Mb.
#12471
  1   2   3   4   5   6   7   8   9   ...   20




The

Advanced

User

Guide

for the Acorn Electron
Adrian C. Dickens BA,

Churchill College,

Cambridge University


Mark A. Holmes BA,

Fitzwilliam College,

Cambridge University




Published by Adder Publishing, Cambridge

The “Acorn Electron Advanced User Guide” is published by Adder Publishing for Acornsoft Limited.


Acornsoft Limited, Betjeman House, 104 Hills Road, Cambridge, CR2 1LQ,

England. Telephone (0223) 316039

ISBN 0907876 17 X
Copyright © 1984 Adder Publishing
Adder Publishing, PO Box 148, Cambridge, CB1 2EQ

ISBN 0 947929 03 7


First published September 1984

Second edition June 2008


The Authors would like to thank Nigel Dickens, Tim Dobson, Steve Furber, Tim Gleeson, David Johnson-Davies, Dr John Horton, Zahid Najam, Mark Plumbley, John Thackeray, Ken Vail, Geoff Vincent, Adrian Warner, Leycester Whewell, Albert Williams and everyone else who helped in the production of this book.
All rights reserved. This book is copyright. No part of this book may be copied or stored by any means whatsoever whether mechanical, photographic or electronic, except for private or study use as defined in the Copyright Act. All enquiries should be addressed to the publishers. While every precaution has been taken in the preparation of this book, the publisher assumes no responsibility for errors or omissions. Neither is any liability assumed for damages resulting from the use of information contained herein.
The Authors gratefully acknowledge Acorn Computers Limited for their kind permission to reproduce the complete Electron circuit diagram. The Authors would like to point out that Acorn Computers reserve the right to make improvements in the specification of its products. Therefore the circuit diagram and other contents of this book may not be in complete agreement with the product supplied.
Please note that within this text the terms Tube, Econet and Electron are registered tradenames of Acorn Computers Limited. All references in this book to the BBC Microcomputer refer to the computer produced for the British Broadcasting Corporation by Acorn Computers Limited.
This book was prepared using the Acornsoft VIEW wordprocessor on the BBC

Microcomputer and then computer typeset by Parker Typesetting Service,

Leicester.

Printed in Great Britain by The Burlington Press Ltd. Foxton, Cambridge.

Book production by Adder Publishing.

Contents

Introduction

1 The Acorn design philosophy 7




Operating system routines and vectors

2 Operating system calls 9

2.1 OSWRCH Write character routine 10

2.2 Non-vectored OSWRCH 10

2.3 OSRDCH Read character routine 11

2.4 Non-vectored OSRDCH 11

2.5 OSNEWL Write a newline routine 12

2.6 OSASCI Write character routine 12

2.7 GSINIT General string input initialize 13

2.8 GSREAD Read character from string 13

2.9 OSRDRM Read byte from paged ROM 14

2.10 OSEVEN Generate an event 15

2.11 OSCLI Pass string to the CLI 15

3 OSBYTE calls 16


4 OSWORD calls 87


5 Filing system calls 94

5.1 OSFILE Read/write entire file 95

5.2 OSARGS Read/write file attributes 98

5.3 OSBGET Get a single byte 100

5.4 OSBPUT Write a single byte 101

5.5 OSGBPB Read/write a group of bytes 102

5.6 OSFIND Open or close file 105

5.7 OSFSC Misc filing system control 106

6 Operating system vectors 110

6.1 The User vector 113

6.2 The BRK vector 116

6.3 Interrupt vectors, IRQ1V & IRQ2V 119

6.4 The event vector, EVNTV 119

6.5 User print vector, UPTV 121

6.6 Econet vector, NETV 123

6.7 VDU extension vector, VDUV 124

6.8 Keyboard vector, KEYV 125

6.9 Buffer maintenance vectors 126

6.10 Unused vectors 134

6.11 The default vector table 134
7 Interrupts 135

7.1 Introduction 135

7.2 Interrupts on the Electron 138

7.3 Using NMIs 138

7.4 Using IRQs 138

7.5 Intercepting interrupts 139



Paged ROM firmware

8 Paged ROM formats 143

8.1 Paged ROM header format 144

8.2 Language entry 144

8.3 Service entry 145

8.4 ROM type byte 145

8.5 Copyright offset pointer 146

8.6 Binary version number 146

8.7 Title string 146

8.8 Version string 147

8.9 Copyright string 147

8.10 Tube relocation address 148


9 Language ROMs 148

9.1 Language initialization 148

9.2 Firm keys 149

9.3 Language ROM compatibility 150

10 Service ROMs 152

10.1 Paged ROM service calls 152

10.2 Service ROM example 162

10.3 Extended vectors 171

11 *ROM filing system ROMs 172

11.1 Converting files to *ROM format 173

11.2 The header code 173

11.3 Service call &D 174

11.4 Service call &E 175

11.5 *ROM data format 176

11.6 Example 178



Memory usage

12 Memory allocation and usage 183


Hardware
13 An introduction to hardware 201

14 Inside the Electron 204

14.1 The ULA and its registers 204

14.2 The keyboard 216


15 Outside the Electron 217

15.1 Introduction 217

15.2 The expansion connector 217

15.3 Designing circuits 222

15.4 Sideways ROMs 225

15.5 The 1MHz bus 227

15.6 The A to D converter 229

15.7 Disabling the Plus 1 229



Download 1.6 Mb.

Share with your friends:
  1   2   3   4   5   6   7   8   9   ...   20




The database is protected by copyright ©ininet.org 2024
send message

    Main page