Rn Programming

Total Page:16

File Type:pdf, Size:1020Kb

Rn Programming A MARSHALL CAVENDISH 8 COMPUTER COURSE IN WEEKLY PARTS RN PROGRAMMING - FOR FUN AND THE FUTURE ilOW TO ORDER YOUR BINDERS UK and Republic of Ireland: Send £4.95 (inc p & p) (1R£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 8 write to INPUT, Gordon and Gotch Ltd, PO Box 213, Alexandria, NSW 2015 PERIPHERALS New Zealand: See inserts for details, simmemor or write toINPUT,Gordon and Gotch PRINTERS: THE CHOICES 225 (NZ) Ltd, PO Box 1595, Wellington Malta: Binders are available from local newsagents. To take a hardcopy of a listing or write a letter, you need a printer—but which sort? GAMES PROGRAMMING 8 BREAKING THE SOUND BARRIER 230 There are four binders each holding 13 issues. Build up a library of exciting sound effects to add to your games routines BACK NUMBERS MACHINE CODE 9 Copies of any part of INPUT can be obtained from the following addresses at the regular cover price, with no extra charge for postage and packing: UK and Republic of Ireland: INPUT, Dept AN, Marshall Cavendish Services, GETTING TO THE HEART OF IT iM 111236 Newtown Road, Hove BN3 7DN L_ Australia, New Zealand and Malta: The CPU is the heart of the machine and controls all Back numbers are available through your local newsagent operations. Learn how to communicate with it BASIC PROGRAMMING 15 COPIES BY POST UNDERSTANDING PEEK AND POKE 240 Our Subscription Department can supply your copies direct to you regularly at £1.00 each. For example the cost of 26 issues is £26.00; for any other quantity simply Look into your computer's memory and use the values multiply the number of issues required by £1.00. These rates apply anywhere in the that are stored there world. Send your order, with payment to: Subscription Department, Marshall Cavendish Services Ltd, Newtown Road, Hove, Sussex BN3 7DN BASIC PROGRAMMING 16 Please state the title of the publication and the part from which you wish to start. HOW TO PAY: Readers in UK and Republic of Ireland: All cheques or postal orders DRAGON/TANDY: BETTER GRAPHICS 248 for binders, back numbers and copies by post should be made payable to: Marshall Cavendish Partworks Ltd. Setting up colour UDGs on these machines QUERIES: When writing in,please give the make and model of your computer,as BASIC PROGRAMMING 17 well as the Part No., page and line where the program is rejected or where it does not work. We can only answer specific queries –and please do not telephone. Send your queries to INPUT Queries, Marshall Cavendish Partworks Ltd, 58 Old MAKING PICTURES WITH MATHS 250 Compton Street, London WIV SPA. Understanding SIN and COS, and what you can do with them INPUT IS SPECIALLY DESIGNED FOR: INDEX The last part of INPUT, Part 52, will contain a complete, cross-referenced index. The SINCLAIR ZX SPECTRUM (16K, 48K,128 and + ), For easy access to your growing collection, a cumulative index to the contents COMMODORE 64 and 128, ACORN ELECTRON, BBC B of each issue is contained on the inside back cover. and B+,and the DRAGON 32 and 64. In addition, many of the programs and explanations are also PICTURE CREDITS Front cover, Dave King. Pages 225, 226, 228, Nick Farmer. Pages 230, 232, 233, suitable for the SINCLAIR ZX81, COMMODORE VIC 20, and 234, 235, Tudor Art Studios. Pages 236, 237, 238, Chris Lyon. Pages 240, 242, 244, TANDY COLOUR COMPUTER in 32K with extended BASIC. Dave King/Ian Craig/Roy Flukes. Pages 243, 245, 246, Ian Stephen. Page 248, Programs and text which are specifically for particular machines Associated Press/Graham Bingham. Pages 250, 252, 254, JD Audio Visual. Page are indicated by the following symbols: 255, Ray Duns. Equipment loaned by Lasky's, Tottenham Court Road, London WI. © Marshall Cavendish Limited 1984/5/6 SPECTRUM All worldwide rights reserved. K,128, and tiK COMMODORE 64 and 128 The contents of this publication including software, codes, listings, graphics, illustrations and text are the exclusive property and copyright of ACORN ELECTRON, Marshall Cavendish Limited and may not be copied, reproduced, El BBC B and B+ 1Z1 DRAGON 32 and 64 transmitted, hired, lent, distributed, stored or modified in any form TANDY IRS80 whatsoever without the prior approval of the Copyright holder. a nun [411 VIC 20 mr COLOUR COMPUTER Published by Marshall Cavendish Partworks Ltd, 58 Old Compton Street, London W1V SPA, England. Printed by Artisan Presss, Leicester and Howard Hunt Litho, London. ■ DO YOU NEED A PRINTER? ■ CHOOSING THE RIGHT TYPE ■ BUYING THE PAPER ■ CONNECTING THE PRINTER TO YOUR COMPUTER If you've ever wanted a 'hard' copy permanent record of any information that can of your program or a screen dump be brought to the screen. of some graphics then you'll need a For example, there are many attractive graphic designs—computer art, maybe—that printer. But how do you know you could print and file or even frame, but which sort to buy? without a printer they exist only fleetingly on the VDU screen. If you write a lengthy Buying a printer is one way to extend the program, you may well want a record of the usefulness of your computer and develop your listing to keep or to work on away from the programming skills. But it can be a very computer. If you write or buy business expensive investment, and since the choices programs, you will need to print graphs or and range of prices are just as varied as for charts to be included in reports. And for computers, only the best-informed micro user Computer Aided Design you need a record of can be sure of the need for a printer or of shapes or objects that can be referred to away buying the most suitable one. from the computer. The normal way in which a computer All home computers have a keyboard, outputs information to the user is onto a TV which is similar to that of a typewriter, so you screen or VDU. A printer is just an alternative can type and print correspondence, data—or means of displaying the same information. But even a book—as on a typewriter. Your capa- don't imagine that both devices have the same city to handle text can be extended far beyond uses—one is no substitute for the other. The mere typing and into the realms of word key role of a printer is to give a 'hard' copy or processing, where you can manipulate text in A single column of blunt needles strikes an inked ribbon to form the pattern of dots that make up each character of a dot matrix printer all sorts of ways. Given the right software, ters per second (cps) to over 400. One disad- your micro already has this ability, but a TYPES OF PRINTER vantage of some of these printers, however, is carefully composed block of text—whether it is There are four types of printer that might be that the characters do not have true just a short letter or even the contents of a suitable for the home micro user. These are the descenders—the 'tails' on letters, such as 'g' booklet—is of little use if it cannot be printed. impact dot matrix, daisywheel, thermal, and and 'q'. They make the entire character sit And almost all users would find a printer pen printers. above the line, without the tail dropping helpful as a programming aid. As well as The impact dot matrix printer is the most below. True descenders are desirable for clar- providing a back-up or copy of your work, it is popular type. As with all modern printers, the ity and attractive presentation, and this feature often far easier to spot mistakes on paper than carriage remains stationary while the print is available on the better dot matrix printers. by scrolling through the program on a VDU head advances across the width of the paper. Early designs of impact dot matrix printers screen. The merits of the VDU are many but, The print head contains a closely grouped used a seven-needle print head to produce generally, people are more familiar with vertical column of needles which are attached characters in a matrix, or pattern, of 5 x 7 printed information so they find it easier to to solenoids. When a solenoid is activated, its dots—five columns of seven rows. More recent work with than an electronic image. needle is pushed forwards against an ink designs employ nine needles to produce a 7 x 9 These attributes may well make a printer ribbon onto the paper, making an ink dot. By or 9 x 9 matrix. appear an essential aid to all computer users. firing the right combination of needles and Even with the best dot matrix printers, the But it is as well to remember that these abilities advancing the position of the print head, a characters can appear distinctly dotted, are not all built into every printer, and the character is formed. although they are clearly legible. They are most versatile printers are prohibitively ex- Commodore users have a choice of two dot quite suitable for most non-professional work, pensive. For example, not all printers can matrix printers which are dedicated to their and can be made to print pictures from the handle graphics, and only a few can print in machines—the difference is in price and per- screen.
Recommended publications
  • A Beginner's Guide to Freebasic
    A Beginner’s Guide to FreeBasic Richard D. Clark Ebben Feagan A Clark Productions / HMCsoft Book Copyright (c) Ebben Feagan and Richard Clark. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". The source code was compiled under version .17b of the FreeBasic compiler and tested under Windows 2000 Professional and Ubuntu Linux 6.06. Later compiler versions may require changes to the source code to compile successfully and results may differ under different operating systems. All source code is released under version 2 of the Gnu Public License (http://www.gnu.org/copyleft/gpl.html). The source code is provided AS IS, WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Microsoft Windows®, Visual Basic® and QuickBasic® are registered trademarks and are copyright © Microsoft Corporation. Ubuntu is a registered trademark of Canonical Limited. 2 To all the members of the FreeBasic community, especially the developers. 3 Acknowledgments Writing a book is difficult business, especially a book on programming. It is impossible to know how to do everything in a particular language, and everyone learns something from the programming community. I have learned a multitude of things from the FreeBasic community and I want to send my thanks to all of those who have taken the time to post answers and examples to questions.
    [Show full text]
  • Basicatom Syntax Manual Basicatom Syntax Manual
    BasicATOMBasicATOM SyntaxSyntax ManualManual Unleash The Power Of The Basic Atom Version 2.2.1.3 Warranty Basic Micro warranties its products against defects in material and workmanship for a period of 90 days. If a defect is discovered, Basic Micro will, at our discretion repair, replace, or refund the purchase price of the product in question. Contact us through the support system at http://www.basicmicro.com No returns will be accepted without the proper authorization. Copyrights and Trademarks Copyright© 1999-2004 by Basic Micro, Inc. All rights reserved. PICmicro® is a trademark of Microchip Technology, Inc. MBasic, The Atom and Basic Micro are registered trademarks of Basic Micro Inc. Other trademarks mentioned are registered trademarks of their respec- tive holders. Disclaimer Basic Micro cannot be held responsible for any incidental, or consequential damages resulting from use of products manufactured or sold by Basic Micro or its distributors. No products from Basic Micro should be used in any medical devices and/or medical situations. No product should be used in a life support situation. Contacts Web: http://www.basicmicro.com Discussion List A web based discussion board is maintained at http://www.basicmicro.com Updates In our continuing effort to provide the best and most innovative products, software updates are made available by contacting us at http://www.basicmicro.com Table of Contents 5 Table of Contents Contents Introduction .................................................12 What is the BasicATOM ? ...............................................................
    [Show full text]
  • Pet Pointers
    RANDOM REMARKS Concerning RND(X): Memory locations 218-222 store previous random number, in usual PET notation: R = ((((PEEK(222)/256 + PEEK) (221))/256 + PEEK(220))/256 + PEEK(219))/256 + .5)*2t (PEEK(218)— 128) To “randomize,” try a statement like “X=RND(—TI).” Don’t use the re­ SPOT sulting X, but call RND(l) thereafter. The Society of PET Owners and Trainers (RND(negative # ) fills memory loca­ tions 218-222 with a scrambled-bytes version of the argument.) Mark Zimmermann Pasadena, CA PET VANCOUVER PETS The Vancouver PET Users Group recently POINTERS held their second meeting. The success of the PET has caught us all by surprise. The attendance at our second meeting • • • was over double the first, with some 40 owners and 15 PETs. The Commodore PET LISTING CONVENTIONS dealers indicate that there are many more PETters who are not aware of our group. PET Program listings in People’s Com­ Interested persons should phone Rick puters employ the following conventionsLeon at: (home: (604) 734-2060); to represent characters that are difficult (work: (604) 324-0505). They can also to print on a standard printer: Whenever write to: square brackets appear in the listing, neither the brackets nor the text they Vancouver PET Users Group enclose should be typed literally. Instead, Box 35353 Station E the text between the brackets should be Vancouver, BC translated to keystrokes. For example, Canada [CLR] means type the CLR key, [3 DOWN] means [DOWN, DOWN, DOWN] The club format includes a short presen­ i.e., press the first CRSR key three times.
    [Show full text]
  • Hp-71 Basic Made Easy
    –Page 1 – HP-71 BASIC MADE EASY by Joseph Horn Copyright 1985, SYNTHETIX P.O. Box 1080 Berkeley, CA 94701-1080 U.S.A. Printed in the United States of America –Page 2 – HP-71 BASIC MADE EASY by Joseph Horn Published by: SYNTHETIX All rights reserved. This book, either in whole or in part, may not be reproduced or transmitted in any form or by any means, electronic or mechanical without the written consent of the publisher. The programs contained herein may be reproduced for personal use. Permission is hereby given to reproduce short portions of this book for the purposes of review. Library of Congress Card Catalog Number: 84-51753 ISBN: 0-9612174-3-X This electronic form of the book was last edited by the author on 9 February 2019. Please inform him of typos and errors so that they can be corrected: [email protected] – Page 3 – TABLE OF CONTENTS Introduction ................................................................. 5 Chapter 1: The Three Modes ......................................................... 8 Chapter 2: CALC Mode................................................................... 12 Chapter 3: Keyboard BASIC Mode .............................................. 44 Chapter 4: BASIC Vocabulary....................................................... 50 Chapter 5: Variables ........................................................................ 53 Chapter 6: Files................................................................................. 79 Chapter 7: The Clock and Calendar ..............................................102
    [Show full text]
  • PDQ Manual.Pdf
    CRESCENT SOFTWARE, INC. P.D.Q. A New Concept in High-Level Programming Languages Version 3.13 Entire contents Copyright © 1888-1983 by Ethan Winer and Crescent Software. P.D.Q. was conceived and written by Ethan Winer, with substantial contributions [that is, the really hard parts) by Robert L. Hummel. The example programs were written by Ethan Winer, Don Malin, and Nash Bly, with additional contributions by Crescent and Full Moon customers. The floating point math package was written by Paul Passarelli. This manual was written by Ethan Winer. The section that describes how to use P.O.Q. with assembly language was written by Hardin Brothers. Full Moon Software 34 Cedar Vale Drive New Milford, CT 06776 Sales: 860-350-6120 Support: 860-350-8188 (voice); 860-350-6130 [fax) Sixth printing. LICENSE AGREEMENT Crescent Software grants a license to use the enclosed software and printed documentation to the original purchaser. Copies may be made for back-up purposes only. Copies made for any other purpose are expressly prohibited, and adherence to this requirement is the sole responsibility of the purchaser. However, the purchaser does retain the right to sell or distribute programs that contain P.D.Q. routines, so long as the primary purpose of the included routines is to augment the software being sold or distributed. Source code and libraries for any component of the P.D.Q. program may not be distributed under any circumstances. This license may be transferred to a third party only if all existing copies of the software and documentation are also transferred.
    [Show full text]
  • Commodore Enters in the Play “Business Is War, I Don't Believe in Compromising, I Believe in Winning” - Jack Tramiel
    Commodore enters in the play “Business is war, I don't believe in compromising, I believe in winning” - Jack_Tramiel Commodore_International Logo Commodore International was an American home computer and electronics manufacturer founded by Jack Tramiel. Commodore International (CI), along with its subsidiary Commodore Business Machines (CBM), participated in the development of the home personal computer industry in the 1970s and 1980s. CBM developed and marketed the world's best-selling desktop computer, the Commodore 64 (1982), and released its Amiga computer line in July 1985. With quarterly sales ending 1983 of $49 million (equivalent to $106 million in 2018), Commodore was one of the world's largest personal computer manufacturers. Commodore: the beginnings The company that would become Commodore Business Machines, Inc. was founded in 1954 in Toronto as the Commodore Portable Typewriter Company by Polish-Jewish immigrant and Auschwitz survivor Jack Tramiel. By the late 1950s a wave of Japanese machines forced most North American typewriter companies to cease business, but Tramiel instead turned to adding machines. In 1955, the company was formally incorporated as Commodore Business Machines, Inc. (CBM) in Canada. In 1962 Commodore went public on the New York Stock Exchange (NYSE), under the name of Commodore International Limited. Commodore soon had a profitable calculator line and was one of the more popular brands in the early 1970s, producing both consumer as well as scientific/programmable calculators. However, in 1975, Texas Instruments, the main supplier of calculator parts, entered the market directly and put out a line of machines priced at less than Commodore's cost for the parts.
    [Show full text]
  • A Manual for Single Switch and Adaptive Software Programming
    DOCUMENT RESUME ED 359 684 EC 302 244 AUTHOR Burns, Edward TITLE A Manual for Single Switch and Adaptive Software Programming. Computer Applications for Students with Physical, Sensory, Developmental, and Learning Disabilities. PUB DATE [90] NOTE 218p. AVAILABLE FROMEdward Burns, School of Education and Human Development, State University of New York at Binghamton, Binghamton, NY 13902-6000 (Apple program disk only, $5). PUB TYPE Guides Non-Classroom Use (055) Computer Programs (101) EDRS PRICE MF01/PC09 Plus Postage. DESCRIPTORS *Assistive Devices (for Disabled); *Computer Software; *Disabilities; *Electronic Equipment; *Input Output Devices; *Programing IDENTIFIERS Apple Microcomputers; *Switches ABSTRACT This manual is intended as a guide and source of ideas for using single switches in adaptive software programming for people with disabilities who cannot use a traditional keyboard. The manual and associated program disk are comprised of over 100 programs, routines and files illustrating various uses of single switch and adaptive input devices. Programs were developed for use on the Apple family of computers and written in Applesoft BASIC. Complete program listings of programs on the disk are included in the manual. After an introduction, individual chapters address the following topics: (1) single switch fundamentals;(2) single switch input;(3) low-resolution graphics;(4) sound and speech; (5) single switch scan techniques;(6) high-resolution graphics;(7) single switch math; and (8) single switch reading. (Contains 17 references.)
    [Show full text]
  • Inexpensive Microcomputer Systems for Research and Instruction: a Dream Or Reality?
    Behavior Research Methods & Instrumentation 1978, Vol. 10 (2), 345-351 Inexpensive microcomputer systems for research and instruction: A dream or reality? H. J. DURRETT, JR. Southwest Texas State University, San Marcos, Texas 78666 This paper presents a detailed introduction to two microcomputer systems useful for research and instruction. The systems are ready for immediate use, fully assembled, and require no knowledge of electronics. They also possess the high-level programming language, BASIC, which can be easily learned by researchers and students. The application of microprocessor technology and mass production has allowed the cost for a single microcomputer to be reduced to about $600. At this price, virtually any psychology department or individual researcher can begin to employ computer technology in psychological research and instruction. The hardware specifications, software characteristics, criteria for selection, and possible applications of these systems are considered, with emphasis on use in psychological applications. Computer technology has allowed many dreams to nology to the acquisition and control of behavioral become reality. Newell (Note 1) remarks in a paper data" (Kehoe, Frei, Tait, & Gormezano, 1975, p. 183). entitled "Fairytales," "I see the computer as the en­ Until recently, the cost of the computer was only a chanted technology. Better it is the technology of part of the overall cost of a computerized psychological enchantment, I mean that quite literally .... There are laboratory (Sidowski, 1975). The basic units afforded two essential ingredients in computer technology. First, little flexibility without the addition of input/output it is the technology of how to apply knowledge to devices, more memory, hardware interfaces, and soft­ action, to achieve goals ...
    [Show full text]
  • The Big Tip Book for the Apple II Series 1986.Pdf
    for the Apple®II Series ~ THE BIG TIP BOOK FOR THE APPLE II SERIES Bantam Computer Books Ask your bookseller for the books you have missed AMIGA DOS USER'S MANUAL by Commodore-Amiga, Inc. THE APPLE /le BOOK by Bill O'Brien THE COMMODORE 64 SURVIVAL MANUAL by Winn L. Rosch COMMODORE 128 PROGRAMMER'S REFERENCE GUIDE by Commodore Business Machines, Inc. EXPLORING ARTIFICIAL INTELLIGENCE ON YOUR APPLE II by Tim Hartnell EXPLORING ARTIFICIAL INTELLIGENCE ON YOUR COMMODORE 64 by Tim Hartnell EXPLORING ARTIFICIAL INTELLIGENCE ON YOUR IBM PC by Tim Hartnell EXPLORING THE UNIX ENVIRONMENT by The Waite Group/Irene Pasternack FRAMEWORK FROM THE GROUND UP by The Waite Group/Cynthia Spoor and Robert Warren HOW TO GET THE MOST OUT OF COMPUSERVE, 2d ed. by Charles Bowen and David Peyton HOW TO GET THE MOST OUT OF THE SOURCE by Charles Bowen and David Peyton MACINTOSH C PRIMER PLUS by The Waite Group/Stephen W. Prata THE MACINTOSH by Bill O'Brien THE NEW jr: A GUIDE TO IBM'S PCjr by Winn L. Rosch ORCHESTRATING SYMPHONY by The Waite Group/Dan Schafer PC-DOS/MS-DOS User's Guide to the Most Popular Operating System for Personal Computers by Alan M. Boyd POWER PAINTING: COMPUTER GRAPHICS ON THE MACINTOSH by Verne Bauman and Ronald Kidd/illustrated by Gasper Vaccaro SMARTER TELECOMMUNICATIONS Hands-On Guide to On-Line Computer Services by Charles Bowen and Stewart Schneider SWING WITH JAZZ: LOTUS JAZZ ON THE MACINTOSH by Datatech Publications Corp./Michael McCarty TEACH YOUR BABY TO USE A COMPUTER Birth Through Preschool by Victoria Williams, Ph.D.
    [Show full text]
  • Mbasic Manual
    User’sUser’s GuideGuide Learn to Program PIC Micrcontrollers in easy to use Basic Revision 5.2 Warranty Basic Micro warranties its products against defects in material and workmanship for a period of 90 days. If a defect is discovered, Basic Micro will at our discretion repair, replace, or refund the purchase price of the product in question. Contact us at [email protected] No returns will be accepted without the proper authorization. Copyrights and Trademarks Copyright© 2001-2002 by Basic Micro, Inc. All rights reserved. PICmicro® is a trademark of Microchip Technology, Inc. Basic Stamp I/II and Parallax are registered trademarks of Parallax Inc. MBasic, The Atom and Basic Micro are registered trademarks of Basic Micro Inc. Other trademarks mentioned are registered trademarks of their respective holders. Disclaimer Basic Micro cannot be held responsible for any incidental, or consequential damages resulting from use of products manufactured or sold by Basic Micro or its distributors. No products from Basic Micro should be used in any medical devices and/or medical situations. No product should be used in a life support situation. Contacts Email: [email protected] Tech support: [email protected] Web: http://www.basicmicro.com Discussion List A web based discussion board is maintained at http://www.basicmicro.com Updates In our continuing effort to provide the best and most innovative products, software updates are made available by contacting us at [email protected] Table of Contents 5 Table of Contents Contents Introduction
    [Show full text]
  • Peeks and Pokes for the Commodore 64.Pdf
    '~... PEEKS & POKES for the Commodore-64 by H.J. Liesert A OAT A BECKER BOOK Abacus liiiiiUiUil Software All commands, technical instructions and programs contained in this book have been carefully worked on by the authors, i. e. , written and run under careful supervision. However, mistakes in printing are not totally impossible; beyond that, ABACUS Software can neither guarantee nor be held legally responsible for the reader's not adhering to the text which follows, or for faulty instructions received. The authors will always appreciate receiving notice of subsequent mistakes. First English Edition, January 1985 Printed in U.S.A. Translated by Gene Traas Copyright (C)1984 Data Becker, GmbH Merowingerstr. 30 4000 Dusseldorf, W.Germany Copyright (C)1984 Abacus Software, Inc. P.O. Box 7211 Grand Rapids, MI 49510 This book is copyrighted. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical or otherwise, without the prior written permission of DATA BECKER or ABACUS Software. ISBN 0-916439-13-5 FOREWORD You know the problem: You have read through the Commodore 64 User's Manual. Now you want to know more, instead of resigning yourself to the lack of information maybe you're wondering how to use sprite collisions and movement; how to produce high-resolution graphics; or how to scan for two keys simultaneously. Chapter 16 contains a MEMORY MAP. But taht presents two questions: 1.) What's a Memory Map and 2.) What can I do with it? If these are your problems, you have the right book in hand.
    [Show full text]
  • The FFI Reference Manual a Foreign Function Interface (Version 1.0) for MIT/GNU Scheme Version 9.0.1 2018-06-10
    The FFI Reference Manual a Foreign Function Interface (version 1.0) for MIT/GNU Scheme version 9.0.1 2018-06-10 by Matt Birkholz i Table of Contents 1 Introduction ::::::::::::::::::::::::::::::::::::: 2 2 C Declarations ::::::::::::::::::::::::::::::::::: 6 3 Alien Data ::::::::::::::::::::::::::::::::::::::: 7 4 Alien Functions :::::::::::::::::::::::::::::::::: 8 5 Callbacks ::::::::::::::::::::::::::::::::::::::::: 9 6 Compiling and Linking :::::::::::::::::::::::: 10 7 Hello World :::::::::::::::::::::::::::::::::::: 12 Appendix A GNU Free Documentation License :: 16 A.1 ADDENDUM: How to use this License for your documents :::: 22 1 This manual documents FFI 1.0. Copyright c 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Massachusetts Institute of Technology Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts and no Back-Cover Texts. A copy of the license is included in the section entitled \GNU Free Documentation License." 2 1 Introduction This FFI provides Scheme syntax for calling C functions and accessing C data. The func- tions and data structures are declared in a case sensitive .cdecl file, which is used by a shim generator to produce callout and callback trampoline functions. The trampolines are com- piled and linked to the C toolkit, producing a shared object that Scheme can dynamically load. Synopsis Examples of the new syntax: (C-include "prhello") (malloc (C-sizeof "GdkEvent")) ) #[alien 42 0x081afc60] (C->= #@42 "GdkEvent any type" 14) (C-> #@42 "GdkEvent any type") ) 14 (C-enum "GdkEventType" 14) ) |GDK_MAP| (C-enum "GDK_MAP") ) 14 (C-sizeof "GdkColor") ) 12 (C-offset "GdkColor blue") ) 8 (C-array-loc #@43 "GdkColor" (C-enum "GTK_STATE_NORMAL")) ) #[alien 44 0x081afc60] ; New alien.
    [Show full text]