6502 Machine Code for Humans

Total Page:16

File Type:pdf, Size:1020Kb

6502 Machine Code for Humans 6502 MACHINE CODE FOR HUMANS 6502 Machine Code for Humans Other books on machine code from Granada Discovering BBC Micro Machine Code A. P. Stephenson 0 246 12160 2 Advanced Machine Code Techniques for the BBC Micro A. P. Stephenson and D. J. Stephenson 0 246 12227 7 Electron Machine Code for Beginners lan Sinclair 0 246 12152 1 Advanced Electron Machine Code Techniques A. P. Stephenson and D. J. Stephenson 0 246 12403 2 Introducing Commodore 64 Machine Code Ian Sinclair 0 246 12338 9 Advanced Commodore 64 Machine Code Programming A. P. Stephenson and D. J. Stephenson 0 246 12442 3 Z80 Machine Code for Humans Alan Tootill and David Barrow 0 246 12031 2 6502 Machine Code for Humans Alan Tootill and David Barrow GRANADA London Toronto Sydney Newark Granada Technical Books Granada Publishing Ltd 8 Grafton Street, London W1X 3LA First published in Great Britain by Granada Publishing 1984 Copyright© Alan Tootill and David Barrow 1984 British Library Cataloguing in Publication Data Tootill, Alan 6502 machine code for humans. 1. 6502 (Microprocessor)—Programming 2. Machine codes (Electronic computers) I. Title IL Barrow, David 001.64'25 QA76.8.S63 ISBN 0-246-12076-2 Typeset by V & M Graphics Ltd, Aylesbury, Bucks Printed and bound in Great Britain by Mackays of Chatham, Kent All rights reserved. No part of this publication may be reproduced, stored in a retrieval system or transmitted, in any form, or by any means, electronic, mechanical, photocopying, recording or otherwise, without the prior permission of the publishers. Contents Preface vii 1 Getting Started I 2 Instruction Set Boosters 7 3 Organising for Character Display 22 4 Delays 32 5 Screen Filling and Scrolling 36 6 Displaying Text 45 7 Matching Input 53 8 Prompting 56 9 Conversion 63 10 Calculator Program 67 11 Relocatable Code 78 12 Points on Display 83 13 Lines and Shapes 93 14 Changing Shapes 100 15 Communicating 112 16 Wrinkles 117 Appendix A: The 6502 Instruction Set 121 Appendix B: Binary and Hexadecimal Number Systems 133 Appendix C: ASCII Character Codes 137 Index of Routines 139 Index 141 Preface Machine code is the language of the processor at the heart of your computer system. As its name suggests, it is a language designed for a machine to use. But the language and the machine are both products of human minds and machine code is just as much a language for humans. Unlike many other books on machine code, this book does not systematically explain the operation of each instruction in excessive detail. Instead, it presents you with simple, understandable tasks in computing that are carried out by groups of instructions (routines). Each task is described, the method explained and sufficient documentation given for you to work through the routines and see the part played by each instruction. Just as the words of a natural language come alive only in phrases and sentences, the instructions in a machine language have meaning only in how they relate to a complete process. We do not expect you to find this an easy or superficial book. Learning any language is hard work and, perhaps, machine code is more so than others since it demands attention to absolutely precise detail. But the effort has its rewards. On the practical side, a knowledge of machine code will enable you to understand more about the way your computer works and so put it to more effective use. On the recreational side - and we are dealing with personal computers, not the company mainframe - writing machine code that will directly control every action your computer makes can be as satisfying and pleasurable as playing chess or solving crossword puzzles. Writing better, more efficient code is a challenge to the intellect; machine code is habit-forming. We would like to thank Richard Miles and the staff of Granada Publishing for their patience and fine efforts with the manuscript, also our families who accepted our preoccupation with fortitude. Not least, we wish to thank the contributors to our machine code viii Preface series PCW SUB SET in the British magazine, Personal Computer World, whose enthusiasm for machine code programming encour­ aged us to write this book. Alan Tootill David Barrow Chapter One Getting Started When a personal computer is switched on, the processor automatically carries out a cycle of fetching and executing instructions that are stored in the computer’s memory. Only instructions of a limited form known as machine code are recognised by the processor. Any other form of instruction, such as that encountered in a BASIC program, has to be converted into equivalent machine code for execution, either in advance by a program called a compiler, or whilst running by a program called an interpreter. Computer codes, representing instructions and data, are binary numbers, usually expressed in the more convenient hexadecimal notation. Appendix B gives a brief explanation of these number systems as well as 2’s complement and binary coded decimal (BCD). Since even hexadecimal codes are difficult to use, machine code programming is usually done with the aid of a program called an assembler which converts easily remembered instruction mnemonics into actual machine code. Assemblers allow you to enter and edit instructions in mnemonic form and to use labels for branch and subroutine call destinations, calculating the addresses for you. If you insert or delete instructions, the source code (mnemonics) can be reassembled into machine code, the assembler taking care of all address changes. Hand-assembly is the process of carrying out the functions of an assembler by hand - tedious but necessary if you do not have an assembler. In Appendix A, and throughout the book, we give assembler mnemonics alongside the machine code. The 6502 processor As far as the software writer is concerned, the 6502 processor consists of one 16-bit register, five 8-bit registers and internal logic 2 6502 Machine Code for Humans which deals with arithmetic and data movement. The 16-bit register is used by the processor as a pointer to the memory location where the next instruction will be found. Three of the 8-bit registers are accessible to the programmer for storing values (0 to 255), carrying out arithmetic, acting as loop counters, and so on. The fourth is really a collection of 8 single bits (flags) giving certain information about processes carried out. The fifth 8- bit register is the stack pointer which indexes a reserved area of RAM called the stack. Use of the stack is explained below. The internal logic which decodes instructions need not concern us. Provided the processor is fed with the correct data and the right instructions in the right order, it will do the job we want. We do have to know how to make the processor act on data in specified memory locations using the correct addressing mode. Fuller information about the 6502 registers, flags and addressing modes is given in Appendix A where it is handy for quick reference. The 6502 stack The 6502 stack occupies page 1 of memory (addresses $0100 to $01FF) and is used primarily for storage of the current program address when a subroutine is called. It is also used for temporary storage of register contents while the registers are used for other purposes. The stack is indexed by the 8-bit stack pointer. When the computer is switched on this takes a random value and has to be initialised via the X register using the TXS instruction. The usual initialisation value is $FF - the highest stack address. Thereafter the stack pointer will keep track of the next stack location available for storage of an 8-bit value. JSR (jump to subroutine) causes a sequence of four actions affecting the stack and stack pointer (S). (1) The high order byte of the Program Counter (PC) is copied to stack at S0100+S. (2) S is decreased by 1 to point to the next free stack location. (3) The low order byte of the PC is copied to S0100+S. (4) S is again decreased by 1. The PC is then loaded with the subroutine address from the JSR instruction and execution continues at the subroutine. At the end of Getting Started 3 the subroutine, the instruction RTS (return from subroutine) causes the reverse sequence: (1) S is increased by 1. (2) Lo-byte PC is loaded from $0100+S. (3) S is increased by 1. (4) Hi-byte PC is loaded from S0100+S. PC is increased by I and program execution then continues from the instruction following the JSR. Register values can also be saved (pushed) to and restored (pulled) from stack using the PH A, PHP, PLA and PLP instructions. Great care must be taken to ensure that all restoration of register values and PC addresses is carried out in exact reverse order from that in which they were saved. If not, a stacking error will result and the computer will attempt to continue program execution at an erroneous address. In the vast majority of cases this will cause a system crash. You must also be aware of the highest number of bytes that your program will need to save on stack at any one time. The 6502 stack will accommodate only 256 bytes - that is, 128 addresses. After that the stack pointer is decreased from $00 to $FF by a ‘wraparound’ decrement and once again indexes the higher end of the stack page. Pushing any more addresses or register values will cause previously stacked values to be overwritten. In Chapter 2 we give routines which provide you with a ‘user stack’.
Recommended publications
  • Small Computer Monitor User Guide
    SmallSmall ComputerComputer MonitorMonitor UserUser GuideGuide Monitor version 1.0 for the Z80 CPU Software and Documentation by Stephen C Cousins Edition 1.0.0 CONTENTS OVERVIEW................................................................................................................4 Conventions....................................................................................................... 4 Serial port.......................................................................................................... 5 LiNC80 systems.................................................................................................. 5 RC2014 systems................................................................................................. 6 COMMANDS..............................................................................................................7 ? or Help............................................................................................................ 7 API function call................................................................................................. 8 Assemble instructions...................................................................................... 10 Baud rate setting............................................................................................. 13 Breakpoint set or clear..................................................................................... 13 Console...........................................................................................................
    [Show full text]
  • COMMODORE HOTLINE - What's New on the Commodore Scene 1 4
    co mmodore COMPUTING international December 1SS2 £1.00 U S A S32.5Q MICROS FOR OPTICIANS CBM 64 MEMORY MAPS NEW BEGINNERS GUIDE WORD PROCESSING LIGHT PEN VICAID VIC Two sets of Fabulous Utilities in one! LIG H TPEN PROGRAMMERS TOOLKIT Gives extra commands: Auto, Number, Help, Delete, Change, DAMS PRICE T race, Step, LightPen, Breaketc. and ONLY MACHINE CODE MONITOR Gives Save, Memory Display, Load, Verify etc. Similar to TIM on PET. + VAT Examine the VICS ROM £ 1 7 .3 5 Needs DAMS RAM/ROM board or similar FOR PET £ 1 9 .9 5 vat 12" SCREEN £ 1 9 .9 5 + VAT VICMON RAM ’N ROM THE ULTIMATE BOARD PROGRAMING AID FOR THE VIC 3K RAM In Hires area. Also space for Full machine code VICAID and package with: VICMON Assembler, Dissassembler, programming aids Fill, Re-locate, Identify, Exchange, Compare, Printing, Dissassembler etc., etc. Needs DAMS RAM/ROM board or similar +VAT £ 1 9 .9 5 + VAT (Includes Cover) BUY THE 3K RAM N ROM BOARD WITH VICAID AND VICMON WITH MACHINE CODE MANUAL (WORTH £5.00) FROM MOS TECHNOLOGY FOR ONLY £67.85 + VAT AND GET A FREE VIC LIGHT PEN (WORTH £17.35) VIC REFERENCE GUIDE R.R.P. £14.95 DAMS PRICE £14.50 VIC STARTER KIT VIC 20 C2N Cassette Deck, 10 Blank Cassettes, User Manual, Vic Programmers Reference Guide, ANTIGLARE 1 Joystick. Worth£238.30 ONLY«^0 4 m A A SCREENS FOR PET L Z 1 4 . U U +v a t 40 Column (VAT INCL. PRICE = £244.62) £17.95 80 Column OR VIC 20 With free 3K RAM pack or £19.95 Super Cartridge Game ONLY £173.83 ALL PRICES PLUS VAT VDU VIEW THRU + VAT ACCESS & DAMS BUSINESS COMPUTERS LTD.
    [Show full text]
  • ©Beebugsoft 19984
    EXMON II Extended machine code monitor supplied on Eprom for the BBC Micro and Electron BEEBUG SOFT BEEBUG SOFT BEEBUG SOFT BEEBUG SOFT EXMON II THIRD GENERATION MACHINE CODE MONITOR For the BBC MICRO & ELECTRON ©BEEBUGSOFT 1984 P.O. Box 50, St. Albans, Herts. All rights reserved. No part of this product may be reproduced in whole or part by any means without written permission of the publisher. Unauthorised hiring, renting, loaning, public performance or broadcasting of this product or its constituent parts is prohibited. While every care is taken, the publisher cannot be held responsible for any errors in this product. 1 EXMON II THIRD GENERATION MACHINE CODE MONITOR For the BBC MICRO &ELECTRON by Mark Tilley CONTENTS 1. Introduction 3 2. Starting Instructions 5 3. General Overview 6 4. Memory Editor 11 5. Simple Commands 13 6. Relocation 15 7. Debugging Commands 17 8. Single-Stepping 19 9. Trace Options 20 10. Dual Screen Operation 21 Appendix (i) Examples 24 Appendix (ii) Assembling from tape/disc 26 Appendix (iii) Electron Notes 27 Appendix (iv) Command Summary 28 2 3 1. INTRODUCTION EXMON II is an extremely sophisticated third generation machine code monitor for the BBC Micro and Electron. It incorporates a number of advanced features not to be found on EXMON I (i.e. the first release of EXMON), while omitting only one EXMON I feature -- the on-screen Help facility. This had to be sacrificed because of lack of space, and is replaced by a command summary card. Electron users should consult appendix (iii) at this point.
    [Show full text]
  • Learn Programming Or Fun and the Future
    A MARSHALL CAVENDIS 9 COMPUTER COURSE IN WEEKLY PARTS LEARN PROGRAMMING OR FUN AND THE FUTURE HOW TO ORDER YOUR BINDERS UK and Republic of Ireland: Send £4.95 (inc p & p) (IR£5.45) for each binder to the address below: Marshall Cavendish Services Ltd, Department 980, Newtown Road, Hove, Sussex BN3 7DN Australia: See inserts for details, or Vol 1 No 9 write to INPUT, Gordon and Gotch Ltd, PO Box 213, Alexandria, NSW 2015 New Zealand: See inserts for details, or write to INPUT,Gordon and Gotch APPLICATIONS (NZ) Ltd, PO Box 1595, Wellington . . Malta: Binders are available from F DISPLAY YOUR FACTS AND FIGUR ES 267 A local newsagents. Type this program in and you will instantly be able to prepare a colourful bar chart of any data GAMES PROGRAMMING 9 There are four binders each holding 13 issues. PLANNING AN ADVENTURE 264 The first part of a series showing you how to BACK NUMBERS Copies of any part of INPUT can be obtained from the following addresses at the develop a complete adventure game regular cover price, with no extra charge for postage and packing: UK and Republic of Ireland: BASIC PROGRAMMING 19 INPUT, Dept AN, Marshall Cavendish Services, Newtown Road, Hove BN3 7DN Australia, New Zealand and Malta: CROSS-REFERENCING YOUR ARRAYS 269 Back numbers are available through your local newsagent How to store information in multi-dimensioned arrays, and then call up the data to order MACHINE CODE 10 COPIES BY POST Our Subscription Department can supply your copies direct to you regularly at £1.00 each.
    [Show full text]
  • Cegmon User's Guide
    a new monitor for OSI and UK101 BASIC-in-ROM systems user's guide Warranty terms There is no warranty, either expressed or implied, for CEGMON in any version. CEGMON is sold subject to the distributor's standard conditions of sale, copies of which are available on request. Although it has been extensively tested and is believed to be error-free, there is no guarantee that any of the software will operate under conditions not noted in this User Guide. Despite the above, we would be grateful for any comments regarding CEGMON or on any possible faults which may appear, to help us in developing future versions. Licensing and copyright terms CEGMON and its documentation are protected both by copyright and also by our standard licensing agreement for software (copies available on request). In essence, you have bought a 2716 EPROM and associated documentation, and a licence to use the software contained on or in it for your own purposes on your own computer. Copying all or any part of the software onto any medium or into any retrieval system and/or using this on a computer not owned by you is expressly excluded from the terms of your licence and would constitute a breach of contract. CEGMON © 1980 George Chkiantz, Richard Elen, Tom Graves Sold under licence and distributed by Mutek, Quarry Hill, Box, Wiltshire, England Documentation prepared by Wordsmiths, 19a West End, Street, Somerset BA16 OLQ Introduction CEGMON has been developed to provide you with the kind of firmware support that you need to get the most out of your computer.
    [Show full text]
  • Assembly Language Programming for the Bbe Microcomputer
    Assembly Language Programming for the BBe Microcomputer Macmillan Microcemputer Books General Editor: Ian Birnbaum (General Adviser (Microelectronics in Education) Education Department, Humberside County Council)) Advanced Graphics with the Acorn Electron Ian O. Angell and Brian J. Jones Advanced Graphics with the BBC Model B Microcomputer Ian O. Angell and Brian J. Jones Interfacing the BBC Microcomputer Brian Bannister and Michael Whitehead Assembly Language Programmingfor the BBC Microcomputer (second edition) Ian Birnbaum Using Your Home Computer (Practical Projects for the Micro Owner) Garth W. P. Davie The Future ofthe Microcomputer in Schools Nick Evans Microchild: Learning through LOGO Serafim Gascoigne The Purple Planet- Micro-PROLOG for the Spectrum 48K Serafim Gascoigne Turtle Fun - LOGO for the Spectrum 48K Serafim Gascoigne A Science Teacher's Companion to the BBC Microcomputer Philip Hawthorne Operating the BBC Microcomputer: A Concise Guide Graham Leah Sorting Routines for Microcomputers Keith McLuckie and Angus Barber Using Sound and Speech on the BBC Microcomputer Martin Phillips Beginner's Guide to Interfacing the BBC Microcomputer Martin Phillips The Complete Disc Manual for theBBC Microcomputer R. I. M. Sadek File Handling on the BBC Microcomputer Brian J. Townsend Good BASIC Programming on the BBC Microcomputer Margaret White Other books of related interest Advanced Graphics with the IBM Personal Computer Ian O. Angell Advanced Graphics with the Sinclair ZXSpectrum Ian O. Angell and Brian J. Jones Micro-Maths Keith Devlin Geometric and Artistic Graphics: Design Generation with Microcomputers Jean-Paul Delahaye Practical BASIC Programming Peter Gosling Word Processing with Amstrad: The PCW8256 and 8512 Ron Hughes The Commodore 64 in Action M.
    [Show full text]
  • IDE64 HARDDRIVE/CDROM CONTROLLER for Commodore 64
    Contact Addresses IDE64 HARDDRIVE/CDROM Contact the authors through the internet: CONTROLLER WWW: for http://come.to/ide64 http://singularcrew.hu/ide64warez/ Commodore 64/128 E-mail: [email protected] (IDEDOS) [email protected] (hardware, manager) [email protected] (software, cd, warez, IDEDOS etc.) instructions manual This document is a subject of change, so update to the newest version of it to stay informed about the latest features. This manual was created on 2001.Feb.12. with IDEDOS v0.89 in mind and updated on 2002.Okt.11. If you have no internet access, or you want to order anything related to IDE64, contact Protovision at Jakob Voos Niersstr. 1 40547 Duesseldorf Germany [email protected] www.protovision-online.de Attention: Names, technologies and standards used in this document may be protec- ted by author's rights or patents. This manual was created by the IDE64 crew and Protovision in 2002. 18 Appendix B Description of IDEDOS error messages 00, OK,00,00 Everything seems to be ok. 23, READ ERROR,00,00 Media error/device timeout. Quite common when using buggy CDs. 26, WRITE PROTECT ON,00,00 File/device is write protected. 29, DISK ID MISMATCH,00,00 CD in drive was replaced. 31, SYNTAX ERROR,00,00 Unknown/not implemented command. 62, FILE NOT FOUND,00,00 File couldn't be found. 63, FILE EXISTS,00,00 File/directory already exists. 64, FILE TYPE MISMATCH,00,00 Usage of an unknown filetype/or a try to change a directory into a file. 73, IDE DOS Vx.xx IDE64,00,00 Identify string for harddrive.
    [Show full text]
  • U·M·I University Microfilms International a Bell & Howellinforrnation Company 300 North Zeeb Road, Ann Arbor, M148106-1346 USA 313/761-4700 800/521-0600
    Personal computing in the CEMA community: A study of international technology development and management. Item Type text; Dissertation-Reproduction (electronic) Authors Stapleton, Ross Alan. Publisher The University of Arizona. Rights Copyright © is held by the author. Digital access to this material is made possible by the University Libraries, University of Arizona. Further transmission, reproduction or presentation (such as public display or performance) of protected items is prohibited except with permission of the author. Download date 07/10/2021 15:25:25 Link to Item http://hdl.handle.net/10150/184767 INFORMATION TO USERS The most advanced technology has been used to photo­ graph and reproduce this manuscript from the microfilm master. UMI films the text directly from the original or copy submitted. Thus, some thesis and dissertation copies are in typewriter face, while others may be from any type of computer printer. The quality of this reproduction is dependent upon the quality of the copy submitted. Broken or indistinct print, colored or poor quality illustrations and photographs, print bleedthrough, substandard margins, and improper alignment can adversely affect reproduction. In the unlikely event that the author did not send UMI a complete manuscript and there are missing pages, these will be noted. Also, if unauthorized copyright material had to be removed, a note will indicate the deletion. Oversize materials (e.g., maps, drawings, charts) are re­ produced by sectioning the original, beginning at the upper left-hand corner and continuing from left to right in equal sections with small overlaps. Each original is also photographed in one exposure and is included in reduced form at the back of the book.
    [Show full text]
  • Small Computer Monitor Installation
    SmallSmall ComputerComputer MonitorMonitor InstallationInstallation Monitor version 1.0 for the Z80 CPU Software and Documentation by Stephen C Cousins Edition 1.0.0 CONTENTS OVERVIEW................................................................................................................2 INSTALLATION OPTIONS............................................................................................... 3 LINC80, 16K EPROM 27C128, MONITOR L1............................................................... 4 LINC80, 32K EPROM 27C256, MONITOR L1............................................................... 4 LINC80, 64K EPROM 27C512, MONITOR L1............................................................... 5 LINC80, 32K EEPROM 28C256, MONITOR L1............................................................. 5 RC2014 MINI, 8K EPROM 27C64, MONITOR R1..........................................................6 RC2014 MINI, 16K EPROM 27C128, MONITOR R1......................................................6 RC2014 MINI, 32K EPROM 27C256, MONITOR R1......................................................7 RC2014 MINI, 64K EPROM 27C512, MONITOR R1......................................................7 RC2014 MINI, 8K EEPROM 28C64, MONITOR R1........................................................8 RC2014 MINI, 32K EEPROM 28C256, MONITOR R1....................................................8 RC2014 CLASSIC, 8K EPROM 27C64, MONITOR R1...................................................... 9 RC2014 CLASSIC, 64K EPROM 27C512, MONITOR R1.................................................
    [Show full text]
  • Dragon 32 Programmers Reference Guide (John Vander Reyden).Pdf
    DRAliON32 programmer's reference guide DRA&ON32 -,,ragrammer•s reference g11ide iiW_is MELBOURNE HOUSE Published in the United Kingdom by: Melbourne House (Publishers) Ltd., Melbourne House, Church Yard, Tring, Hertfordshire HP23 5LU, ISBN 0-86161- 134-9 Published in Australia by: Melbourne House (Australia) Ply. Ltd., Suite 4, 75 Palmerston Crescent, South Melbourne, Victoria, 3205, National Library of Australia Card Number and ISBN 0-86759-136-6 Published in the United States of America by: Melbourne House Software Inc., 347 Reedwood Drive, Nashville TN 37217. This book was edited by John Vander Reyden. With contributions from Denver Jeans. Copyright (c) 1983 Beam Software All rights reserved. This book is copyright. No part of this book may be copied or stored by any means whatsoever whether mechanical or electronic, except for private or study use as defined in the Copyright Act. All enquiries should be addressed to the publishers Printed in Hong Kong by ColorcraftLtd. 1st Edition Contents Introduction . 1 What's included . .. .. ................ 1 How to use this guide . .. ... .. .. ... .. .... .. .. .. 2 Chapter 1 BASIC ...................................... ......... 3 Constants . .. .. .... .. .. .. .. .. .. .... .. 3 Variables . 4 Arrays .. ... .... .. .... .. 4 Conversion . .. .. 5 Lines . .. .. .. .. .. .. .. .. .. 7 BASIC Commands ...................................... 7 BASIC Functions ....................... 28 Errors in BASIC ........................ 35 Chapter 2 GRAPHICS . .. .. ............. 36 Pixels and Resolution ...
    [Show full text]
  • Mastercode Assembler
    ~ OBJECT CODE INSTRUCTION OPERAND FORMAT F5 X SBC ADDR.X F6 X INC ADDR.X F8 SED F9 XX SBC ADDR2.Y FD XX SBC ADDR2.X FE XX INC ADDR2.X Notes: 'X' or 'XX' in the first column refers to the number of bytes following the opcode. 'ADDR'refers to a single byte address. 'ADDR2' refers to a two byte address. 'DIS' refers to displacement. 'DA TA'refers to a data byte. 28 ··commo(Jore64·· mastercode assembler :& SUNSHINE ---- - , , Contents Page Introduction 1 Mastercode Features 1 Loading Mastercode 2 Mastercode Output 2 The Main Menu 2 ....c. enceand Mark England The Disassembler 6 The File Editor 8 The Assembler 11 Assembler Directives 13 Labels 16 Expressions 16 Variables 16 The Symbol Table 17 reserved. No part of this publication may be Comments in Programs 18 oced, stored in a retrieval system, or transmitted in any Loading Registers with Characters 18 or.by any means, electronic, mechanical, photocopying, Error Messages 18 "acoti and/or otherwise, without the prior written Number Bases 19 permisSion of the Publishers. Location of Code for Assembled Programs 19 Using Machine Code with BASIC 21 Available Instructions and Formats 22 Cover design by Graphic Design Ltd. Illustration by Stuart Hughes. Typeset and printed in England by The Leagrave Press Ltd. '" (ii) (iii) Contents Page Introduction 1 Mastercode Features 1 Loading Mastercode 2 Mastercode Output 2 The Main Menu 2 ....c. enceand Mark England The Disassembler 6 The File Editor 8 The Assembler 11 Assembler Directives 13 Labels 16 Expressions 16 Variables 16 The Symbol Table 17 reserved.
    [Show full text]
  • ·Commodore 64
    ~ -. :_l_j_ . -_ I ~ ' ­- ~-.!'L'" ·COMMODORE 64 BRUCE BAYLEY COMMODORE 14 EXPOSED COMMODORE 64 E POSED BRUCE BAYLEY _._,- _lWj_ "-"L~ MELBOURNE HOUSE Published in the United Kingdom by: Melbourne House (Publishers) Ltd., Melbourne House, Church Yard, Tring, Hertfordshire HP23 5LU, ISBN 0 - 86161 -133 - 0 Published in Australia by: Melbourne House (Australia) Pty. Ltd., Suite 4, 75 Palmerston Crescent, South Melbourne, Victoria, 3205, National Library of Australia Card Number and ISBN 0 - 86759 -144 - 7 Published in the United States of America by: Melbourne House Software Inc., 347 Reedwood Drive, Nashville TN 37217. Copyright (c) 1983 Beam Software Contributions by: Andrew Paulomanolakos Peter Falconer Goodwin Yuen All rights reserved. This book is copyright. No part of this book may be copied or stored by any means whatsoever whether mechanical or electronic, except for private or study use as defined in the Copyright Act. All enquiries should be addressed to the publishers Printed in Hong Kong by Colorcraft Ltd. 1st Edition Contents Chapter 1 Programming in Basic ........................................................... Immediate and Program Modes ........ .................. .............. ... ... 1 Control Structures ................................................................... 2 Data Structures ........................................................................ 6 Bits and Bytes..................................................................... 6 Characters.........................................................................
    [Show full text]