Short: V1.6, a program identifier database package Author: Greg McGary, Randell Jesup, Olaf Barthel Type: dev/c I got this back in 1987, and have been using it since then. It is freely redistributable (see the original writer's copyright message). My modifications and the 2 routines I added are public domain. It also uses Chuck McManis's cooked IO routines. To compile under amigados, you must use -Dfseek=unixfseek. This is because the program assumes fseek will extend the file, which is not normally true under amigados. It needs an amigados makefile (badly). Don't forget to include amiga.c, amiga_getenv.c, and raw.o. It could use some of the 2.0 routines (like the pattern-matching in place of unix RE's, and GetVar() in amiga_getenv.c). Under 2.0 you can use one executable and hardlink the others (it keys off the name it was run under). It's pretty stable. Unix-pathing has been replaced with amiga- pathing (., .., etc). The amiga-specific changes to the main code are ifdef AMIGA. Randell Jesup Just about four years later I found this tool on the Frozen Fish CD-ROM. Neat! But some feature were missing, such as the regexp support in the lookup utilities and wildcard file name expansion in mkid. I also found one or the other bug that needed fixing. For example, if a lookup tool didn't find the ID database in its current drawer or some parent drawer, it would cause Enforcer hits and change the calling Shell's current directory without ever restoring it. Rebuilding the tools using SAS/C was a good idea, the tools are all pure now and can be made resident. I also threw in some 2.0 additions, notably the editor launch procedure and the wildcard expansion stuff. The scanner now handles .i and .asm files and the lookup tools will output proper AmigaDOS wildcard patterns rather than plain regexp patterns. The distribution preserves Fred's original drawer structure and adds an SAS/C SMakefile. I removed some of the original source files which were now obsolete. The binaries in the "bin" drawer were built for an Amiga running Kickstart 2.04 or higher, using the ieee math libraries. I haven't tested if they still work on Kickstart 1.3 and friends, they probably won't. Olaf Barthel , 29 June 1995 More, small additions: the C scanner now handles C++ style comments ("//") and recognizes files with .cpp/.cxx/.c++/.hpp/.hxx/.h++ extensions. There is no specific C++ support in the scanner, but it never checked for C specific data structures anyway ;) The assembly language scanner now handles comment lines introduced by "*" or ";". Some file name and name suffix comparisons were case sensitive, which does not make that much sense on the Amiga; the comparisons now ignore the file name case. Speaking of case, the lookup tools sport an "-i" option to enable case-insensitive pattern comparisons. I changed the makefile slightly to take advantage of the fact that all tools share the same basic set of support files which are now bound together in a linker library. This reduced the tool size once again. The tools now use utility.library for inline math routines. This means that they will definitely no longer run under Kickstart 1.3 and below. For the record, all changes I made and routines I added are public domain. Olaf Barthel , 23 July 1995 In an attempt to make the raw/cooked I/O routines more robust I rewrote raw.c. mkid now uses ffp math routines as it was using floating point arithmetics only to calculate the final stats it displays after building the database. This made the program a little smaller without loss of robustness. Olaf Barthel , 17 September 1995 The RCS support was disabled, there probably was no working Amiga port of it available when Randell killed the code. I rewrote the relevant routines which appear to be working fine now. The scanners did not always like end of file conditions, some loops could run forever. I inserted code to check for EOF where it was obviously missing. Olaf Barthel , 3 December 1995 ============================= Archive contents ============================= Original Packed Ratio Date Time Name -------- ------- ----- --------- -------- ------------- 3993 1953 51.0% 03-Dec-95 13:31:56 AMIGA_README 19608 12304 37.2% 03-Dec-95 13:32:38 +fid 26772 16571 38.1% 03-Dec-95 13:32:22 +lid 34400 19408 43.5% 03-Dec-95 13:32:32 +mkid 651 392 39.7% 01-Feb-91 13:00:36 +cookedio.txt 4020 1763 56.1% 01-Feb-91 13:00:36 +lid.1 5319 1899 64.2% 29-Jun-95 20:43:54 +lid.man 4644 1977 57.4% 01-Feb-91 13:00:42 +mkid.1 6384 2183 65.8% 29-Jun-95 20:44:04 +mkid.man 4329 1750 59.5% 17-Sep-95 15:44:28 +amiga.c 705 320 54.6% 01-Feb-91 13:04:20 +basename.c 643 348 45.8% 01-Feb-91 13:04:20 +bitcount.c 992 282 71.5% 01-Feb-91 13:04:50 +bitops.c 537 214 60.1% 01-Feb-91 13:04:58 +bitops.h 1614 578 64.1% 01-Feb-91 13:04:54 +bitsvec.c 128 115 10.1% 01-Feb-91 13:04:54 +bool.h 692 366 47.1% 01-Feb-91 13:03:48 +bsearch.c 199 160 19.5% 01-Feb-91 13:04:10 +bzero.c 188 151 19.6% 01-Feb-91 13:02:28 +document.c 1281 425 66.8% 29-Jun-95 20:48:26 +extern.h 2453 1102 55.0% 23-Jul-95 17:07:32 +fid.c 575 367 36.1% 01-Feb-91 13:04:56 +gets0.c 6104 1876 69.2% 12-Jul-95 21:16:48 +getscan.c 418 244 41.6% 01-Feb-91 13:04:42 +getsFF.c 2203 926 57.9% 01-Feb-91 13:04:08 +hash.c 1716 797 53.5% 01-Feb-91 13:04:22 +id.h 1449 680 53.0% 23-Jul-95 17:07:40 +idx.c 1259 614 51.2% 01-Feb-91 13:04:22 +init.c 19356 5825 69.9% 17-Sep-95 15:42:14 +lid.c 3610 1448 59.8% 01-Feb-91 13:04:02 +Makefile.unix 18724 6052 67.6% 17-Sep-95 15:43:32 +mkid.c 60 44 26.6% 01-Feb-91 13:04:40 +numtst.c 4696 1284 72.6% 17-Sep-95 15:53:56 +opensrc.c 21 21 0.0% 01-Feb-91 13:02:28 +patchlevel.h 5829 1944 66.6% 08-Jul-95 21:40:36 +paths.c 225 138 38.6% 01-Feb-91 13:03:46 +radix.h 1631 895 45.1% 17-Sep-95 15:45:34 +raw.c 7408 2159 70.8% 03-Dec-95 13:25:54 +scan-asm.c 8300 2303 72.2% 03-Dec-95 13:26:50 +scan-c.c 1354 565 58.2% 03-Dec-95 13:31:12 +SMakefile 1883 682 63.7% 01-Feb-91 13:04:30 +stoi.c 735 348 52.6% 08-Jul-95 21:40:52 +string.h 648 353 45.5% 01-Feb-91 13:04:08 +test.c 1874 644 65.6% 17-Sep-95 14:31:58 +tty.c 630 358 43.1% 29-Jun-95 20:48:16 +uerror.c 830 479 42.2% 01-Feb-91 13:04:46 +wmatch.c 546 335 38.6% 01-Feb-91 13:02:08 todo 16037 6305 60.6% 01-Feb-91 13:01:14 TUTORIAL -------- ------- ----- --------- -------- 227673 101947 55.2% 03-Dec-95 16:21:40 48 files