414 lines
16 KiB
Groff
414 lines
16 KiB
Groff
|
|
|
|
DOS3.5 INSTRUCTIONS
|
|
===================
|
|
|
|
|
|
INTRODUCTION:
|
|
DOS3.5 is a assembly language program which modifies DOS3.3 to run
|
|
3.5" disks.
|
|
|
|
|
|
DOS3.5 IS NOT IN THE PUBLIC DOMAIN!
|
|
|
|
Some code is from:
|
|
APPLE ASSEMBLY LINES
|
|
(C) COPYRIGHT 1986 S-C SOFTWARE
|
|
MAY & JULY & OCT 1986 issues
|
|
S-C SOFTWARE
|
|
P.O. BOX 280300
|
|
DALLAS, TX 75228
|
|
|
|
All code not from APPLE ASSEMBLY LINES 1986 IS:
|
|
===
|
|
(C) COPYRIGHT 1987 BRAD PLATT
|
|
ALL RIGHTS RESERVED
|
|
|
|
|
|
PRONTODOS is a trademark of BEAGLE BROTHERS
|
|
APPLE, APPLE II, and APPLE IIGS are trademarks of APPLE COMPUTER INC.
|
|
|
|
|
|
|
|
THE DISCLAIMER
|
|
==============
|
|
These instructions and the program DOS3.5 is sold without any expressed
|
|
or implied warranties whatsoever. No warranty of fitness for a particular
|
|
purpose is offered. The user is advised to test the program thoroughly before
|
|
relying on it. The user must assume the entire risk of using the program
|
|
DOS3.5 and the modified disk operating system that it creates.
|
|
|
|
|
|
|
|
3.5"DOS3.3
|
|
==========
|
|
3.5"DOS3.3 is the name given to the new disk operating system created by the
|
|
program DOS3.5 . This new DOS is DOS3.3 slightly modified so it can run
|
|
3.5" disks, and still retain compatibility with the DOS3.3 programing
|
|
environment.
|
|
|
|
3.5"DOS3.3 seems to be compatible with all the APPLE II family of computers
|
|
that have at least 48K of ram, including the APPLE IIGS.
|
|
|
|
|
|
|
|
OVERVIEW of 3.5"DOS3.3
|
|
======================
|
|
|
|
BENIFITS:
|
|
1. Very little of DOS3.3 has been modified, so should be compatible with
|
|
almost all programs that use an unmodified DOS3.3 programing environment.
|
|
|
|
2. Allows the use of 3.5" disks to run and store programs.
|
|
|
|
3. Will also run normal 5.25" disks that have been initialized by DOS3.3 .
|
|
|
|
4. Allows approximately 800K bytes of information to be store on one
|
|
3.5" disk. Data is stored as if each 3.5" disk was 2 disk drives
|
|
each holding 400K bytes.
|
|
|
|
|
|
DRAWBACKS:
|
|
1. Can run only one 3.5" drive, and it must be in its own slot. (No limit
|
|
to the number of 5.25" drives as long as not in same slot as
|
|
3.5" drives).
|
|
|
|
2. No INIT command. (To initialize a 3.5" disk you must run the
|
|
program DOS3.5 and chose option to initialize 3.5" disk).
|
|
|
|
3. Cannot initialize 5.25" disks from the 3.5"DOS3.3 environment.
|
|
|
|
4. The program DOS3.5 should be copied onto the initialized 3.5" disk
|
|
so you can use it to initialize new disks.
|
|
|
|
5. The startup program, more commonly known as the HELLO program, is not
|
|
automatically copied onto the 3.5" disk when it's initialized. Instead
|
|
you should put the HELLO program onto the 3.5" disk soon after it has
|
|
been initialized. Also the HELLO program must be called "HELLO" .
|
|
|
|
6. 3.5"DOS3.3 uses $BCDF-$BCFF. This area is officially unused by DOS3.3,
|
|
so it's a popular place used to put patches. Example: PRONTODOS uses it.
|
|
|
|
|
|
|
|
GETTING STARTED
|
|
===============
|
|
Assumptions:
|
|
You have an Apple II series of computers with at least 48K of RAM in it.
|
|
You have the program DOS3.5 on a 5.25" disk that contains the disk operating
|
|
system DOS3.3 .
|
|
|
|
1. Boot up this disk
|
|
|
|
2. Type BRUN DOS3.5 (then press return)
|
|
|
|
3. Get to menu titled:
|
|
MODIFY DOS3.5 TO RUN 3.5" DISKS
|
|
========================================
|
|
|
|
When asked WHICH VERSION DO YOU WANT?
|
|
Chose choice #1 which is: 1. WITHOUT PATCH
|
|
|
|
DOS3.3 has now been modified to 3.5"DOS3.3
|
|
|
|
4. Get to menu titled:
|
|
MAIN MENU
|
|
========================================
|
|
|
|
Chose choice #1 which is: 1. INITIALIZE 3.5" DISK
|
|
|
|
then follow the directions on the screen. Make sure there is a
|
|
3.5" disk in the correct drive or the program will bomb!
|
|
|
|
Your 3.5" disk is now initialized.
|
|
|
|
5. Return to MAIN MENU
|
|
|
|
6. To initialize more disks repeat steps 4 and 5.
|
|
|
|
7. For every new disk that has just been initialized, it's strongly
|
|
suggested that you copy the program DOS3.5 onto the new disk.
|
|
(This step is optional)
|
|
|
|
Get to MAIN MENU
|
|
|
|
Chose choice #2 which is: 2. COPY THIS PROGRAM ONTO 3.5" DISK
|
|
|
|
then follow the directions on the screen. Make sure there is a
|
|
3.5" disk in the correct drive or the program will bomb!
|
|
The program DOS3.5 has now been copied to the 3.5" disk. (But only
|
|
onto phantom drive 1, not to phantom drive 2.)
|
|
|
|
8. Return to MAIN MENU
|
|
|
|
9. To leave program DOS3.5
|
|
|
|
Get to MAIN MENU
|
|
|
|
Chose choice #3 which is: 3. EXIT
|
|
|
|
You now have 3.5" disks that can run most DOS3.3 programs.
|
|
REMEMBER: There is no "HELLO" program on this disk yet. Now would
|
|
be a good time to add one.
|
|
|
|
|
|
PHANTOM DRIVE
|
|
=============
|
|
A 3.5" disk that has been initialized with 3.5" DOS3.3 contains room for
|
|
approximately 800K of storage. These bytes are stored as if there were 2
|
|
disk drives, each holding 400K. Since there is only one 3.5" disk drive, the
|
|
second drive is called the phantom drive.
|
|
You access and use them just as if there were 2 drives in the slot the
|
|
3.5" disk drive is in.
|
|
FOR EXAMPLE:
|
|
CATALOG,S7,D1
|
|
CATALOG,S7,D2
|
|
LOAD PROG1,D2
|
|
|
|
|
|
|
|
ADDING A "HELLO" PROGRAM
|
|
========================
|
|
Let us assume:
|
|
5.25" disk in slot #6 contains "HELLO" program
|
|
3.5" disk in slot #7 contains 3.5"DOS3.3
|
|
and you want to transfer the "HELLO" program that is on the 5.25" disk to
|
|
the 3.5" disk.
|
|
|
|
Type the following lines: (don't type what's in parenthesis)
|
|
PR#7 (boots up 3.5" disk)
|
|
LOAD HELLO,S6 (loads "HELLO" from 5.25" disk)
|
|
SAVE HELLO,S7,D1 (saves "HELLO" onto 3.5" disk in drive 1)
|
|
SAVE HELLO,D2 (saves "HELLO" onto 3.5" disk in phantom drive 2)
|
|
|
|
NOTE: You may not want to save a "HELLO" program onto phantom drive 2;
|
|
because when the 3.5" disk is booted, only the "HELLO" program from
|
|
drive 1 is run.
|
|
|
|
|
|
|
|
3 VERSIONS OF DOS3.3
|
|
====================
|
|
They are:
|
|
1. Normal DOS3.3 (not able to run 3.5" disks)
|
|
|
|
2. DOS3.3 modified for 3.5" disks with NO PATCH
|
|
$BC56-$BCFF is used
|
|
|
|
3. DOS3.3 modified for 3.5" disks with PATCH
|
|
$BC56-$BCFF unused
|
|
1st DOS buffer used instead
|
|
|
|
The program DOS3.5 identifies which one of these 3 versions is currently in
|
|
the computer (but only if one of these 3 versions is in the computer).
|
|
|
|
3.5"DOS3.3 refers to both versions 2 and 3.
|
|
|
|
Both versions 2 and 3 changes $BEAF-$BF8E. This is where the modification
|
|
to DOS3.3 is put.
|
|
|
|
Normal DOS3.3 INIT command uses $BEAF-$BFB7 and $BC56-$BCDE. Normal DOS3.3
|
|
does not use $BCDF-$BCFF.
|
|
|
|
|
|
The old RWTS buffer is used whenever DOS communicates with a 5.25" disk.
|
|
The new RWTS BUFFER is used only when 3.5"DOS3.3 communicates with a 3.5"
|
|
disk.
|
|
|
|
OLD RWTS NEW RWTS
|
|
BUFFER BUFFER
|
|
|
|
NORMAL DOS3.3 $BB00-$BC55 none exists
|
|
|
|
3.5"DOS3.3 NO PATCH $BB00-$BC55 $BB00-$BCFF
|
|
|
|
3.5"DOS3.3 WITH PATCH $BB00-$BC55 $9AA6-$9CA5
|
|
|
|
|
|
|
|
REASON NEED THE PATCH VERSION
|
|
=============================
|
|
Normal DOS3.3 doesn't use the area $BCDF-$BCFF. This space therefore is a
|
|
popular place to put patches. Many programs that modify DOS3.3 use it,
|
|
including PRONTODOS.
|
|
The patch version allows you to use programs such as PRONTODOS with
|
|
3.5"DOS3.3. The patch version doesn't use $BC56-$BCFF.
|
|
The patch itself changes less then a dozen bytes, but causes the new RWTS
|
|
buffer to use $9AA6-$9CA5 (normally used as DOS3.3 buffer #1) instead of
|
|
$BB00-$BCFF.
|
|
Room is made for $9AA6-$9CA5 by tricking DOS into thinking buffer #1 begins
|
|
where buffers #2 usually is. In other words, MAXFILE 2 sets HIMEM at the
|
|
same place (when used with patch version) that MAXFILE 3 use to be. Also,
|
|
the default (or startup value) of MAXFILE is changed from 3 to 2. (See
|
|
Nibble Magazine April 1986 pages 100-101 for more information).
|
|
|
|
|
|
|
|
PRONTODOS and 3.5"DOS3.3
|
|
========================
|
|
PRONTODOS is a program that modifies DOS3.3 to speed it up. Dos commands
|
|
like LOAD, SAVE, BLOAD, and BSAVE are all sped up, usually 2 to 4 times faster
|
|
then plain DOS3.3.
|
|
PRONTODOS contains other enhancement to DOS3.3 such as print disk free space
|
|
during catalog, or "TYPE" command which lists text files.
|
|
Plain PRONTODOS seems to work with the "no patch" version of 3.5"DOS3.3.
|
|
In order to use as many PRONTODOS enhancements as possible, use the patch
|
|
version of 3.5"DOS3.3. Even so, not all the enhancements will work. The
|
|
"TYPE" command doesn't work with it, but print disk free space does.
|
|
The best way to tell is to try it out.
|
|
|
|
|
|
INITIALIZING NEW 3.5" DISKS TO RUN PRONTODOS MODIFIED 3.5"DOS3.3
|
|
----------------------------------------------------------------
|
|
Start by booting up a 5.25" disk that has PRONTODOS with the enhancements
|
|
you want on it.
|
|
|
|
WARNING! Not all enhancements are compatible with 3.5"DOS3.3.
|
|
|
|
Then follow the same steps as explained in the getting started section except
|
|
for the following:
|
|
|
|
Start at step 2
|
|
At step 3, chose choice #2 which is: 2. WITH PATCH
|
|
|
|
When you're done, the newly initialized 3.5" disk will incorporate
|
|
PRONTODOS's modification into 3.5"DOS3.3. Now, whenever you boot up with
|
|
this 3.5" disk, the modified 3.5"DOS3.3 that's loaded into memory has
|
|
PRONTODOS in it. You can use this disk to initialize new PRONTODOS modified
|
|
3.5"DOS3.3 disks. You'll be impressed by the speedup of most disk commands.
|
|
|
|
|
|
|
|
GETTING DOS VERSION 3.5"DOS3.3 INTO COMPUTER
|
|
============================================
|
|
You boot up a 3.5" disk the same way as a 5.25" disk.
|
|
Any 3.5" disk that has been initialized (using program DOS3.5) will have
|
|
3.5"DOS3.3 on it. This means that whenever it is booted up, 3.5"DOS3.3 is
|
|
loaded into memory, and is used as the disk operating sytem (DOS). This
|
|
is the best way to load it into Apple's memory.
|
|
A more roundabout way would be to use the program DOS3.5 to change DOS3.3
|
|
to 3.5"DOS3.3, then to exit from this program. This roundabout way is only
|
|
needed if normal DOS3.3 is in the computer, and you don't want to boot
|
|
a 3.5" disk.
|
|
|
|
If 3.5"DOS3.3 is in the Apple, when you run program DOS3.5, the menu
|
|
section titled:
|
|
MODIFY DOS3.3 TO RUN 3.5" DISKS
|
|
========================================
|
|
is skipped over, because this section is not needed. Also, you cannot
|
|
change from 3.5"DOS3.3 "with no patch" to a "with patch" version,
|
|
or vice versa.
|
|
|
|
|
|
|
|
MORE ON INITIALIZING
|
|
====================
|
|
Initializing a 3.5" disk using the program DOS3.5 places the DOS currently in
|
|
the Apple onto the 3.5" disk. Therefore, if you have PRONTODOS modified
|
|
DOS3.3 in the computer when you initialize a new 3.5" disk, the new disk
|
|
will contain PRONTODOS modified 3.5"DOS3.3.
|
|
|
|
REMEMBER:
|
|
1. INIT command won't work if 3.5"DOS3.3 is in Apple.
|
|
|
|
2. The only way to initialize a 3.5" disk is to use the program DOS3.5.
|
|
|
|
3. When 3.5"DOS3.3 is in Apple, you cann't initialize 5.25" disks.
|
|
|
|
|
|
|
|
DETERMINING WHICH 3.5" DISK DRIVE IS USED
|
|
=========================================
|
|
When a 3.5" disk that has 3.5"DOS3.3 is booted up, the 3.5" disk drive that
|
|
does the booting is the one and only 3.5" disk drive that will be used by
|
|
3.5"DOS3.3 .
|
|
|
|
3.5" disks with 3.5"DOS3.3 are NOT slot dependent!
|
|
For example assume:
|
|
Ann's Apple computer's 3.5" disk drive is in slot 7, and Bill's Apple
|
|
computer's 3.5" disk drive is in slot 4.
|
|
Ann's 3.5" disks (with 3.5"DOS3.3) created on her computer will run on
|
|
Bill's computer and vice versa.
|
|
|
|
The only time you ever have to identify which slot the 3.5" disk drive is
|
|
in is when you boot up from a 5.25" disk and run the program DOS3.5 to
|
|
install 3.5"DOS3.3 . (Reason: you are booting up with normal DOS3.3 and
|
|
only 3.5" disks can boot up with 3.5"DOS3.3 )
|
|
|
|
|
|
|
|
CHANGE NAME "DOS3.5" WHEN COPYING PROGRAM
|
|
=========================================
|
|
When you use the program DOS3.5 to make a copy of itself, the copy is
|
|
automatically named "DOS3.5". To change the name that all further copies
|
|
will be automatically named, you must alter the program DOS3.5.
|
|
The new name must be a valid DOS3.3 name from 1 to 12 characters long.
|
|
|
|
CURRENT VALUES (name assigned to copy is "DOS3.5" )
|
|
$16C3= C4 CF D3 B3 AE B5 (ASCII values)
|
|
D O S 3 . 5
|
|
$16C9= A0 A0 A0 A0 A0 A0 ($A0= blank space)
|
|
$A0= blank space
|
|
|
|
|
|
TO CHANGE NAME:
|
|
Put ASCII values of characters of new name starting at $16C3. Make sure the
|
|
first character is a letter. Use ASCII values with bit 7=1 (all ASCII
|
|
values must be greater than 127). If new name is less than 12 characters
|
|
long, fill remaining bytes through $16CE with $A0 ($A0= blank space).
|
|
|
|
EXAMPLE: Change name to "INIT.N.COPY"
|
|
CALL -151 (enter monitor)
|
|
*16C3: C9 CE C9 D4 AE CE (INIT.N)
|
|
*: AE C3 CF D0 D9 A0 (.COPY )
|
|
*3D0G (leave monitor)
|
|
|
|
Now save altered DOS3.5 to disk (suggest use a new name). Better yet, run
|
|
altered DOS3.5 and use the program to copy the altered DOS3.5 onto a
|
|
3.5" disk. This copied program will of course be named "INIT.N.COPY".
|
|
|
|
|
|
|
|
CHANGE NAME OF "HELLO"
|
|
======================
|
|
The name of the 3.5" disk's startup program is "HELLO". On an already
|
|
initialized 3.5" disk you can always save a new startup program under the
|
|
name "HELLO".
|
|
If you want to use a different startup name, then you must alter the
|
|
program DOS3.5. Once altered, whenever a 3.5" disk is initialized using
|
|
this altered DOS3.5 program, the new 3.5" disk's startup program will have
|
|
this new name.
|
|
The new startup name must be a valid DOS3.3 name from 1 to 30 characters
|
|
long.
|
|
|
|
CURRENT VALUES (startup name is "HELLO" )
|
|
$10F1= 05 (number of characters in name)
|
|
$1D5E= C8 C5 CC CC CF (ASCII values)
|
|
H E L L O
|
|
$1D6E TO $1D7B= $A0 ($A0= blank space)
|
|
|
|
|
|
TO CHANGE NAME:
|
|
1. Put $A0 at $15AC-$15C9
|
|
Put $A0 at $1D5E-$1D7B
|
|
|
|
2. Put number of characters in new name at $10F1. Must be from 1 to 30
|
|
|
|
3. Put ASCII values of characters of new name starting at $1D5E, making
|
|
sure the first character is a letter. Use ASCII values with bit 7=1
|
|
(all ASCII values must be greater than 127).
|
|
|
|
EXAMPLE: Change startup name to "HI2"
|
|
CALL -151 (enter monitor)
|
|
*15AC: A0 ($A0= blank space)
|
|
*15AD<15AC.15C8M (put $A0 at $15AC-$15C9)
|
|
*1D5E<15AC.15C9M (put $A0 at $1D5E-$1D7B)
|
|
*10F1: 3 (3 characters long)
|
|
*1D5E: C8 C9 B2 (HI2)
|
|
*3D0G (leave monitor)
|
|
|
|
Now save altered DOS3.5 to disk. Better yet, run altered DOS3.5 and
|
|
initialize a new 3.5" disk. Then use this program to copy DOS3.5 onto
|
|
this new disk (the altered DOS3.5 will be copied). Be sure to write on
|
|
disk label that you are using a different startup program name.
|