Commit Graph

61 Commits

Author SHA1 Message Date
Robert Greene
4134c0ab59 This exception is thrown if the Disk is full. This could be physical space
or some other reason, such as having no more file entries.
2002-12-23 21:03:49 +00:00
Robert Greene
d92bd82288 Simplified setString(buffer, offset, string, length) to use
setString(buffer, offset, string, length, highBitOn = true).
2002-12-23 21:03:11 +00:00
Robert Greene
09470976b6 Added the real Disk Image Wizard code. 2002-12-17 05:29:05 +00:00
Robert Greene
aab2dbfa80 Added the Disk Image Wizard logo. 2002-12-17 05:28:35 +00:00
Robert Greene
9d72613286 The new Disk Image Wizard and it's individual wizard panes. 2002-12-17 05:28:19 +00:00
Robert Greene
698e991399 The DiskImageWizard logo. 2002-12-17 05:27:50 +00:00
Robert Greene
0f83d543a1 Changed disk creation to use a create method, as this is better
suited to disks that support mutiple logical disks. Also over-rode
format to give suitable values.
2002-12-17 05:27:34 +00:00
Robert Greene
49938c5325 Changed disk creation to use a create method, as this is better
suited to disks that support mutiple logical disks. As part of this change,
the setDiskName method was added to set the ProDOS VOLUME name.
2002-12-17 05:26:54 +00:00
Robert Greene
10d7b000d1 Changed disk creation to use a create method, as this is better
suited to disks that support mutiple logical disks.
2002-12-17 05:26:24 +00:00
Robert Greene
9170e98435 Another format that puts DOS onto an 800K device. 2002-12-17 05:25:45 +00:00
Robert Greene
de3f39b24a Changed creation to use a create method instead of a constructor -
this is better suited to disks with multiple logical disks. Segmented
common format code which is used by UniDOS and OzDOS.
2002-12-17 05:25:20 +00:00
Robert Greene
1479d0fee8 Added support for OzDOS and added a minor hack to getOffset to
allow track 0 sector 0 to always be referenced (even if the disk appears
to be too big).
2002-12-17 05:24:19 +00:00
Robert Greene
fb97d2c68e The source file for the Disk Image Wizard. 2002-12-17 05:23:09 +00:00
Robert Greene
bade905252 Organized import statements (Eclipse terminology to "cleaned up the
import statements and organized them in a standard manner").
2002-12-16 02:23:43 +00:00
Robert Greene
726a10810f Separated the generic wizard interface from export wizard. This will
be reused in all wizards (ie, the Disk Image wizard as well as the Import
wizard).
2002-12-16 02:22:36 +00:00
Robert Greene
b05fcd2bea Updated to keep up with DiskInfoTab and DiskExplorerTab which are
both capable of displaying multiple logical disks within one window.
2002-12-16 02:20:32 +00:00
Robert Greene
a134970116 Updated to handle multiple logical disks within one info page. 2002-12-16 02:19:30 +00:00
Robert Greene
cf84559b70 Updated to handle multiple logical disks within one explorer window. 2002-12-16 02:19:01 +00:00
Robert Greene
e35d41f336 Added getFormattedDisk. 2002-12-15 21:00:35 +00:00
Robert Greene
6c79c05f14 Unused. 2002-12-15 20:59:05 +00:00
Robert Greene
ecd6a262b2 Support for multiple logical disks added. Also contains testing code for
creating a disk image. The Disk Image Wizard needs to be created yet.
2002-12-14 05:50:30 +00:00
Robert Greene
75350b2617 Added initial support for multiple logical disks. This implementation just
creates one tab per logical disk. Thus, a UniDOS disk gets 6 tabs - two
of each tab (Information, Disk Map, Explorer).
2002-12-14 05:49:04 +00:00
Robert Greene
18e9cd0450 Updated for multiple logical disks and added test cases for UniDOS
formatted disks.
2002-12-14 05:46:03 +00:00
Robert Greene
6a59567b16 Added UniDosFormatDisk - which is essentially a DOS disk except that
the physical disk supports two logical disks. Added a logical disk number
which returns 0 when there are no logical disks or the specific logical
disk number if they exist. Currently, only UniDosFormatDisk does this.
In the future, Pascal disk may support this and possibly ProDOS disks
that have sections set aside (ie, a Pascal partition) - if they exist in the
real world.
2002-12-14 05:45:08 +00:00
Robert Greene
8460989781 Modified to work with multiple volumes; added support for UniDOS
800K disk images; split out isUniDosDisk from isDosDisk; changed
sizing of image in memory just use the File as that is better than the
dumb logic that was originally in place.
2002-12-14 05:39:41 +00:00
Robert Greene
2ae3f2118c Added a little bit of range checking. 2002-12-14 05:38:21 +00:00
Robert Greene
44bb363c06 If a PR#6 was used to reboot the computer, the output was still
mapped to slot 6. Using COUT ($FDED) would then redirect to slot
6 at $C600 and reboot the machine. Changed to use ROM directly
at $FDF0.
2002-12-13 04:12:47 +00:00
Robert Greene
558ae20c80 Added recognition for UniDOS 800K volumes (basically fixed 35 track
and 16 sector bias in code).
2002-12-12 04:36:16 +00:00
Robert Greene
4b037eb100 Added ability to set values; work is done from readFileEntry and
writeFileEntry.
2002-12-12 01:55:36 +00:00
Robert Greene
6f3ef71add Changed to work from readFileEntry. 2002-12-12 01:55:13 +00:00
Robert Greene
62c7b5bc70 Added ability to create and format a disk. Routines were centralized
a bit and the various file entries now read and write directly to the 
disk image.
2002-12-12 01:54:01 +00:00
Robert Greene
ab445b87d8 Changed to work from the ProdosFormatDisk by reading the entry or
blocks as appropriate.
2002-12-12 01:49:16 +00:00
Robert Greene
22cfc9f681 Added ability to set values; work is done from readFileEntry and
writeFileEntry. This changed the relationship to the ProDOS disk
image - now the ProDOS entries contain the disk, block, and
location that they exist at instead of a raw array of bytes.
2002-12-12 01:47:25 +00:00
Robert Greene
edb1bed60f Added ability to set values; work is done from readFileEntry and
writeFileEntry.
2002-12-12 01:46:14 +00:00
Robert Greene
45c415b9e6 Added constants for 5MB, 10MB, 20MB, and 32MB harddisks. 2002-12-12 01:45:04 +00:00
Robert Greene
aed0a97b40 Added setProdosDate, setProdosTime, and a setString that optionally
sets the high bit on characters.
2002-12-12 01:44:22 +00:00
Robert Greene
035d2cf73a Export now runs the suggested filename through a filter to get rid
of characters that are not allowed in various operating systems
(such as "/", "\", or ":").
2002-12-10 05:14:31 +00:00
Robert Greene
6b35db3528 Quick update - the RDOS block number that the &CAT command reads
is #25.
2002-12-10 05:13:40 +00:00
Robert Greene
6306a26deb Added ability to create Pascal disk, format it, set the disk name (aka
volume name in Pascal parlance), and added a routine to read and
write the directory.
2002-12-10 05:13:07 +00:00
Robert Greene
b1a4c9d31d Added write block and lessened the DOS 3.3 recognition. For some
reason, some DOS 3.3 images do not set the VTOC byte 0x03 to be
3 - this is the DOS release number which created the disk. The images
I have just have a zero (0) in this position.
2002-12-10 05:11:53 +00:00
Robert Greene
24ebe07191 Added setPascalDate, setPascalString, getNiceFilename. 2002-12-10 05:10:35 +00:00
Robert Greene
cb53bedbc7 A document found on the internet describing the basics of the
Apple Pascal disk format.
2002-12-10 05:09:22 +00:00
Robert Greene
0f95ceb8fb Can format an RDOS disk; however it is not really useable until some
more information gets written to disk as part of the format process.
In particular, the &CAT command will crash as the catalog routine is
apparantly loaded in from disk (T1,S9 in DOS parlance) and then 
executed.
2002-12-09 05:46:41 +00:00
Robert Greene
e10e00eb41 Added generic ability the write boot code to track 0, sector 0. 2002-12-09 05:45:22 +00:00
Robert Greene
010ee8e488 Can now create a blank disk and format it. 2002-12-09 05:45:02 +00:00
Robert Greene
669007afdc Added ability to save and write. Added hasChanged, writeBytes,
writeSector along with other helper methods.
2002-12-09 05:44:12 +00:00
Robert Greene
e16fce45c4 Added setBit, clearBit, setString, setWordValue. 2002-12-09 05:43:13 +00:00
Robert Greene
b180c501b9 The disk image may now be saved if changes have occurred. 2002-12-09 05:42:39 +00:00
Robert Greene
73f8e7974d Fixed some minor issues: (1) needed to turn off drive motor and
(2) needed to clear the keyboard (otherwise the keypress was still
valid when the next disk was booted). Also needed to reduce program
by a few more bytes. By changing the rotate routine and changing
the wording in the message, this code is now only 254 bytes.
2002-12-09 04:34:48 +00:00
Robert Greene
44da9f8133 Fixed some minor issues: (1) needed to turn off drive motor and
(2) needed to clear the keyboard (otherwise the keypress was still
valid when the next disk was booted). Also needed to reduce program
by a few more bytes. By changing the rotate routine and changing
the wording in the message, this code is now only 254 bytes. Also added
more comments.
2002-12-09 04:34:20 +00:00