<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
Date   : Tue, 12 Aug 1997 23:34:57 +0100 (BST)
From   : Mark Cooke <mpc@...>
Subject: !6502Em script file format

Hi all,

The script format used by !6502Em follows.

Regards,

Mark


6502Em: BBC Script files
=======================

These are files intended to be the !Run file of
an application directory containing a BBC game.
When the application is run, !6502Em will be
loaded if necessary (so long as it has been 'seen'
by the filer).
Within the script file, you can alter certain
features of the emulator and specify which
file to run first to load the game.

The emulator's internal Currently Selected Directory (CSD)
will be set to the directory containing the script file.

The first line of the file MUST be:

BBC Script

On later lines, you may use the following commands:

Palette [On|Off]
Sound [On|Off]
Patch [Off|<patchname>]
Machine <machinename>
TapeFile <filename>
IndexFile <filename>
Keymap [Default|<keymapname>]
DisableTape
ScrollHack
LoadROM <filename>
LoadRAM <filename>
KillROM <ROMName>
ExactSpeed [On|Off]
Speed <Speed>

where:
<patchname> is the name of a 'Patch' in !6502Em.Patches,
<keymapname> is the name of a 'Keymap' in !6502Em.Keymaps,
<machinename> is one of BBCB, Master128, OS3.5, Compact, Electron

IndexFile takes a file containing names of files (in order)
that will be loaded when a CHAIN"" or *RUN"" is issued
(in the same directory as the Script)

The last line of the script is then used to determine
how to run the game.

If the last line is non-existent, then the emulator
will try to load a file of the same name as the application
directory.

If the last line is just a single word, then the emulator
will try to load a file of this name.

In both these cases, the emulator will try to work out
whether the file is BASIC from its execution address or
filetype.
(&801F, &8023, &802B, &80E7 are executions addresses recognised)
Otherwise it will be *Run'd
If it is recognised as BASIC from its execution address,
page will be set to its load address before it is loaded.

If the last line contains a space (ie is not a single word)
or starts with CHAIN or * then that line will be typed into
BASIC by the emulator.

eg to turn the sound off, the last line might be:
OSCLI "FX210,1" : *Run GameObj

Some example Scripts:

BBC Script

BBC Script
Patch Off
Keymap Arcadians

BBC Script
Palette Off
ExileL

BBC Script
Machine BBCB
Patch Elite
Palette Off
Elite

BBC Script
Machine Master128
Patch M128Elite
Palette Off
MODE2 : */M128Elt

BBC Script
Patch Off
Palette On
PAGE=&1900 : OSCLI "FX210,1" : LOAD "LISTING"

BBC Script
TapeFile JSW
Machine BBCB
OSCLI "TAPE" : CHAIN ""


Mark Cooke                  The views expressed above are mine and are not
Systems Programmer          necessarily representative of university policy
University Of Birmingham    URL: http://www.sr.bham.ac.uk/~mpc/


<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>