home *** CD-ROM | disk | FTP | other *** search
- | Copyright Jan Ganzevles, Dec. 1990 - Oct. 1996
-
-
- | !DiskBase version 0.75
- ======================
-
- (lines marked with '|' are updated since the previous release)
-
- Why !DiskBase ?
- ---------------
-
- The programs you use a lot, are often easy to find. But how about the rest,
- especially if they are stored on floppies? A diskette label is too small to
- print a complete directory on and having separate printouts it can still be
- time consuming to find just the one file you're looking for.
-
- But now there is ............ !DiskBase
-
-
- What !DiskBase does.
- --------------------
-
- It gives you the possibility to:
-
- - ADD directory info of disks (floppies and harddisks) to the datafile.
- !DiskBase makes a distinction between applications, directories and
- files. For each type of entry some relevant information is stored.
-
- - DELETE a diskname (and of course the entries of that disk).
-
- - SHOW disk names and optional their contents.
- - If 'Show contents' is deselected, only disknames, date, free-space and
- number of files/directories/applications are given.
- - If 'Show contents' is selected, you have five suboptions to specify
- the level of contents you want to see.
- - If none of the five suboptions is selected, only files/dirs/apps
- in the root-directory of the disk are shown.
- - Otherwise you will be shown the contents of one or more of the
- following items:
- - Directories
- - Applications
- - Archives
- - PackdDir
- - DOSdisc partitions
- It's possible to give a (wildcarded) diskname to do the SHOW on
- (e.g. "*PROG*" will SHOW all disks with 'PROG' in the name) and it's also
- possible to exclude (wildcarded) disknames by using a ~ as the first
- character of the name (e.g. "~*BU" will SHOW all disks, except the ones
- ending in 'BU').
- Allowable wildcard characters are '*' matching any 0 or more characters
- and '#' matching exactly any 1 character. Any combination of wildcard
- and normal characters is allowed.
-
- - SEARCH for (wildcarded) entry names. You can limit the SEARCH for one or
- more particular types of entry (files/directories/applications). If type
- "Files" is selected, an extra limitation can be made for a filetype. The
- filetype may be entered in its textual form ("Basic") or in its hex
- numerical form ("&FFB"). Since version 0.56 there is also the possibility
- to limit the SEARCH to include or exclude disks using a (wildcarded)
- diskname and optionally the exclude character (see also SHOW)
-
- - DUPLICATES. This option now has several sub-options.
- You can search files and/or applications having no duplicates, or
- one or more duplicates, or two or more duplicates.
- So you can find files/applications on your disks having no backup, or for
- instance a scan of only your harddisk to report all files/applications
- with two or more copies on that disk (one or more duplicates), or scan
- all disk directories to see if there are files/applications with more
- than one backup (so more than two copies somewhere).
- Duplicates are files and/or applications (not directories!) with the same
- name and optionally the same size and timestamp.
- Same rules for wildcards and include/exclude disks as with SHOW are
- applicable.
-
- - RESULTS If the RESULTS window is open, you can save the RESULTS as a file
- on disk, or drag it to an application (e.g. printerdriver, !Edit, !DTP).
- Since version 0.56 you have the option to double click a line of the
- RESULTS window. The effects are:
- - If it's a directory name:
- You can open the directory viewer
- - If it's an application name:
- The application can be started, or if SHIFT is pressed, the
- application's directory viewer is opened.
- - If it's a file:
- The file is run or started. Be aware that as a side-effect this can
- result in an application being started. E.g. if you double click a
- line showing a file of type Sprite the application !Paint is started
- and the file loaded, if the application has been seen before,
- otherwise the sprite is shown on your screen.
- (For safety, your confirmation is asked, before an action is taken.
- If the disk has not been inserted ADFS will ask you to do so.)
- - If it's an archive file, or a file inside an archive file:
- The archive file is run, in order to start an application like
- !ArcFS or !SparkFS to open the archive file for you. Because !ArcFS,
- !Spark and !SparkFS share the same filetype for archive files (&DDC)
- the application seen last by RISCOS will be started, even if it's an
- !ArcFS archive, which can't be read by !Spark.
- Unless the new ArcFSArc (&3FB) filetype is used, in which case of
- course !ArcFS is started, if seen before by RISCOS.
- | - If the RESULTS window shows results of a DUPLICATES, clicking on the
- | filename doesn't start any action, but clicking on the pathname will
- | start the appropriate action for the file located in this directory.
- - If it's a diskname, a window will open showing a printpage. If a
- printerdriver is loaded, the selected papersize is used, otherwise a
- size just sufficient for the number of labels specified is assumed.
- The label of the selected diskname is added to the page, and when
- Menu is pressed over one of the labels, a menu is shown with the
- following options:
- SHOW LABEL - Gives a preview of the label the pointer was over
- when Menu was pressed.
- Clicking Select on the open preview will increase
- the shown depth level of the entrynames, Adjust
- will decrease it.
- DELETE LABEL - Deletes the label at the position the pointer was
- over when Menu was pressed. The other labels are
- re-arranged. If pressed with Adjust the next label
- at the same position can be deleted.
- INVERT LABEL - This option will change the layout of the printed
- labels (see the preview).
- LABEL SIZE - A dialogue window will be shown, where labelsizes
- and number of labels can be specified. All sizes
- are in millimetres.
- From version 0.72 onwards, there is an option to
- configure the depth of the entrynames printed on
- the labels. If Menu is pressed on top of a label
- you can specify if you want to set the depth of
- just that label, or of all labels. Otherwise if
- Menu is pressed on the empty background only all
- labels at once can de set.
- If the depth is set to '1' only entries in the
- root-directory are shown (as in pre-0.72 versions)
- '2' will also show the entries inside directories
- and applications shown in the root and so on.
- The maximum number selectable is the maximum depth
- in the loaded datafile. The value selected for all
- labels will be stored in the datafile when saved.
- OWNER'S NAME - Here you can specify the name of the owner that
- will be printed on the label.
- FONT - This leads to a submenu where you can select the
- font used for printing. Changing the Font$Path
- will directly affect the selectable fonts, without
- need for a restart of !DiskBase.
- PRINT - will start printing of all the labels queued.
-
- Information about font, owner's name, label sizes and invert label
- will be saved in the database. If an older database (pre 0.57) is
- used, the extra info will be added and the version number of the
- datafile updated. If for any reason you want to use an older version
- of !DiskBase afterwards, this information will be lost, but the file
- will still be compatible with the older program version.
-
- - SAVE the datafile (which is completely kept in memory) to a disk.
-
- - STATUS toggles on/off display of a status window. This window displays
- the number of disks, files, directories and applications stored, and the
- time/date of the last update of the !DiskBase datafile.
-
- - LABELS this will display the window with the labels queued for printing.
-
-
- What you should know.
- ---------------------
-
- - Since version 0.52 nearly all actions are multitasking.
- This increases the time an individual action needs, but it prevents your
- processor being used for only a single task.. During the action a window
- is shown displaying the activity type, options and a progress status.
- Also a STOP button is provided, but be aware that this cancels the
- ongoing action, even if it is an ADD. In this case the part of the disk
- already added to the datafile is removed, so an incomplete addition is
- impossible.
- Although DELETE is multitasking as well, an activity window is NOT shown,
- merely because it's not preferable to do a partial delete, so a STOP
- button is not needed.
-
- - In places where wildcards are allowed, the following rules apply:
- - The (only) wildcard character is "*".
- - You may start and/or end a name with a wildcard. No wildcards are
- allowed in the middle of a name.
- - All names are case insensitive.
-
- e.g. "TEST*" : finds all names starting with "Test"
- "*TEST" : finds all names ending with "Test"
- "*TEST*" : finds all names with "Test" somewhere in it.
- "TE*ST" : not allowed!
-
- - !DiskBase automatically restricts its memory usage to a minimum. This is
- done by using a heapmanager as described in the Dec/90 issue of
- "RISC User". If more room is needed while adding disks, !DiskBase tries
- to expand the block of memory it uses by asking the window manager for an
- extra 4K if it runs out of space for storing disknames, or 8K for entries
- (where entries are files/directories/applications). While doing a SHOW,
- SEARCH or DUPLICATES an extra block of memory is needed to set up a table
- of pointers. This extra block is returned to the wimp as soon as the
- window displaying the results is closed. This window is also closed when
- the datafile is being updated because the displayed results may not be
- valid anymore.
-
- - ADD of a disk is done by selecting the number of the drive the disk is
- in. This will take some seconds (depending on the number of directories).
- Optional a warning will be given if a diskname already exists, or a scan
- of the contents of an archive file fails.
- From version 0.69 upwards the contents of DOS- and Atari-formatted
- floppies and DOSDisc partitions can be added to the datafile.
- One drawback is that the datafile has only a field of ten characters for
- entrynames, and DOS- and Atari-filenames can have a length up to twelve
- characters. So these names will be truncated in the datafile, conform
- copying these files to Acorn formatted disks.
- Of course a prerequisite for this is that you are using RISCOS 3.
- On the 'Add disk' window an option is provided to decide if you want to
- include DOSDisc partitions.
- The setting of this option doesn't affect the ability to include DOS-
- or Atari-formatted diskettes.
-
- - DELETE a disk asks for a diskname to delete (no wildcards allowed).
-
- - Displaying results of a SHOW or SEARCH:
-
- - Info for disknames:
- - Time/date of the last addition of this disk in the datafile.
- - Floppy or harddisk (Winnie).
- - Total of free space on the disk. If two values are shown, the
- second is the size of the largest file you can save (without
- compaction, only for "L" and "D" formatted disks).
- - Number of files/directories/applications on the disk.
-
- - Info for entries:
- "File":
- - If timestamped: filetype and creation/update date/time.
- else: load and execution addresses.
- - size of the file (in bytes if less than 10.000 else in Kbytes).
- "Directory":
- - Creation date of the directory.
- - Size of all its entries (in (K)bytes, as with "Count").
- "Application":
- - Time/date of the file "!RunImage" if it has a file with this
- name in it, otherwise the creation date of the application
- directory (ADFS uses the same rule).
- - Size of all the entries it contains (again in (K)bytes).
-
- - Displays are in the following format:
-
- Diskname Time/date Disktype Free: .../... K (red)
- $ Dirs: ... Appl: .... File: .... (green)
- . File1 Filetype Time/date Size: .... K (black)
- . File2 Load: &.... Exec: &.... Size: .... (black)
- . Directory Time/date Size: .... (green)
- . . File3 Filetype Time/date Size: .... (black)
- . . Archive S Filetype Time/date Size: .. K (light blue)
- . . . App2 Time/date Size: .... (dark blue)
- . . . . File7 Filetype Size: .... (black)
- . . . . File8 Filetype Size: .... (black)
- . . File4 Filetype Time/date Size: .... K (black)
- . . Application Time/date Size: .... (dark blue)
- . . . File5 C Filetype Time/date Size: .... K (black)
- . App3 Time/date Size: .... (dark blue)
- . . Data Time/date Size: .... (green)
- . . . File10 D Filetype Size: .... (black)
- . File6 Filetype Time/date Size: .... K (black)
- . File9 P Filetype Time/date Size: .... K (light blue)
- . File11 Q Filetype Time/date Size: .... K (black)
-
- where the pathname for:
- File1/File2/Directory/File6 is: ":Diskname.$"
- File3/File4/Application is: ":Diskname.$.Directory"
- File5 is: ":Diskname.$.Directory.Application"
- Archive is: ":Diskname.$.Directory"
-
- App2/File7/File8: entries inside archive file.
- sizes shown are uncompressed sizes!!
-
- Disktype: Floppy/ADFS/SCSI/IDE/CD-Rom
-
- A: ArcFS archive
- C: CFSlzw
- D: SparkFS-datafile (created by using SparkDir option)
- O: DOSDisc
- P: PackDir
- Q: Squash
- S: Spark archive
- Z: ZIP archive
-
- - When displaying results of a SEARCH, all relevant info to find the
- matching entry is shown (parent directory/application and disk names).
-
- - Displaying results of a DUPLICATES:
- From 0.74 onwards, the full pathname in which the reported file resides
- is shown, and not only the name of the disk which holds this file.
- So what you'll see is:
- - Entryname. (and if 'Compare timestamp/size' selected, also entry info)
- - If the option 'No dups' is selected you'll see the full pathname of
- the reported file, else a list of pathnames, one for each duplicated
- entry.
-
- Note: - For DUPLICATES entries are sorted as follows:
- 1. Names in alphabetical order
- 2. If names are equal then on increasing entrysize.
- 3. If names and sizes are equal, then oldest entry first.
- So if 'Compare timestamp/size' is not selected, this is the
- order of the shown DUPLICATES.
-
- Tips
- -----
- - 1. About printing disklabels.
-
- !DiskBase stores labelsizes, number of labels per row and column, and
- gaps between the labels. You can change the dimensions of the printed
- disklabel and its position on paper.
-
- As an example how to use this I'll explain the way I do it:
-
- My (DeskJet) printer driver is setup as follows:
- paper height: 297.0 mm width: 210.0 mm
- margin top: 2.2 mm bottom: 10.3 mm
- left: 3.3 mm right: 3.9 mm
-
- !DiskBase is setup this way:
- label width: 66.9 mm height: 69.8 mm
- labels horizontal 3 vertical: 4
- gap horizontal 1.0 mm vertical: 1.0 mm
-
- This way I can print 12 labels onto one A4-size sheet.
- (I couldn't find labels of approx. 70x70 mm, instead I use A4 size
- labels, and cut them after printing).
- !DiskBase prints labels one at the time, but it would be nicer to be able
- to queue the labels until one sheet of paper is filled (in the example
- mentioned above 12 labels) and then print them all together.
- I'm thinking of implementing this, but I'm not quite sure how to do it.
-
- - 2. About CFS files
-
- When you double-clicked on a CFS file of a pre-0.67 version !DiskBase
- gave a warning that it couldn't start/run a file compressed by CFS. This
- warning is no longer needed. It is possible to start/run a CFS file, by
- altering the 'Alias$@RunType_D96'. The best places to do this is in the
- !Boot and !Run files of !CFS itself.
- If you change the line: Set Alias$@RunType_D96 "Set Dummy$Variable "
- to: Set Alias$@RunType_D96 Filer_Run CFS#%0
- you will always be able to run/start a CFS-file by double-clicking (from
- the RESULTS window as well as from an ADFS filer-window, without having
- to open the CFS filer window).
-
- - 3. About changing the !RunImage file
-
- After loading the !RunImage file a CRC-check is done on the !RunImage
- file. If this check fails, !DiskBase will NOT run anymore!!!
- This I have added because it I get bugreports about !DiskBase versions in
- which !RunImage files aren't the original ones anymore (so someone has
- changed the file, even though it is a crunched one, so very hard to read)
- and I don't want to spend any more hours locating bugs that didn't exist
- in the original version.
- So to all of you that want to try to change it, first make a backup of
- !DiskBase.
-
- # Even loading the !Runimage file in a Basic Editor and
- # saving it again, without changing anything can corrupt
- # a Basic file when it is crunched.
- # Also renumbering the file will result in a CRC-error.
-
- This will probably not stop a very determined person to try to mess
- around in the program, but it will keep the average user from trying to.
-
-
- =============================================================================
-
- - I've tried to make the program as error free and foolproof as possible
- but I'm nearly sure that it is NOT error free (which program is?).
- Please let me know what errors you've got and, if possible, if it's a
- program bug or an operator error that I should have checked for.
- I've included a textfile called BugReport, which I hope everyone will use
- to report bugs with (or send New Feature Suggestions on).
- If you answer all the questions in it as good as possible, I probably can
- trace errors more quickly.
-
-
- You can reach me: Jan Ganzevles
- at: van Deyssellaan 22
- 1422 KB Uithoorn
- Netherlands
- (+31) 297 569065 (speech).
- or via: Acorn BBS (modem up to 14400 bps)
- (+31) 20 6631849
- or Email to: JanGanzevles@unn.unisys.com
-
- - Also any suggestions to improve this program are welcome.
-
-
- Copyright
- ---------
-
- - Any statement in this application is as I wrote it. Any similarity or
- likeness of the statements used in this application with statements
- of any other program or otherwise is purely coincidental and not
- intentional.
-
- - Much care has been taken to create this application. However, no
- responsibility, financial or otherwise, is accepted for any consequences
- arising out of the use of this application. If for any reason the layout
- of the datafile is to be changed in future releases, I shall try to
- supply a convert program, if possible!
-
- - This application is meant to be public domain and may not be used for any
- commercial use what so ever, without my written permission. You may use
- and distribute the application as much as possible, as long as you leave
- this application as it is, without changes and/or removal of one or more
- of its files. If any error is discovered in it, please let me know and
- I shall try fo fix it. This to make sure that compatibility with future
- releases is guaranteed as much as possible.
-
- - Many thanks to "RISC User" and Christopher Wilmot for publishing the Heap
- Manager. The utility HeapCode in this application is a result of that
- publication. (Risc User, Volume 4, Issue 2, December 1990, pg. 55-59)
- | In version 0.75 I changed the heap used earlier to the one described by
- | Alan Wrigley in "RISC User" volume 9 issue 1 (November 1995).
- | This gives the benefits of a sliding heap and also uses Dynamic Areas
- | if run on a Risc PC.
- | (See also the small modification in "Risc User" 1996 May issue, pg.43)
- I also thank Joris RĂ–ling for the !Help application. I'm not sure if it's
- Public Domain but I found it in several programs and it's so useful,
- that I decided to adopt it for this Help instruction.
-
- - This application consists of the following files:
-
- - !DiskBase Application
- - !Boot Obey
- - !DBaseChk Application
- - !Boot Obey
- - !Help Text
- - !Run Obey
- - !RunImage Basic
- - !Sprites Sprite
- - Messages Text
- - Templates Template
- - !Help Application
- - !Boot Obey
- - !Run Obey
- - !RunImage Absolute
- - !Sprites Sprite
- - Readme Text (this document)
- - Templates Template
- - !Run Obey
- - !RunImage Basic
- - !Sprites Sprite
- - BugReport Text
- - CodeFile Data
- - FntMenuDoc Text
- - FontMenu Module
- - History Text
- - Messages Text
- - MsgTrans Module
- - Templates Template uses 3D icons (RISCOS 3 only)
- - Template2D Template uses normal icons (RISCOS 2 and 3)
-
- - Also an application to check the integrity of !DiskBase-datafiles (and to
- convert older datafiles to the new format) is supplied. This !DBaseChk is
- placed inside !DiskBase, to prevent one beeing distributed without the
- other accidently.
-
- | Jan Ganzevles, 14 October 1996.
-
- -----------------------------------------------------------------------------
-
- | Version 0.75 (14 October 1996)
- |
- | - The first problem in !DiskBase I encountered after upgrading from an
- | A340 to a RiscPC, was that if a user has two different filing systems
- | both having equal drive numbers, !Diskbase had no way of adding both
- | disks. (e.g. I couldn't add my SCSI::4 as icon 4 pointed to ADFS::4
- | and although icon 5 in the 'Add Disk' window was also enabled, it did
- | not point to SCSI::4).
- | So I added some icons and logic to let the user select a filing system,
- | after which !DiskBase will check the drives present for that particular
- | filing system.
- | - The static heap I used to use is changed to a sliding heap, which also
- | makes use of Dynamic Areas if the program is run on a Risc PC.
- | For the source and an explanation of this heap written by Alan Wrigley
- | see "Risc User" volume 9, issue 1 (November 1995), and the modification
- | in volume 9 issue 6 (May 1996), pg. 43.
- | - As a result of a change in version 0.74, an explicit DELETE of a disk
- | could cause an infinite loop, but deleting a disk by adding one with the
- | same name didn't suffer from this. This is now fixed.
- | - Clicking on lines of the RESULTS window when results of a DUPLICATES
- | were shown, gave incorrect actions. This has been fixed now.
- | - Several minor changed both cosmetic and functional were implemented as
- | well.
- | - One of the issues to be taken care of in a next release will be the use
- | of the Wimp-font as configured on Risc OS 3.50 and above in the RESULTS
- | window, without loosing the alignment of the column layout. This will
- | probably need quite some change of the redraw code, but that was not
- | feasible at the moment.
- | - One more point is that I've always done my best to stay compatible with
- | Risc OS 2.00, but as I've no way of testing this anymore, I will no
- | longer try to be compatible with this Risc OS version.
- | Even testing all code on Risc OS 3.10 myself will be quite hard to
- | accomplish, but I will do all I can, or try to find some beta-testers
- | for this.
-
-