identify.library

A library that converts cryptical IDs to a human-readable form Version 5.0, 26 February 1997

Richard Körber

Copyright \begin{matrix}c \\ ◯ \end{matrix} 1996-97 by Richard Körber Please read the Copyright chapter!

1 Introduction

The identify.library has a rather long history.

It all began when I got mad about all the System info programs only showing the expansion boards as a number. So I wrote expname.library, which may already be known to you.

Later, expname could also identify the system’s parameters (even if it was wrong sometimes ;) ). I still have new ideas for this library. The only trouble is that the name does not fit any more.

Well, now you have the second generation of the expname.library, called identify.library. It has been completely rewritten and expanded. The conceptional flaws of the expname.library has been removed, and a lot of newbies have been added.

The library has currently these features:

• Converting manufacturer and product id into manufacturer name, product name, and product class.

• Converting the cryptical Amiga Guru codes into readable descriptions.

• Analyzing the system’s configuration (system type, processor, memory, graphics and so on...).

• Converting shared library offsets into function names.

Even if the library appears to be quite ready — it is still far away!

I need your help! Please send manufacturer and product names and IDs, your system’s configuration, suggestions, bug reports and so on; simply all you want to see implemented in the library.

2 Copyright

Please read this part carefully.

COPYRIGHT This software is copyrighted by Richard Körber. That means that you are NOT AL-LOWED to modify the program and documentation in any way. Especially you MUST NOT REMOVE the documentation, include files or this text file. You are NOT allowed to use this software or any part of it for any other purpose than that one mentioned in its documentation, this also includes any fonts, images or samples. You are NOT allowed to decompile, disassemble or reverse-engineer any part of the packet. This means the expansion database in special! You need a written permission from the author if you want to extract parts of the documentations or include files for own documentations or include files. The ONLY exception is this copyright note, which may be used freely.

FREEWARE This packet is FREEWARE. You are allowed to use it without any registration fee. Note that you only have the right to use this software, but no rights on the software itself.

DISTRIBUTION This package is freely distributable. That means you are allowed to redistribute this package as long as you follow these points:

• Any re-distribution has to include all files in this archive, without any modifications. You are NOT allowed to add any files to the archive. Exception: if you use the identify.library only, you do not need to distribute all related files if you write a short note into your program’s documentation.

• This package may be freely distributed via BBSs, InterNet/UseNet, software libraries such as Fred Fish’s and Aminet CD-ROM, and other similar electronic channels.

• Disk magazines and services that charge extra for file transfers may NOT distribute it without written permission by the developer!

• You are allowed to use the expname.library even in a commercial product without any written permission of me. Please note in your program’s documentation that you’re using identify.library by Richard Körber.

DISCLAIMER By using this product, you accept the FULL responsibility for any damage or loss that might occur through its use or the inability to use it. The developer of the software can NOT be held responsible.

CONTENTS OF THE PACKAGE

The Identify package is only complete if these files are present:

Identify/catalogs/deutsch/Identify.catalog
Identify/catalogs/Identify.cd
Identify/identify.doc
Identify/identify.doc.info
Identify/Identify-D.dvi
Identify/Identify-D.dvi.info
Identify/Identify-D.guide
Identify/Identify-D.guide.info
Identify/Identify-E.dvi
Identify/Identify-E.dvi.info
Identify/Identify-E.guide
Identify/Identify-E.guide.info
Identify/include/identify_lib.i
Identify/include/fd/identify_lib.fd
Identify/include/inline/identify.h
Identify/include/libraries/identify.h
Identify/include/libraries/identify.i
Identify/include/Pascal/identify.lib
Identify/include/Pascal/libraries/identify.h
Identify/include/pragmas/identify_pragmas.h
Identify/include/proto/identify_protos.h
Identify/libs/expname.library
Identify/libs/identify.library
Identify/Function
Identify/Guru
Identify/ListExp
Identify.info
FILE_ID.DIZ

TRADEMARKS The copyright and trademarks of all manufacturers and products mentioned are held by their owners.

If you do not agree with these copyright notes, you have to delete the Identify packet and all related files immediately!

3 My Address

Please send all kind of bug-reports, board descriptions, missing graphic OS, keyfiles, flames and so on to one of the following e-mail addresses:

INTERNET

I’m reachable trough Internet via these E-Mail address:

shred@chessy.aworld.de

Check my home page for the latest release and other programs. The URL is:

http://www.is-koeln.de/einwohner/shred

SNAIL MAIL

You can send me a snail mail letter, too. My address is:

Richard Körber
Hornstraße 20
51465 Bergisch Gladbach
Germany

Please enclose a "1 DM" stamp if you live in Germany and want to get a reply.

4 ListExp

ListExp is a small tool that was already included in the expname.library package.

It describes the hardware components of the system. At first, it will write some hardware parameters (like CPU, Memory). After that, all expansion boards will be listed up (hopefully by name).

By the option FULL, all currently used commodities are listed up, too. The output is then useable for bug reports and similar.

A further option allows to get the manufacturer name, product name and class from manufacturer ID and product ID. Use the options MANUFID and PRODID to do so.

Example:

      > ListExp MANUFID=514 PRODID=9
      -- ListExp V5.0 -- by Richard Koerber
       Manufacturer: Commodore West Chester
       Product:      A2060
       Class:        ArcNet

If some entries in the expansion list begin with a ‘#’ instead of a name, you should send a copy of the ListExp output and the description of the missing board (manufacturer name, product name, product class) to me. :-)

Please do also write me if an expansion name has been guessed. You can easily recognize this by the class (guessed).

It is also not possible to check out all combinations of Amiga expansions. If your hardware is not properly recognized, please write me.

Please note: Some manufacturers, especially GVP and Phase 5, assigned the same ID to different boards. identify.library is prepared and tries to differ these boards, anyhow it can’t in any case decide right.

5 Guru

Guru translates the cryptical alert code into a human-readable form.

The only parameter is the alert code (all eight digits without any symbols before or behind). An example:

      > guru 81000005
      -- Guru V1.0 -- by Richard Koerber
       Type:       Deadend
       Subsystem:  exec.library
       General:    General fault
       Specified:  Corrupt memory list detected in FreeMem

Please understand the result like that:

Type What kind of alert is it? It may be a deadend alert, or a recovery alert.

Subsystem

Which system caused the alert?

General To what general class does this alert belong? In this case, it is a general fault which must be specified later.

Specified

What was the cause? This example shows that the memory list has been corrupted by a bad-written program.

6 Function

You can use the tool Function to decode the name of a function by providing the library name and the function offset.

The first argument is the library name, e.g. ‘exec.library’. You may also give device or resource names here. All letters after the point (including the point itself) are optional, but it is case sensitive.

The last argument is the function offset to be decoded. It must be a multiple of 6, but it doesn’t need to be signed.

Example:

      > Function exec.library -456
      -- Function V1.0 -- by Richard Koerber
       Library:    exec.library
       Offset:     -456
       Function:   DoIO

This function requires the .fd files and an assign ‘FD:’ to the drawer containing these files. The files must have the usual file name format, e.g. ‘exec_lib.fd’.

Appendix A Known Bugs

My Amiga:

** HARDWARE **
System:     Amiga 4000 (CPU=68060 FPU=68060 MMU=68060 Chipset=AGA)
AmigaOS:    3.0 (V39.106, SetPatch V43.4)   Exec V39.47   Workbench V39.29
Graphic OS: CyberGraphX
Audio OS:   Maestix
Memory:                 CHIP    FAST    TOTAL   ROM = 512KB
            PLAIN       2MB     26MB    28MB
            VMM         0       0       0
            TOTAL       2MB     26MB    28MB

** EXPANSIONS **
Nr ID      Address  Size Manufacturer         Product
----------------------------------------------------------------------------
 1 2140.22 40000000  64M Phase 5              CyberVision 64 Graphik
 2 2140.19 00EA0000 128K Phase 5              CyberStorm MK-II Flash-ROM
 3 082C.10 00E90000  64K BSC/AlfaData         Multiface II Multi-I/O
 4 4754.0C 00EC0000  64K MacroSystem Germany  Toccata Audio
 5 4754.05 00ED0000  64K MacroSystem Germany  MaestroPro Audio

THESE BUGS ARE CURRENTLY KNOWN:

• ‘Phase 5’ and ‘GVP’ have sometimes assigned one ID to two or more boards. In this case, identify.library may return a name that does not fit to the hardware.

• Currently, an 68030 will only be recognized with MMU.

• OCS/ECS Amiga with OS3.1 were always recognized as A3000 in the last versions. I hope this is fixed now.

• I couldn’t test the Amiga analysis completely, because of missing Amiga. If your Amiga model is not properly recognized, please send me a copy of your ListExp output.

• A new memory list will be ignored by identify if changed after its start (e.g. by starting VMM after identify). Workaround: simply remove the identify.library from memory, e.g. with avail flush.

Appendix B History

V 5.0 • Better Picasso96 recognition

• Should now FINALLY recognize OCS/ECS Amiga with OS3.1

• Added further boards.

• Now also checks Audio OS and AmigaOS.

• Added plain and VMM memory checkings.

• Supports shared Manufacturer IDs now.

• Bugfix: Enforcer hit when asking directly for an unknown expansion

• Gained several KB by optimizing tables, database compression and clean-ups • Adapted ListExp

V 4.4 • Recognizes Picasso96

• Added further boards.

• Bugfix: "-?-" printed beside guessed expansion name

• Bugfix: Some Amiga 1200 were recognized as "Walker" :-)

V 4.3 • Recognizes CyberGraphX V3

• Added further boards.

V 4.2 • CyberGraphX wasn’t recognized properly.

• Added further boards.

V 4.1 • Bug fix: still some problems with Amiga recognition.

• Picasso will be recognized.

• Added further boards.

V 4.0 • IdFunction() implemented.

• New tool Function.

• Added further boards.

• Bugfix: In some cases the manufacturer name was trashed.

• Pascal include files (made by Axel Dörfler)

• Identifies SetPatch version

V 3.1 • 2 boards added

• Bugfix: always recognized an Amiga 3000 on ECS machines with OS3.1.

• Bugfix: recognized CyberGraphX even when PictDT was installed only.

• Improved memory rounding

V 3.0 • Bases on the expname.library, but completely rewritten.

• Now convert alert codes, too.

• Wrote GURU.

Appendix C Credits

I want to thank especially these fellows (in no special order):

Andreas Gelhausen for Scout, his board list and his ideas.

Martin Wietfeld for his great board list!

Axel Dörfler for using Identify in XOpa, and the PASCAL includes.

Thomas Kessler for ShowConfigEnh and his many ideas.

Geert Uytterhoeven for his board list and the description of the GVP codes.

Timo Ronkko for his genious hint!

Colin Thompson for his field testings and his useful hints.

Frank Wille for his great PhxAss assembler, and his hints!

Sascha Reissner for ToxicBoards.

Kössi for his many boards, his help for all my TexInfo problems, and his debug skills.

…and for their contributions (sorted alphabetically):

’2bros’, Daniel Adolfsson, ’ALV’, Thomas Andersson, Jörn Asmussen, Matthias Bethke, Paul Braithwaite, Dave Clarke, Gary Coleman, Gagliardini Daniel, Marcus Cai Degler, Ethan Dicks, Frank Dietrich, Norbert Dimpfl, Kevin Fairhurst, Ulrich Falke, Alexander Fichtner, Ramiro Garcia, Andreas Gelhausen, Patrick Gern, Neil Griffiths, Fred Hamilton, Michael Hartmann, Georg Hazianastasiou, Dirk Hebisch, Matthias Heilmann, Ian P.Heitmans, Gene Heskett, Patrick Hess, Torfinn Ingolfsen, Bengt Jensie, Thomas Kessler, Bernd Kösling, James Kückmann, Rask Lambertsen, Jens Langner, Lutz Legero, Mika Lembke, Petter Lindquist, Mika Lundell, Gunther Mannigel, Peter Mattsson, Mario Misic, L Mac Mullan, David Oakes, Jürgen Ofner, Jakob Ölund, Chris Painter, Oliver Peike, Markus Pietz, Heiko Polig, Giuseppe Premoli, Michael Reichenbach, Sascha Reissner, Jan Rembser, Kai Rode, Timo Ronkko, Gregor Rosenauer, Andre Schenk, Bodo Schulz, Thomas Schürger, Simon Shead, Karsten Soeth, Mark Sorensen, Nicholas Stallard, Teemu Suikki, Johan Sundstrom, Adam Szymczak, Patrick Thato, Colin Thompson, Henrik Tikanvaara, Geert Uytterhoeven, Jarkko Vatjus-Anttila, Milco Veljanoski, Federico Villata, Christian Wasner, Pete Wason, Ralph Wermke, Henrik Wetterstrom, Martin Wietfeld, Frank Wille, Alexander Wild, Beno Zidaric, Rolf Zuercher.

Keep on!

                 //
             \\ //   -- Amiga - The Computer for Creative Mind --

Concept Index 13

Concept Index

A

Address. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Alert descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

B

Bugs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

C

Commercial Product . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Contents of the package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Copyright. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Copyright note. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Credits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

D

Decoding Library Offsets. . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Disclaimer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Distribution via electronic channels. . . . . . . . . . . . . . . . . . 2

E

E-Mail. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

F

FreeWare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

G

Guru . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

H

History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Homepage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

I

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

L

ListExp. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

S

Snail Mail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

T

Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

U

Unknown Boards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Table of Contents

1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 Copyright . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 3 My Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4 ListExp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5 Guru . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6 Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Appendix A Known Bugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Appendix B History. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Appendix C Credits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Concept Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13