ROMANTIC ROBOT
PRESENT
THE INSIDER

Written by D. Vivian and M. Edwards
(c) Romantic Robot UK Ltd 1988
For AMSTRAD CPC464/664/6128 with MULTIFACE 2

The INSIDER is a unique Z80 programming aid designed for exclusive use with
the MULTIFACE 2: By residing OUTSIDE the CPC 464/664/6128, it can look INSIDE
ANY program and disassemble it. The INSIDER loads into the MULTIFACE 8K
extension RAM and does not occupy any CPC RAM. Thus you can RUN a program as
usual, INTERRUPT it with the MULTIFACE STOP button and examine its operation
in minute detail - if you wish to see (and even alter) whatever happens
INSIDE any program at any moment, just ask THE INSIDER! It offers you instant
access to:

  o  Z80 DISASSEMBLER - including undocumented opcodes.
  o  FIND- Search for text, op-codes etc.
  o  FRONT PANEL DISPLAY of Z80 CPU - Registers, Program counter, Interrupt.
  o  VIEW memory as NUMBERS or ASCII characters.
  o  ALTER contents of MEMORY or REGISTERS
  o  HEX or DECIMAL Output to SCREEN or PRINTER

Although some knowledge of the Z80 machine code is needed to make the most
of the INSIDER, the power to examine every detail of any program is an
invaluable learning aid.

LOADING
-------

To load the INSIDER, ensure the MULTIFACE is switched ON (provided it has the
invisibility switch), insert the disk, type RUN"I" (+ RETURN) or RUN "DISC,
(+ RETURN) to install the INSIDER into your MULTIFACE. Next, BEFORE LOADING
a program you wish to inspect, RESET the CPC using CTRL-SHIFT-ESC (not the
MULTIFACE RESET as this corrupts the INSIDER). Then RUN and STOP the program
whenever you wish. Pressing the MULTIFACE STOP button will now bring the
INSIDER menu. To return to the MULTIFACE menu, press ANY key while at the
same time pressing the STOP button. The INSIDER disc MUST be kept in drive
'A' whilst you are actually using this program, as it is too large to fit
inside the MULTIFACE and different parts are loaded as required.

IMPORTANT: Do NOT activate (press the STOP button) the INSIDER BEFORE loading
programs saved by the MULTIFACE - wait until the MULTIFACED programs are
FULLY loaded.

NOTE: At any point during the program: Pressing SPACE will toggle between
paged and scrolling mode.
Pressing RETURN when in paged mode will display the next page.
Pressing ESC will return to the main menu.

THE MAIN MENU
-------------

Each option is selected by pressing its inversely printed letter, i.e. D for
Disassemble.

  L - LOWER ROM. Toggle between the Lower ROM or RAM in the lower 16k.

  U - UPPER ROM. Toggle between the currently selected Upper ROM or RAM in
      the highest 16K.

  S - SELECT UPPER. Select any of your UPPER (sideways) ROMs to be paged in.
      Type in the ROM number which will then be displayed (either in decimal
      or hex depending what mode you are in).

  R - BANKED ROM. Select which RAM bank (0-16) is paged in the second 16K
      bank area (with the bank 0 being the normal RAM).

  0 - OUT TO SCREEN/PRINTER. Toggle between output to screen and output to
      screen & printer.

  1 - LINE FEED. Toggle to send Line Feed (Chr$ 10) with or without Carriage
      Return (Chr$13).

  R - RETURN. This returns to the program being examined. The screen, colours
      & sound are restored and execution is continued from the point at which
      the stop button was pressed.

  D - DISASSEMBLE - Full Z80 disassembler using standard Zilog mnemonics. A
      number of valid Z80 op-codes were omitted from the official Z80
      instruction set. These are not guaranteed to work on every Z80 processor
      but are used nonetheless. The extra op-codes are disassembled with the
      appropriate suffix for IX and IY extensions. i.e. DD,84 ADD A,IXH or
      CB,37 = SLL A.

  F - FIND. This will present you with four options (plus ESC to return to
      Main Menu):
      Enter number sequence (1): Enter a sequence of numbers, each separated
        by pressing RETURN. Pressing RETURN without entering a number will
        terminate the sequence.
      Enter text sequence (2): Enter the text in ASCII characters, press
        RETURN to terminate.
      Set search start address (3): Set address at which the search will start.
      Do search (4): Search from the address set until the string is found or
        the counter reaches 65535. If no address has been specified it will
        search from the point at which the search last terminated.

  T - TEXT. View memory contents as ASCII characters. Unprintable characters
      are displayed as '.'

  N - NUMBER. View memory contents as Hex or Decimal numbers.

  Z - Z80. View contents of Z80 registers in Hex or Decimal. Flags are shown
      by letter, upper case signifying the flag is set, for example "Zc"
      indicates the 'Z' flag is set, and the 'C' Carry flag is clear. The
      interrupt status is shown as EI or DI, the interrupt mode being shown
      as IM 1 or IM 2. To alter the value of the registers, use the cursor
      left/up and right/down to step through, When the register you wish to
      alter is shown, enter the new value and press RETURN, Press ESC to exit.
        Mi stands for maskable interrupt, only bits 0 and 2 have any meaning:
        [Bit 0: 0 = IM 1 (or IM 0) 1 = IM 2 ][Bit 2: 0 = Interrupts disabled
        (DI) 1 = Interrupts enabled (EI).]

  P - POKE. Enter an address and the value to be poked into it,

  H - HEX- All numbers entered and displayed from now on will be in HEX.

  D - DEC. All numbers entered and displayed from now on will be in DECIMAL.

The INSIDER and all of its associated documentation, code, visual
presentation and text are the exclusive property of ROMANTIC ROBOT UK Ltd.
and are protected worldwide by Copyright laws. The INSIDER may not be
duplicated, copied, transferred, reproduced, lent, hired, transmitted,
translated, modified or stored in part or whole by any means or in any form
without the express written permission of ROMANTIC ROBOT UK Ltd., 54
Deanscroft Avenue, London NW9 8EN.

Telephone 081 -200 B870. Fax 081 -200 4075.

PRICE œ14.95 on disk plus p&p œ1.00 to UK, œ2.00 to Europe and, œ3.00
Overseas.

Scanned by Paul Collins. OCRed by Kevin Thacker.