Designing PCI Cards and Drivers for Power Macintosh Computers

Total Page:16

File Type:pdf, Size:1020Kb

Designing PCI Cards and Drivers for Power Macintosh Computers Designing PCI Cards and Drivers for Power Macintosh Computers Revised Edition Revised 3/26/99 Technical Publications © Apple Computer, Inc. 1999 Apple Computer, Inc. Adobe, Acrobat, and PostScript are Even though Apple has reviewed this © 1995, 1996 , 1999 Apple Computer, trademarks of Adobe Systems manual, APPLE MAKES NO Inc. All rights reserved. Incorporated or its subsidiaries and WARRANTY OR REPRESENTATION, EITHER EXPRESS OR IMPLIED, WITH No part of this publication may be may be registered in certain RESPECT TO THIS MANUAL, ITS reproduced, stored in a retrieval jurisdictions. QUALITY, ACCURACY, system, or transmitted, in any form America Online is a service mark of MERCHANTABILITY, OR FITNESS or by any means, mechanical, Quantum Computer Services, Inc. FOR A PARTICULAR PURPOSE. AS A electronic, photocopying, recording, Code Warrior is a trademark of RESULT, THIS MANUAL IS SOLD “AS or otherwise, without prior written Metrowerks. IS,” AND YOU, THE PURCHASER, ARE permission of Apple Computer, Inc., CompuServe is a registered ASSUMING THE ENTIRE RISK AS TO except to make a backup copy of any trademark of CompuServe, Inc. ITS QUALITY AND ACCURACY. documentation provided on Ethernet is a registered trademark of CD-ROM. IN NO EVENT WILL APPLE BE LIABLE Xerox Corporation. The Apple logo is a trademark of FOR DIRECT, INDIRECT, SPECIAL, FrameMaker is a registered Apple Computer, Inc. INCIDENTAL, OR CONSEQUENTIAL trademark of Frame Technology Use of the “keyboard” Apple logo DAMAGES RESULTING FROM ANY Corporation. (Option-Shift-K) for commercial DEFECT OR INACCURACY IN THIS purposes without the prior written Helvetica and Palatino are registered MANUAL, even if advised of the consent of Apple may constitute trademarks of Linotype-Hell AG possibility of such damages. and/or its subsidiaries. trademark infringement and unfair THE WARRANTY AND REMEDIES competition in violation of federal Intel is a trademark of Intel SET FORTH ABOVE ARE EXCLUSIVE and state laws. Corporation. AND IN LIEU OF ALL OTHERS, ORAL No licenses, express or implied, are Internet is a trademark of Digital OR WRITTEN, EXPRESS OR IMPLIED. granted with respect to any of the Equipment Corporation. No Apple dealer, agent, or employee is technology described in this book. ITC Zapf Dingbats is a registered authorized to make any modification, Apple retains all intellectual trademark of International Typeface extension, or addition to this warranty. property rights associated with the Corporation. Some states do not allow the exclusion or technology described in this book. Motorola is a registered trademark of limitation of implied warranties or This book is intended to assist Motorola Corporation. liability for incidental or consequential application developers to develop NuBus is a trademark of damages, so the above limitation or applications only for Apple-labeled Texas Instruments. exclusion may not apply to you. This or Apple-licensed computers. OpenBoot and Sun are trademarks of warranty gives you specific legal rights, Every effort has been made to ensure Sun Microsystems, Inc. and you may also have other rights that the information in this manual is which vary from state to state. accurate. Apple is not responsible for PowerPC is a trademark of typographical errors. International Business Machines Corporation, used under license Apple Computer, Inc. therefrom. 1 Infinite Loop Cupertino, CA 95014 UNIX is a registered trademark of 408-996-1010 Novell, Inc. in the United States and other countries, licensed exclusively Apple, the Apple logo, and through X/Open Company, Ltd. Macintosh are trademarks of Apple Windows is a trademark of Microsoft Computer, Inc., registered in the Corporation. United States and other countries. AOCE, AppleCD, Apple Desktop Simultaneously published in the Bus, Mac, Power Macintosh, and United States and Canada. QuickDraw are trademarks of Apple Computer, Inc. Contents Figures, Tables, and Listings 17 Preface About This Book 23 Contents of This Book 24 PCI Bus Overview 24 System Startup by Open Firmware 24 Native PowerPC Drivers 25 Appendixes 25 Supplementary Documents 26 Apple Publications 26 Other Publications 26 Conventions and Abbreviations 28 Typographical Conventions 28 Notes 29 Abbreviations 29 Part 1 The PCI Bus 31 Chapter 1 PCI Bus Overview 33 Benefits of PCI 34 PCI and NuBus 35 The Macintosh Implementation of PCI 36 Power Macintosh PCI System Architecture 36 PCI Bus Characteristics 37 PCI Topology 39 PCI Host Bridge Operation 39 I/O Space 42 Configuration Space 42 Interrupt Acknowledge Cycles 43 Special Cycles 43 3 Maximizing PCI Bus Performance 43 PowerPC Processor and PCI Commands 45 Bursting from PowerPC to PCI 46 Bursting from PCI to PowerPC 46 Mac OS & Services That Maximize PCI Throughput 49 PCI Transaction Error Responses 52 PCI Card Characteristics 54 PCI Video and Display Card Characteristics 54 Hard Decoding Device Address Space 55 Nonvolatile RAM 56 Chapter 2 Data Formats and Memory Usage 57 Address Allocations 58 PCI Bus Cycles 59 Addressing Modes 60 Addressing Mode Conversion 61 Addressing Mode Determination 63 Frame Buffers 64 Pixel Storage 64 Frame Buffer Apertures 65 Part 2 The Open Firmware Process 67 Chapter 3 Introduction to the NewWorld Architecture 69 The Macintosh ROM and The NewWorld Architecture 70 Differences Introduced by the NewWorld Architecture 71 Boot Devices 71 RAM 72 Hardware Addresses 72 Macintosh Name Registry 73 The gestaltMachineType Value 73 Interrupt Handling 73 ROM-in-RAM 73 4 Runtime Abstraction Services (RTAS) 74 NVRAM and PRAM 74 USB 74 ADB 74 Floppy Drives 75 Video Drivers 75 NewWorld Components 75 NewWorld Boot Process 77 New Name Registry Functionality 79 Modifying Open Firmware Config Variables From the Mac OS 79 Communication Between Mac OS and Open Firmware Drivers 80 Chapter 4 Startup and System Configuration 81 Peripheral Devices and Open Firmware 82 The Open Firmware Startup Process 83 Startup Firmware 83 Device Drivers 85 PowerPC Addressing and Alignment 86 Device Configuration 86 Open Firmware FCode Options 87 Full Open Firmware Support 87 Support for Mac OS and Open Firmware 87 Minimum Open Firmware Support 88 No Open Firmware Support 88 Open Firmware Driver Support 89 Startup Sequence 89 Initializing the Hardware 90 Running Open Firmware 90 Starting the Operating System 91 Startup Sequence in the NewWorld Architecture 92 What Is Different 93 Interrupt Handling 93 RAM Footprint 93 Run-Time Abstraction Services (RTAS) 93 NVRAM 94 Startup Disk Control Panel 94 5 PCI Bus Configuration 95 Configuration Tasks 95 Configuration Registers 95 Register Actions 96 PCI-To-PCI Bridges 102 Configuration Header 102 Register Settings 103 Chapter 5 PCI Open Firmware Drivers 111 General Requirements 112 Driver Interfaces 113 Open Firmware Driver Properties 113 Open Firmware User Interface 114 Invoking the User Interface Via Remote Connection 115 Invoking the User Interface On the Current Machine 118 User Interface Environment 119 Open Firmware Forth Language Symbols 120 Defining Forth Words 120 Forth Commands (Words) 121 Open Firmware User Interface Commands and Examples 124 Open Firmware Forth Usage Examples 126 Terminal Emulation in Graphics Drivers 127 Color Table Initialization 129 Display Device Standard Properties 130 Display Device Standard Methods 130 Sample FCode Drivers 131 Part 3 Native Device Drivers 137 Chapter 6 Native Driver Overview 139 Macintosh System Evolution 140 Terminology 141 Concepts 143 6 Separation of Application and Driver Services 144 Common Packaging of Loadable Software 145 The Name Registry 146 Families of Devices 147 ROM-Based and Disk-Based Drivers 148 Noninterrupt and Interrupt-Level Execution 149 Symmetric Multiprocessing 150 Generic and Family Drivers 151 Driver Descriptions 152 Generic Driver Framework 153 Device Manager 153 Driver Package 154 Driver Services Library 154 Converting Previous Mac OS Drivers 155 Restricted Access to Services 155 Error Returns 156 Ensuring Future Compatibility 156 Copying Data 157 Power Management 157 Summary 158 Use the System Programming Interfaces 158 Use the Name Registry 159 Chapter 7 Finding, Initializing, and Replacing Drivers 161 Device Properties 162 PCI Boot Sequence 163 Matching Drivers With Devices 164 Driver Initialization and Resource Verification 167 Opening Devices 172 Driver Replacement 174 Driver Migration 177 Driver Services That Have No Replacement 177 Device Manager 177 Exception Manager 178 Gestalt Manager 178 Mixed Mode Manager 178 7 Notification Manager 178 Power Manager 178 Resource Manager 179 Segment Loader 179 Shutdown Manager 179 Slot Manager 179 Vertical Retrace Manager 179 Native Driver Services 179 Registry Services 179 Operating-System Services 180 Timing Services 180 Memory Management Services 181 Hardware Interrupt Mechanisms 181 Secondary Interrupt Services 181 Device Configuration 182 Chapter 8 Writing Native Drivers 183 Native Driver Framework 184 Native Driver CFM Container Format 185 Native Driver Data Exports 185 Generic Native Driver Code Exports 185 Native Driver Imports 186 Drivers for Multiple Cards 186 The Device Manager and Generic Drivers 187 Native Driver Differences 187 Native Driver Limitations 190 Concurrent Generic Drivers 190 Completing an I/O Request 191 Concurrent I/O Request Flow 193 Driver Execution Contexts 194 Code Execution in General 194 Driver Execution 195 Writing a Generic Device Driver 196 Native Driver Package 197 Driver Description Structure 198 Driver Type Structure 200 8 Driver Run-Time Structure 201 Driver Services Structure 202 Driver Services Information Structure
Recommended publications
  • Chubb Marketplace 2019 Giveaway Contest
    Chubb Marketplace 2019 Giveaway Contest We are pleased to announce a new Chubb Marketplace contest for 2019! Contest Description: By accepting the Chubb Rewards Terms & Conditions, agents will be eligible to participate in a contest to win an “Apple Orchard” prize package. The “Apple Orchard” prize package will include: – Apple iMac® 27-inch valued at $2,000 – Apple iPad Air® valued at $649 – Apple Watch® Series 4 valued at $429 – Apple TV® HD valued at $149 – Apple AirPods® with charging case valued at $159 – Apple® gift card for $500 From April 24 – October 4, 2019, for every completed Chubb BOP, umbrella, commercial auto, workers’ compensation, management & professional liability, and/or Cyber Enterprise Risk Management (ERM)/DigiTech® ERM quote in the Chubb Marketplace, agents will receive an entry to win an “Apple Orchard” prize package. There will be 7 individual winners. One from each region – Pacific, Southwest, Midwest, Southeast, Mid-Atlantic, NY/NJ, and Northeast. Contest Requirements: Enroll in Chubb Rewards and complete a Chubb BOP, umbrella, commercial auto, workers’ compensation, management & professional liability, and/or Cyber Enterprise Risk Management (ERM)/DigiTech® ERM quote in the Chubb Marketplace to earn an entry to win an “Apple Orchard” prize package. Eligible quotes must be completed between April 24 – October 4, 2019. Any individual winnings will require the completion of Form W-9 and will result in the issuance of a Form 1099. Failure to complete a W-9 will result in forfeiture of the prize. The individual winner within the agency receiving the award must be licensed. The winner will be selected at random and must have enrolled in Chubb Rewards.
    [Show full text]
  • 09/10 Ed IPP Price List
    Apple Computer, Inc. Apple Education Individual Purchase Program Price List September 10, 2002 For details on the Apple Education Individual Purchase Program, customers may visit our web site at <http://www.apple.com/education > or call 1-800-780-5009 (Specific eligibility rules apply). All pricing includes 5 day ground shipping. Local sales tax applies to all orders. iBook™ All iBook models are equipped with a PowerPC G3 processor, 12.1" TFT or 14.1" TFT display and either a CD-ROM or DVD-ROM/CD-RW combo optical drive. iBook includes two USB ports, a FireWire port, VGA video out,16-bit CD-quality stereo output and two built in stereo speakers. Built-in communications include 10/100 Base-T Ethernet, 56K modem with v.90 support and built-in antennas and internal AirPort Card slot for optional wireless networking capability. All systems come with both Mac OS 9 and OS X installed. For more detailed information, please refer to product data sheets or the iBook web site (http://www.Apple.com/iBook). Bundled software includes: iMovie, iTunes, AppleWorks, Internet Explorer, Outlook Express, Netscape Communicator, Adobe Acrobat Reader, FAXstf, AOL Instant Messenger (preview), WORLD BOOK Mac OS X Edition and Otto Matic game software. Apple offers build-to-order capability for the iBook products listed below. To take advantage of this capability, visit the Apple Store at http://www.apple.com/store M8600LL/A iBook (12.1"TFT/600MHz/512K L2/128MB/20GB/CD-ROM/VGA-out/Enet/56K/Mac OS X) 1149.00 M8602LL/A iBook (12.1"TFT/700MHz/512K L2/128MB/20GB/DVD-ROM/CD-RW Combo drive/VGA-out/Enet/56K/Mac OS X) 1449.00 M8603LL/A iBook (14.1"TFT/700MHz/512K L2/256MB/30GB/DVD-ROM/CD-RW Combo drive/VGA-out/Enet/56K/Mac OS X) 1749.00 iMac™ With iMac you have a choice of models that feature either a PowerPC G4 processor and Flat Panel display or PowerPC G3 processor and CRT display.
    [Show full text]
  • Easy Setup Instructions for Apple Airport Wireless Networks
    series Mac OS X v.10.4.x Easy Setup Instructions For Apple AirPort 1 2 3 Wireless Networks These instructions are for setting up your PIXMA machine on an Apple AirPort wireless network in a Mac OS X environment. For all other environments, including USB connections, wired networks, non-AirPort wireless networks, and all Windows installations, please use the Getting Started Guide. Also for setting up additional computers on your network to access the machine, refer to the Getting Started Guide. Before starting, please locate and write down the your network name and password. Since Apple recommends using the WPA/WPA2 encryption method for AirPort networks, these instructions are for configuring the machine on WPA/WPA2 encrypted networks. When the Printer List screen appears, Network Name (also called SSID): Network password (if applicable): click Add. Select Canon IJ Network in the drop-down menu, select your machine's name in the list of printers, then click Add. Hardware Setup Click More Printers in the Printer Unpack the machine and prepare the hardware for use by following chapters 1 to 4 of the Getting Started Guide. Browser screen. 1 4 5 6 Driver/Software Install Confirm that your 2 MP620 series is added to the list of printers. Select Canon MP620 series Network Confirm that a check mark is displayed, 1 2 3 in TWAIN Data Source Name and then click Exit to close the dialog box. the MAC address of the machine in This completes the installation. Network Device List, then click Apply The device is now installed and ready to use to use the machine as a scanner.
    [Show full text]
  • Imac Quick Start Guide
    Quick Start Guide Welcome to your iMac Let’s begin. Press the power button to start up your Mac, and Setup Assistant guides you through a few simple steps to get you up and running. It walks you through connecting to your Wi-Fi network and creating a user account. And it guides you through the steps for migrating your documents, photos, music, and more from another Mac or PC. In Setup Assistant, you can create a new Apple ID or sign in with your existing Apple ID. This sets up your account in the Mac App Store and the iTunes Store, and in apps like Messages and FaceTime. It also sets up iCloud, so apps such as Mail, Contacts, Calendar, and Safari all have your latest information. Headphone USB 3 Gigabit Ethernet Plug in headphones Charge devices, Connect to the or external speakers connect external Internet or a storage, and more local network SDXC Thunderbolt 3 (USB-C) Transfer photos from Charge devices, connect external displays your camera’s memory card and high-performance peripherals Power button AC power cord Get to know your desktop Your Mac desktop lets you find everything and do anything. Keep the apps you use most in the Dock at the bottom of the screen. Open System Preferences to customize your desktop and other settings. Click the Finder icon to get to all your files and folders. The menu bar at the top provides useful information about your Mac. To check the status of your wireless Internet connection, click the Wi-Fi icon. Siri is always ready to help you find information, locate files, and accomplish a variety of tasks on your Mac just by using your voice.
    [Show full text]
  • Apple US Education Price List
    US Education Institution – Hardware and Software Price List April 30, 2021 For More Information: Please refer to the online Apple Store for Education Institutions: www.apple.com/education/pricelists or call 1-800-800-2775. Pricing Price Part Number Description Date iMac iMac with Intel processor MHK03LL/A iMac 21.5"/2.3GHz dual-core 7th-gen Intel Core i5/8GB/256GB SSD/Intel Iris Plus Graphics 640 w/Apple Magic Keyboard, Apple Magic Mouse 2 8/4/20 1,049.00 MXWT2LL/A iMac 27" 5K/3.1GHz 6-core 10th-gen Intel Core i5/8GB/256GB SSD/Radeon Pro 5300 w/Apple Magic Keyboard and Apple Magic Mouse 2 8/4/20 1,699.00 MXWU2LL/A iMac 27" 5K/3.3GHz 6-core 10th-gen Intel Core i5/8GB/512GB SSD/Radeon Pro 5300 w/Apple Magic Keyboard & Apple Magic Mouse 2 8/4/20 1,899.00 MXWV2LL/A iMac 27" 5K/3.8GHz 8-core 10th-gen Intel Core i7/8GB/512GB SSD/Radeon Pro 5500 XT w/Apple Magic Keyboard & Apple Magic Mouse 2 8/4/20 2,099.00 BR332LL/A BNDL iMac 21.5"/2.3GHz dual-core 7th-generation Core i5/8GB/256GB SSD/Intel IPG 640 with 3-year AppleCare+ for Schools 8/4/20 1,168.00 BR342LL/A BNDL iMac 21.5"/2.3GHz dual-core 7th-generation Core i5/8GB/256GB SSD/Intel IPG 640 with 4-year AppleCare+ for Schools 8/4/20 1,218.00 BR2P2LL/A BNDL iMac 27" 5K/3.1GHz 6-core 10th-generation Intel Core i5/8GB/256GB SSD/RP 5300 with 3-year AppleCare+ for Schools 8/4/20 1,818.00 BR2S2LL/A BNDL iMac 27" 5K/3.1GHz 6-core 10th-generation Intel Core i5/8GB/256GB SSD/RP 5300 with 4-year AppleCare+ for Schools 8/4/20 1,868.00 BR2Q2LL/A BNDL iMac 27" 5K/3.3GHz 6-core 10th-gen Intel Core i5/8GB/512GB
    [Show full text]
  • Innovation Success: How the Apple Ipod Broke All Sony's Walkman Rules
    Innovation Success: How the Apple iPod Broke all Sony’s Walkman Rules In 1978, engineers at Sony successfully married a compact playback device with lightweight headphones to create the prototype for a product that would become a worldwide hit. In 1979, the ‘Walkman’ was introduced in the Japanese market, selling out its entire stock of 30,000 units within the first three months. Sony kept apace with its rivals. For a decade after its place to create a winning innovation: an attractive, launch, Sony’s Walkman retained a 50% market simple device supported by smart software. Steve share in the U.S. (46% in Japan) in a space teeming Jobs knew that, on its own, the mp3 player was with competitors, even as it enjoyed a price useless. He understood that, in order for the device premium of approximately $20 over rival offers. to have value, other co-innovators in the mp3 player ecosystem first needed to be aligned. And, in Jump ahead to the late 1990s, when the sun had set October of 2001, when Apple announced the iPod, on cassettes as the favoured music delivery format those pieces were solidly in place: both mp3s and in favour of compact discs and, for the broadband were finally widely available. technologically savvy, digital mp3 files. But electronic firms around the globe were betting that The first generation iPod for Macintosh retailed at the CD would soon follow the cassette into $399, had 5GB of capacity, and could store up to extinction. Which mp3 player would get there first 1,000 songs.
    [Show full text]
  • Tinkertool System 7 Reference Manual Ii
    Documentation 0642-1075/2 TinkerTool System 7 Reference Manual ii Version 7.5, August 24, 2021. US-English edition. MBS Documentation 0642-1075/2 © Copyright 2003 – 2021 by Marcel Bresink Software-Systeme Marcel Bresink Software-Systeme Ringstr. 21 56630 Kretz Germany All rights reserved. No part of this publication may be redistributed, translated in other languages, or transmitted, in any form or by any means, electronic, mechanical, recording, or otherwise, without the prior written permission of the publisher. This publication may contain examples of data used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental. This publication could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. The publisher may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice. Make sure that you are using the correct edition of the publication for the level of the product. The version number can be found at the top of this page. Apple, macOS, iCloud, and FireWire are registered trademarks of Apple Inc. Intel is a registered trademark of Intel Corporation. UNIX is a registered trademark of The Open Group. Broadcom is a registered trademark of Broadcom, Inc. Amazon Web Services is a registered trademark of Amazon.com, Inc.
    [Show full text]
  • A/UX® 2.0 Release Notes
    A/UX® 2.0 Release Notes 031-0117 • APPLE COMPUTER, INC. © 1990, Apple Computer, Inc. All UNIX is a registered trademark of rights reserved. AT&T Information Systems. Portions of this document have been Simultaneously published in the previously copyrighted by AT&T United States and Canada. Information Systems and the Regents of the University of California, and are reproduced with permission. Under the copyright laws, this document may not be copied, in whole or part, without the written consent of Apple. The same proprietary and copyright notices must be afftxed to any permitted copies as were afftxed to the original. Under the law, copying includes translating into another language or format. The Apple logo is a registered trademark of Apple Computer, Inc. Use of the "keyboard" Apple logo (Option-Shift-K) for commercial purposes without the prior written consent of Apple may constitute trademark infringement and unfair competition in violation of federal and state laws. Apple Computer, Inc. 20525 Mariani Ave. Cupertino, California 95014 (408) 996-1010 Apple, the Apple logo, AppleShare, AppleTalk, A/UX, ImageWriter, LaserWriter, LocalTalk, Macintosh, Multifmder, and MacTCP are registered trademarks of Apple Computer, Inc. Apple Desktop Bus, EtherTalk, Finder, and MacX are trademarks of Apple Computer, Inc. Motorola is a registered trademark of Motorola, Inc. POSTSCRIPT is a registered trademark of Adobe Systems, Inc. 031-0117 UMITED WARRANTY ON MEDIA Even though Apple has reviewed this AND REPLACEMENT manual, APPLE MAKES NO WARRANTY OR REPRESENTATION, If you discover physical defects in the EITHER EXPRESS OR IMPLIED, manual or in the media on which a WITH RESPECI' TO THIS MANUAL, software product is distributed, Apple ITS QUAll1Y, ACCURACY, will replace the media or manual at MERCHANTABILITY, OR FITNESS no charge to you provided you return FOR A PARTICULAR PURPOSE.
    [Show full text]
  • The Open Scripting Architecture: Automating, Integrating, and Customizing Applications
    The Open Scripting Architecture: Automating, Integrating, and Customizing Applications Unpublished manuscript, 1993 William R. Cook Warren H. Harris Apple Computer Apple Computer Research Topic areas: Language design and implementation, tools and environments, components and frameworks, concurrent and distributed systems, databases and persistence. Abstract The Open Scripting Architecture combines aspects of object-oriented programming, distributed computation, database queries, and dynamic languages into a powerful and practical system for automation, integration, and customization of applications and system services. Applications are integrated together with distributed messaging. The messages operate upon user-level application objects, like windows and spreadsheet cells that are identified by queries over properties and document containment structure. A general-purpose scripting language automates message sending and handling, and supports persistence and mobile objects. Applications call on scripting services to customize the behavior of their objects through a generic script management API. 1 Introduction The Open Scripting Architecture (OSA) is a comprehensive infrastructure for automating complex or repetitive tasks, integrating distributed applications and system services, and customizing application behavior. These end-user benefits are supported by a synergistic combination of technologies: distributed messaging and referencing of application objects, object-oriented scripting languages, and script development and management tools. Object-oriented concepts are used throughout the architecture, in the scripting language, the system, and the applications. The OSA is unique in several respects. First, it decouples the clients of scripting services (applications) from the providers of those services (language processors like AppleScript™). This decoupling allows for uniform scriptability across all applications in the same way a graphics toolbox provides a uniform GUI.
    [Show full text]
  • Tellstory a Medialogy Project About Storytelling in Handheld Games
    TellStory A Medialogy project about storytelling in handheld games Medialogy - 10th semester Project period: 01-02-2010 to 16-06-2010 Supervisors: Tony Brooks & Kristoffer Jensen Student: David Lindholm Abstract This paper describes a project made to explore storytelling in a game on a hand-held platform. The application used in the test is a small game-like iPhone app, implemented using the iPhone SDK 3.2 and various other tools. The application tells two stories using two different storytelling tools: Non-player character (NPC) dialogue and pure text. To evaluate the impact of having a character there to tell the story versus just reading a screen of text, a small group of people were tested and interviewed. The results give some insight into what factors influence storytelling in a hand-held game, as well as the understanding of the story and storytelling preferences. ------------------------------ David Lindholm David Lindholm 2 of 55 Reader's manual The report is numbered with Arabic numerals, and the appendix is numbered using Roman numerals. When referencing other sections, both the section and page numbers will be listed. All figures and tables are numbered incrementally using Arabic numerals. When reading this report, any mentions of previous or earlier projects are to be understood as previous projects and project groups I have been involved in. Acknowledgements Parts of the test application relies on graphics that were reused from previous projects. Additionally, as there is a small amount of overlap between this project and previous works, parts of this report contain content also used in earlier reports. For those reasons, I would like to thank my former associates Razvan Enescu, Qiong Jia, and Nicolaj Hansen, for allowing me to continue the work that we started together.
    [Show full text]
  • Power Macintosh 9500 Series
    K Service Source Power Macintosh 9500 Series Power Macintosh 9500/120, 9500/132, 9500/150, 9500/180MP, and 9500/200 K Service Source Basics Power Macintosh 9500 Series Basics Overview - 1 Overview The Power Macintosh 9500 Series computers are based on the PowerPC 604 microprocessor and support the industry-standard PCI (Peripheral Component Interconnect) bus specification. These computers are the most flexible, expandable, and highest-performance systems from Apple to date. The microprocessor for the Power Macintosh 9500 Series computers is on separate plug-in card, which allows for easy upgrades. The Power Macintosh 9500 family includes five versions: the 9500/120, the 9500/132, the 9500/150, the 9500/180MP (multi-processor), and the 9500/200. Basics Overview - 2 Features of the Power Macintosh 9500 Series include • 120, 132, 150, 180 (multi-processor) or 200 MHz PowerPC 604 microprocessor card with built-in FPU • Six PCI expansion slots • 10 MB per second internal SCSI channel, 5 MB per second external SCSI channel • 512K Level 2 cache • DRAM expansion up to 1536 MB using 168-pin, 70 ns, 64-bit DIMMs • A PCI Apple Accelerated Graphics card included with some configurations (the Power Macintosh 9500 Series does not include on-board video support) • Built-in AAUI and 10BASE-T Ethernet • AppleCD™ 600i 4x or1200i 8x CD-ROM drive • CD-quality stereo sound in/out • Mac™ OS system software 7.5.2, 7.5.3, or 7.5.3 Revision 2 Basics Configurations - 3 Configurations The Power Macintosh 9500/120 comes standard with • 120 MHz PowerPC 604 processor
    [Show full text]
  • Faster Base64 Encoding and Decoding Using AVX2 Instructions
    Faster Base64 Encoding and Decoding using AVX2 Instructions WOJCIECH MUŁA, DANIEL LEMIRE, Universite´ du Quebec´ (TELUQ) Web developers use base64 formats to include images, fonts, sounds and other resources directly inside HTML, JavaScript, JSON and XML files. We estimate that billions of base64 messages are decoded every day. We are motivated to improve the efficiency of base64 encoding and decoding. Compared to state-of-the-art implementations, we multiply the speeds of both the encoding (≈ 10×) and the decoding (≈ 7×). We achieve these good results by using the single-instruction-multiple-data (SIMD) instructions available on recent Intel processors (AVX2). Our accelerated software abides by the specification and reports errors when encountering characters outside of the base64 set. It is available online as free software under a liberal license. CCS Concepts: •Theory of computation ! Vector / streaming algorithms; General Terms: Algorithms, Performance Additional Key Words and Phrases: Binary-to-text encoding, Vectorization, Data URI, Web Performance 1. INTRODUCTION We use base64 formats to represent arbitrary binary data as text. Base64 is part of the MIME email protocol [Linn 1993; Freed and Borenstein 1996], used to encode binary attachments. Base64 is included in the standard libraries of popular programming languages such as Java, C#, Swift, PHP, Python, Rust, JavaScript and Go. Major database systems such as Oracle and MySQL include base64 functions. On the Web, we often combine binary resources (images, videos, sounds) with text- only documents (XML, JavaScript, HTML). Before a Web page can be displayed, it is often necessary to retrieve not only the HTML document but also all of the separate binary resources it needs.
    [Show full text]