💾 Archived View for mirrors.apple2.org.za › archive › apple.cabi.net › System › dosboss.txt captured on 2024-06-16 at 14:09:06.

View Raw

More Information

⬅️ Previous capture (2023-01-29)

-=-=-=-=-=-=-

DOS BOSS INSTRUCTIONS
---------------------

What's DOS?
-----------
DOS is Apple's "Disk Operating System".  Without it, your
Apple simply does not know how to perform any function that
involves a disk--load a program form disk, catalog, tell you
"FILE NOT FOUND", access a text file, etc., let alone start
the actor on your disk drive.  Without DOS, your Apple DOES
know how to execute BASIC functions (I assume you are using
Applesoft or Integer BASIC), because BASIC is BUILT IN to
your Apple in the form of unchangeable hardware, or "ROM"
(Read Only Memory), DOS (rhymes with "boss", by the way) is
actually a complex machine-language PROGRAM that is entered
into your Apple's memory in "RAM" (Random Access Memory)
each time you boot a disk.  DOS normally remains in memory
as long as your Apple is turned on and is not affected or
changed by anything you ordinarily do--programming, loading,
saving, deleting, etc.

So, after you boot a disk (load DOS), your Apple knows TWO
sets of instructions, BASIC and DOS.  When you enter an
instruction through the keyboard, the Apple checks it FIRST
to see if it is a DOS command, THEN to see if it is a BASIC
command.  If you type "ABCFED" with a carriage return, for
example, the Apple checks its entire 28 word DOS command
vocabulary (words like "CATALOG", "INIT", "DELETE", etc.) to
see if it knows "ABCFED".  If it doesn't, it then checks its
BASIC vocabulary (words like "LIST", "GOTO", "AND", "NEXT",
"POKE", etc.). If it can't find "ABCFED" there, it gives up
and prints "?SYNTAX ERROR" or "*** SYNTAX ERR".  If it DOES
know the word that you have typed, it executes the command
according to the instructions that reside in memory, either
DOS or BASIC, depending on where the command was found.  All
of the above takes approximately no time at all.

What's DOS BOSS?

Since DOS is an ACCESSIBLE written program in RAM and not a
permanent collection of hardware like BASIC, you can CHANGE
it to suit your desires and to have more control over your
computer.  DOS BOSS is the key to making these changes.
With DOS BOSS, you will have immediate access to DOS's most
visible functions and features.  With this book, you will
have even further control, and learn a bit more about what
goes on inside your Apple's "brain".  I have written as much
as possible from a beginner's viewpoint, assuming that you
know nothing of machine level programming or the way a
computer works.  Technical details, whenever possible, have
been omitted or written in English.  Let's get on with it
and have some fun!

Using DOS BOSS

DOS BOSS is easy to use.  Let's use it!

STARTING OUT

Boot the DOS BOSS disk.  You are now operating under normal
DOS conditions with your normal Apple.  Now type RUN DOS
BOSS and hit "return".

(M) MENU

In a few seconds, you will see the DOS BOSS MENU, showing
the DOS change options available to you.  To the left of
each option is a letter of <> brackets.  This indicates that
only one keypress is needed to select the option.  Most of
what you do with DOS BOSS will be done with one keypress (no
"return" is necessary).

You will need to return to the MENU each time you want to
select another DOS BOSS feature.  to do so, simply type an M
or an M + carriage return (cr) from almost any part of DOS
BOSS.  If you wanted to, you could even hit RESET and RUN
DOS BOSS again without losing the DOS changes you had made
so far.  DOS BOSS's "variables" are actually memory values
in DOS and will not be cleared when you RUN any program or
change languages because DOS is tucked safely above HIMEM,
the highest memory location accessible by your BASIC
(Applesoft or Integer) programs,

Let's cover the DOS BOSS features--

(C) DOS COMMAND CHANGES

Select C from the MENU and you will soon be presented with
Apple's 28 DOS COMMANDS, ready to be changed.  To the right
of each command should be the word "SAME".  This means that
each command is in its standard form (CATALOG will catalog;
LOAD will load, etc.).  If all the commands are not marked
"SAME", you may standardize them at any time by entering a $
sign.

Let's change a command; Select "CATALOG" as a test command
by pressing the R key (no need to press "return").  Now,
type in a new command, seven characters or shorter (no
spaces, commas or colons allowed in commands!), and hit
"return".  In a few seconds, you will see your new command
in inverse to the right of CATALOG.  During the pauses
between your inputs, the Apple is making room for the new
command, inserting the new command in DOS, and "sliding" all
other commands up or down to be adjacent.  See "CRUISING
THROUGH DOS" later in this book for a memory layout of the
DOS commands.

For a test, enter "CAT" as the new CATALOG command.  Exit
the COMMAND CHANGE MODE by pressing M for MENU and exit DOS
BOSS my pressing Q for QUIT.  Now try to CATALOG a disk.
The word CATALOG gives you a SYNTAX ERROR (the Apple thinks
it means CATALOG ALOG), BUT the word CAT catalogs your disk!
Much easier to type, right?  How about changing the command
to CC?  Simpler yet!  Type RUN now and change it.

There are 132 character location set aside for DOS commands.
The total length of all 28 commands may not exceed 132
characters.  DOS BOSS will let you lengthen a short command
IF you have shortened another and have the spare characters
available.  To lengthen the FP command to the word
APPLESOFT, for example, you could shorten CATALOG to CAT and
VERIFY to VER.  You have created seven spare characters, and
now you can lengthen FP to APPLESOFT.  Each new command may
be as long as the number of underscores (----) shown before
you enter the new word.  DOS BOSS will not allow a command
longer than nine characters.  In DOS BOSS, on certain long
commands, the new command will overwrite the original on the
left.  This was done in the interest of saving screen space.

COMMAND POSSIBILITIES
---------------------
You may want to change all or just a couple of commands to
cover a given situation.  Let's take a look at just a few
change ideas.  More command change ideas appear in the Error
Message section of this book.

CATALOG -- Shorten it.  See above.

INIT -- Accidentally typing INIT could prove disastrous!
For me, it resembles "INIT", the  Integer command just a bit
too much.  Why not change INIT to KILL or a longer code word
like FORRMATT?

FP -- Beginners have a hard time remembering this one.  A/S
or APPLESOFT ] (shift-M) might make more sense to you.

EXEC -- I use EX.  I have a Text File called LIST that turns
on my printer, sets it up for 80 character per line, lists a
program, then turns the printer off.  To list any program on
my printer, I simply type EXLIST (meaning EXEC the file name
LIST), and my printer goes to work with my program still
intact!  The BASIC LIST command, of course, still lists on
the screen in the normal manner.

BRUN -- Typing HELP can BRUN a user instruction file names
LP if you rename the BRUN command HE (HELP then means BRUN
LP).  Try it.  There's a sample LP program on the DOS BOSS
disk which runs the ASSISTANCE program.

VERIFY -- VV is perfect here; much shorter (and REAL hard to
misspell!)

LOAD & SAVE -- Special commands!  If you rename them, you
must name other commands "LOAD" and "SAVE" or your system
will freeze if they are accidentally typed, thinking you are
doing a cassette LOAD or SAVE>  More later in the Error
Message Section.

RUN -- RUN bu itself is a BASIC command.  With anything
following it other than a carriage return, it is a DOS
command.  It is best not to mess with DOS's RUN command...
Oh, GO AHEAD!! It's fun to confuse your Apple!  If you
rename RUN, R, for example, your Apple could misinterpret
the BASIC command RUN as RUN  UN.  If things get totally out
of hand while you're experimenting, you can always re-boot.

WATCH-OUT-FORS

1.  If you have changed a command (say CATALOG to CAT) and
encounter a ctrl-D execution of that command in its REGULAR
FORM in a program (like PRINT CHR$(4); "CATALOG"), the
program will bomb with a SYNTAX ERROR or ?SYNTAX ERROR.
Boot normal DOS of you aren't familiar with a program.
2.  BE CAREFUL WITH ONE-LETTER COMMANDS!  It's best to use a
letter that no other command starts with.
3.  Giving a DOS command a BASIC command name will make the
BASIC command unusable.  Change CATALOG to LIST, for
example, to make your programs un-LISTable.  Remember, Apple
checks DOS, THEN BASIC for commands.
4.  Don't use spaces in commands.  If you want a two-word
command like CAT LIST, enter it in DOS BOSS as CATLIST.  The
Apple is trained to ignore spaces-> For example, the normal
CATALOG command will execute fine as CAT A LOG or CATAL OG.
5.  Don't put commas or colons in commands.  apple's INPUT
function won't allow them, so DOS BOSS won't either.
6.  All DOS commands except CATALOG, CLOSE, INT & FP must be
followed by other words or characters, usually a file name,
to be valid.  Just thought I'd mention it.
7.  With duplicate DOS commands, only the first one will
function.

SELF TEST

You can quickly print all DOS commands in their current form
without having to enter the Command Change mode--

1.  Quit DOS BOSS with a Q.
2.  Type RUN 22222 ("return").

If you see some inverse +'s, those are spare characters.

(E)  ERROR MESSAGE CHANGES

Error Message changes are made just like Command changes.
Select the message and type in a new one.  When you are
finished, hit M for MENU.  Changing error messages is
faster, because LENGTHENING MESSAGES IS NOT ALLOWED, and DOS
BOSS, on certain long error messages, your new message will
overwrite the original on the left.  This was allowed in the
interest of saving screen space.

TESTING ERROR MESSAGES

To see if your altered error messages are printing the way
you want, you can trigger each with the following (standard)
DOS command:

     LANGUAGE NOT AVAILABLE-- LOAD an INT file with an
Applesoft-only Apple.
     RANGE ERROR-- MAXFILES 17.
     WRITE PROTECTED-- SAVE FILE with a write-protected
disk.
     END OF DATA-- WRITE an empty Text File, TFILE, and then
EXEC TFILE, R2.
     FILE NOT FOUND-- LOCK X (no program X on disk).
     VOLUME MISMATCH-- LOCK X, V123 (123 is wrong volume
number).
     I/O ERROR-- CATALOG with no disk in drive.
     DISK FULL-- SAVE X with a full disk.
     FILE LOCKED-- SAVE FILE where FILE is locked.
     SYNTAX ERROR-- CATALOGX.
     NO BUFFERS AVAILABLE-- Set MAXFILES 1. Then OPEN a
file, and CATALOG.
     FILE TYPE MISMATCH-- BLOAD FILE where FILE is in
Applesoft or Integer.
     PROGRAM TOO LARGE-- Lower HIMEM to 3000 and LOAD large
program.

COMPUTERS-DON'T-HAVE-TO-TALK-LIKE-COMPUTERS DEPARTMENT

Come on gang!  Loosen up your Apple!  Life is too short for
those D-U-L-L error messages!

     DISK FULL-- Maybe make it BURP!  Instead.
     LANGUAGE NOT AVAILABLE-- How about NO SPEAKA DA
INTEGER!
     FILE NOT FOUND-- TRY AGAIN, BOZO!
     PROGRAM TOO LARGE-- CANNOT COMPUTE!
     ANYTHING-- How about BUMMER!
                Or RATS!
                Or CAN'T YOU SPELL?
                Or HUH?

SYNTAX ERROR-- Should be renamed DOS ERROR or anything not
resembling Applesoft's ?SYNTAX ERROR or Integer's *** SYNTAX
ERR.  When a DOS error is encountered, you should instantly
be able to recognize it as such.

COMMAND/MESSAGE COMBOS!

This is fun!  I'll give you some examples, and you take it
from there.  These changes may all be appended to any
program (more later in the "SAVING DOS CHANGES" section,
page 10).

     1.  Change the SAVE command to KEEP.
     2.  Change the VERIFY command to CATAL.
     3.  Change the FILE NOT FOUND message to *** TYPE
"CAT"!.
Here, the Apple thinks CATALOG means VERIFY file OG, can't
find file OG, and prints the instructions for your new
CATALOG command!  Handy if a stranger is using your DOS
BOSSed Apple and wants to catalog.

or...

     1.  Change the READ command to LIST.
     2.  Change the NOT DIRECT COMMAND message to NOT
LISTABLE!

Another in a long series of ways to Non-listify your
programs to frustrate beaky people!

SELF TEST

You can quickly print all DOS error messages in their
current form without entering the Error Message Change
mode--

     1.  Quit DOS BOSS with a Q.
     2.  Type RUN 22333 ("return").

(X)  CATALOG FORMATTER

It can be frustrating when all of your file names won't show
on the screen at one time.  23 is the normal maximum.  DOS
BOSS's Catalog Formatter can increase this to 88!  Enter
this mode from the MENU with an X.  You can re-layout your
catalogs as indicated by the chart on the screen.  Try all
of the options.  Each selection will instantly show you your
new catalog format, so BE SURE YOU HAVE A DISK IN YOUR
DRIVE.  Options 3 & 4 will eliminate your language codes
(A,I,B & T) and sector numbers for added horizontal space.
These codes are usually not necessary anyway.

One drawback to the two and four-column catalogs is that
file names longer than the maximums shown on the right of
the screen will be chopped off when presented.  You must
either shorten these file names (the best solution) or
REMEMBER them so you can access them by their real titles.

DOS BOSS creates these multi-columned catalogs by simply
removing the carriage returns after each file name.
Three-columned catalogs are not possible using this
procedure, since an odd number of characters would be
required on each line, and it takes 40 characters
horizontally to fill the screen.  See "Making Changes
Without DOS BOSS" a few pages from here for more.

Don't use file names with hidden control characters with the
split catalogs; the columns will get out of alignment.  Two
and four-column catalogs will sometimes look better if you
make the LOCK and UNLOCK codes INVERSE with DOS BOSS.  See
<F> FILE CODE CHANGE.

(V)  VOLUME HEADING CHANGES

To me, Apple's "DISK VOLUME 254" message is clunky, and
takes up too much screen space.  DOS BOSS will permit you to
replace the heading with anything you want, UP TO 16
CHARACTERS IN LENGTH.  You can also eliminate OR include the
Volume Number itself.  Select V from the MENU for a test
run.

A sample of the current heading will be displayed on the
screen.  To remove or include the Volume Number, press #.
To change the message, press C, and type in a new heading
followed by "return".  "Return" alone will restore the
standard (even if it IS clunky!) DISK VOLUME  heading.  You
may also select N, I, or F for a Normal, Inverse, or
Flashing heading.  The Volume Number, when visible, must
always be Normal.

Special characters may be used to create trick titles.  The
@ will print as a carriage return for multi-line titles.
The ^ will do a line feed.  And the > will let you indent a
title, nice in Inverse (normally, the Apple ignores a
leading space on an INPUT; the > remedies the problem!)  The
< acts as a backspace.  Fool around with these special
characters, and you'll see the results.  ALL CATALOGS WILL
HAVE THIS TITLE under another disk is booted, or until a new
title has been injected into DOS.

DISKVOLTRIX

1.  Make your heading GEORGE'S DISK@V- and you will get a
nice two-line heading with a V-254 (or whatever Volume
Number the disk was INITed with) on the second line.

2.  Try A^B^C^<D^<<E^<<F in inverse with no volume Number!
I like to use >BEAGLE@>BROS.> in Inverse.

3.  Or *A 002 HELLO with no Volume Number.  A phony program!
See "Making Changes Without DOS BOSS" later on regarding
removing the carriage return and blank line after the
heading.

4.  Omit the Volume Number, and make the heading >>>>>
(blank).  Who needs it, anyhow?

(F)  FILE CODE CHANGES

Your A, I, B and T file codes as well as your * and " " lock
& unlock codes may be any ASCII screen character you want,
Inverse, Flashing, or Normal.  change them as indicated on
the screen in the File Code Change mode.

SUGGESTIONS:

1.  Alter your file codes or make them ALL INVISIBLE
(spaces) to disguise your files from unauthorized users.

2.  Make Applesoft's A, a ], Integer's I, a >, Binary's B, a

BOSS disk uses this set.  Make up your own.  See Note 4
below.

3.  Make the LOCK and UNLOCK codes Inverse to give your
catalogs a left border.  This helps visually separate
columns if you are set up with DOS BOSS's multi-columned
catalog.

4.  If you are using Key-Cat (page 11), YOU MUST USE ALL
STANDARD FILE CODES AND LOCK & UNLOCK CODES.

(S) SAVING DOS CHANGES

Press S from the menu for DOS BOSS's two Save Options.

QUIT AND INIT

The easiest way to save DOS changes is to create the set-up
you like with DOS BOSS, load or create a new "Hello"
program, and INIT A NEW DISK with your DOS change in memory.
Booting that disk will format your new DOS for you.

CREATING POKE FILES

Another way to save your new DOS is to use DOS BOSS to
create "Poke-Files" which may be appended to any BASIC
program.  When executed, these pokes will change the values
necessary to structure your new DOS.

a.  Press P.  you will be asked which TYPES OF CHANGES you
want to save; Commands, Error Messages, and/or Catalog
changes.  The Catalog changes include fIle Code, Disk Volume
Heading, and Column changes.

b.  Press Y for each Change Type you want to save, and press
S.  A text file will be created for each.  This will take 30
seconds or so, and you can watch the action.

c.  Press Q to exit DOS BOSS and catalog your disk.  You
will see three text files in the catalog; ERR-POKES and
COM-POKES.

d.  Type NEW, and LOAD or create any BASIC program.  BE SURE
LINES 30000-30999 ARE NOT USED.  That is where data from the
Poke Files will be appended.

e.  EXEC the appropriate files.  EXEC COM-POKES if you are
saving Command changes.  EXEC ERR-POKES if you are saving
Error Message changes.  EXEC CAT-POKES if you are saving
Catalog Format changes.  Each file you EXEC will be appended
to your program.

f.  Put a GOSUB 30000 in your program and an END before the
pokes if necessary.  Now this program will format DOS as you
have designed it!  It can be a "Hello" program if you want.
Just delete an existing Hello program and SAVE this new
program under the same name.

Try the above procedure and save your results.  There is a
program on the DOS BOSS Disk called NORMALIZER, RUNning it
will normalize DOS BOSS changes for you (if you don't want
to re-boot).

NOTE:  Only NON-STANDARD error messages will be poked in by
DOS BOSS's SAVE feature.  All other error messages,
including any existing non standard messages, will remain
unchanged.

Also on the DOS BOSS disk

KEY-CAT and BAIT-CAT
--------------------
STOP!!  If you have altered certain DOS commands in memory
with DOS BOSS, rename the strings in LINE 10 of Bait-Cat and
Key-Cat or THESE PROGRAMS MIGHT NOT WORK!  Your new RUN,
BRUN and EXEC commands must be six characters or shorter for
Key-Cat.  Multi Columns, non-standard file codes and other
DOS BOSS changes will also disable Key-Cat.

KEY-CAT
-------
KEY-CAT is a little BASIC program that will make programs
easier to select from the catalog.  It is especially handy
for non-typers and people not familiar with computers.  RUN
it and you will see a catalog of your disks.  To the left of
each filename will be a letter.  Press the letter next to
the file you want, and Key Cat will RUN, BRUN or EXEC it for
you!

If you have more than 17 file names on your disk, the
catalog will pause as usual when the screen is full.  Press
any key to continue, OR, if you see the file name you want
on the screen, PRESS THE "RETURN" KEY, and the selection
letters will appear.

Type # as your selection and sectors used (SEC USED) and
sectors free (SEC FRE) will appear on the screen.  Z will
let you escape Key-Cat.

Key Cat makes long file names more practical, since you
don't have to type the file name to use it.  You can use a
file name like STAR TREK #9 WITH NEW MONSTERS.  The dots on
the right of Key Cat catalog indicate Apple's maximum
30-character file name length.

RENAME KEY-CAT, N and you will only have to type RUNN to
change programs.  Or RENAME KEY-CAT, DOWN and use RUNDOWN!
(Also see NU below).

BAIT CAT
--------
RUN BAIT CAT to see your files separated by file types; B,
A, I and T.  If your want to rearrange the order of your
files or eliminate certain types, CHANGE CO$ IN LINE 150 OF
BAIT CAT.  Only B, A, I and T are allowed, any order you
want.

LP
--
LP is a jokey little program to demonstrate a possible use
of DOS BOSS's Command Change feature.  With DOS BOSS, change
BRUN to HE.  Then typing HELP will BRUN LP (LP runs a
program called ASSISTANCE).  You could provide user
instructions of your own design this way.

NU
--
NU will RUN KEY CAT for you.  Change EXEC to ME and the EXEC
String in Key Cat (Line 50) to "ME".  Now, simply typing
MENU will EXEC NU which RUN's KEY CAT!

Changing DOS without DOS BOSS
-----------------------------
Your Apple's changeable memory (RAM) consists of
approximately 48,000 changeable memory locations, (32,000 if
32k).  Each location or address is assigned a value from 0
to 255.  It is easy to PEEK or look at a value at any
location (Example:  PRINT PEEK(300) will produce a number,
0-255, and PIKE in a new one if you want (Example:  POKE
300, 123 will change that number to 123).  DOS BOSS
re-arranges DOS according to your commands by poking or
inserting new values into memory for you.  Additional
possibilities are endless-- Here are a few catalog
customizations you can make on your own.  Any of them may be
entered directly or made part of a program.  If you want to
keep one of these features, INIT with it poked in, or add
the pokes to THE END OF your appended poke-file (see "Saving
DOS Changes").

BEWARE!!
--------
Messing around in DOS can cause S-T-R-A-N-G-E things to
happen, and before you finish this section, you (or I) may
have a malfunctioning computer.  Fear not!  To fix things,
simply turn off the power and re-boot.  Remember, no
permanent harm can ever be done to your Apple itself by just
pressing keys.
BEWARE AGAIN!-> There is also a slight chance that you COULD
foul up a disk as well (if you typed other than the pokes
given here), so use an expendable disk (a copy) to play
around with.  If the disk does get messed up, you can always
erase and re-use it by INITing it.  Before trying each new
poke below, I advise you to poke back in the original values
listed after each example.

ATTENTION OUT THERE!  The size of your Apple's memory
determines where DOS resides.  On the following DOS
experiments, use the first set of pokes if you have 48k
(doesn't everybody?)  Use the second set if you have 32K.

PRINT PEEK (44611)
or PRINT PEEK (28227) (if 32k)

Your Apple should answer with a 2. Let's change it to a 1--
POKE 44611, 1
or POKE 28227, 1 (if 32K)

Now Peek again, and there's your 1!  Now CATALOG a disk and
notice the change you have made.  This poke changes the
number of digits in your catalog sector numbers to 2 instead
of 3.  Have you ever seen a file bigger than 99 sectors?
Not very often, right?  So why clutter up the catalog with
extra 0's?  (Note: If you REALLY like clutter, poke in a 4
or an 11!)  A possible drawback to 2 digit sector numbers:
You will scramble your VOLUME NUMBER (on the screen, not in
memory).  A solution:  OMIT the number with DOS BOSS.
Another drawback:  If you are using DOS BOSS's multi-column
catalog, this poke will really make a temporary mess of your
columns!  (Normal value:  2. Poke a 2 back in to 44611 or
28227, and continue.)

POKE 44459,234:  POKE 44460,234:  POKE 44461,234
POKE 28075,234:  POKE 28076,234:  POKE 28077,234 (if 32K)
These two pokes will eliminate the blank line after the word
CATALOG.  234's mean "do nothing", and these pokes do
nothing instead of printing a carriage return.  (Normal
values: 32, 47, 174, if 48K, or 32, 47, 110 if 32K)

POKE 44486,234:  POKE 44487,234:  POKE 44488,234
POKE 28068,24:  POKE 28103,234:  POKE 29104,234 (if 32K)
This will eliminate the blank line after the Disk Volume
heading.  (Normal values:  32,47,174 if 48K, or 32,47,110 if
32K)

POKE 44452,24:  POKE 44605,23
POKE 28068,24:  Poke 28221,23  (if 32K)
These pokes will let 20 file names appear before stopping
for a keypress instead of the normal 18.  Poke in any
numbers.  Always make the first poke value one number larger
than the second.  (Normal values:  22,21)

POKE 44451,173:  POKE 44559,186
POKE 28157,173:  POKE 28175,186 (if 32K)
The first poke replaces the space (value 160) after the
file-type code with a hyphen.  The second one puts a colon
after the sector numbers.  Experiment with other values from
the ASCII Screen Chart in the Dos Boss Book Appendix.
(Normal values:  160,160)

POKE 44567,12
POKE 28183,12 (if 32K)
Will shorten your maximum file name length to 13 characters
(on the screen, NOT in memory).  Normally this number is 29,
for 30 maximum characters.  The number of characters is
always one less than the number poked in.  Every file name
shorter than the maximum fills the remaining space with
spaces.  (Normal value: 29)

POKE 44578,234: POKE 44579,234: POKE 44580,234
POKE 28194,234: POKE 28195,234: POKE 28196;234 (if 32K)
Cancels all carriage returns after file names.  With these
234's poked in, play with poking some small numbers (like 2
or 12; only certain numbers will work) in at 44567 (28183 if
32K), and you can have your own version of the
multi-columned catalog.  (Normal values: 32,47,174 if 48K,
or 32,47,110 if 32K)

POKE 44505,234: POKE 44506,234
POKE 28121,234: POKE 28122,234 (if 32K)
Shows deleted files in your catalog, and throws in a free
bonus inverse character to the right of the each.  (Normal
values:  48,74)

THE FOLLOWING CHANGES ARE PRETTY MUCH WORTHLESS, BUT FUN
ANYWAY
------------------------------------------------------------
---
POKE 44596,234: POKE 44597,234: POKE 44598,234
POKE 28212,234: POKE 28213,234: POKE 28214,234 (if 32K)
Will prevent your catalog from stopping when the screen is
full.  Normal values: 206,157,179 if 48K, or 206, 157,115 if
32K)

POKE 44599,234: POKE 44600,234
POKE 28215,234: POKE 28216,234 (if 32K)
Stops your catalog at each file name, waiting for a keypress
on each one (Normal values: 208,8)

POKE 50,128
Makes your catalog invisible (in case you're embarrassed by
it).  Lists are invisible too!  (Normal value: 255)

POKE 44617,234: POKE 44618,234: POKE 44619,234
POKE 29236,234: POKE 29237,234: POKE 28235,234 (if 32K)
Makes all sector numbers and your volume number appear as
000's!  (Normal values: 217,164,179 if 32K, or 217,164,115
if 32K)

POKE 45620,234: POKE 45621,234
POKE 29236,234: POKE 29237,234 (if 32K)
Repeats your first file name forever!  (Normal values:
105,35)

FOR X=43439 TO 43443: POKE X,7: NEXT X
FOR X=27055 TO 27059: POKE X,7: NEXT X (if 32K)
This obnoxious change replaces the word FILE (+space) with
five ctrl-G beeps in the FILE NOT FOUND error messages.  You
can poke beeps (7), carriage returns (13), line feeds (10),
or anything into any error message as well as the Volume
Message and other unusual places.  Each poke, of course,
replaces whatever character was there.  (Normal values:
70,73,76,69,32)

POKE 43378,42
POKE 26994,42 (if 32K)
Now you've replaced all DOS error message beeps (invisible,
but audible ctrl-G's) with visible, but inaudible asterisks!
(Normal value: 7)

DOS & Non-DOS Tips and Tricks

This section is for fun; a collection of unconnected Apple
goodies from here and there, some useful, some useless, ALL
kind of interesting.

IF CITY!
Applesoft sometimes limits you in your use of "IF"
statements.  That is, if an IF statement is not true,
Applesoft jumps to the next line number.  NOT TRUE if you're
dealing with certain types of information!  Instead of...
     10 INPUT A
     20 IF A=O THEN POKE 50,63: REM INVERSE
     30 IF A>O THEN POKE 50,255: REM NORMAL
     40 PRINT "BEAGLE"
you could say...
     10 INPUT A: POKE 50,63 + 192 * (A > O): PRINT "BEAGLE"
The IF statement here is really inside the parentheses which
takes on a value of 1 or O depending on the truth of A>O.
If A>O then the POKE becomes POKE 50,(63+192) or POKE 50,255
(normal).  IF not true, it's POKE 50,63  (inverse), AND THE
REST OF THE LINE IS STILL READ!  A very simple example, but
some complex things can be accomplished (like speeding up
programs and SAVING SPACE) using this trick.

FLUSH RIGHT!
Using the method above, flush right numbers are easy.
Watch:
     10 FOR X= 5 TO 1055 STEP 50
     20 PRINT SPC(X>1000; SPC(X<100); SPC(X>10;X
     30 NEXT X

APPLE BUG DEPARTMENT
--------------------
(We don't explain 'em, we just find 'em!)

GET BUG
-------
Turn off DOS by booting with no disk and hitting reset, and
type:

     10 GET G$: V=VAL(G$): PRINT V

RUN and enter a digit, 1-9 for G$. Look at the answer!
Inserting a "G$=G$" after "GET G$" seems to clear things up.
The explanation for this is really boring.  Re-boot to
continue...

SQUARE BUG
----------
PRINT 7 * 7 AND PRINT 7^2 will produce different answers!!
Watch this...

     10 TEXT: HOME
     20 PRINT "NUMBER SQUARED  CUBED"
     30 PRINT "------ -------  -----"
     40 POKE 34,2
     50 FOR X=0 TO 255: PRINT X;
     60 HTAB 9: PRINT X^2:
     70 HTAB 21: PRINT X^3: NEXT X

CONTROL BUG
-----------
Add this line to the beginning of any Applesoft program:

     10 IF N>99 THEN N=1: PRINT "CATALOG"

(There is a control-D hidden between the first quote mark
and the C of CATALOG.)

Now try to LIST.  You can't!  Notice you are presented with
a DOS ERROR (SYNTAX ERROR if you haven't used DOS BOSS)
instead of a ?SYNTAX ERROR.  Applesoft can't seem to stand
having a ctrl-D at HTAB 1 without trying to EXECUTE the
commands following it!  To make it execute, REMOVE THE LAST
QUOTE MARK (completely legal in Applesoft).  Now the LIST
command will CATALOG!!  The IF N>99, etc., is just filler to
get the ctrl-D on the left of the second line.  Creative (or
destructive) possibilities:  Change CATALOG to FP, and a
LIST command will murder the program!  Suits that guy right
for trying to list your prized SUPERDATABASE program, right?
Of course, NO ONE would be ROTTEN enough to change the
command to DELETE SUPERDATABASE.  (...and INIT
SUPERDATABASE? Never!!!)

ONE MORE NO-LISTER:
-------------------
A POKE 2049,1 in an Applesoft program will prevent a LIST if
the program has been run.  Try it in a boot program.

CALL THIS NUMBER:
-----------------
CALL-1184 will retrieve a message for you from the Autostart
ROM.

INVISI-CALC!
------------
As mentioned earlier, POKE 50,128 will make a listing or
catalog (except for inverse file names) invisible.

This program reveals all the POKE 50 possibilities--Anyone
for secret codes?

     10 FOR X=O TO 255
     20 POKE 50,255: PRINT "POKE 50,";X;":";
     30 POKE 50, X: PRINT "TESTING 1,2,3,4,5..."
     40 NEXT X: POKE 50,255: END

APPLE'S HEX CONVERTER
---------------------
You can convert a hex number to decimal in the monitor.  Say
you want to convert 056E to decimal.  From Applesoft, enter
the monitor with CALL -151, and type:
     *45: 05 6E N ED246 (return)
Your decimal answer, 1390 in this case, will appear!  Use
the N ED246 for converting any number (from Applesoft only).

You can ADD and SUBTRACT hex in the monitor too--Just type
the equation, say "AF+3E" (don't type "PRINT") and hit
return.  Apple even throws in a free equal sign!

SHIFTY PICTURES
---------------
This little program does tricks with your hi-res screen by
shifting memory.  First, RUN B.B. LOGO from the DOS BOSS
disk.  Enter the monitor with a CALL -151, and type:

     *2000<2005.3FFFM (return)
     *2000<2010.3FFFM (return)
     *2000<2025.3FFFM (return)

These commands tell the Apple to MOVE MEMORY from the
address range on the right to the range starting with the
address on the left.  Substitute your own number after the
"<".  Fun, huh?

FREEMEM
-------
To find the amount of memory still available to you, PRINT
FRE(O) or FRE(any number).  If you get a negative answer,
add 65536.  Try printing FRE(O) before and after booting
DOS.  The program below will show you how many SECTORS a
program in memory will occupy according to how such free
memory you have left:

     10 TEXT: HOME
     20 PRINT "SEC MEM   FRE(O)"
     30 PRINT "--- ---  ------------------------------"
     40 POKE 34,2
     50 MEM=35329: REM 18945 IF 32K
     60 FOR SEC=O TO 137
     70 MEM=1 + INT<<.5+SEC) *256/1000)
     80 MHI=MEM-256*SEC
     90 MLO=MHI-255
     100 PRINT SPD (SEC<100); SPC(SEC<10); SPC(1)
     110 PRINT SPC(MEM<10); MEM;  "K"; SPC(2)
     120 PRINT MLO;";";MHI;
     130 IF MHI<32767 THEN PRINT "                
     (";MLO-65536;";";MHI-65536;")";
     140 PRINT: NEXT SEC

INVERSE TYPER!
--------------
Here's an easy way to type directly to the screen in inverse
(or flash):

     10 INVERSE: REM OR FLASH
     20 INPUT A$: PRINT A$;: GOTO 20

BUT you have to RUN the program and remain in the program
for it to work.  Run the program below and you will get
inverse alphabetical characters after you are out of the
program!

     10 DATA 201,141,240,21
     20 DATA 234,234,234,234
     30 DATA 201,192,144,13,201,224,176,9,72,132,53,56,233
     40 DATA 192: REM 128 FOR FLASH
     50 DATA 76,249,253,76,240,253
     60 FOR I=768 TO 795: REM $300 TO $31B
     70 READ N: POKE I,N: NEXT
     80 POKE 54,0: POKE 55,3
     90 CALL 1002: REM RESET OR PR#O KILLS THIS PROGRAM.

CONTROL-FIND
------------
Make the following changes to the above program to expose
all control characters except U's (forward spaces) and M's
(carriage returns):

     30 DATA 201,128,144,13,201,160,176,9,72,132,53,56,233
     40 DATA 128: REM 64=FLASH, O=NORMAL

RUN it (nothing happens).  Now type GARBAGE (return) or
something misspelled.  You will SEE, but NOT HEAR a "?SYNTAX
ERROR" with an inverse "G" instead of the usual beep!  You
can type control characters as inverse directly to the
screen (or flashing if you change line 40 to DATA 64 in the
above program).  Backspaces are a bit frustrating to use
since they appear as inverse H's and don't usually
backspace.  Save control characters into your file names if
you want, and reveal them by running this program followed
by CATALOG.

INVERSE REM STATEMENTS AT LAST!
-------------------------------
After minutes of extensive research, my Uncle Louie finally
came up with his finest achievement, INVERSE REM STATEMENTS
(flashing if you want!)! Maybe not as practical as your
normal kind of REM, but they sure do SHOW UP!  Here's what
you do:  Type in the Inverse Typer program from above and
make the CONTROL-FIND corrections.  Be sure line 40 is 40
DATA 128.  RUN it. Now type an inverse REM in any program.
Say, 5000 REM A TEST.  Now LIST and you've got it!!  Oh, one
thing.. the characters after "REM" are CONTROL CHARACTERS
(ctrl-Z, space, ctrl-T, ctrl-E, ctrl-S, ctrl-T).  The
inverse REMs will only show if you have RUN the control-find
program above.  Hitting reset or Pr#O will kill the effect.
Also, your REMs won't be able to contain any M's, U's, or
X's (A's & S's too if you use the P.L.E.).  This is a good
way to hide your name or secret info in a program!  Thanks,
Uncle Louie!

LEONARDO WOULD HAVE LOVED IT!
-----------------------------
You never know when this might come in handy...

     10 H$=CHR$(8)+CHR$(8)
     20 VTAB 23: HTAB 40
     30 GET P$: PRINT P$;H$;
     40 GOTO 30

RESET TO THE MONITOR!
---------------------
We know a guy who chucked his Autostart ROM in the disposal
just because it makes RESET return him to BASIC instead of
the monitor.  He should have typed:

     ]CALL -151
     *3F2: 69 FF 5A

Make the 5A and 51 and RESET will RE-BOOT! (Normal is *3F2:
00 97 32)

@DON'T ^BELIEVE ]IT.
--------------------
File names, according to the DOS Three-Point-Whatever Manual
must start with a LETTER. Not so!  Shifted letters (N, P,
and M) work too, as well as \ and [.  Nice for
differentiating types of files in your catalogs.

BUT HOW DO YOU READ THE LABEL?
------------------------------
You will probably ignore this hint; I know I do--If you are
going to leave disks all over your desk, you should place
them face UP so that they aren't damaged by dirt, etc. on
your desk.  The disk drive head reads the BOTTOM of your
disk through the oval hole.  The hole on top is for the
pressure pad.

AND PEOPLE COMPLAIN ABOUT METRIC!
---------------------------------
Have you noticed that to get into this computer stuff,
you've got to be constantly CONVERTING things?  Decimal to
hex, hex to decimal, 3.2 to 3.3, Applesoft to Integer,
machine code to BASIC, screen characters to ASCII code,
negative memory addresses to positive, 32K to 48K...Good
grief!

Here are two rules-of-pinky that I'll pass along at no
charge:  4 SECTORS used in a program = approximately 1K of
memory (a 24 sector program is about 6K).  Also, 4000
decimal = 1000 hex.

255 SECTOR HANGMAN?
-------------------
You can purposely or accidentally have a file take up more
space on a disk than it really occupies in memory.  To prove
it, SAVE LARGE PROGRAM (say 50 sectors).  LOAD TEENY PROGRAM
(say 2 sectors). SAVE LARGE PROGRAM.  And finally, RENAME
LARGE PROGRAM, TEENY PROGRAM.  Now TEENY PROGRAM shows 50
sectors in the catalog!

DELETE HELLO
------------
If you need more space on a disk, consider deleting your
Hello Program to save the amount of space it occupies.  you
won't be able to boot the disk, but you can still use it!

D$ FIX
------
This program WON'T catalog a disk:

     10 D$=CHR$(4): REM CTRL-D
     20 PRINT "WATCH...";
     30 PRINT D$;"CATALOG"

The problem is that D$ (ctrl-D) in line 30 is at HTAB 9
because of the semi-colon in line 20.  One remedy that
always gets your D


s at HTAB 1 where it will function is:

     10 D$=CHR$(13) + CHR$(4): REM CARRIAGE RETURN + CTRL-D

RIGHT PROTECTORS
----------------
Most of the write-protect tabs I have used come off or get
messed up going in and out of my disk drives.  A handy new
product called SCOTCH TAPE works much better!  Some
computers other than Apple rely on a beam of light to check
for write-protection, so their tabs would have to be opaque
to work.

TWO-SIDED DISKS
---------------
SURE you can use both sides of your "single sided" disks.
This can save you both money and storage space.  Use a
regular paper punch to make a half-circle notch on the edge
of a disk jacket EXACTLY OPPOSITE the original write-protect
notch.  Then INIT the second side just like you did the
first.  Disk manufacturers don't usually test both sides of
disks, so you do run the risk of a bad sector now and then
and you COULD lose some data.  If you make back-up copies
anyhow, this shouldn't be a problem.  By the way, the small
off-center hole in the disk jacket isn't used by Apple's
DOS.

LO-RES MYSTERY
--------------
You can't PLOT X, Y where X > 39, BUT you can PRINT
SCRN(X,Y) with values of X up to 47!  Check it out.  It
seems that there's an invisible lo-res screen to the right
of the visible screen that's 48 plots high by 8 plots wide.
Maybe Apple is tooling up for CinemaScope!

?=PRINT
-------
Applesoft thinks ? means PRINT.  Try ?2+2.  If you use ? in
a program and LIST, the ?'s will be converted to PRINTs!

"QUOTE"
-------
Applesoft doesn't require an end quote mark in most cases.
Try PRINT "HELP.  (Think of the time you'll save!)

SAVE-PROTECTING YOUR PROGRAMS
-----------------------------
There are four basic methods a person will use for copying
your software:

     1.  LOAD and SAVE after booting your disks.
     2.  LOAD and SAVE after booting another disk.
     3.  use the FID program form the System Master disk.
     4.  Use a COPY program to copy your entire disk, DOS
     and all.

Using DOS BOSS and the following trick, you can foil methods
1,2 and 3. And method 4 has its drawbacks.  The trick
involves forcing the user to BOOT WITH YOUR DOS.  The effect
is this--suppose Joe Blow wants to make an unauthorized copy
of your fantastic new game.  After trying method 1 above, he
encounters a (beep!) "NOT COPYABLE" message.  Joe then tries
method 2 and 3, both of which seem to work, but when he
tries to run any program on the copied disk, it won't work
and crashes into the monitor.  Joe is getting discouraged.
Perhaps he gives up, or perhaps he goes on to method 4 and
copies your entire disk.  tHis works fine, bit every time he
catalogs your disk, he gets your bold copyright message in
the heading, reminding him of his dishonesty.  Also, he has
had to use up a whole disk, with your darn personalized DOS
on it.  Joe is sorry he ever messed with you!

The procedure to make the above happen goes like this:

a.  Run DOS BOSS
b.  Change the READ command to SAVE and the SAVE command to
KEEP.
c.  Replace the NOT DIRECT COMMAND error message with NOT
COPYABLE.
d.  Personalize your Disk Volume Heading.  Make it 15
characters or less.
e.  Quit DOS BOSS and type NEW (return)
f.  Type POKE 45995,96 (return).  If you have 32K, make it
29611,96.
g.  Insert a new disk and type INIT HELLO (return).  Your
new personal DOS will be on this new disk.
h.  Copy your programs onto the new disk, using method 2 or
3 above.
i.  Somewhere in each program, several times if you want,
insert a CALL 45995, either with a line number, like:
     1000 CALL 45995
or tucked amidst your existing program statements, like:

     1234 INPUT "O.K?";A$:CALL 45995: IF A$="Y" THEN GOTO 10


The CALL in Step 1 is like a "GOSUB" to a machine language
routine at memory location 45995.  The 96 you poked in in
Step f is actually a machine language "RETURN".  If the 96
is encountered at 45995, nothing happens and your program
continues, which is what you want.  If any other number is
encountered (meaning your disk was not booted) the program
crashes!  An equally good command, instead of CALL 45995,
would be IF PEEK (45995)<>96 THEN NEW.  This will ERASE the
program if your disk wasn't booted!

Have fun! And let's hope that Joe Blow doesn't have DOS
BOSS!

FILE NAMES AS TITLES
--------------------
You have probably noticed our catalog titles in our
multi-game disks, where we separate Applesoft games from
Integer:

     ]CATALOG

     DISK VOLUME 123

     INTEGER

     *I 053 TEXTTRAIN
     *I 036 SUB SEARCH
     *I 033 PICK-A-PAIR

     APPLESOFT

     *A 053 TEXTTRAIN/A
     *A 036 SUB SEARCH/A
     *A 033 PICK-A-PAIR
         etc...

The flush left underlined INTEGER & APPLESOFT headings help
organize the catalog and separate one group of files from
the other.  Here's how we do it!

     10 D$ = CHR$(4): H$ = CHR$(8)
     20 H$ = H$ + H$ +H$ + H$ + H$ + H$ + H$ + H$
     30 FILE$ = "X" + H$ + "APPLESOFT"
     40 PRINT D$; "SAVE ";FILE$

Substitute the word you want for your titles in line 30.
You can also replace SAVE in line 40 with DELETE, LOAD or
whatever.  Access to these "title" is difficult without a
program similar to the one above.
Another effective way to make file headings in the catalog
is to use inverse or flashing file names.  See page 26 of
the Winter 80-81 Beagle Bros. Tip Book.

INPUT ?-REMOVER
---------------
In an Applesoft program, an INPUT A$ or INPUT A will print a
? and a flashing cursor.  If you don't want the ?, change
your command to INPUT " ";A$ or INPUT " ";A.

SPACE-CAT
---------
Hey everybody! DOUBLE-SPACE YOUR CATALOGS with a POKE 33,37!
Mail your reasons for doing this along with $1 to :

     BERT KERSEY
     c/o BEAGLE BROS.
     4315 SIERRA VISTA
     SAN DIEGO, CA  92103

Cruising Through DOS
--------------------
Let's take a cruise through DOS!  The usual "trip" of this
kind would be in the monitor, looking at a bunch of
two-digit hex numbers; a real drag.  Let's make things more
interesting!  First, boot a normal disk whose DOS hasn't
been altered by DOS BOSS.  Now write this little program:

     10 FOR X=43380 TO 43401: REM
        FOR X=26996 TO 27017 IF 32K
     20 PRINT PEEK (X);" ";
     30 NEXT X

RUN it, and you will see a string of numbers.  Pretty
exciting, huh?  Now, CHANGE LINE 20 to:
     20 PRINT CHR$(PEEK(X));
and RUN it again!  "LANGUAGE NOT AVAILABLE" magically
appears!  What's this?  You have just uncovered DOS's first
error message in the monitor!  CHR$(PEEK (X)) means the
"character whose ASCII value is X".  Now change line 10 to:
     10 FOR X-43380 TO 43581: REM
        FOR X=26996 TO 27197 IF 32K
and you'll see ALL FOURTEEN DOS ERROR MESSAGES strung
together!  To further examine these mysterious characters,
let's add two more lines to our program:
     15 NORMAL" IF PEEK(X)>127 THEN INVERSE
     25 IF PEEK(X)>127 THEN PRINT
RUN again, and you'll notice that the LAST CHARACTER of
every error message is INVERSE. Actually, Line 15 TELLS it
to be inverse IF it has an ASCII value higher than 127.
Each Apple keyboard character and control-character has TWO
ASCII values, sometimes called the "low-byte" value and the
"high-byte" value.  The high-byte character at the end of
each error message tell the Apple where the end of the
message is and when to quit printing letters to the screen.

Now try these immediate mode commands--
     LOAD ZZYZX
You get a "FILE NOT FOUND", unless you have a program named
"ZZYZX".  Now...
     POKE 43452,68
     (or POKE 27068,68 if 32K)
     LOAD ZZYZX
You should get a DOUBLE error message, because you have
POKed IN or CHANGED the high-byte "D" in "FOUND" to a
low-byte "D" (value 68 at location 43452 or 27068).  Now the
Apple thinks that error message #5 is "FILE NOT FOUNDVOLUME
MISMATCH".  It prints until it finds a high-byte character,
the "H" in
"MISMATCH" instead of the "D" in "FOUND""!  Repair the
damage before continuing by poking the high-byte value for
"D" (196) back in where it belongs:

     POKE 43452,196
     (or POKE 27068,196 if 32K)

There are other places to look, of course.  If you want a
really LONG trip through ALL parts of memory, change Line 10
to:

     10 FOR X=O TO 65535

You will see ALL KINDS of stuff: beeps, backspaces, line
feeds, carriage returns, little pictures of animals (just
kidding), and the big feature every so often:  REAL WORDS!
If you've been running some programs, you'll probably see
parts of old program listings.  If you've just BRUN or
BLOADed the 3.3 MASTER CREATE Program, you'll even find a
funny message from the author somewhere between locations
2500 $ 3900, only meant to be seen by prying eyes.  So go
ahead and pry:  SAVE your program:  BLOAD MASTER CREATE.
LOAD your program and RUN.

Back to DOS, change the values in Line 10 to 43140 and 43338
(26756 and 26954 if 32K) and you'll find the 28 DOS commands
followed by some garbage and "VDSLRBACIO".  Those are the
initials for VOLUME, DRIVE, SLOT, LENGTH, etc.  the
one-letter codes used in DOS!  Poke in new letter values if
you want.

Change Line 10's numbers to 43700 and 43715 (27316 and 27331
if 32K).
That's "APPLESOFT", the name of the program Apple tries to
run if you type "FP" and don't have Applesoft in ROM!

Now, change Line 10 to:

     10 FOR X=46120 TO 45991 STEP-1" REM
        FOR X=29736 TO 29607 STEP-1 IF 32K

RUN it and "DISK VOLUME BARSBAIT" appears!  That's where
Apple gets the message to print at the top of your catalogs!
"BARS" seem to be throwaway characters, so we've used them
in DOS BOSS to lengthen the "Disk Volume" message.   have
you guessed "BAIT" yet?  How about Binary, Applesoft,
Integer and Text, the codes for your catalog files!

Look around some more; DOS goes clear up to 49151 in 48K;
32767 in 32K.  Above 49151 is BASIC.  You can look there too
if you want!  It's YOUR computer!