Schrijver
| GFX9000 Faster but not fast...
|
ro msx guru Berichten: 2346 | Geplaatst: 03 Oktober 2006, 08:31   |
(hai marcel, yer awake yet!)
|
|
msd msx professional Berichten: 615 | Geplaatst: 03 Oktober 2006, 08:48   |
If it was upto me I would still be asleep  |
|
msd msx professional Berichten: 615 | Geplaatst: 03 Oktober 2006, 09:27   |
@GhostwriterP: The pal bit is in register 7 bit 3. Set the select pal
|
|
GhostwriterP msx addict Berichten: 313 | Geplaatst: 03 Oktober 2006, 18:18   |
I just might write a routine to test more accurate, more commands and more modes.
In my experience those BM** stuff were indeed even faster. However they won't work like you would expect in p modes.
Not sure about BMLL but the other two are useless.
@msd: Thanks  |
|
msd msx professional Berichten: 615 | Geplaatst: 03 Oktober 2006, 18:30   |
@ghostwriter: You need to set the address a little different then you expect in p modes. They absolutle do work. If you set the parameters correct. i think it was something like this. For layer a. shift address left one time .. so 0x10000 -> 0x20000 and for layer B shift to left and add 1 iirc. It has something to do with the banking/interleaving.
|
|
msd msx professional Berichten: 615 | Geplaatst: 03 Oktober 2006, 18:50   |
LD HL,#FF00
CALL G9k.SetCmdWriteMask
CALL G9k.DisplayEnable
LD_EHL 400000H
call G9k.SetVramWrite
LD DE,512
.clear
XOR A,A
OUT (G9K_VRAM),A
DEC DE
LD A,E
OR A,D
JP NZ,.clear
LD_EHL 400000H
call G9k.SetVramWrite
XOR A,A
LD B,0
.loop
OUT (G9K_VRAM),A
INC A
DJNZ .loop
LD HL,.copy
CALL G9k.CopyVramToVram
RET
.copy G9K_COPY_VRAM_VRAM 800000H, 82000H,256 ;
Test I did using the g9klib.. this copies 256 bytes from address 40000 to 41000. Notice that also the writemask needs to be set.. and for layer A it needs to be 0x00ff
|
|
GhostwriterP msx addict Berichten: 313 | Geplaatst: 03 Oktober 2006, 19:30   |
I tried that once, you know shifting to the left, but got a 'scaled' version, like one correct byte followed by an incorrect byte. It involved something copying from B to A lineair to block. Might be I did something wrong...
|
|
msd msx professional Berichten: 615 | Geplaatst: 03 Oktober 2006, 22:44   |
This part is really badly documented in the v9990 manual.. Only a small very vague note about it
|
|
manuel msx guru Berichten: 3528 | Geplaatst: 03 Oktober 2006, 23:13   |
GhostWriterP: if you got any (more) data about the V9990 command engine speed, please let us know so that we can use it for openMSX. Thanks!
|
|
AuroraMSX
 msx master Berichten: 1260 | Geplaatst: 04 Oktober 2006, 12:27   |
Quote:
| This part is really badly documented in the v9990 manual.. Only a small very vague note about it
|
Euh? The mapping of VRAM addresses to the VRAM banks is very clearly documented. With that info you should be able to figure out how these copy commands should be set up... |
|
msd msx professional Berichten: 615 | Geplaatst: 07 Oktober 2006, 14:32   |
The not so clear part about it is that addresses need to be set in a different way in P modes, which is never mentioned in the manual.
|
|
msd msx professional Berichten: 615 | Geplaatst: 08 Oktober 2006, 14:45   |
Back on topic.. you think the v9990 is not fast?
|
|
GhostwriterP msx addict Berichten: 313 | Geplaatst: 08 Oktober 2006, 19:16   |
Concidering 5kb for copies in P1 mode, where less then one kb in vblank, it is kinda disapointing isn't it? Then you might think do you need more. Then I say think bigger than pacman or space invaders and you'll need it. (At least I do...  ) |
|
msd msx professional Berichten: 615 | Geplaatst: 08 Oktober 2006, 19:19   |
well okay in p mode it's not fast with copies.. but in b modes I don't think it's bad at all.
|
|
msd msx professional Berichten: 615 | Geplaatst: 09 Oktober 2006, 17:56   |
Still not really a suprice that's it's slower in p modes dan in b. those layers and all those sprites take up quite some vram bandwidth.
|
|
|
|
|