-----------------------------------------------------------------------------
Bugs fixed:
-Due to a typo in the 68040/68060 startup code, the translation
control register wasn't written to the right place, leading mis-
interpretations of the library.
-The 68040 specific part did not call the 68040 table scanner, but
the 68060 stuff.
-The library clean up code did not fill in the translation control
register correctly for the 68040 and 68060.
-The library did not accept "exotic" transparent translation
settings. Unfortunately, these are not as uncommon as I believed.
Some boards seem to translate a part of the memory transparently
for read access only. I've no idea what this might be good for.
But anyways, the memory regions transparently translated are now
"mapped out" by the mmu.library and marked as unusable for
further manipulation. This means specifically that a huge part of
the available address space may be unavailable for virtual addresses.
A future version of the libray may re-introduce the integration of
the TTx registers into the mmu table, but up to then I don't like
to risk anything.
-----------------------------------------------------------------------------
Warning: This is "work in progress", it's by no means complete.
I'm in the urge need for testers and co-authors. Especially MC68040 and
MC68060 systems are very welcome for testing.
Please check the "ReadMe" in the archive for details how to contact me.
-----------------------------------------------------------------------------
Purpose and goal of this library:
The mmu.library is a planned basis for MMU (memory management) related
functions the MC68K family can perform. Up to now certain hacks are available
that program the MMU themselves (Enforcer,CyberGuard,GuardianAngle,SetCPU,
Shapeshifter,VMM,GigaMem...).
It's therefore not unexpected that these tools conflict with each other.
There's up to now no Os support for the MMU at all - the gap this mmu.library
is planned to fill.
The goal is to provide a basis of functions to address and program the MMU in
a hardware independent, Os friendly fashion. Hence, a future version of the
Enforcer will work together with virtual memory, and others.
The mmu.library is also the basis for a virtual memory project, the
memory.library. Even though the mmu.library does not provide virtual memory
itself, it builds the basics to allow an easy implementation and to avoid the
hacks required by other implementations so far.
For the design details of the mmu.library, consider reading the autodocs in
this archive. Everything is still VERY preliminary, there's still room for
changes and suggestions.
------------------------------------------------------------------------------
This distribution contains the full sources written so far, the documentation
and some C sample sources how to use the library, as well as the includes
and autodocs written so far. Check the ReadMe for details. Even if you're not
a developer, you could help me a lot by running a test program on your
computer and sending me the results. Just "CD" into the unpacked archive
and enter "MMUScan" and "PrintTTx", and send me the results. That's up to
now all.
------------------------------------------------------------------------------
The mmu.library development group:
This is a loose, non-commercial group of developers that support the
mmu.library by their work. If you want to join, I'll setup a mailing list
for the interested.
------------------------------------------------------------------------------
The THOR-Software Licence (v2, 24th June 1998)
This License applies to the computer programs known as the "mmu.library"
and its sources. The "Program", below, refers to such program. The
"Archive" refers to the package of distribution, as prepared by the author
of the Program, Thomas Richter. Each licensee is addressed as "you".
The Program and the data in the archive are freely distributable
under the restrictions stated below, but are also Copyright (c)
Thomas Richter.
Distribution of the Program, the Archive and the data in the Archive by a
commercial organization without written permission from the author to any
third party is prohibited if any payment is made in connection with such
distribution, whether directly (as in payment for a copy of the Program) or
indirectly (as in payment for some service related to the Program, or
payment for some product or service that includes a copy of the Program
"without charge"; these are only examples, and not an exhaustive enumeration
of prohibited activities).
However, the following methods of distribution
involving payment shall not in and of themselves be a violation of this
restriction:
(i) Posting the Program on a public access information storage and
retrieval service for which a fee is received for retrieving information
(such as an on-line service), provided that the fee is not
content-dependent (i.e., the fee would be the same for retrieving the same
volume of information consisting of random data).
(ii) Distributing the Program on a CD-ROM, provided that
a) the Archive is reproduced entirely and verbatim on such CD-ROM, including
especially this licence agreement;
b) the CD-ROM is made available to the public for a nominal fee only,
c) a copy of the CD is made available to the author for free except for
shipment costs, and
d) provided further that all information on such CD-ROM is redistributable
for non-commercial purposes without charge.
Redistribution of a modified version of the Archive, the Program or the
contents of the Archive is prohibited in any way, by any organization,
regardless whether commercial or non-commercial. Everything must be kept
together, in original and unmodified form.
Limitations.
THE PROGRAM IS PROVIDED TO YOU "AS IS", WITHOUT WARRANTY. THERE IS NO
WARRANTY FOR THE PROGRAM, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. THE ENTIRE
RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD
THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY
SERVICING, REPAIR OR CORRECTION.
IF YOU DO NOT ACCEPT THIS LICENCE, YOU MUST DELETE THE PROGRAM, THE ARCHIVE
AND ALL DATA OF THIS ARCHIVE FROM YOUR STORAGE SYSTEM. YOU ACCEPT THIS
LICENCE BY USING OR REDISTRIBUTING THE PROGRAM.
Thomas Richter
-----------------------------------------------------------------------------
So long,
Thomas (September 1998)
|