Acorn Computers Ltd. British Broadcasting Corporation Master Series Microcomputer Functional differences between Master 128 and Models B & B+ Operating system version: New Series 3 OS for the Master 128/512/Sc/Turbo New Series 4 OS for the Master Econet Terminal. Operating System changes: As version 1.2 with following extensions: * Shadow Screen - Use of MODE 128 to 135 instead of MODE 0 to 7 results in the use of a section of memory for the screen separate from the main area of RAM. This allows more room for user Progs. * Real-time clock - the status of a Real-time clock can be called from the MOS. The OSWORD calls &E and &F Read & Write the clock in BCD or text formats. * Default command line interpreter if no language present or *GO used. * Configure CMOS RAM commands - the state of the CMOS RAM can be set for both reserved and unreserved Bits. Reserved Bits include: * Start-up mode MODE <0-7,128-135> * File-Server station number FS <0-255[.0-255]> * Printer-Server station number PS <0-255[.0-255]> * Econet station ID Transient Command (Must be set by Net Manager) * Start-up language ROM number LANG * Start-up filing system ROM number FILE * *TV position & Interlace state TV [[,] * Auto-repeat delay DELAY <0-255> * Auto-repeat rate REPEAT <0-255> * Default printer (*FX5 type) PRINT <0-255> * Print ignore char.(no param=no ignore)IGNORE <0-255> * Tube selected (Internal/External) EXTUBE/INTUBE (Looks for int Tube if no ext fitted) * Tube ON/OFF TUBE/NOTUBE (TUBE defaults to I/O Proc if no Co-proc fitted) * Serial baud rate (Both ways) BAUD <1-8> * Serial data format DATA <0-7> * Boot status BOOT/NOBOOT (Reverses BRK and SHIFT + BRK action) * Scroll state (on/off) SCROLL/NOSCROLL * Floppy-Drive params (speed etc) FDRIVE <0-3> (Use low number for highest step rate. 0 has MFM pre- compensation. 1 is same speed but no compensation) * Floppy or Winchester start-up FLOPPY/HARD (Floppy is selected if no Winchester fitted with HARD) * ADFS or FADFS as default DIR/NODIR (FADFS does not Mount disk automatically) * Bell character volume LOUD/QUIET * Caps lock on/off CAPS/NOCAPS/SHCAPS FS & PS status bits only operational when ANFS fitted. Configuration is set using *CONFIGURE or read using *STATUS or just *STATUS to read all. * Soft characters fully exploded * Improved soft-key structure with more buffer area. * New resident Operating System commands: *APPEND - functions as BUILD but appends to end of file. *BUILD - as DFS but control codes input by | mechanism. *CLOSE - closes open files on current filing system. *CONFIGURE - To set-up start-up option(s). *CREATE - creates empty file using *SAVE params. *DELETE - as DFS delete. *DUMP - . *EX - Examine file in specified directory. *EXEC - Take input from file rather than keyboard. *GO - to enter address in language/IO processor. *GOIO - to enter program at address in IO processor. *IGNORE - as *FX6. *INFO - as *EX, but for single files or Wildcard use. *INSERT - inserts ROM number n into ROM map from reset. *LIST - List file in GSREAD format (*TYPE with line nos.) *LIBFS - Define FS where LIB is from current FS. *MOVE - copies files from one name to another incl between filing systems. *PRINT - as TYPE but gets/processes vdu codes. *REMOVE - as DELETE but no error msg if not found. *ROMS - lists ROM names, skts, vers & UNPLUG/PLUG. *SHADOW - with 0 or no param, gives shadow on next mode. With 1, drops shadow on next mode. *SHOW - Displays soft-key contents. *SHUT - Close open files on all filing systems. *SRDATA - Reserve Sideways RAM for data use. *SREAD - Copy Sideways RAM to main RAM. *SRROM - Reserve Sideways RAM for direct addressing. *SRWRITE - Copy main RAM to Sideways RAM. *SPOOL - Direct screen output to named file. *SPOOLON - functions as SPOOL but appends to end of file. *STATUS - Lists status of start-up option(s). *TIME - Displays time from Real-time clock. *TYPE - List file with control codes displayed as |D etc. *UNPLUG - removes ROM number n from ROM map from reset. * Numeric keypad - options to set base for range of values returned and set whether SHIFT/CTRL etc affect codes. * Cassette filing system upgraded to do OSGBPB (calls 1 & 3) in those cases where it is to write to or read from the current pointer. OSFSC extended for CFS to provide call 7 so that it returns legal file handle range. CFS will perform * EX ( but not * INFO ). CFS can be reselected by *FX143,18, where n=1 (1200 baud), n=2 (300 baud, n=3 (ROM filing system), * Multifiling system capability. Name of filing system can be pre- fixed to the file name itself. Files may be opened and kept open across several filing systems. Filing names currently defined include: CFS (or TAPE), ROM, DFS, ADFS, NET * Extended graphics facilities: * Extended Fill commands using checkerboard pattern/stipple. * Mark-to-space ratio of dotted line. * New triangle algorithm for correct plotting under all conditions. * Parallelogram - Solid fill. * Rectangle - Solid fill. * Circle - Outline. * Circle - Solid fill. * Arc - Line fill. * Arc - Solid fill (Pie shape). * Arc - Solid fill (Chord segment). * Ellipse - Outline. * Ellipse - Solid fill. * Fill enclosing shape outline (flood-fill). * Enhanced speed of all fill operations. * Move/copy rectangle. * Extended horizontal line fill. * Extension text: * Improved character draw speed ( especially VDU5 ). * Clear block of text window. * Output character with no cursor move (dead key). * Advance left/right after drawing character. * Pending scroll to allow bottom right character to be drawn. * Cursor options held across mode changes. * Direct window scroll - left/right/up/down. * Extra 128 standard characters in ASCII range 128 to 255. Detailed changes: Miscellaneous: 1) Sideways ROM headers which have been "illegal" previously on Models B & B+, but accepted by the MOS, may not be accepted by this MOS version. 2) The screen Paged Mode algorithm has been improved in this MOS, resulting in slight differences in the number of displayed lines in some modes compared with Model B & B+. 3) In the Econet Terminal, the User VIA chip (6522) is not normally fitted. Application software intended for Econet use should not use the VIA timer. 4) The RAM latch at &FE34 has some changes and additions to the use of each bit. Refer to the Advanced Reference Guide for more information. 5) The machine start-up mode & language are now easily reconfigured. Soft- ware should always have an auto-boot file which sets the language and screen mode, without assuming a default state. (The machine may NOT be in Mode 7 or in BASIC at disk Boot-up). 6) Software should not use "*abbreviation" due to the risk of clashes with other fitted ROMs with similar *commands. In particular, *D. no longer selects the DFS! (It selects *DUMP). 7) Software should NEVER assume the position of PAGE. If it needs to know it should ask the operating system where OSHWM is. 8) To provide conversion compatibility across DFS & ADFS, note the following: *DRIVE - ADFS does not support this. Use *DIR :X.Y, which is a format common to both filing systems. *DIR - ADFS does not support moves directly from one directory to another, arbitrarily across the structure. Use the full pathname where relevant in DFS to support ADFS. 9) Programs should never define soft characters by directly loading into the soft-key definition area (&C00-&CFF). 10) The Econet Terminal is NOT upgradeable to other Master variants. Memory map changes The Shadow screen in the Model B+ from &3000 - &7FFF (Sideways) is present in the Master 128 machine. The 12K of additional Paged RAM in Model B+ is implemented differently in the Master 128 machine and is reserved for Operating and Filing system use as "Private RAM" (see below). The minimum machine configuration is 128K, where 64K is allocated to Sideways RAM (4 by 16K pages) in a similar way to the 128K Model B+. Use of internally fitted ROM's in two of the three sockets will require changes to the link settings which will remove access to some of the Sideways RAM. (They are ROM locations 4,5,6 & 7). Memory map below OSHWM, with changes from Model B/B+ indicated: Page zero - &00-&FF &00-&8F Language workspace. BASIC allows &70-&8F for the user. &90-&9F ECONET workspace. Do not use. &A0-&A7 NMI workspace. It must be claimed before use, the owner must: a) Have a Filing System number allocated to it. Note the error in the Advanced User Guide (Bray, Dickens & Holmes) on P. 323. The NMI ID passed around by Service Calls &B and &C are Filing System numbers not ROM numbers. b) Be able to process ROM Service Calls &B and &C i.e. they must be ROM's or intercept OSBYTE &8F. &A8-&AF MOS scratch space. Also user scratch between MOS calls. &B0-&BF Filing System scratch space. Watch out for "hidden" filing system calls i.e. those produced by OSWRCH if *SPOOL used. &C0-&CF Current Filing System PRIVATE workspace. &D0-&FF MOS workspace only (see Advanced Reference Guide, published by Acorn, for accurate decription of the VDU Driver use). Page one - &100-&1FF Machine stack and error message buffer. Page two - &200-&2FF &200-&235 Vectors. &236-&28F Main MOS variables. &290-&2FF MOS workspace (for MOS only). Page three - &300-&3FF &300-&37F VDU variables (for use by graphics routines only). In the Model B, B+ and this machine, Page three is used for VDU workspace. Most variables are the same, with the following exceptions: Model B & B+ This machine &359 - Foreground graphics colour Plotting foreground/background &35A - Background graphics colour Current graphics plot mode &366 - Mode 7 cursor Cursor control flags (VDU 23,16) &367 - Exploded font flag Dotted line pattern (VDU23,6) &368 - Exploded font location bytes Current dotted line state &369 - " " " " Plot colour (0-solid,Not 0-pattern) &36A - " " " " F/grnd col. (0-solid,Not 0-pattern) &36B - " " " " B/grnd col. (0-solid,Not 0-pattern) &36C - " " " " Col. 81 flag (top bit set pending) &36D - " " " " Foreground graphics colour &36E - " " " " Background graphics colour &380-&3DF Cassette Filing System workspace (do not use). &3E0-&3FF Keyboard input buffer (do not use unless replacing). Page four, five, six and seven - &400-7FF Language workspace. Do not use unless you are the current language or the current language has allowed you to use it. Page eight - &800-&8FF &800-&87F Sound workspace. DO NOT USE (unless you want strange noises!). &880-&8BF Printer buffer. Useable if, and only if, no printing needed. &8C0-&8FF Sound workspace (envelopes 1-4). Useable if, and only if, envelopes not needed. Page nine - &900-&9FF &900-&9BF RS 423 O/P buffer, or Cassette O/P buffer (1st part), or Sound workspace (envelopes 5 - 16). Do not use for anything else, as this area could be re-allocated. &9C0-&9FF Speech buffer, or Cassette O/P buffer (2nd part). Do not use for anything else, as this area could be re-allocated. Page ten - &A00-&AFF RS 423 I/P buffer, or Cassette I/P buffer. Do not use for anything else, as this area could be re-allocated. Page eleven - &B00-&BFF ECONET workspace. Do not use. In the Model B & B+ this is used for the soft key buffer. In this machine, the soft key buffer resides in the Private 12K RAM and should not be accessed by the user. Programs directly accessing Page eleven on the Model B & B+ for soft-key purposes will be incompatible with this machine Note: Initial Page states are: Model B, B+: &B00-&BFF - &10 This machine: &B00-&BFF - &00 Page twelve - &C00-&CFF ECONET workspace. Do not use. In the Model B & B+ this is used for user defined characters in the range ASCII 224-255. In this machine, all characters up to ASCII 255 are defined with a standard font. This definition resides in the Private RAM area and should not be accessed by the user (the user can, however, re-define all of them as before with VDU23). Programs directly accessing Page twelve on the Model B & B+ for user defined characters will be incompatible with this machine. Note: Initial Page states are: Model B, B+: &C00 - &0D &C01-&CFF - &00 This machine: &C00-&CFF - &00 Page thirteen - &D00-&DFF &D00-&D5F NMI routine and workspace. NMI's must be claimed to use this area. &D60-&D7F ECONET private workspace. Do not use. &D80-&D91 Currently unallocated. &D92-&D9E Reserved for Trackerball use. &D9F-&DEF Expanded vector set. &DF0-&DFF Paged ROM workspace, 1 byte per ROM. 12K Private RAM: &8000-&83FF Soft-key buffer. Do not use directly. &8400-&87FF VDU workspace. Reserved for routines that need a large area such as Flood-fill. Do not use directly. &8800-&88FF VDU variables and workspace. Do not use directly. &8900-&8FFF Character definitions. Do not use directly. &C000-&DBFF Paged ROM workspace, claimed via a Service Call. &DC00-&DCFF MOS CLI buffer. Corrupted by '*' commands. &DD00-&DEFF Transient utility workspace e.g. *MOVE. &DF00-&DFFF MOS private workspace. PCB Link settings: IMPORTANT! These links will not normally need adjustment. If they should require changing, the Mains Supply MUST be disconnected before removing the top of the computer case using the 4 screws on the underside marked FIX. Take note of any warning labels within the case. Link 1 - Audio to 1 Mhz. bus. Normally set for input. Can be changed to audio output by cutting track link A and linking B. Link 2 - Cartridge -5V decoupler. Fit R9 and break track link to enable capacitive decoupling within cartridge. Link 3 - Not present. Link 4 - Allocated for advanced software use. Enables real-time clock Alarm facility to be used. Not normally fitted. Link 5 - Sync polarity. Cut track link and join other side to invert from negative to positive sync. Link 60/61 - Normally AB only linked. Link CD in addition for 8 Mhz output to Cartridges. WARNING! The lack of a clock supply to the computer can cause damage to the computer's dynamic RAM. Link AB should not be removed as it would result in the loss of a clock supply. Link 7 - Video polarity. Cut track link and join other side to invert the video output. Link 8 - Not present. Link 9 - Not present. Link 10 - Channel select. Selects one of two VHF channels when VHF modulator fitted. Link 11 - Not present. Link 12 - Composite Sync output to Cartridge. Normally set to B. This provides a logic LOW at cartridge pin A10. In position A, a connection is provided to the computer CSYNC for GENLOCK. Link 13 - Change Link when fitting a different Reference Diode on the A/D input. This diode should be fitted at position PR1. Link 14 - Used when Chroma MSI chip not fitted. Link 15 - Select PAL or NTSC TV system encoding. Link 16 - Not normally fitted. Link 17 - Not present. Link 18 - Set East for ROM socket IC 41 active. Normally set West for sideways RAM active. Link 19 - Set East for ROM socket IC 37 active. Normally set West for sideways RAM active. Link 20 - Not present. Link 21 - Not normally fitted. Links Light-pen strobe into the intercartridge link pin 10. Can be used for Genlock sync via LPSTB. Cartridge sockets: The cartridge socket specification is a superset of the Electron Plus-1 specification. All Electron Cartridges should work in this machine, but may run faster. The converse may not be true unless a specification sub-set is used. Ask for the new Cartridge Specification or consult the appropriate Reference Guide. For further technical information on the Master 128 machine, consult the following: Master Series Welcome Guide - Product Code ADJ01 Master Series Reference Manual Part 1 - Product Code ADJ22 Master Series Reference Manual Part 2 - Product Code ADJ23 Master Series Advanced Reference Manual - Product Code ADJ24 This information is subject to change without notice. No responsibility can be taken for any errors or omissions. The user or program writer should verify that any application program is suitable for the intended environment(s). DJBELL