      OUTLINE OF THIS FILE
  I. Liz Deal's Contributions
     A. Pre-SuperScript
     B. Keytrix
     C. Supermon
     D. Disk Utilities
     E. Spooling
     F. Machine Language
     G. Others
 II. Gord Campbell's Programs
III. The CBM 8032 Emulator
 IV. Manfred Mager's Monitor
-----------------------------
   I. Liz Deal's Contributions
      A. Pre-SuperScript
            CompuServe name:  PRESSC.BIN
            Original name:   "pre-superscript" (Basic program)
   SuperScript II, one of the very best word processing programs ever written
for any brand of computer, was designed for the British version of the B128,
the Commodore 700.  Even after four years this is the only software for any
microcomputer known to permit column moves (aside from dedicated
wordprocessors), and many other advanced features are also included.  Yet two
major problems occur when running SuperScript on the B128: keybounce (a letter
prints twice when you touch a key just once) and erratic cursor movement (the
cursor will only move four or five places when you hold down the cursor key,
then it pauses for a second before resuming).  Both problems are due to the
British use of 50 cycle AC, while American computers are plugged into a 60
cycle network.  Liz Deal wrote this program, which will fix both bugs if you
run it before loading SuperScript.  This magic is accomplished by a machine
language routine which intercepts the hardware interrupts, and which is a
separate file on CompuServe:
            CompuServe name:  IRQ400.BIN
            Rename to:       "+ta irq.400" (machine language program)
Another CompuServe file contains a thorough explanation of what creating this
patch involved:
            CompuServe name:  IRQRTE.BIN
            Original name:   "b128 irq rate" (Basic program)
Although this is a Basic program, it cannot be run: just load it and LIST to
read the explanation.
----------------------------------------
      B. Keytrix
            CompuServe name:  KEYTRX.BIN
            Original name:   "keytrix v4" (Basic program)
   Keytrix is an indispensible aid for anyone programming the B128 in Basic.
Several keywords are added to Commodore's Basic 4.0 commands, allowing
the user to do such things as renumber a program, list a program from disk
without loading it into memory, read sequential files from disk without
disturbing the program in memory, merge programs on disk (including subroutines
stored as program files) with the program in memory, find specified keywords,
variable names, and/or strings in the program in memory and automatically
change them if desired, and other useful functions.  What's more, Keytrix
uses the function keys F9 and F10 to scroll back and forth through the program
in memory, ending the need to use LIST every time you have to check on a line
which has scrolled off the screen.
   Keytrix uses 3 machine language routines to accomplish its lightning-fast
work.  These 3 routines need to be on the same disk as Keytrix, and must have
the exact name specified in the program.  B128 users will need these 3 files:
            CompuServe name:  Rename to:
            1128.BIN          "+b1 kxb128.v4" (machine language program)
            15128.BIN         "+b15kxb128.v4" (machine language program)
            15128P.BIN        "+b15kxb128.v4+" (machine language program)
B256 users will need these 3 files for Keytrix:
            CompuServe name:  Rename to:
            1256.BIN          "+b1 kxb256.v4" (machine language program)
            15256.BIN         "+b15kxb256.v4" (machine language program)
            15256P.BIN        "+b15kxb256.v4+" (machine language program)
Brief instructions for the use of Keytrix are provided in the next file:
            CompuServe name:  KEYINS.BIN
            Original name:   "keytrix v4.ins" (Basic program)
--------------------------------------------------------
      C. Supermon
            CompuServe name:  SUPMON.BIN
            Original name:   "supermonb v5" (Basic program)
   Liz Deal has adapted the famous Supermon program for the B128.
Supermonitor offers machine language programmers an alternative to the built-in
monitor provided by Commodore.  Once again, it operates through machine
language.  The following four files are needed to run the program above:
            CompuServe name:  Rename to:
            SMB04.BIN         "+smb v5.0400" (machine language program)
            SMB0E.BIN         "+smb v5.e000" (machine language program)
            SMB04P.BIN        "+smb v5.0400+" (machine language program)
            SMBE0P.BIN        "+smb v5.e000+" (machine language program)
Brief instructions for the use of Supermon are provided in the next file:
            CompuServe name:  SMBINS.BIN
            Original name:   "supermonb v5.ins" (Basic program)
---------------------------------------------------------------
      D. Disk Utilities
   Liz Deal has provided several disk utilities for the B128, most of them
adaptations of programs by Jim Butterfield.
            CompuServe name:  DSKLOG.BIN
            Original name:   "disk logger.b128" (Basic program)
If you want to see a directory of the files on your disk, you can just issue
the DIRECTORY or CATALOG command, or you can get a real fancy directory by
running this program.  It needs one machine language routine:
            CompuServe name:  LOG400.BIN
            Rename to:       "+disklog.400" (machine language program)
As before, the name of the machine language program must be exactly as
specified in the Basic program which calls it.
            CompuServe name:  DSKMOD.BIN
            Original name:   "diskmod.b128" (Basic program)
With this program you can choose any track and sector on your disk that you
want to modify.  The bytes will be shown (in hexadecimal) on the screen; use
the screen editor to change any bytes to whatever you want, and the program
will make the same changes on your disk for you.
            CompuServe name:  DSKVEW.BIN
            Original name:   "disk view.b128" (Basic program)
This program is similar to the previous one in that it displays whichever
disk track and sector you specify, but it protects you against making
unintentional changes on your disk.
            CompuServe name:  COPALL.BIN
            Original name:   "copy-all b128.3" (Basic program)
This program is intended to allow you to copy any number of files from one disk
to another, in whatever order you choose, but it requires a machine language
routine which is not available on CompuServe.
            CompuServe name:  CHGDEV.BIN
            Original name:   "change dev#" (Basic program)
Commodore disk drives are pre-set at the factory to be device number 8.
If you have more than one drive unit, you can use this program to fool your
computer into thinking one of them has a different device number.
            CompuServe name:  BIGREL.BIN
            Original name:   "big rel file" (Basic program)
The 8050 disk drive can handle the same jumbo-sized relative files as the 8250.
Run this program to command your 8050 to use the 8250 relative file routines.
            CompuServe name:  EXPREL.BIN
            Original name:   "8250 expand rel" (Basic program)
This program came from the 8250 demo disk.  Unless you have that disk, you
cannot run it because it needs a DOS machine language routine found on a
certain block of that disk.
---------------------------------------
        E. Spooling
            CompuServe name:  SPOOL.BIN
            Original name:   "spool b128" (Basic program)
   Spooling is a technique which allows the computer to be free to run programs
while the disk drive is in use, typing out a file on the printer.  Liz Deal
wrote this one for the B128.  Of course, any program you run will not be able
to access the disk drive while it is in use.
            CompuServe name:  WSPOOL.TXT
            Original name:   "w.b128 spool" (sequential file)
   This is a SuperScript II sequential file which explains how spooling works.
------------------------------------------------------------------------------
        F. Machine Language
            CompuServe name:  DCLPAL.BIN
            Original name:   "dcl b128.pal" (Basic program--load & list)
This is a detailed memory map for the B128, formatted for use in the PAL
assembler.
            CompuServe name:  WXCALL.DOC
            Original name:   "w.b128 xcalls" (sequential file)
An extensive discussion of machine language programming in the B128, and in
particular the setup needed before code in a nonsystem bank can access the
Kernal routines, or in fact any routines outside its own bank.
            CompuServe name:  BTXFER.BIN
            Rename to:       "+btxfer.fe48" (machine language program)
Here's the transfer of execution code essential for bank-hopping, as explained
in the file above.
            CompuServe name:  XCALL.BIN
            Original name:    "xcall" (Basic program--load and list)
Liz Deal wrote this program to demonstrate how to create a pseudo-jump table
in a machine language routine.  Details are given in WXCALL.DOC, above.  This
file is actually the source code for an assembly language program, and it
contains a commented disassembly of the machine code.
-----------------------------------------------------
        G. Others
            CompuServe name:  WEXP15.BIN
            Original name:   "w.exp15" (sequential file)
A text file which explains how you can adapt your CalcResult cartridge to
serve as extra RAM in bank 15.
            CompuServe name:  CON128.BIN
            Original name:   "configure b128" (Basic program)
Liz wrote this little program for those who don't use Keytrix or Supermon.
It will relocate the Basic program text area to $401, where it resides in the
PET/CBM computers.
            CompuServe name:  PRIMES.BIN
            Original name:   "primes" (Basic program)
Lets you type in any integer as a limit, and it will print out all the prime
numbers from the beginning up to the limit.
            CompuServe name:  Original name:
            LOBAS.BIN         "b128lo.bas" (program-type file)
            HIBAS.BIN         "b256hi.bas" (program-type file)
            LOKER.BIN         "b128lo.ker" (program-type file)
            HIKER.BIN         "b256hi.ker" (program-type file)
These four files are memory dumps of the standard B128 and B256 Basic ROMS
and Kernal ROMS.  Compare them with your own machine's ROMS to see if you
have the main production model, or an early version released before all the
bugs were worked out.
            CompuServe name:  QPLOT.BIN
            Original name:   "qplot.b128" (Basic program)
Lets you draw graphs on the screen.
            CompuServe name:  VER128.BIN
            Original name:   "verifizerb128" (Basic program)
The function of this program is not explained.
----------------------------------------------
 II. Gord Campbell's Programs
        Gord Campbell prepared these programs for their original release on
a TPUG disk.
            CompuServe name:  LISTME.BIN
            Original name:   "list-me.bu" (Basic program--load and list)
Brief description of the rest of the files in this section.
            CompuServe name:  SAMPLE.BIN
            Original name:   "sample boot.b" (Basic program)
Shows the procedure for loading a machine language program from Basic.  To run
this program, you will need to have the next three files as well.
            CompuServe name:  TESTBA.BIN
            Rename to:       "test.basic" (Basic program)
General instructions for loading a machine language program from Basic.  This
program is loaded and run by the preceeding file.
            CompuServe name:  TXRAM.OBJ
            Rename to:       "txram obj" (machine language program)
Another version of the transfer of execution code.  Liz Deal's version fixes
a bug in it.  This name needed to run SAMPLE.BIN above.
            CompuServe name:  SAMOBJ.BIN
            Rename to:       "sample obj" (machine language program)
This code is not run, it is just included for demo purposes.  SAMPLE.BIN,
above, will not work without it.
            CompuServe name:  FLASHB.BIN
            Original name:   "flash.bas.b" (Basic program)
A demo program which will draw a border around the screen and flash it on and
off once every second.  It works by loading the following interrupt-driven
machine language program:
            CompuServe name:  FLASHO.BIN
            Rename to:       "flash.obj" (machine language program)
Study this program to see the proper way to set up and run machine code hooked
up to the interrupt vector.
            CompuServe name:  FLSHML.BIN
            Original name:   "flash.8.1" (program-type file)
This is the source code of the preceeding file, for use with the MAE assembler.
            CompuServe name:  HEXDMP.BIN
            Original name:   "hex dumper.z" (Basic program)
Creates a dump on your screen of any file on your disk.  Uses the same format
as Liz Deal's disk utilities, but you do not have to know which track and
sector the file starts on.
            CompuServe name:  MEMDMP.BIN
            Original name:   "mem dump.b" (Basic program)
Creates a similar dump to the program above of the code in Bank 15, beginning
at any location you specify.
            CompuServe name:  CHGADD.BIN
            Original name"   "chg ld addr v1.2" (Basic program)
To load a Basic program in the PET/CBM computers, the program header must
contain a load address of $401.  If you have a B128 program (or one for any
other Commodore model) that you want to use in a PET, be sure it has the
proper header by running this program first.
            CompuServe name:  ERRLST.BIN
            Original name:   "err$ list.b" (Basic program)
Run this program to make a list of all the error messages used by the B128.
Or just look in Appendix J and K of the computer manual.
--------------------------------------------------------
III. The CBM 8032 Emulator
            CompuServe name:  START2.BIN
            Original name:   "Start8432.21" (Basic program)
This B128 Basic program will make your computer emulate the CBM 8032, so you
will be able to run some 8032 programs on it.  This program comes from Germany,
where many B128's were sold before there was any software for it.
It requires the next six files:
            CompuServe name:  Rename to:
            8432-2.BIN        "8432.21" (machine language program)
            BANKF2.BIN        "bank F.20  '1024" (machine language program)
            T1.BIN            "t1" (machine language program)
            T2.BIN            "t2" (machine language program)
            TD.BIN            "td" (machine language program)
            TD-ALT.BIN        "td.alt" (machine language program)
The last four files in the list define which character is printed for each key
on the keyboard.  B128 users really need only T1.BIN, the default option.  The
other three are available for users with other types of keyboards.
            CompuServe name:  INST.BIN
            Original name:   "instructions8432" (Basic program)
Very brief instructions for using the Emulator program.
            CompuServe name:  SMBREL.BIN
            Original name:   "supermon.4.rel" (Basic program)
This is Liz Deal's version of Supermon for use with the Emulator.
            CompuServe name:  Original name:
            AID46B.BIN        "aid4.6b00" (machine language program)
            AID47B.BIN        "aid4.7b00" (machine language program)
The two files above come from Liz Deal as well. Use the second one with the
Emulator if you do not use Supermon; use the first one if you do use
Supermon with the Emulator.  They contain a tiny Basic aid, which adds
such commands as Delete and Renumber to the 8032 Basic vocabulary.
            CompuServe name:  Original name:
            BM1.BIN           "bm1" (Basic program)
            BM2.BIN           "bm2" (Basic program)
            BM3.BIN           "bm3" (Basic program)
            BM4.BIN           "bm4" (Basic program)
            BM5.BIN           "bm5" (Basic program)
            BM6.BIN           "bm6" (Basic program)
            BM7.BIN           "bm7" (Basic program)
            BM8.BIN           "bm8" (Basic program)
These 8 benchmark programs, provided by Jim Butterfield, are meant to be run
on the Emulator to show that 8032 programs will execute faster on the B128 with
the Emulator than they will on the 8032 itself.
-----------------------------------------------
 IV. Manfred Mager's Monitor
        Yet another machine language Monitor.
            CompuServe name:  EXTRA2.BIN
            Original name:   "extra monitor" (machine language program)
This monitor resides totally in bank 15.
            CompuServe name:  EXTRA1.BIN
            Original name:   "extra mn inst" (Basic program)
Instructions for installing the previous file and using the monitor.
            CompuServe name:  EXTRA3.BIN
            Original name:   "extra monitor.s" (Basic program--load and list)
The source code for the file above.
