Introduction
------------
        Why do we need a new technical manual?
        Accompanying Disk

Memory Handling
---------------
Memory Paging
        The HMPR and LMPR paging registers
        Using External Memory
        Using External Memory with the Ryan interface
        Using the MultiROM's Memory (RAM and ROM)
        Reading memory for diagnostic purposes
        Working with paging

Memory Allocation and Management
        The BASIC memory map
        Page allocation tables and their use
        The Heap
        BASIC addresses and their relation to physical addresses
        Proposed address representation standards

Miscellaneous
        Machines with less than 512K of internal memory
        
Memory hardware and suppliers
        256k expansion
        The 1Mb
        The Ryan
        The Microbe

Programming within the SAM Environment
--------------------------------------
        Introduction
        Optimizing Z80 code
        Self-modifying code
        Instruction timings
        Interrupt routines
        Keeping BASIC happy
        Division and Multiplication

Graphics Methods and Techniques
-------------------------------
The Graphics Hardware
        The Video Memory Paging Register (VMPR)
        The Colour Look Up Table (CLUT)
        Screen memory mapping
        Border Colours and turning the screen off
        Reset screens and how to generate them
        Hardware oddities (display and z80 timing)

Graphics Handling Routines
        Calculating screen addresses from co-ordinate and character positions
        Simple graphics drawing routines
        Sprites
        Clipping
        Scrolling the screen
        Using colour cycling to achieve effects
        Using a back-screen and screen flipping
        Anti-Aliasing
        Working in Screen Modes 1 and 2
        Graphics in the Border area
        Split-Mode screen displays
        Converting between screen modes
        Colour Fading
        Representing 8 bit R, G, B values on the SAM
        Representing the SAM's palette in 8-bit R, G, B
        Calculating luminance values

Using BASIC's Graphics Routines
        Using the Palette in BASIC
        Clearing the screen
        PUT
        GRAB
        SCROLL and ROLL
        PLOT
        DRAW
        DRAW TO
        CIRCLE
        FILL
        BLITZ strings

Graphics Software and Suppliers
        FLASH
        SAM Paint
        Anti-Aliaser

Sound Methods and Techniques
----------------------------
The Phillips SAA1099 Sound Chip
        An Overview
        Known hardware bugs

Synthesized (Chip) Sound
        Catering for both stereo and mono output users
        Avoiding clicks
        Fast playback routines
        Vu-bars (frequency meters)
        Converting Spectrum AY chip music to the SAA1099
        E-Tracker File Format

Digital (Sampled) Sound
        Producing digital sound on the SAM
        Multiplexing channels
        Synchronising the sound with the display
        Synchronising the sound with the Comms interface
        Quazar Surround
        Solar Flare's Entropy MOD player
        Any other sound hardware (Stefan, can you help with this one?)

Sound Composing Software and Utilities
        The Sound Machine
        E-Tracker

SAM BASIC, MasterBASIC and the SAM Coupe BIOS
---------------------------------------------
        ROM Routines
        Vectors
        Floating Point Calculator
        BASIC data structures
        Command tokens (should these be in the appendix?)

SAM Graphical User Interfaces
-----------------------------
Driver
        Programming the interface
        Driver version 2.0

GAIA (MultiROM)
        Programming the GAIA libraries for your own use.
        GAIA and Driver compatibility
        
Games Writing Utilities
-----------------------
        SCADS
        Games Master

DOS, Disks and Disk Controllers
-------------------------------
Floppy Drives
        Standard SAM file structure
        E-DOS File structure
        SAM DOS Hook Codes and idiosyncrasies
        MasterDOS Hook Codes
        E-DOS Hook Codes
        Using the hook codes
        Loading DOS and the Boot Sector
        Viruses on the SAM
        VLSI 1772-02 disc controller operations
        Invisible drive controller upgrade theory
        Fitting a High Density drive to your SAM

Hard Drives
        SAM Hard Drive partition table specification
        HDOS info (West Coast / Nev Young)
        EDOS info (Entropy DOS)

Copy protection theory and practice
        Case study (Splat!)
        Case study (Sphera)
        Case study (Prince Of Persia)
        More exotic flora and fauna

SAM Systems Variables
---------------------
        SAM BASIC
        MasterBASIC
        SAMDOS
        MasterDOS
        E-DOS
        The MultiROM
        The Driver

SAM Hardware and Peripherals
----------------------------
The SAM Coupe itself
        The keyboard
        Using the Lightpen port for synchronisation
        The 

Faults in the basic SAM Coupe design and how to fix them
        An overview
        PSU interference
        Better power supply decoupling
        8MHz clock signal faults and their implications

The Comms Interface
        Programming the Parallel side of the interface

        The IM26C91 UART chip
        Generating Interrupts
        Modifications to provide necessary signals
        Programming the Serial side of the interface
        Detecting the presence of the serial chip
        
        Bugs in the Comms Interface hardware

The SAM Disk Interface (SDI)

The SAM Bus
        Programming the real-time clock controller
        Detecting the presence of the clock chip        

        Bugs in the SAM Bus hardware

The Mouse Interface
        Reading the SAM Mouse without the driver
        Detecting the presence of the Mouse interface

The Messenger
        What it does

The SAM Elite
        Modifications to the original SAM Coupe specification by West Coast
        SAM Basic ROM v3.5 -- changes to the spec?

The MultiROM
        Technical details

The Ryan
        Technical details

Answers to Exercises

Appendices and schematic diagrams
        SAM Specifications
        SAM Mouse Interface schematic
        SAMBus schematic
        SAM Comms interface
        SAM Parallel printer interface
        SAM SDI
        SAM ROM/RAM board
        MultiROM board
        Busmaster
Index

-----------------------

I, for one, have no objection to this being on the net as well as a 
saleable thing. I want to sell it non-profit, and I can get cheap, high 
quality (600dpi) printing done for me, as well as binding...

Simon

-- 
Email:[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED]
Snail:1 Dovey Close, Astley, Tyldesley, Manchester, M29 7NP, UK
Tel: (01942) 886084  Fax: (01942) 886084 (ring voice first to confirm!)
WWW: (Newly updated) http://jumper.mcc.ac.uk/~simonc

Reply via email to