home *** CD-ROM | disk | FTP | other *** search
- ________________________________________________________________________________
- Disc Index - a convenient disc manager (1.02 - Rebecca) (c) 1994 Neil A Carson
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
- Introduction
- ~~~~~~~~~~~~
- A week ago, a friend called [Adrian Himpson] showed me an application called
- !DiskLib by Chris Payne, a user who got fed up of losing his files on hundreds
- of different disks. As I am in a similar situation - and so I guess are many
- other people, I gave the program a go. While the idea was an absolutely
- brilliant one - it makes a database of disc contents up automatically - the
- implementation seemed to lack a few important features (version 2.0), namely:-
-
- • To change the limit of discs the program could handle, you had to edit the
- source code
- • It didn't look nice and 3D
- • It wouldn't handle big filenames properly
- • It only worked with ADFS
- • The program compiled it's index using everything in just the root directory
- • Search facilities were limited
- • It did not save in the standard way
-
- With these points in mind, I wrote DiscIndex. Also included in this package is
- a help reader, a make utility, and the [source code] for all three programs.
-
- Using DiscIndex
- ~~~~~ ~~~~~~~~~
- Using the program is easy. Double click the application in the usual way to
- load it onto the icon bar. Pressing menu over the icon reveals all the usual
- options, a dialogue box to save the data, and a help option (this...). If you
- select 'Clear all' all discs in memory will be deleted.
-
- Clicking adjust on the main icon doesn't do anything, but clicking select brings
- up the catalogue window. Pressing menu reveals a different menu.
-
- DiscIndex can input the contents of several discs, store them, and search
- through them. So to start with, you will want to input some discs. First, a
- guided tour:
-
- The 'disc catalogue' window can show the contents of one disc at a time. To
- change the currently shown disc, you can click the arrows to the left and right
- of the 'number' field. Alternatively, on the menu, go to start, go to end will
- go to the first (1) and last records respectively, and typing a number into the
- dialogue box off 'go to disc' (and pressing OK) will go to a disc with a
- specific number, or won't do anything if the disc doesn't exist.
-
- Each disc can have a 32-character description, and so can each file. To enter
- a description for a disc, type it into the writiable icon at the top, and
- press 'Input'. Don't do that yet, though, as you haven't read a disc in.
-
- The program always has one disc on record - this is it, disc 1. Now, click on
- Re-scan this record. Up pops the 'Scan Disc' dialogue box. From this, you can
- specify which drive/directory (e.g. ADFS::0.$) you want as a search root, and
- what items you want included. Clicking on 'Root directory only' makes the
- program stick to the first directory in a tree. Note the program will otherwise
- go through sub-directories. Selecting the 'Dismount' option means that the
- program will try to dismount the disc (*DISMOUNT) when it finishes. This stops
- the computer hanging due to a bug in FileCore when scanning lots of discs.
-
- Scan a floppy (ADFS::0.$) for an example. Notice many of the icons in the
- window have been filled in. In the bottom left square is a list of files on
- the disc, but maybe not the whole lot. Click on the up / down arrows to see more
- than 16. '-=o=-' indicates no file. If you click on a file, the 'selected
- file info' section will be filled in, and the file hilited. While selected,
- you can type in a 32-character description for this file, in the same way as for
- the disc (remember to click on input!).
- All of the 'tools' should be quite obvious. Insert inserts a new, blank record
- before the current one. It will not work with disc 1.
- 'Scan new record' allows a new disc to be scanned without overwriting the
- current one. 'Create record' will create a new, blank disc record. You can guess
- what 'Delete this record' does.
-
- Files can be saved in the usual RISC-OS way, from either the icon or window
- menu. When a file has been saved, clicking 'Quick Save' will save it again
- without the user having to bother going through the usual dialogue box/menu.
- Dragging a DiscIndex file onto the application or double clicking it will
- replace the records in memory. To merge the file contents with those already in
- memory, drag the file in with SHIFT held down.
-
- Choose 'Search' from the window menu. All of the options here are fairly
- obvious. The program searches through every file on every disc to try and find
- the named string. Try searching for something you know exists, and turn on
- all of the options apart from 'case sensitive'. If the argument was found, up
- pops a window with the first sixteen matches, the disc the match was on, the
- file (if applicable) and the context in which the search argument was found.
- Clicking on a disc name will move the catalogue window to the appropriate disc.
-
- Source
- ~~~~~~
- The source code for DiscIndex, HelpMe (the help file viewer) and nmu (a nice
- make utility) are included. If you make changes to any of the files, send
- me the updates, at my [address].
-
- Bugs
- ~~~~
- If you find any bugs, and you can re-create the circumstances under which they
- occur (and I can too!) let me know.
-
- More!
- ~~~~~
- Also among my collection of programs:
- FracScape 2.01 (shareware) - does fractal ground, clouds, trees etc. Script
- language, 24-bit colour (Clear), hypertext help, etc. Costs £5.
-
- Coming soon: LandWorks. Loads of features, takes advantage of RISC-PC.
-
- All programs written on A3000, 20Mb HDD, ARM C vsn. 3.
- I NEED A RISC PC. HELP!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- Does anyone know why calling OS_GBPB (10) with an incorrect filename causes
- a 'FileCore in Use' error?
-
- Problems / Future
- ~~~~~~~~~~~~~~~~~
- This implementation is not perfect, namely:-
- * Load/Save will not work with more than 65536 files on a disc (damn...)
- * Can only handle (roughly) 4 billion discs (what a shame)
- * The Currently Selected Directory changes when a disc is scanned
- * There is no print/save as text option
- * The program slows up with many discs (a change to the Link List code needed)
- * Saved files can get big (how's about some LZW encoding?)
- * Redraw is sssslllloooowww
-
- If you want to implement any of these features, or any others, or if you want
- them implemented, contact me. I will implement stuff if there is sufficient
- demand. No doubt Gordon Taylor will want to get me back for all the complaining
- I was doing about ArtWorks... !
-
- Me
- ~~
- I am: Neil A Carson
- 1 Penn Close
- Abingdon
- Oxford OX14 2NX
- Tel (0235) 528443 (after 6PM please)
-
- Amateur radio to neil@g7kqy.ampr.org (TCPIP)
- or Ben (g7kqy@gb7avm) will forward stuff to me. At last, Ben's a RISC-PC fan!
-
- RISC_OSLib
- ~~~~~~~~~~
- I have had many people moaning at me for using RISC_OSLib rather than DeskLib.
- Note: Typing 'wimp_w' instead of 'window_handle' saves a lot of time, and I
- bet the source code is smaller when using RISC_OSLib.
-
- Adrian Himpson
- ~~~~~~ ~~~~~~~
- He is a keen video editing / genlocking / full motion video / multimedia freak.
- If you have anything you want tested, he will be only too keen to give it a go.
- Address: 12 Edward Street, Abingdon, Oxford.
-
- Hello's and Thankyou's
- ~~~~~~~ ~~~ ~~~~~~~~~~
- Dom Symes for Zap 1.10 (again...)
- Disk Alstein for !TemplEd (doesn't crash like Glazier, or not work like FormEd)
-
- Hi to: Ben Strawson, Jon Turner, Adrian Himpson, Lou, Manar Hussein, Gordon
- Taylor, Rob (the big bloke at Imperial), Ray (a fellow UNIX fan - can we
- have a RISC-PC UNIX?), Becca Cruise, Phil, Alastair Summers, David Pilling,
- Mike Curnow (of !Fractal fame - where are you now, Mike, I can't get through on
- the phone... ?) Jo Moxon, abd anyone else who I don't have time to write down...
- And of course, thanks to Chris Payne for the idea.
-
- Release History
- ~~~~~~~ ~~~~~~~
- 1.00 It worked, sort of.
-
- 1.01 Cured a bug in 1.00 when trying to load a file which contained an empty
- disc. It did try to grab all memory!
- Inserts files properly.
-
- 1.02 Implements a few suggestions from all 3 users, including me! Dismount
- option added, insert record added, clear all memory added. Stopped
- default file merging (kept creating blank disc 0's). Disc numbering now
- starts at 1 (to the user). 'Go to disc' shows the current disc number
- when selected. Now no longer possible to create a blank record when one
- already exists at the end!
- Allows double clicking of stuff when program not loaded.
- Does not try to save when file icon not dragged anywhere. Heap_Free bug
- cured (hopefully!)
-
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-