Permalink
Browse files

First import

  • Loading branch information...
shred committed Mar 15, 2010
0 parents commit 7983dd41c0c9eef67692cd6360ad7915e4393f43
Showing with 23,005 additions and 0 deletions.
  1. +166 −0 COPYING
  2. +63 −0 contribution/ppccpuclock/ppccpuclock.c
  3. +51 −0 contribution/ppccpuclock/ppcgetinfo.s
  4. +86 −0 distribution/IdentifyDev.readme
  5. +10 −0 distribution/IdentifyDev/FILE_ID.DIZ
  6. BIN distribution/IdentifyDev/Identify.info
  7. +29 −0 distribution/IdentifyDev/Identify/arexx/alert.ify
  8. +48 −0 distribution/IdentifyDev/Identify/arexx/commodities.ify
  9. +44 −0 distribution/IdentifyDev/Identify/arexx/expansions.ify
  10. +27 −0 distribution/IdentifyDev/Identify/arexx/functionname.ify
  11. +41 −0 distribution/IdentifyDev/Identify/arexx/gfxaudio.ify
  12. +42 −0 distribution/IdentifyDev/Identify/arexx/primary.ify
  13. +109 −0 distribution/IdentifyDev/Identify/arexx/system.ify
  14. +36 −0 distribution/IdentifyDev/Identify/arexx/versioncheck.ify
  15. BIN distribution/IdentifyDev/Identify/developer.info
  16. BIN distribution/IdentifyDev/Identify/developer/Identify-Dev.guide.info
  17. BIN distribution/IdentifyDev/Identify/developer/identify.doc.info
  18. +37 −0 distribution/IdentifyDev/Identify/developer/include/Pascal/identify.lib
  19. +385 −0 distribution/IdentifyDev/Identify/developer/include/Pascal/libraries/identify.h
  20. +356 −0 distribution/IdentifyDev/Identify/developer/include/bh/identify.bc
  21. +51 −0 distribution/IdentifyDev/Identify/developer/include/bh/identify.bh
  22. BIN distribution/IdentifyDev/Identify/developer/include/bmap/identify.bmap
  23. +38 −0 distribution/IdentifyDev/Identify/developer/include/clib/identify_protos.h
  24. +30 −0 distribution/IdentifyDev/Identify/developer/include/fd/identify_lib.fd
  25. +12 −0 distribution/IdentifyDev/Identify/developer/include/identify_lib.i
  26. +196 −0 distribution/IdentifyDev/Identify/developer/include/inline/identify.h
  27. +392 −0 distribution/IdentifyDev/Identify/developer/include/libraries/identify.h
  28. BIN distribution/IdentifyDev/Identify/developer/include/modules/identify.m
  29. +15 −0 distribution/IdentifyDev/Identify/developer/include/modules/identify.txt
  30. +377 −0 distribution/IdentifyDev/Identify/developer/include/modules/libraries/identify.e
  31. BIN distribution/IdentifyDev/Identify/developer/include/modules/libraries/identify.m
  32. +17 −0 distribution/IdentifyDev/Identify/developer/include/pragmas/identify_pragmas.h
  33. +29 −0 distribution/IdentifyDev/Identify/developer/include/proto/identify.h
  34. BIN distribution/IdentifyDev/Identify/examples.info
  35. BIN distribution/IdentifyDev/Identify/examples/ExpansionMUI
  36. +223 −0 distribution/IdentifyDev/Identify/examples/ExpansionMUI.c
  37. +110 −0 distribution/IdentifyDev/Identify/examples/InstallIfy
  38. BIN distribution/IdentifyDev/Identify/examples/InstallIfy.info
  39. BIN distribution/IdentifyDev/Identify/examples/MyExp
  40. +71 −0 distribution/IdentifyDev/Identify/examples/MyExp.c
  41. +83 −0 distribution/IdentifyUsr.readme
  42. +10 −0 distribution/IdentifyUsr/FILE_ID.DIZ
  43. BIN distribution/IdentifyUsr/Identify.info
  44. +277 −0 distribution/IdentifyUsr/Identify/Install-D
  45. BIN distribution/IdentifyUsr/Identify/Install-D.info
  46. +276 −0 distribution/IdentifyUsr/Identify/Install-E
  47. BIN distribution/IdentifyUsr/Identify/Install-E.info
  48. BIN distribution/IdentifyUsr/Identify/docs.info
  49. BIN distribution/IdentifyUsr/Identify/docs/Identify-D.guide.info
  50. BIN distribution/IdentifyUsr/Identify/docs/Identify-E.guide.info
  51. +62 −0 distribution/smakefile
  52. +1,133 −0 docs/Identify-D.texi
  53. +515 −0 docs/Identify-Dev.texi
  54. +1,088 −0 docs/Identify-E.texi
  55. +150 −0 docs/Namen.texi
  56. +838 −0 docs/identify.doc
  57. +50 −0 docs/smakefile
  58. +34 −0 expname/Base.i
  59. +311 −0 expname/Main.s
  60. +47 −0 expname/smakefile
  61. +109 −0 identify/Alerts.i
  62. +448 −0 identify/Alerts.s
  63. +34 −0 identify/Base.i
  64. +480 −0 identify/Clockfreq.s
  65. +32 −0 identify/EndCode.s
  66. +193 −0 identify/Expansion.i
  67. +1,912 −0 identify/Expansion.s
  68. +40 −0 identify/Functions.i
  69. +541 −0 identify/Functions.s
  70. +32 −0 identify/Hardware.i
  71. +3,186 −0 identify/Hardware.s
  72. +199 −0 identify/Locale.s
  73. +264 −0 identify/Main.s
  74. +54 −0 identify/Refs.i
  75. +232 −0 identify/Support.s
  76. +123 −0 identify/smakefile
  77. +562 −0 include/PhxMacros.i
  78. +28 −0 include/identify.library_rev.i
  79. +1 −0 include/identify.library_rev.rev
  80. +395 −0 include/libraries/identify.i
  81. +42 −0 include/lvo/Commodities.i
  82. +173 −0 include/lvo/Dos.i
  83. +145 −0 include/lvo/Exec.i
  84. +37 −0 include/lvo/Expansion.i
  85. +173 −0 include/lvo/Graphics.i
  86. +20 −0 include/lvo/Identify.i
  87. +43 −0 include/lvo/Locale.i
  88. +22 −0 include/lvo/RexxSysLib.i
  89. +17 −0 include/lvo/Timer.i
  90. +52 −0 include/lvo/Utility.i
  91. +2 −0 include/revbump
  92. +696 −0 locale/Identify.cd
  93. +157 −0 locale/IdentifyTools.cd
  94. +931 −0 locale/deutsch/Identify.ct
  95. +167 −0 locale/deutsch/IdentifyTools.ct
  96. +59 −0 locale/smakefile
  97. +257 −0 ppcrypt/PPCrypt.c
  98. BIN ppcrypt/bin/PPCrypt
  99. +47 −0 ppcrypt/smakefile
  100. +34 −0 rexxidentify/Base.i
  101. +1,425 −0 rexxidentify/Main.s
  102. +47 −0 rexxidentify/smakefile
  103. +314 −0 tools/Function.s
  104. +359 −0 tools/Guru.s
  105. +289 −0 tools/InstallIfy.s
  106. +614 −0 tools/ListExp.s
  107. +53 −0 tools/smakefile
166 COPYING
@@ -0,0 +1,166 @@
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+
+ This version of the GNU Lesser General Public License incorporates
+the terms and conditions of version 3 of the GNU General Public
+License, supplemented by the additional permissions listed below.
+
+ 0. Additional Definitions.
+
+ As used herein, "this License" refers to version 3 of the GNU Lesser
+General Public License, and the "GNU GPL" refers to version 3 of the GNU
+General Public License.
+
+ "The Library" refers to a covered work governed by this License,
+other than an Application or a Combined Work as defined below.
+
+ An "Application" is any work that makes use of an interface provided
+by the Library, but which is not otherwise based on the Library.
+Defining a subclass of a class defined by the Library is deemed a mode
+of using an interface provided by the Library.
+
+ A "Combined Work" is a work produced by combining or linking an
+Application with the Library. The particular version of the Library
+with which the Combined Work was made is also called the "Linked
+Version".
+
+ The "Minimal Corresponding Source" for a Combined Work means the
+Corresponding Source for the Combined Work, excluding any source code
+for portions of the Combined Work that, considered in isolation, are
+based on the Application, and not on the Linked Version.
+
+ The "Corresponding Application Code" for a Combined Work means the
+object code and/or source code for the Application, including any data
+and utility programs needed for reproducing the Combined Work from the
+Application, but excluding the System Libraries of the Combined Work.
+
+ 1. Exception to Section 3 of the GNU GPL.
+
+ You may convey a covered work under sections 3 and 4 of this License
+without being bound by section 3 of the GNU GPL.
+
+ 2. Conveying Modified Versions.
+
+ If you modify a copy of the Library, and, in your modifications, a
+facility refers to a function or data to be supplied by an Application
+that uses the facility (other than as an argument passed when the
+facility is invoked), then you may convey a copy of the modified
+version:
+
+ a) under this License, provided that you make a good faith effort to
+ ensure that, in the event an Application does not supply the
+ function or data, the facility still operates, and performs
+ whatever part of its purpose remains meaningful, or
+
+ b) under the GNU GPL, with none of the additional permissions of
+ this License applicable to that copy.
+
+ 3. Object Code Incorporating Material from Library Header Files.
+
+ The object code form of an Application may incorporate material from
+a header file that is part of the Library. You may convey such object
+code under terms of your choice, provided that, if the incorporated
+material is not limited to numerical parameters, data structure
+layouts and accessors, or small macros, inline functions and templates
+(ten or fewer lines in length), you do both of the following:
+
+ a) Give prominent notice with each copy of the object code that the
+ Library is used in it and that the Library and its use are
+ covered by this License.
+
+ b) Accompany the object code with a copy of the GNU GPL and this license
+ document.
+
+ 4. Combined Works.
+
+ You may convey a Combined Work under terms of your choice that,
+taken together, effectively do not restrict modification of the
+portions of the Library contained in the Combined Work and reverse
+engineering for debugging such modifications, if you also do each of
+the following:
+
+ a) Give prominent notice with each copy of the Combined Work that
+ the Library is used in it and that the Library and its use are
+ covered by this License.
+
+ b) Accompany the Combined Work with a copy of the GNU GPL and this license
+ document.
+
+ c) For a Combined Work that displays copyright notices during
+ execution, include the copyright notice for the Library among
+ these notices, as well as a reference directing the user to the
+ copies of the GNU GPL and this license document.
+
+ d) Do one of the following:
+
+ 0) Convey the Minimal Corresponding Source under the terms of this
+ License, and the Corresponding Application Code in a form
+ suitable for, and under terms that permit, the user to
+ recombine or relink the Application with a modified version of
+ the Linked Version to produce a modified Combined Work, in the
+ manner specified by section 6 of the GNU GPL for conveying
+ Corresponding Source.
+
+ 1) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (a) uses at run time
+ a copy of the Library already present on the user's computer
+ system, and (b) will operate properly with a modified version
+ of the Library that is interface-compatible with the Linked
+ Version.
+
+ e) Provide Installation Information, but only if you would otherwise
+ be required to provide such information under section 6 of the
+ GNU GPL, and only to the extent that such information is
+ necessary to install and execute a modified version of the
+ Combined Work produced by recombining or relinking the
+ Application with a modified version of the Linked Version. (If
+ you use option 4d0, the Installation Information must accompany
+ the Minimal Corresponding Source and Corresponding Application
+ Code. If you use option 4d1, you must provide the Installation
+ Information in the manner specified by section 6 of the GNU GPL
+ for conveying Corresponding Source.)
+
+ 5. Combined Libraries.
+
+ You may place library facilities that are a work based on the
+Library side by side in a single library together with other library
+facilities that are not Applications and are not covered by this
+License, and convey such a combined library under terms of your
+choice, if you do both of the following:
+
+ a) Accompany the combined library with a copy of the same work based
+ on the Library, uncombined with any other library facilities,
+ conveyed under the terms of this License.
+
+ b) Give prominent notice with the combined library that part of it
+ is a work based on the Library, and explaining where to find the
+ accompanying uncombined form of the same work.
+
+ 6. Revised Versions of the GNU Lesser General Public License.
+
+ The Free Software Foundation may publish revised and/or new versions
+of the GNU Lesser General Public License from time to time. Such new
+versions will be similar in spirit to the present version, but may
+differ in detail to address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Library as you received it specifies that a certain numbered version
+of the GNU Lesser General Public License "or any later version"
+applies to it, you have the option of following the terms and
+conditions either of that published version or of any later version
+published by the Free Software Foundation. If the Library as you
+received it does not specify a version number of the GNU Lesser
+General Public License, you may choose any version of the GNU Lesser
+General Public License ever published by the Free Software Foundation.
+
+ If the Library as you received it specifies that a proxy can decide
+whether future versions of the GNU Lesser General Public License shall
+apply, that proxy's public statement of acceptance of any version is
+permanent authorization for you to choose that version for the
+Library.
+
@@ -0,0 +1,63 @@
+/*
+ * identify.library
+ *
+ * Copyright (C) 2010 Frank Wille
+ * http://identify.shredzone.org
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License / GNU Lesser
+ * General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ */
+
+#include <proto/exec.h>
+#include <exec/libraries.h>
+
+/*
+** Hier sollte eigentlich #include <powerpc/powerpc.h> stehen. Leider
+** enthält es neben C++ Komentaren auch einige Bugs - daher...
+*/
+struct PPCArgs {
+ APTR PP_Code;
+ LONG PP_Offset;
+ ULONG PP_Flags;
+ APTR PP_Stack;
+ ULONG PP_StackSize;
+ ULONG PP_Regs[15];
+ DOUBLE PP_FRegs[8];
+};
+#define PPERR_SUCCESS 0
+
+
+/* inline code for RunPPC */
+LONG __RunPPC(__reg("a0")struct PPCArgs *,__reg("a6")void *)="\tjsr\t-30(a6)";
+#define RunPPC(x) __RunPPC((x),PowerPCBase)
+
+
+static struct PPCArgs ppcargs;
+
+extern APTR ppc_getinfo; /* PPC function to call */
+
+
+int PPC_CPU_Clock()
+{
+ struct Library *PowerPCBase;
+ int rc = 0;
+
+ if (PowerPCBase = OpenLibrary("powerpc.library",10)) {
+ ppcargs.PP_Code = &ppc_getinfo;
+ ppcargs.PP_Regs[13] = (ULONG)&ppc_getinfo; /* base addr. in r30 */
+ ppcargs.PP_Regs[14] = (ULONG)PowerPCBase; /* lib base in r31 */
+ if (RunPPC(&ppcargs) == PPERR_SUCCESS)
+ rc = (int)ppcargs.PP_Regs[0]; /* result from r3 */
+ CloseLibrary(PowerPCBase);
+ }
+ return (rc);
+}
@@ -0,0 +1,51 @@
+#
+# identify.library
+#
+# Copyright (C) 2010 Richard "Shred" Körber
+# http://identify.shredzone.org
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License / GNU Lesser
+# General Public License as published by the Free Software Foundation,
+# either version 3 of the License, or (at your option) any later version.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+#
+
+# Assembler: pasm 0.70
+#
+.set GetInfo,-592 # powerpc.library _LVOGetInfo+2
+.set PPCINFO_CPUCLOCK,0x80102007
+.set TAG_DONE,0
+
+
+ .section "PPC-Code","crx"
+
+ .global _ppc_getinfo
+ .word ppcinfoTags # pointer to data section
+_ppc_getinfo:
+# r30 = pointer to _ppc_getinfo
+# r31 = PowerPCBase
+ mflr r29 # save LR
+ lwz r28,-4(r30) # r28 ppcinfoTags
+ mr r3,r31
+ mr r4,r28
+ lwz r0,GetInfo(r3)
+ mtlr r0
+ blrl # GetInfo()
+ lwz r3,4(r28) # r3: return CPU clock in Hz
+ mtlr r29
+ blr # return to M68k
+
+
+ .section "PPC-Data","drw"
+ppcinfoTags:
+ .word PPCINFO_CPUCLOCK,0
+ .word TAG_DONE
+
+#jEdit: :tabSize=8:indentSize=8:mode=assembly-m68k:
@@ -0,0 +1,86 @@
+Short: Identify hardware and more, OS3.9 (V13.1)
+Uploader: rkoerber@gmx.de (Richard Koerber)
+Author: rkoerber@gmx.de (Richard Koerber)
+Type: util/libs
+Kurz: Identifiziert Erweiterungen und mehr (V13.1)
+Keywords: expansion board guru alert function system library check arexx ppc powerpc warpos installer
+
+Requires: AmigaOS 2.0 or higher
+Language: English, Deutsch
+
+URL: http://identify.shredzone.org
+
+
+This is the developer packet of Identify. You'll only need it if
+you want to write programs using the features of identify.
+
+Identify is a system shared library that identifies your system and
+several IDs and returns them in a human readable form. Currently
+implemented are:
+
+expansions The manufacturer and product ID of hardware expansions are
+ translated into manufacturer name, board name and board
+ class.
+
+system Your system is analyzed by identify.library. You can query
+ static values, as e. g. Amiga model, Processor, OS version,
+ Graphic OS (e. g. CyberGraphX), Audio OS (e. g. AHI) or
+ available memory (Virtual Memory is also supported).
+
+alerts The cryptical alert codes can also be translated.
+
+functions Decodes the offset of a shared library into it's function
+ name, provided you have got the .fd files.
+
+
+Four example Shell tools are also included:
+
+ListExp Analyses your system, searches for expansion boards and
+ optionally, shows what Commodities are available. This is
+ an easy way to describe your system for bug reports etc.
+
+Guru Decodes a Guru number.
+
+Function Returns the name of the function that matches to the
+ provided library name and offset.
+
+InstallIfy Gives Installer scripts access to the Identify hardware
+ analyzer, e.g. to check if a PowerPC is present.
+
+
+ FEATURES:
+-----------
+ - OS3.9 and BoingBag supported
+ - AmigaXL supported
+ - The complete expansion database consists of more than 420
+ expansion boards and 130 manufacturers.
+ - Distinguishes between most GVP and Phase5 boards with unique ID
+ - Tries to give at least a hint if the board name is not known yet
+ - Fully DraCo and PowerPC compatible
+ - Supports PowerUp and WarpOS
+ - The library is fully localized (catalogs included: deutsch)
+ - ARexx interface library
+ - English and German documentation (.guide and .dvi)
+
+
+ INCLUDED DEVELOPER FILES:
+---------------------------
+ - AutoDocs
+ - Assembler include files
+ - C header files (also protos, pragmas, GCC inlines)
+ - PASCAL include files
+ - Maxon/HiSoft-BASIC include files
+ - Amiga-E include files
+ - FD file
+ - cd file for language translations
+ - C example showing how to use identify with MUI
+ - ARexx examples
+ - Installer examples
+
+
+With your help, I hope to get as much expansion names as possible.
+So please send the name, manufacturer ID, product ID and board class
+of all your expansions to: "rkoerber@gmx.de". You can get the IDs with
+included tool ListExp or the example program "expansions".
+
+Thank you!
@@ -0,0 +1,10 @@
+ ___________
+ | _| _ _ |.|_ \/
+ |(_|(/_| )||| / v13.1
+
+ by rkoerber@gmx.de
+--------------------------------------------
+ Developer material to the identify
+ packet. Supported are: Assembler, C,
+ E, PASCAL, ARexx, Installer.
+--------------------------------------------
Binary file not shown.
Oops, something went wrong.

0 comments on commit 7983dd4

Please sign in to comment.