At 03:06 AM 03/25/99 +0000, Alwin Henseler ([EMAIL PROTECTED]) wrote:

>shevek  <[EMAIL PROTECTED]>  wrote:
>
>> The only thing you need to expect is that writing the data you read from
>> the mapperport will set it back to the state it was in when you read it.

That's _not_ the case with MSXes using the S1990 engine (like turbo R) and
mappers >512K.

>If the mapperports are write-only (possible), or reading back 
>doesn't work good (possible), reading back will get you "undefined", 
>usually FFh. Writing that to restore, would select always FFh = not 
>the same as previous state.

I've never heard of an actual mapper that returns FFh, although
theoretically it could exist.

>I consider this issue like this:
>-You ARE allowed to read these ports (why not?).

Because two or more mappers always share the same I/O ports. If not all
mappers return the same value if read, there will be a short-circuit on the
data bus (one mapper pulling a signal high while the other is pulling it
low). I don't know if this is harmful, but it sure doesn't sound healthy.

>-When you do, there's no telling what you'll get.
>So you can read these ports, but what you read, should be considered 
>as useless.

Conclusion: you gain nothing by reading them.

>>> You also have to take care that some people  have more then 1
>>> mapper (however this is technically not allowed , but who cares)
>
>Multiple mappers not allowed? Says who? Says what? Why not?

Under the MSX2 rules that mapper port reading is allowed, you shouldn't use
multiple mapper because of the short-circuit problem described above.
Under the MSX2+ rules that mapper port reading is not allowed, there is no
problem with multiple mappers.

>There are some machines that have a hardware-problem with it, but 
>that's more like a mistake in the design of those machines (like the 
>Turbo-R with >512K external mapper).

Any MSX will have trouble if two mappers return different values (for
example because they have different sizes).
In the turbo R (and other S1990-based machines) the internal mapper will
also have a problem: only the lower 5 bits of the value read are valid.

Bye,
                Maarten



****
MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED] and put
in the body (not subject) "unsubscribe msx [EMAIL PROTECTED]" (without the
quotes :-) Problems? contact [EMAIL PROTECTED] (www.stack.nl/~wiebe/mailinglist/)
****

Reply via email to