ebook img

Atari assembly language programmer's guide PDF

346 Pages·70.02 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Atari assembly language programmer's guide

WESEfiI SOFTWARE SERIES Atari Assembly Language Programmer's Guide by Allan E. Moose Marian J. Lorenz Weber Systems, Inc. Chesterland, Ohio The authors ha ve exercised due care in the preparation of this book and the programs contained in it. The authors and the publisher make no warranties either express or implied with regard to the information and programs contained in this book. I n no event shall the authors or publisher be liable for incidental or consequential damages arising out of the furnishing, performance, or use of this book andl or its programs. Atari 400'·, Atari 800'". Atari 800XL'·. Atari 130XE'·. and Atari TOLich Table +'. arc trademarks or Atari Corporation. Koala Pad'· is a trademark or Koala Technologies Inc. Published by: Weber Systems, Inc. 8437 Mayfield Road Chesterland, Ohio 44026 (2 I 6)729-2858 For information on translations and book distributors outside of the United States, please contact WSI at the above address. Atari Assembly Language Programmer's Guide Copyright© 1986 by Allan Moose and Marian Lorenz. All rights reserved under International and Pan-American Copyright Conventions. Printed in the United States of America. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopy, recording, or otherwise without the prior written permission of the publisher. Contents List of Boxes 7 List of Figures 9 List of Tables 11 Preface 13 Introduction 15 1. Number Systems and Hardware 21 Decimal Number Systems 22 Binary System 22 Hexadecimal System 31 Codes 35 CPU 36 ANTIC, GTIA, POKEY, PIA 40 Overview of Memory 41 2. Overview of 6502 Instructions 45 Instructions by Function 48 Addressing Modes 55 ____________________________ 63 3. Atari Graphics TV Operation 64 ANTIC 66 Display Modes 72 Display Lists 76 Page Flipping 95 Color 97 Artifacting 106 Character Set Graphics 107 ANTIC Modes 4 and 5 _______________ 112 Player Missile Graphics 115 Coil i sions/Priority 129 4. Getting Started In Machine Language Programming 135 Display List Interrupts 136 Program Listing Conventions ____________ _ 149 USR 151 Strings _____________________ 152 Branching ___________________ _ 161 Parameter Passing 162 Arithmetic Instructions _______________ 168 Two's Complement Arithmetic ____________ 169 AND, ORA, LSR 171 5. Sound 179 A Bit of Theory 180 Sound Hardware 189 Program Examples 197 Sixteen-Bit Music ___ _____________ _ 224 6. Advanced Techniques 229 The Vertical Blank Routines 230 Scrolling 235 Vertical Scrolling 237 Horizontal Scrolling 249 Diagonal Scrolling 257 Vertical Blank Music 260 Touch Tablet 274 Appendices 281 Summary of I nstruction Set 281 An Atari Assembler 283 An Atari Disassembler 293 Memory Map 301 ATASCII Codes 309 Instructions and Flags 319 Decimal Values for the 6502 Instructions 321 Musical Note Values 325 Index 329 List of Boxes 1 Flags 39 2 Memory Allocation 42 3 AND-OR-EOR 54 4 Program - Display List Dump 79 5 Program - Position Concepts 86 6 Program - Modified Graphics 8 87 7A Program - Mode 4 Display List 92 7B Program - Antic Mode 4 with Rocket 93 8 Program - Antic Mode 14 Display List 96 9 Program - Page Flipping 97 10 Program - POKEing in Colors 103 11 Program - Two Methods of Displaying 105 12 Program - Artifacting 107 13 Utility - BASIC Character Generator 110 14 Program - Redefined Character 113 15 Utility - Multicolored Character Generator 116 16 Program - Light Bulb Player 129 17 Program - Collision 132 18 Program - Display List Interrupt 137 19 Program - Display List Interrupt 140 20 Program - Display List Interrupt 143 21 Program - DLI Color Table 146 22 Program - USR, Strings 153 23 Notation/Listing for Machine Language 154 24 Assembly Language Listing - MOV$ 157 25 Assembly Language Listing - REDEF$ 158 25A Assembly Language Listing - REDEF$ (256 bytes) 159 7 8 Atari Assembly Language Programmer's Guide 25B Assembly Language Listing - REDEF$ (512 bytes) 160 26 Program - Moving Player 164 27 Assembly Language Listing - Moving Player 166 28 Program - Moving Missile 173 29 Assembly Language Listing - Moving Missile 174 30 Utility - Sound Effects Generator 193 31 Program - Sound Envelope 198 31A Assembly Language Listing - Sound Envelope 199 32 Program - Tremolo 201 32A Assembly Language Listing - Tremolo 202 33 Program - Vibrato 204 33A Assembly Language Listing - Vibrato 205 34 Program - Volume Only 208 34A Assembly Language Listing - Volume Only 209 35 Program - Volume with Frequency Variation 210 35A Assembly Language Listing - Box 35 211 36 Program - Waveform 214 36A Assembly Language Listing - Waveform 215 37 Utility - Music Data Generator 216 38 Program - Three Blind Mice (music) 218 38A Assembly Language Listing - Three Blind Mice 219 39 Program - Three Blind Mice with Chords 221 39A Assembly Language Listing - Three Blind Mice 222 40 Program - 16-Bit Music 225 40A Assembly Language Listing - 16-Bit Music 226 41 Machine Language Routine for VB Link 233 42 Program - Vertical Scrolling 238 42A Assembly Language Listing - CLEAR$ 240 42B Assembly Language Listing - SUB$ 241 42C Assembly Language Listing - Vertical Scroll 243 43 Program - Horizontal Scrolling 253 43A Assembly Language Listing - Horizontal Scroll 255 43B ML$ Listing 256 44 Program - Diagonal Scrolling 257 44A Assembly Language Listing - Diagonal Scrolling 259 45 Program - Finale (Scrolling/Music) 264 45A Assembly Language Listing - Finale Scrolling 267 45B Assembly Language Listing - Finale Music 272 46 Program - Reading the Atari Touch Tablet 276 46A Assembly Language Listing - Touch Tablet 277 47 Program - Atari Touch Tablet Music 278

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.