At 08:03 AM 09/20/98 +0200, you wrote:

>>imagine you have to countdown the time of a game or what ever you want
>>
>>      LD      DE,(TimeCounter)
>>      LD      HL,-2
>>      ADD     HL,DE
>>this wont give the good result on Z380
>
>You are wrong. In native mode all calculations are done modulo 65536.
>Otherwise Z380 could never claim Z80 compatibility!

You are wrong as well.
The calculation will give the correct result using the default Z380 settings.
But the reason is because the Z380 is in word mode by default. If it would
be in long word mode, the result would be wrong. Native/extended mode has
nothing to do with the example.

>From the manual:
>"The Z380 CPU can operate in either Native or Extended
>mode, as controlled by a bit in the Select Register (SR).
>In Native mode (the Reset configuration), all address
>manipulations are performed modulo 65536 (16 bits). In
>this mode the Program Counter (PC) only increments
>across 16 bits, all address manipulation instructions (increment,
>decrement, add, subtract, indexed, stack relative,
>and PC relative) only operate on 16 bits, and the Stack
>Pointer (SP) only increments and decrements across
>16 bits."

Yes, I have the same manual. But if you read it carefully, you will see the
quoted section talks only about addressing (PC, SP etc). It doesn't say a
thing about data registers like HL and DE being treated like 16 or 32 bits.

Here is a schematic that might clarify things:

                     Native mode           Extended mode

Word mode            16-bit addresses      32-bit addresses
                     16-bit data           16-bit data

Long word mode       16-bit addresses      32-bit addresses
                     32-bit data           32-bit data

Default mode is native & word. Switching from native mode to extended mode
is possible, switching from extended mode to native mode is not. Switching
from word mode to long word mode and back is possible.

>I agree with you on this. Ofcourse, MSX380 could never be turboR (R800)
>compatible, but then again turboR is more like "MSX Gaiden" anyway :)

One could make the MSX380 partially compatible with turboR by including the
BIOS calls 180 and 183 to switch normal/turbo mode. But ofcourse it won't
have R800 opcodes.
By the way, did anyone actually compare R800 and Z380 opcodes? If we're
lucky, there are "semi-accidentally" compatible.

>I'm not so sure about that enhanced SNES VDP, because the SNES VDP is
>pretty hard to program. I'd prefer the good old V9990 to be used, maybe
>with some additional chips for huge sprites and rotation 'n stuff.

What do you need huge sprites for? Combining 128 16x16 sprites, you can
make pretty big sprites already. If you want bigger sprites, you could
consider devoting an entire pattern plane to such a sprite.

And rotation is quite useless most of the time. I have seen very few SNES
games use rotation well. Most included the effect simply because the VDP
was capable of doing it. 

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