1541 Flash Manual Project64.txt

From ReplayResources
Jump to navigationJump to search

1541 Flash! Manual

text included from Project64

Please check the text for credits!


*********

Welcome to Project 64!

The goal of Project 64 is to preserve Commodore 64 related documents
in electronic text format that might otherwise cease to exist with the
rapid advancement of computer technology and declining interest in 8-
bit computers on the part of the general population. If you would like
to help by converting C64 related hardcopy documents to electronic
texts please contact the manager of Project 64, Cris Berneburg, at
74171.2136@compuserve.com.

Extensive efforts were made to preserve the contents of the original
document.  However, certain portions, such as diagrams, program
listings, and indexes may have been either altered or sacrificed due
to the limitations of plain vanilla text.  Diagrams may have been
eliminated where ASCII-art was not feasible.  Program listings may be
missing display codes where substitutions were not possible.  Tables
of contents and indexes may have been changed from page number
references to section number references. Please accept our apologies
for these limitations, alterations, and possible omissions.

Document names are limited to the 8.3 file convention of DOS. The
first characters of the file name are an abbreviation of the original
document name. The version number of the etext follows next. After
that a letter may appear to indicate the particular source of the
document. Finally, the document is given a .TXT extension.

The author(s) of the original document and members of Project 64 make
no representations about the accuracy or suitability of this material
for any purpose.  This etext is provided "as-is".  Please refer to the
warantee of the original document, if any, that may included in this
etext.  No other warantees, express or implied, are made to you as to
the etext or any medium it may be on.  Neither the author(s) nor the
members of Project 64 will assume liability for damages either from
the direct or indirect use of this etext or from the distribution of
or modification to this etext.

*********

The Project 64 etext of the 1541 Flash! Instruction Manual. Converted
to etext by David Holz <holz4061@nova.gmi.edu>, retrieved from
http://www.funet.fi/pub/cbm/manuals/ as "1541-flash!.manual".
Formatted by the Basic Bombardier.

1541FL10.TXT, November 1996, etext #123.

*********

Note from the Translator:

I typed this into electronic form due to requests made on comp.sys.cbm
for info on this device.  I have included the original copyright
statement made by Skyles Electric Works, Inc., but did not inquire
with the original authors as to the legality of doing this.  However,
I do not believe that this document is available in print anywhere,
and I shall earn no compensation of any form from my work with this
document.

Page numbers are listed at the bottoms of their respective pages, as
in the hardcopy version.

Centering of text was omitted. [ Please note that several graphic pics
were omitted. Please accept our apologies for this. ]

*********

1541 FLASH!
INSTRUCTION MANUAL

by
BOB SKYLES
BRYCE NESBITT

SKYLES ELECTRIC WORKS, INC.
231-E South Whisman Road
Mounain View, CA 94041 U.S.A.

Copyright (c)1984 by Skyles Electric Works, Inc.

All rights reserved.  No part of this publication may be reproduced,
stored in a retrieval system, or transmitted, in any form or by any
means electronic, mechanical, photocopying, recording or otherwise,
without the prior written permission of Skyles Electric Works, Inc..
No patent liability is assumed with respect to the use of the
information contained in this manual.  Skyles Electric Words, Inc. has
used care in preparing this manual, it assumes to responsibility for
errors or omissions.  Neither is any liability assumed for damages
resulting from the use of the information contained herein.

1541 FLASH! and CableCard are trademarks of Skyles Electric Works Inc.

Commodore 64 and commodore 1541 are trademarks of Commodore Business
Machines

The program modifications to the Commodore 64 Kernal ROM and the 1541
Disk Drive operating system ROM are copyrighted by Bryce Nesbitt.  All
rights reserved.


TABLE OF CONTENTS
for
1541 FLASH! Instruction Manual


Introduction . . . . . . . . . . . . . . .   1
     Quick Reference Card  . . . . . . . . . 3

Easy Everyday Commands . . . . . . . . . .   5

Symbology  . . . . . . . . . . . . . . . . . 5
<SHIFT><RUN/STOP>  . . . (LOAD"*",8,1) . . . 6
LOAD "PRG  <RET> . . . . (LOAD "PRG",8)  . . 6
OPEN1:CMD1:LIST  <RET> . (List program)  . . 6
POKE 148,64  <RET> . . . (C-64 slow load)  . 7
Manual Switch on CableCard . . . . . . . . . 7
OPEN 1,8,15,"Z8S"  <RET> (1541 slow load)  . 7
POKE 148,0   <RET> . . . (C-64 FLASH! load)  8
OPEN 1,8,15,"Z8F"  <RET> (1541 FLASH! load)  8
OPEN 1,8,15,"UJ"  <RET>  (1541 soft reset) . 8
SYS 64738  <RET> . . . . (C-64 soft reset) . 8

DOS Commands . . . . . . . . . . . . . . .   9

SYS 65526  <RET>  . . (DOS Turn on) . . . .  9
@IO  <RET>  . . . . . (Clear Disk . . . . . 10
@$  <RET> . . . . . . (Read Directory)  . . 10
@$:???*  <RET>  . . . (Dir. w/matching) . . 10
@   <RET> . . . . . . (Read Disk Error) . . 11
@$0:UJ  <RET> . . . . (1541 soft reset) . . 11
@#x  <RET>. . . . . . (Change drive #)  . . 11
%PRG NAME  <RET>. . . (Load prg. file)  . . 12
@R0:NEW=OLD  <RET>  . (Rename a file) . . . 12
@C0:NEW=OLD  <RET>  . (Copy a program)  . . 12
@S0:NAME  <RET> . . . (Scratch a File)  . . 12
@N0:NAME,ID  <RET>  . ("New" a Disk)  . . . 13
@V0  <RET>  . . . . . (Validate a disk) . . 13
@0:Z8S  <RET> . . . . (1541 slow load)  . . 13
@0:Z8f  <RET> . . . . (1541 FLASH! load)  . 13

Blinking Red Light on the Disk Drive  . .   14

Editing Commands  . . . . . . . . . . . .   15

<CTRL><leftarrow>  (Cursor to bottom) . . . 15
<C=><leftarrow>  . (16 Character tab  . . . 15
<C=><uparrow>  . . (Escape Quote/insert)  . 16
<C=><INST/DEL> . (Delete Line)  . . . . . . 16
<C=><CLR/HOME> . (Clear Screen down)  . . . 16
<C=><=>  . . . . (Escape ASCII/printer) . . 16
<CTRL><L>  . . . (Return ASCII/printer) . . 16
<CTRL> . . . . . (Slow screen listing)  . . 17
<SHIFT/LOCK> . . (Pause screen listing) . . 17
<SHIFT><RETURN>  (Return w/o execute) . . . 17
OPEN1:CMD1:LIST  <RET> . (List program) . . 17
Undocumented 1541 features  . . . . . . . . 18

Advanced Programming Commands . . . . . .   19

Z1b+CHR$(t)+CHR$(s) . ("U1" replacement)  . 19
Z2b+CHR$(t)+CHR$(s) . ("U2" replacement)  . 20
Z3b . . . . . . . . . (Fast data trans.)  . 20
GETBUF  . . . . . . . (Source listing)  . . 21
Z5b+CHR$(t)+CHR$(s) . (Execute a Z1-Z3)   . 22
Z6b+CHR$(t)+CHR$(s) . (Linked Loading)  . . 22
Z7s . . . . . . . . . (Speed set) . . . . . 23
NMI Debugger  . . . . . . . . . . . . . . . 24
General Notes . . . . . . . . . . . . . . . 25
1541 Bugs . . . . . . . . . . . . . . . . . 26
Technical Questions . . . . . . . . . . . . 27
Overheating Solutions . . . . . . . . . . . 28

Installation Instructions . . . . . . . . . 29
Overview  . . . . . . . . . . . . . . . . . 29
Warranties and opening up your Computer . . 29
Part Identification . . . . . . . . . . . . 30

Installation of parts, Commodore 64 . . . . 31
Installing the Kernal ROM Assy bd . . . . . 32
Installing the CableCard  . . . . . . . . . 38
Testing the Commodore 64 Assemblies . . . . 40

Installation of parts 1541 Disk Drive . . . 41
Installing the Operating ROM  . . . . . . . 42
Installing the FLASH! Cable . . . . . . . . 44
Testing the 1541 FLASH! . . . . . . . . . . 50
In case of trouble  . . . . . . . . . . . . 51


Introduction

Congratulations of purchasing 1541 FLASH! Assembly, the fastest add on
assembly for disk loading and saving programs from the Commodore 1541
disk drive and the Commodore 64.  In addition to being the fastest
disk drive enhancement available for the Commodore 64 and the 1541
disk drive, over 30 added commands are included.  These commands wil
make using your Commodore 64 much faster and easier.  It is not
necessary that you learn or use these commands.  Install the 1541
FLASH! Assembly and enjoy a whole new world of speed.

WHAT 1541 FLASH! WILL NOT DO

1541 FLASH! will not, repeat, not fix or improve the loading of a
marginal or non functioning disk drive.  1541 FLASH will not speed up
a program load or file transfer that involves lots of blinking of the
red error light on the Comodore 1541 disk drive.  If you are having
trouble (lots of error light blinking) with just one or two disks, and
the rest work okay, replace your faulty disks.  If you are having
trouble loading all your diskettes, your disk drive usually needs
cleaning, lubricating, aligning, or electronic repair.  Se your dealer
for the appropriate fix _before ou attempt to install 1541 FLASH!_.
If you do not have a local dealer capable of these repairs, you may
send your Commodore 1541 Disk Drive to:

          Commodore Business Machines
          1200 Wilson Drive
          West Chester, PA 19380

Send it prepaid and include a check or money order for US$85.00.
Commodre will send you a replacement 1541.

Page 1

Introduction

Skyles Electric Works warrants the 1541 FLASH! Assembly parts and
labor for 4 months from date of purchase.  Please take a moment now to
fill out and return the postpaid warranty card.

Installation instructions start on page 29.  They are at the end of
the manual because they are used only once and then hopefully
forgotten.  Please turn to page 29 and start enjoying your 1541
Flash!.

Starting on the next page is a quick reference card covering the extra
commands added by the 1541 FLASH!.

ENJOY

Page 2

1541 FLASH!
QUICK REFERENCE

Description of Symbology
     Capital letters refer to keys struck in
     sequence.
     <CTRL> refers to a single key struck
     <SHIFT><RUN/STOP> strike two keys
     simultaneously
     <RET> strike "RETURN" key

       Command              Performs

Easy Everyday Commands

 1: <SHIFT><RUN/STOP> . . . LOAD"*",8,1 <RET>
 2: LOAD "PRG  <RET>  . . . LOAD"PRG",8 <RET>
 3: POKE 148,64  <RET>  . . C-64 to slow load
 4: Manual Sw CableCard . . Switch fast/slow
 5: OPEN1,8,15,"Z8S"  <RET> 1541 to slow load
 6: POKE 148,0   <RET>  . . C-64 to FLASH!
 7: OPEN1,8,15,"Z8F"  <RET> 1541 to FLASH!
 8: OPEN 1,8,15,"UJ"  <RET> 1541 soft reset
 9: SYS 64738   <RET> . . . C-64 reset

DOS Commands

 1: SYS 65526  <RET> . . Turn on DOS Commands
 2: @I0   <RET> . . . . Initialize Drive 0
 3: @$   <RET> . . . . . Read Directory
 4: @$:???*  <RET> . . . Dir. with pattern
 5: @   <RET>. . . . . . Read Error Channel
 6: @#x  <RET> . . . . . Change drive number
 7: %PRG NAME  <RET> . . Load program without
                         relocation/end links
 8: @R0:NEW=OLD  <RET> . Rename a file
 9: @C0:NEW=OLD  <RET> . Copy a program
10: @S0:NAME  <RET>    . Scratch a File
11: @N0:NAME,ID  <RET> . New a Disk
12: @V0   <RET>  . . . . Validate a diskette


Page 3

1541 FLASH!
QUICK REFERENCE


       Command           Performs

Editing Commands

 1: <CTRL><leftarrow>  . Cursor to bottom
                         of screen
 2: <C=><leftarrow>  . . 16 Character tab
 3: <C=><uparrow>  . . . Escape Quote or
                         insert mode
 4: <C=><INST/DEL> . . . Delete Line
 5: <C=><CLR/HOME> . . . Clear Screen from
                         Cursor downward
 6: <C=><=>  . . . . . . CHR$(27) printer
                         "Escape" code in
                         strings
 7: <CTRL><L>  . . . . . CHR$(13) in strings
 8: <CTRL> . . . . . . . Slows Listing speed
 9: <SHIFT/LOCK> . . . . Pauses listings
10: <SHIFT><RETURN>  . . Return without line
                         execution

Advanced Programming Commands

1: Z1b+CHR$(t)+CHR$(s) . "U1" replacement
2: Z2b+CHR$(t)+CHR$(s) . "U2" replacement
3: Z3b . . . . . . . . . High Speed Transfer
                         data from buffer to
                         C-64
4: Z5b+CHR$(t)+CHR$(s) . Execute Z1 then a Z3
5: Z6b+CHR$(t)+CHR$(s) . Linked loader
6: Z7s . . . . . . . . . Speed set
8: NMI Debugger  . . . . Run time debugger


Page 4

Easy Everyday Commands

Symbology

We have adopted the following symbology for all the commands used in
this manual.

First you should note that all the keys on the Commodore 64 have upper
case letters on their top surface.  We refer to all the keys therefore
with upper case (capital) letters.  If we wish you to strike a series
of keys in sequence like normal typing we present the the sequence as
follows:

If you should type "load" we show LOAD without any quotes or brackets.

Spaces between typing letters are for clarity only.  SYS 65526 is
exactly the same as SYS65526 to the Commodore 64.

If you should strike a function key such as "run/stop" we show
<RUN/STOP> with brackets.  We have abbreviated "return" to <RET>.

If you should strike two function keys together we show
<SHIFT><RUN/STOP>

If you should strike two function keys one after the other we show
<C=>,<CRTL>.  WE use both a comma and a space between keys.


Page 5

Easy Everyday Commands

Command   <SHIFT><RUN/STOP>

This two key command replaces the longer command;  LOAD "*",8,1 <RET>.
Almost all commercial software will load with this command.  This
command loads the first program on the diskette in the 1541 Disk
Drive.  If the program you wish to load is not the first one on the
diskette, use the next command given below.  To load from tape use the
command.   LOAD"",1


Command   LOAD "PROGRAM NAME  <RET>

This command replaces the longer command;  LOAD "PROGRAM NAME",8
<RET>.  This will load the program with the name "program name" from
the 1541 Disk Drive.  You may in any of the load commands substitute
an asterisk (*) in place of any or all of the program name.  Any
combination of letters are substituted for the asterisk.  For example;
LOAD "PR*  <RET>.  Will load the first program on the diskette from
the following names; "prime number", "prone", "premier", "program
name", "promotion" etc..  If you wish to load a program form your
cassette recorder you should use the command;  LOAD "PROGRAM NAME",1.


Command  OPEN1:CMD1:LIST  <RET>

Issues a program list command to the printer.  Without a 1541 FLASH!
this command would list to the screen.  All previous open commands
that automatically went to the screen are now directed automatically
to the printer.  If you are not involved in programming your computer,
ignore this command.

Page 6

Easy Everyday Commands

Commmand  POKE 148,64  <RET>

This command switches the 1541 FLASH!  assembly in the Commodore 64
back to the original slow data transfer mode.  This is useful if you
want to use a 1541 Disk drive that does not have 1541 FLASH!
installed.  In rare instances this command is necessary to load a
program even though 1541 FLASH!  has been installed in the disk drive.
You may also manually switch back to the old Kernal assembly as
described below.


Command  Manual Switch on CableCard

There is a small switch on the CableCard that is plugged into the User
Port at the left rear of your C-64.  Normally the switch is positioned
towards the C-64.  If you want to return the C-64 to its original
condition, move the switch away from the C- 64.  If this is done, or
the previous keyboard command is issued,  you must also change the
1541 Disk Drive as described below.


Command  OPEN 1,8,15,"Z8SLOW  <RET>

This keyboard command tells the 1541 Disk Drive to return to its
original slow method of transmitting data to the computer.  The FLASH!
cable does not have to be connected to send this command to the disk
drive.  Normally this command is sent right after one of the two
commands above.


Page 7

Easy Everyday Commands

Command  POKE 148,0  <RET>

This command puts the Commodore 64 back into the high speed data
transfer mode.  It restores the 1541 FLASH! in the computer.  This
command has no effect if the small switch on the CableCard is
positioned away from the computer.  The following command for the disk
drive should also be issued


Command  OPEN 1,8,15,"Z8FAST  <RET>

This command places the 1541 Disk Drive in the fast data transfer
mode.  It restores the disk drive to 1541 FLASH! condition.  The
computer and the disk drive automatically power up in the 1541 FLASH!
mode and this command or the previous one are not used when the
computer is turned on.


Command  OPEN 1,8,15,"UJ  <RET>

This command may be used with or withouth 1541 FLASH!.  It tells the
disk drive to do a reset operation.  In most cases it is better to use
this command than it is to turn off and then turn on the disk drive.


Command SYS 64738  <RET>

This command may be used with or without the 1541 FLASH!.  It resets
the Commodore 64.  Issuing this command is roughly equivalent to
turning off and then turning on the computer.


Page 8

DOS Commands

Preface

The "DOS", or as they are sometimes called, "wedge" commands are a set
of minimum keystroke commands for controlling the disk drive.
Commodore furnishes a DOS program on the 1541 demonstration disk that
accomanies the Commodore 1541 Disk Drive.  This program occupies a
small part of your computer memory and sometimes interferes with
programs.  1541 FLASH! has a DOS program built in.  This means that
there are no programs to load or fill up memory.  These DOS commands
work with any Commodore 1541 disk drive with or without 1541 FLASH!
installed.

The major keystroke saving that DOS offers is that the sequence of
keystrokes;

OPEN 1,8,15,"   is replaced by a single keystroke; <@> or < > >.

The alternate command the "greater than" symbol was initially favored
and gave the name "wedge" commands to the original DOS program.  On
the Commodore 64 the ">" requires two simultaneous keystrokes.  We
recommend that you use the "@" instead.


Command   SYS 65525  <RET>

This command starts the DOS.  DOS is not automatically started when
the Commodore 64 with 1541 FLASH! is turned on.  The switch on the
CableCard should be in the 1541 FLASH! position (toward the computer)
before starting DOS.

There are 11 classical DOS commands and 3 new DOS commands added by
1541 FLASH!.  They are described on the next few pages.  Page 9

DOS Commands


DOS Command   @IO  <RET>

Initializes the diskette in the disk drive.  Each time a diskette is
put into the 1541 Disk Drive that you are planning to save a program
or file on, _use this command or its long form before you save any
program_.  This command does not disturb any information that is
already on the diskette.


DOS Command   @$0  <RET>

Read the directory on the diskette in the disk drive and places it on
the screen _without disturbing anything_ that may be in the computer
memory.  This is the most useful DOS command.  Striking the
<SHIFT/LOCK> once will pause the listing on the screen.  Striking the
<SHIFT/LOCK> again will continue the listing.


DOS Command   @$0:AB??C*  <RET>

Reads the program names off the directory on the diskette that match
the "wildcard" pattern "ab", followed by 2 symbols (or letters),
followed by "C", followed by anything.  It is not necessary that the
"?" and "*" be used.  for example if you want to search for a
particular name on a diskette directory use:

     @$0:PROGRAM NAME  <RET>

Since it is easy to forget whether spaces are or are not included in a
name, it is recommended that you use:

     @$0:PROGRAM*  <RET>


Page 10

DOS Commands


DOS Command   @  <RET>

Asks the disk drive why it is being obstinate and blinking its red
light instead of loading or saving a program or some other worthwile
function.  The disk drive answer is presented on the wscreen and the
red light generally turns off.  Prior to issuing this command, it is
often necessary to strike the <RUN/STOP> key to regain the cursor.
There are 35 different error messages.  Each starts with a number,
followed by a couple or words and two numbers.  A listing is given in
the Commodore 1541 Disk Drive Instruction Manual.  A better listing
and explanation is given in "The Anatomy of the 1541 Disk Drive"
available from your local dealer or Skyles Electric Works ($19.95
+$3.50 shipping).

If after reading the error message, you wish to reset (clear) the disk
drive type;

     @0:UJ  <RET>

the DOS shortened version of the disk drive reset described on page 8.


DOS Command   @#9  <RET>

Will change the device number that the DOS addresses.  In this example
the DOS will automatically address the disk drive that has device
number 9.  This command may be used to change the device number the
DOS addresses to 8, 9, 10, or 11.  The DOS is turned on addressing
device number 8.


Page 11

DOS Commands


DOS Command   %PROGRAM NAME  <RET>

Will load a program without relocation or changing the end links.  It
is most useful loading machine language or graphics without disturbing
the resident BASIC program.  If this explanation does not make a lot
of sense, ignore this DOS command.


DOS Command  @R0:NEW NAME=OLD NAME  <RET>

Changes (renames) the name of a program or file on the diskette in the
disk drive.  Renaming a file instead of erasing it is very useful for
keeping archive copies when you are developing programs.


DOS Command @C0:NEW COPY=OLD NAME  <RET>

Makes a second copy of a program or file on the diskette.  Some people
find this useful.


DOS Command   @S0:PROGRAM NAME  <RET>

Scratches (erases) a program or file from the diskette in the disk
drive.  If you have any doubts about erasing a program, use the
"rename" command instead.  I never use a "scratch" command after
midnight and I find this makes for much happier "mornings after".
After the scratch has been attempted type:   @  <RET>  to find out how
many files have been scratched.  Many times the number is 0 because of
a write protect on, or misnamed file. You may use the "wildcards" "?"
and "*" in the file name.  Experienced programmers do a pattern match
directory command first.

Page 12

DOS Commands


DOS Command   @N0:DISK NAME,ID  <RET>

Will format (new) the diskette in the disk drive.  This completely
erases all the information on the diskette.  All new blank diskettes
need to be formatted (newed) before they can be used in a Commodore
compatible disk drive.


DOS Command   @v0  <RET>

Validates (collects) the diskette in the disk drive.  This rearranges
the programs and files on the diskette into a more compact order.
Sometimes this increases the amount of free space on the diskette.  Do
not use this command on any diskette that has any "relative" or
"random" files on it.  If in doubt don't validate.


DOS Command   @0:Z8S  <RET>

This command tells the 1541 Disk Drive to return to its original slow
method of transmitting data to the computer. Page 7 has more
information about this command.


DOS Command   @0:Z8F  <RET>

Places the 1541 Disk Drive in the fast data transfer mode.  It
restores the disk drive to the 1541 FLASH! comdition.  Page 8 has more
information about this command.


Page 13

DOS Commands


Blinking Red Light on the Disk Drive

Occurs when the disk command has not been accepted by the disk drive.
The first thing to do is to ask the disk drive to tell you its
problem;  @  <RET>.  Usually the answer will be obvious.  If not refer
to the 1541 Instruction Manual or the "Anatomy of the 1541 Disk Drive
available from you local dealer or Skyles Electric Works ($19.95 +
$3.50 shipping).  Except furnishing you with an easy method of issuing
disk commands, 1541 FLASH! does not affect the disks response to
commands.  The following is repeated from the introduction of this
manual:

WHAT 1541 FLASH! WILL NOT DO

1541 FLASH! will not, repeat, not fix or improve the loading of a
marginal or non functioning disk drive.  1541 FLASH will not speed up
a program load or file transfer that involves lots of blinking of the
red error light on the Comodore 1541 disk drive.  If you are having
trouble (lots of error light blinking) with just one or two disks, and
the rest work okay, replace your faulty disks.  If you are having
trouble loading all your diskettes, your disk drive usually needs
cleaning, lubricating, aligning, or electronic repair.  Se your dealer
for the appropriate fix _before ou attempt to install 1541 FLASH!_.
If you do not have a local dealer capable of these repairs, you may
send your Commodore 1541 Disk Drive to:

          Commodore Business Machines
          1200 Wilson Drive
          West Chester, PA 19380

Send it prepaid and include a check or money order for US$85.00.
Commodre will send you a replacement 1541.  Page 14

Editing Commands


Preface

The following are a group of ten commands added to the 1541 FLASH! to
make program writing easier and more enjoyable.  If you do not write
programs, BASIC or Machine Language, skip this section of the manual.
For programmers we also recommend the purchase of "VICTREE" model
VT64.  VICTREE is a module that plugs into the cartridge port of the
Commodore 64 and adds 42 very useful commands.  15 of the VICTREE
commands are programming aids.  VICTREE model VT64 is available from
you local dealer or contact Skyles Electric Works.  The editing
commands in this section requires the installation of 1541 FLASH! in
the Commodore 64.  The 1541 Disk Drive is not directly involved with
these commands.


Editing Command   <CTRL><leftarrow>

Moves the cursor to the bottom of the screen.  In a program  PRINT
CHR$(6)  will do the same thing.


Editing Command   <C=><leftarrow>

Tabs the cursor 16 spaces from the left side of the screen.  This is
useful with some assemblers and machine language monitors.  In a
program  PRINT CHR$(7)  will do the same thing.


Page 15

Editing Commands


Editing Command   <C=><uparrow>

Allows you to "escape" the quote or insert mode.  If you wish to get
out of the quote mode, strike this command once.  If you wish to get
out of the insert mode, strike this command twice.  If you are in
neither mode and wish to enter the quote mode, strike this command
once.


Editing Command   <C=><INST/DEL>

Will delete the line that the cursor is on.  No scrolling occurs.  In
a program the command  PRINT CHR$(11)  will do the same thing.


Editing Command   <C=><CLR/HOME>

Clears the screen from the line that the cursor is on to the bottom of
the screen.  In a program the command  PRINT CHR$(2)  will do the same
thing.


Editing Command   <C=><=>

Places a CHR$(27) an "escape" command in strings.  This ocmmand is
used with non Commodore printers.  If you ahve a Commodore printer or
no printer ignore this command.


Editing Command   <CTRL><L>

Places a CHR$(13), a "carriage return" command in strings.  This is a
useful BASIC command.


Page 16

Editing Commands


Editing Command   <CTRL>

Slows the screen scrolling on listings or directories.  This command
is standard in the Commodore 64.


Editing Command   <SHIFT/LOCK>

Pauses the screen scrolling during a listing.  This is a very useful
command added by 1541 FLASH!.  Strike the command again to continue
the scrolling of the listing.


Editing Command   <SHIFT><RETURN>

Returns the cursor to the left side of the screen without executing
the command or entering the line into the program.


Editing Command   OPEN1:CMD1:LIST  <RET>

Issues a program list command to the printer.  Without 1541 FLASH!
this command would list to the screen.  All previous open commands
that automatically went to screen are now directed automatically to
the printer.  If you are not involved in programming your computer,
ignore this command.


Page 17

Editing Commands


UNDOCUMENTED FEATURES OF THE 1541

Yes, the 1541 Disk Operating System (DOS) has some useful undocumented
features.  We present here some of the mose useful ones.

Invalid Files . . . Normally you cannot open for reading any file that
never was properly closed.  Such files appear with an "*" on the
directory.  If you open such files with a ",m" you can real them.
Example:  OPEN2,8,2,"INVALIDFILE,S,M"   Will allow you to open, read
and recovery data from "dead files".

Append . . . You may add to an existing file (append) if you open it
with ",a".  Example:  OPEN2,8,2,"EXISTINGFILE,S,A"   Will allow you to
add to an existing file.  You cannot append to a relative file.

Scratch Protect . . . If bit six of the first byte (file type) in a
directory entry is set, a scratch command will not affect this file.

Concatenate . . . You may concatenate up to four disk files into a
single file.  Example; OPEN1,8,15,"C0:COMBINED=FILE1,FLE2,FLE3,FLE4"
will combine files 1 through 4 in order.

Miscellaneous . . . Many commands will accept multiple parameters.
Example:  OPEN2,8,2,"S0:FRED,JOE,MARY,SUE"   Will scratch the files
named FRED, JOE, MARY, and SUE.

",m" as a file type functions like a wildcard, and it will open any
type of file.  Example:   OPEN2,8,2,"FILE,m,a"   Will open any type of
file for appending.

Page 18

Advanced Programming Commands


Introduction

This section is intended for experienced 65XX programmers.  It will
describe how to access the interface from machine language.  Also
included are several new commands that provide the fastest way to
access data with the 1541 Flash! interface.


Drive Commands


Command  Z1(buffer#)(track)(sector)

This command will read the sector specified by the single byte values
(track) and (sector) and place the data in bugger (buffer#).  Use this
instead of a "u1".

Example:
          OPEN1,8,15,"I"
          PRINT#1,"Z13"+chr$(1)+chr$(0)
Notes:

The above will read track 1, sector 0 and place the data in buffer #3.
If you don't know which absolute buffer you wish to open you shold
"OR" the secondary address with 128. Example: PRINT#1,"Z1"+CHR$(128+2)
where 2 is the secondary address.  Be careful to specify a valid track
and sector since no check is made for validity.  This command will not
"kick" the head over the sector if there is trouble reading it.  One
precaution: you must send a @I (initialize) command to the drive after
powerup/reset and before the use of this command.  Failure to do this
will result in a 'DISK ID MISMATCH' error.


Page 19

Advanced Programming Commands


Command  Z2(buffer#)(track)(sector)

Function

This command will write the sector specified by the single byte values
(track) and (sector) with data coming from the buffer (buffer#).  Use
this instead of a "U2".

Example:
          OPEN1,8,15,"I"
          PRINT#1,"Z20"+chr$(24)+chr$(16)
Notes:

The above will write track 35, sector 6 from buffer #0.  Everything
else from the "Z1" command applies.


Command Z3(buffer#)

Function

This command will send the data in buffer (buffer#) to the computer at
high speed.  A M.L. routine such as in the example is required for use
with this command.

Example:
          OPEN1,8,15,"I"
          PRINT#1,"Z31"
          SYS GETBUF


Page 20

Advanced Programming Commands


Note  getbuf  Source Listing

getbuf php           ;save 6510's SR
       sei           ;prevent irq's
       ldy #0        ;counter for 256 bytes
       lda $dd0d     ;clear IFR flags
       lda $dd00     ;get condition of CIA
                     #2 port
       and #$ef      ;set serial clock low
       tax           ;save
       ora #$10      ;set serial clock line
                     high
       sta $dd00
loop   lda #8        ;parameter for bit
wshift bit $dd0d     ;IRQ status flags
       beq wshift
       lda $dd0c     ;serial data register
       sta buffer,y  ;save byte
       iny           ;counter to 256
       bne loop

       stx $dd00     ;done with data, get
                     error flag and exit
       lda #8        ;paramter for bit
wstat  bit $dd0d     ;wait for 257th byte
       beq wstat
       lda $dd0c     ;get error flag as the
                     257th byte
       plp           ;restore 6510's SR
       rts           ;done! error flag is in
                     accumulator
Notes:

After sending the "Z3" from BASIC or M.L.  you must execute a routine
that does the same thing as the one given in source code above.  The
first section of the routine contacts the drive, the second reads the
data, and the third grabs the error flag into the accumulator.  The
flag should have one of the values below.

1   00, ok           2   20, read error
4   22, read error   5   23, data chksum error
11  29, id mismatch
Also see the 'Z7' command.

Page 21

Advanced Programming Commands


Command  Z5(buffer#)(track)(sector)

Function
This will execute first a "Z1" command acting on the given parameters
(see the "Z1" section for details) and then a "Z3" command (see the
"Z3" section for details).

Example:
          OPEN1,8,15,"I"
          PRINT#1,"Z52"+chr$(4)+chr$(6)
          SYS GETBUFF
Notes:
The above will read track 4, sector 6, place it in buffer #1, and then
send it to the computer with the protocol outlined in the "Z3"
command.  You need not run the transfer immediately after sending the
command.  A very efficient way to write some things is to analyzw one
block while letting the drive read the next block all on its own, and
then execute the transfer.


Command   Z6(buffer#)(track)(sector)

Function
This is a linked list loader.  You provide a starting track and
sector, and the command will link through and send all following
sectors.

Example:
          OPEN1,8,15,"I"
          PRINT#1,"Z63"+chr$(18)+chr$(0)
          SYS READ


Page 22

Advanced Programming Commands


Source Listing   read

read   jsr getbuf    ;read entire block
       cmp #1
       bne error     ;branch on error
       lda buffer    ;get track #
       beq out       ;branch if this was the
                     last block
       bne read      ;loop

error
out    rts

Notes:

The example would trace the directory starting at 18,0 using buffer
#3.  See the 'Z3' command for details on the 'getbuf' routine.  You
are not required to read sectors in rapid succession, any period of
time may elapse between calls to getbuf; the drive will wait
patiently.


Command   Z7(speed)

Function
This command controls the speed of transfer for the Z3 command.  The
default is 1. You will have to experiment to see what is right for
your application.  The range is 0-15 but due to a hardware bug in some
6526's some people will be unable to use setting 0.

EXAMPLE:
          OPEN1,8,15,"I"
          PRINT#1,"Z72"
NOTES:
The above sets up the "Z3" command for
transfer at speed 2.


Page 23

Advanced Programming Commands


The NMI Debugging Aid


Introduction

This command is used to peek at what the processor is doing at any one
moment.  The NMI debugger will print the entire processor status on
the screen at each NMI or when the <RESTORE> key is pressed.  Use it
to check on crash locations, questionable code and even errant IRQ
routines transparently to the host program except for a couple of
missing cycles.  If you wish to trace in real time, set up CIA #2 to
generate contimuous NMI's.

Example

       pha           ;save all processor
                     registers
       txa
       pha
       tya
       pha           ;space for yout own
                     routine, such as
                     ;checking the break key
       jmp $f7bd     ;print status and exit.


Details
To use this function, point the NMI vector at $0318-$0319 to the
routine above.  Data is printed on the screen indirectly via locations
$d0-$d1 (the BASIC editor screen pointer so do not worry about setting
that up).  After printing the NMI debugger jumps to $ea81, returning
from the interrupt. Data appears in the format - (.Y .X .A SR AL AH
SP)-.  Note that the NMI stuffs six things on the stack, the SP
printed will read six too low.

Page 24

Advanced Programming Commands


General Notes

1)  Unless the drive is in the slow mode, the UI+ and UI- commands
have no meaning.

2)  Location $0298 in the drive will disable head "kick" via the track
#1 stop when set to $ff instead of $00.

3)  Location $f2d1 in the kernal is a hes convert subroutine.

4)  Bit 6 in the file type byte of a directory entry is a scratch
protect.  When it is set to a one the drive will not scratch the file
even with a command like >s0:*.

5)  If you have a promenade promburner, and are burning 2764's try
using '0,4,7' for the PMW instead of '0,5,7' or '0,5,14'. Burning will
then take as little as four seconds with full reliability! (thanks to
Jay Stevens for this tidbit)

6)  A bug in the 6526 is 'interrupt stomping' two interrupts can stomp
on each other, with both thinking they happened (ie.  their timers are
reset) but without telling the processor about it.  On the 6522 the
supposedly benign act of reading the IFR register can (and repeatedly
does) reset flags and lines at inopportune moments.

7)  Your software can identify a 1541 Flash!  upgrade computer by
checking $fff6 in the Kernal.  It will contain a $4c. An old, slow,
C-64 will have a $52 in the same location.  Location $fff9 will have
$ff, a old 64 will have $59.


Page 25

Advanced Programming Commands


1541 BUGS

The 1541 has many bugs in its operating system.  Here is a description
for reference.  Many bugs are fixed by 1541 FLASH!.

Problem:   "Disk ID Mismatch error" at seemingly random times.

Solution:   Send a "I0" command before the offending disk instruction
is sent.  From the DOS Commands send ">I0" or "@I0".

Problem:   '@ save and replace' screws up my entire disk!!

Solution:   1541 FLASH! does not fix this (sorry) but it will help you
to know when and why this happens.  The bug is in the 1/2 of the ROM
1541 FLASH! does not fix.  It happens when there is a multiple of 16
directory entries on the disk.  It does not matter if there are full.
The pointers to all the files get scrambled.  The conclusion, don't
use "@, save and replace" unless you have less than 16 files on disk.
Editors note, I believe that that I have had this problem with less
than 16 files.  My advice is _do not use "save and replace"_.

Problem:   There are not enough buffers free for what I want to do.
(ie. "No Channel Error")

Solution:   This is an interesting problem.  The 1541 DOS is really a
4040 DOS partially modified for a single drive.  When you open a file,
specify drive 0 and the DOS will not have to keep a buffer open for
the BAM of the non-existant drive 1.  Example:
OPEN2,8,2,"0:FILE,S,R".

Page 26

Advanced Programming Commands


Problem:   "Drive Not Ready Error"

Solution:   Don't believe what the manual says about this error.  It
usually means the DOS is confused and is trying to look at drive 1,
which is non-existant.  What you should do is convince the DOS that
you want drive 0. When you intialize use "I0".  Whenever you save,open
a file, look at the directory or even read (the last is optional) you
should SPECIFY drive 0.  Example   SAVE"0:GARBAGE",8


Technical Questions?

If you have a technical question about the advance programming
commands that you or your local dealer can not solve.  If you have a
qualified comment, suggestion, question or complaint about this
section then send it to:

           Terminal Velocity Software
           C/O: Bryce Nesbitt
           1712 Marin Ave
           Berkeley, Ca 94707

Please include a self addressed envelope and TWO letter rate postage
stamps.


Page 27

Advanced Programming Commands


Overheating

The 1541 does have overheating problems. 1541 FLASH! goes a long way
to solving the problem, do to the increased speed of the data
transfer.  The drive and stepper motors are turned on less.  If you
still have problems with 1541 FLASH!  installed then I have two
suggestions:

1)  Turn off your drive when not in use. It is ok to turn the drive
off and on while the computer is operating but not accessing the disk.

2)  Consider putting spacers under the four feet of the disk drive.
"Pink Pearl" brand erasers work well.  Get six and put two each under
the front feet.  The incline seems to help even more.

3)  For the mechanically inclined another solution is to add a head
sink.  Look on the right side of your drive below the two large silver
regulators where two small screws hold a 'L' shaped emtal bar to the
side of the case.  Fashion a heatsink with lots of fins and attach it
to the screws.  Then drill a couple of large holes in the plastic
below this spot.  This will reduce the ambient temperature all over
the drive but escpecially next to the 6502 the ROM and the write
timing circuit.  Next take a flat metal sheet about 2*8 cm, bend it so
it will stand on its end, then glue it to the top of the 6502.  Repeat
this step with any chip that feels too hot.


Page 28

1541 FLASH! INSTALLATION


Installation of your 1541 FLASH! will take about 30 minutes.  It may
be done in two parts, installing the Commodore 64 parts (2) and then
at a later date installing the 1541 disk drive and parts.  The
following installation instructions are detailed and lengthy so that
hopefully every question and concern that might come up is answered.
For most Commodore 64's anybody familiar with the use of a phillips
screwdriver can easily install the 1541 FLASH!.

If you are concerned about "getting your fingers into" your Commodre
1541 Disk Drive and your Commodore 64 Computer, please have your local
dealer install the 1541 FLASH!.  If you Computer of DIsk Drive are
under their original 90 day Commodore warranty remember that if you
carefully follow the installation instructions you can always return
the Computer and the Disk Drive to their original condition without
Commodore or the local dealer being upset.  We don't recommend that
you wait 90 days of old slow disk programming loading before you take
advantage of the 1541 FLASH!'s fantastic loading speeds.  You would
also miss out on the other very useful added commands that you get
with 1541 FLASH!

Installation of the 1541 FLASH! requires:

     A Phillips (Crosshead) screwdriver
     A thin bladed knife or screwdriver, (a
     grapefruit segment knife is ideal).

        LET US TURN THE PAGE AND BEGIN


Page 29

INSTALLATION


PARTS IDENTIFICATION

While Gaul may have been divided into 3 parts there are four parts to
the 1541 FLASH!:

          1: Kernal ROM assy. and Socket
          2: CableCard
          3: 1541 Operating ROM Assy.
          4: FLASH! Cable

     They are pictured below.


[pic omitted]


page 30

INSTALLATION


Installation, Commodore 64

We will first install two 1541 FLASH!  assemblies in the Commodore 64.

1) Unplug all cables, cartridges, and periperal assemblies from your
Commodore 64.

2) Place the Commodre 64 upside down on a well lighted surface.  The
front edge of the C-64 should be toward you.

3) Using the Phillips screwdriver remove the 3 screws located in wells
along the front bottom of the C-64.

4) Holding the C-64 together at the front place it rightside up.

5) Now carefully lift the front top half of the C-64.  This should
unsnap the back catches.  Set the top half of the C-64 about 3 inches
forward.

6) If your Computer has the metalized cardboard inner cover untape it
and open the cardboard

7) There are two slightly different stlyes of electronics boards
inside the C-64.  Using the picture two pages ahead locate the Kernal
ROM.

8) The Kernal ROM should have one of the following numbers on it:

        901227-01,  901227-02,  901227-03


Page 31

Installation C-64


9) The Kernal ROM should be in a socket.  However in a small
percentage of C-64 the Kernal ROM is soldered into the main
electronics board.  If your Kernal ROM is soldered and not in a
socket, reverse the previous steps and see your local dealer about his
removing the Kernal ROM and installing a 24 pin socket in its place.
The 24 pin socket is furnished as part of the Kernal ROM assembly and
socket.

If you are unable to have your local dealer replace a soldered in
Kernal ROM with a 24 pin socket, you may send your Commodore 64 packed
into its original carton postage paid to Skyles Electric Works.
Please include a check or money order for US$28.50.  This will cover
the cost of our installing a Kernal ROM socket. Please include your
return address and a daytime phone number on the outside of the
package and taped to your Commodore 64.  Do _not_ include the power
supply or any cables or peripheral assemblies.  Address your package
as follows:

   Skyles Electric Works
   Attn. Customer Service/1541 FLASH!
   231-E South Whisman Road
   Mountain View, CA 94041

We will normally install the Kernal ROM socket in a week or less.
Shipping both directions can add up to another 2 weeks.

Northern Califormia residents may call (415) 965 1735 for an
appointment and have a Kernal ROM socket installed while you wait.

Page 32

Installation C-64

[pic omitted]

Left side Electronics Bd. C-64
  Other bd. is similar with the Kernal
    ROM 3/8" nearer to rear of Computer


Page 33

Installation C-64


10) Using your flat bladed tool (knife or screwdriver) gently pry up
the Kernal ROM.  Pry from both ends so that it comes straight up out
of the socket.  Be careful not to pry up the socket from the main
electronics board.

11) Note that there is a small notch on the rearmost end of the Kernal
ROM when it is in it's socket.  Place the Kernal ROM behind your
Computer with small notch away from you.

12) Remove the 24 pin socket from the 24 pin plug on the bottom of the
Kernal ROM Assembly.

13) Now place the Kernal ROM assembly, with the three wire cable
toward the rear of your computer, over the Kernal ROM socket.  Be sure
the 24 pins of the plug are lined up over the 24 holes of the socket.
Gently plug the Kernal ROM Assembly into the Kernal ROM socket.  The
next page has a picture of the Kernal ROM Assembly plugged into the
Commodore 64.

14) Carefully plug the 24 pin Kernal ROM, with the small notch toward
the rear of your computer into the 24 pin socket on the left side of
Kernal ROM Assembly.  Use your finger to keep the Kernal ROM Assembly
flat while you plug in the Kernal ROM.  Refer to the next page for
reassurance as to where the Kernal ROM is installed.


Page 34

Installation C-64

[pic omitted]

Kernal ROM Assembly installed in C-64


Page 35

Installation C-64


15) Check that there are _no_ pins outside of the Kernal ROM socket on
the main electronics board and that the Kernal ROM has _no_ pins
sticking outside of the 24 pin socket on the Kernal ROM Assembly.  The
notches of both ROMs now on the Kernal ROM Assembly should be toward
the rear of the computer.

16) Thread the white connector on the end of the 3 wire (red, white,
and blue) cable through the left side of the leftmost connector hole
on the back bottom of your C-64.

17) Check and reconnect if necessary the Keyboard cable and the power
light cable connectors.  Your C-64 should appear as shown in the
accompanying pictures on the opposite page.  _Now_ is the time to
check carefully the installation to this point.

18) Retape the metalized cardboard if required and replace, backside
first, the top of your computer onto the bottom half of the housing.
Check that both sides are lined up.  If not, readjust the top.

19) Turn over your computer and reinstall the three screws that you
removed from the 3 wells in the front edge of the bottom of your C-64.
_Do not over tighten these screws_.


Page 36

Installation C-64

[pic omitted]

Completed Kernal ROM Assy. Installed


Page 37

Installation C-64


20) With your computer upside down plug the blue connector of the
CableCard onto the main electronics board edge connector that is on
the far rightside, when the computer is upside down and the front edge
is toward you.  The blue connector, the small switch, the four pin
connector, and the six pin connector should all be visible on the
CableCard when the computer is upside down.  The CableCard is plugged
into the User Port (Modem port) or Parallel port.

21) Plug the red-white-blue cable into the 4 pin connector near the
small switch on the CableCard.  The red wire should be nearest the
computer and the blue wire should be farthest from the comptuer.  The
picture on the next page shows the plugged in CableCard with the
computer upsidedown.

22) Turn your Commodore 64 rightside up.  The CableCard and 1541
FLASH! label should be visible at the far left rear of your computer
(picture bottom of next page).  Return your computer to it's normal
operating location.  Reconnect all cables and peripherals.

23) Check that the small switch on the left outside of the CableCard
is switched away from the computer.

24) Turn on your Commodore 64, 1541 Disk Drive, Monitor or TV set, and
any other peripherals.


Page 38

Installation C-64

[pic omitted]

Commodore 64 Upside down with CableCard

[pic omitted]

Commodore 64 rightside up with CableCard

Page 39

INSTALLATION


25) Test your system by operating it.  Everything should still work
the same as before you began the installation.  Load a program from
the 1541 disk drive.  If you do not get a normal load, recheck
installation starting with item 10.

26) Turn off your C-64 and then switch the small switch on the
CableCard toward the computer

27) Turn on your C-64 and observe the 1541 FLASH! copyright message.
You should see:

           ***COMMODRE 64 BASIC V2 ***

         W/1541 FLASH!  38911 BYTES FREE

         (C) 1984 BRYCE NESBITT

28) Now Type:  POKE 148,64  and strike the RETURN key.

29) Reload the program from disk that you loaded in step 25 above.
Everything should still occur in the old slow mode.  Now proceed to
the next page for installation of 1541 FLASH! into your 1541 Disk
Drive.

30) If you have trouble with one of the tests described above
carefully recheck the installation instructions starting at step 1.

31) If you are still having trouble replace your oriinal Kernal ROM
into its socket and test that this has returned the computer to it's
original condition.  Every 1541 FLASH! is tested before leaving the
factory, but mistakes can happen.  Notify your local dealer for test
and/or 1541 FLASH! replacement.

Page 40

INSTALLATION


Installation, Commodore 1541 Disk Drive

We will first install two 1541 FLASH!  assemblies in the Commodore
1541.

1)  Unplug all cables and peripheral assemblies from your Commodore
1541.

2)  Place the Commodore 1541 upside down on a well lighted surface.
The front edge of the 1541 should be toward you.

3)  Using the Phillips screwdriver remove the 4 screws located in
wells at each corner on the  bottom of the 1541.

4)  Holding the 1541 together at the sides place it rightside up.

5)  Now carefully light the top half of the 1541.  This should expose
a metal inner cover. Set the top half of the 1541 to one side.

6)  Now remove the two screws on the left side of the metal cover.
Lift the metal cover off and set to one side.

7)  There are two different styles of electronics boards inside the
1541.  Using the drawing shown 2 pages forward locate your style of
main electronic board and the two components related to the 1541 FLASH
installation.


Page 41

Installation 1541 Disk Drive


8)  The Operating ROM should have one of the following numbers on it:

         901229-01,  901229-03,  901229-05
         901229-04 (recalled by Commodore)

9)  There two 6522 chips in the 1541 drive and their locations are
quite different on each stule of main electronics board.  Use the
pictures on the next page to help in locating the right one.

10) Using your flat bladed tool (knife or screwdriver) gently pry up
the Operating ROM.  Pry from both ends so that it comes straight up
out of the socket.   Be careful not to pry up the socket from the main
electronics board.

11) Note that there is a small notch on the rearmost end of the
Operating ROM when it is in it's socket.  Insert Operatin ROM into the
black foam and store in a safe place.

12) Remove the black plastic foam from the 24 pin plug on the bottom
of the 1541 Operating ROM Assembly.

13) Now place the 1541 Operating ROM Assembly toward the rear of your
disk drive over the Operating ROM socket.  Be sure the 24 pins of the
plug are lined up over the 24 holes of the socket.  Gently plug the
Operating ROM Assembly into the Operating ROM socket.  Check the next
page for the correct location.


Page 42

Installation 1541 Disk Drive

[pic omitted]

Read of Electronics Bd. Type A 1541 Drive

[pic omitted]

Rear of Electronics Bd. Type B 1541 Drive

Page 43

Installation 1541 Disk Drive


14) Using your flat bladed tool (knife or screwdriver) gently pry up
the FLASH!  Input 6522.  Pry from both ends so that it comes straight
up out of the socket.  Be careful not to pry up the socket from the
main electronics board.

15) Set the FLASH! Input 6522 in front of you and locate pin 19.  The
top picture on the next page shows the numbering of the pins.  Note
that the notch end of all electronics chips in the 1541 disk drive are
toward the rear of the drive

16) Check the picture on the previous page that you have removed the
correct 6522.  If you have, use your flat bladed tool to bend pin 19
straight out from the FLASH! Input 6522 clip.  Please see the picture
on the next page for details of where to bend the pin.  Do not attempt
to bend the pin back to its original position.  It will usually break
if you attempt to return it to its original position.

17) Return the FLASH! Input 6522 to its original socket.  Note the
small notch should be on the end toward the rear of the 1541 drive.

18) Making sure that all 29, of the 40, pins are lined up, carefully
press the FLASH!  Input 6522 back into it's original socket.

19) Check the pictures on the previous page that you ahve FLASH Input
6522 and the 1541 Operating ROM Assembly in their proper orientation
and location.


Page 44

Installation 1541 Disk Drive

[pic omitted]

FLASH! Input 6522 with pin numbers

[pic omitted]

FLAAH! Input 6522 Chip with pin 19 bent

Page 45

Installation 1541 Disk Drive


20) Place the FLASH! Cable behind the 1541 drive.  Lay the unjacketed
portion of the cable on top of the left edge of the 1541 electronics
board.

21) Connect the black microclip to pin 18, with the black microclip
going underneath pin 19 and coming from the front of the 1541 drive.
Please see the picture on the next page for the location of this
microclip.

22) Check the connection and placing of the black microclip to pin 18.
Tape the microclip to the 1541 electronics board as shown on the next
page.

23) Connect the white microclip to pin 19 as shown on the next page.

24) Check the connection of the white microclip to pin 19 and tape it
down as shown on the next page.

25) With the Phillips screwdriver remover the screw located at the
left rear corner of the 1541 electronics board.

26) Place the screw through the FLASH! Cable ground lug and screw it
back in place at the right rear corner of the 1541 electronics board.
On some earlier 1541's there is already a ground lug on this screw.
If that is the case you should now have 2 ground lugs on the left rear
corner of the 1541 electronics board.


Page 46

Installation 1541 Disk Drive

[pic omitted]

FLASH! Cable and Microclip locations

    Type A 1541 Electronics Board

[pic omitted]

FLASH! Cable and Microclip locations

    Type B 1541 Electronics Board

Page 47

Installation 1541 Disk Drive


27) Using the picture on the next page as a guide route the wires from
the microclips and the ground lug off the left side of the 1541
electronics board, around the outside of the bottom case post, under
the serial plugs, and over the top of the fuse holder.

28) Remove the cover paper from the FLASH Cable strain releif and
stick it directly below the fuse holder.  Do not place any strain on
the strain relief for the first 24 hours.

29) Without replacing the top covers, return your 1541 disk drive to
its normal operating location

30) Lifting up your computer, plug in the 6 pin plug at the end of the
FLASH! Cable into the keyed connector on the bottom side of the
CableCard

31) Check that the small switch on the CableCard is toward the
Commodore 64.

32) Turn on your C-64 and observe the 1541 FLASH! copyright message.
You should see:

           ***COMMODORE 64 BASIC V2 ***

         W/1541 FLASH!  38911 BYTES FREE

         (C) 1984 BRYCE NESBITT

3)  Now turn on your 1541 Disk Drive and other equipment.


Page 48

Installation 1541 Disk Drive

[pic omitted]

FLASH! Cable Placement 1541 Drive


Page 49

Installation 1541 Disk Drive


34) Reload the program from disk that you loaded in step 25 of the
C-64 installation instructions.  Time the load cycle.  The program
should load three times faster than previously.

35) Type:  POKE 148,64 :OPEN 1,8,15,"Z8S" and then strike the <RETURN>
key.

36) Reload the program from step 34 above.  Time the load.  It should
be 3 times slower than in step 34 above.  It probably is already
getting difficult to consider loading all your programs at this slow
speed.

37) Type:  POKE 148,0 :OPEN 1,8,15,"Z8F" and then strike the <RETURN>
key.

38) Reload the program from disk that you loaded in step 34 and 36
above.  Time the load cycle.  The program should load three times
faster than the load in step 36.

39) Turn off your C-64 and then switch the small switch on the
CableCard away from the computer

40) Turn on your C-64 and observe the original Commodore 64 turn-on
message.  You should see:

        *** COMMODORE 64 BASIC V2 ***

     64K RAM SYSTEM  38911 BASIC BYTES FREE

    READY


Page 50

Insallation 1541 Disk Drive


41) Now Type:  OPEN1,8,15,"Z8S"  and strike then RETURN key.

42) Reload the program from step 34 above.  Time the load.  It should
be about 3 times slower than in step 34 above.  By this time it
probably getting very tedious to load at the slow speed.

43) If you have trouble with one of the tests described above,
carefully recheck the installation instructions starting at step 1.

44) If you are still having trouble, replace your original Kernal ROM
in the C-64 and the original Operating ROM in the 1541 Disk Drive.
Test that this has return the computer and disk drive to their
original condition.  Every 1541 FLASH!  is tested before leaving the
factory, but mistakes can happen.  Notify your local dealer for test
and/or possible replacement of the 1541 FLASH!.

45) In case of trouble you may also contact:

       SKYLES ELECTRIC WORKS
       231-E South Whisman Road
       Mountain View, CA 94041

           or you may call:

            1-415-965 1735
between the hours of 1 and 6 PM  Pacific
Coast time.


Page 51

Installation 1541 Disk Drive


46) This completes the test of the 1541 FLASH!.  Carefully replace the
metal inner cover on the 1541 Disk Drive.  The 2 small sheetmetal
screws are used to attach in on the left side.

47) Unplug the power and serial cable from the 1541 disk drive.

48) Replace the plastic top cover on the 1541 disk drive.

49) Holding the two halves together turn the 1541 disk upside down.

50) Insert the four screws into the the four corner wells on the
bottom of the 1541.

51) Turn the 1541 rightside up and reinstall the power and serial
cables.  Turn on the 1541 disk drive.

52) Turn off your C-64.  Switch the small switch on the CableCard
toward the C-64.  Turn on your C-64.

53) Reload the program from disk that you loaded in step 25 of the
C-64 installation instructions.  Time the load cycle.  The program
should load three times faster than previously.

54) This completes the installation of the 1541 FLASH!.  Please now
read the section of the manual covering the "Easy Everyday Commands".

Page 52

*********

End of the Project 64 etext of the 1541 Flash! Instruction Manual.

*********