Schrijver
| VDP Speed.
|
DarQ msx professional Berichten: 836 | Geplaatst: 08 Februari 2003, 16:38   |
no, go to www.dot.tk and login at the mydottk section! next: dot tk linker promo where you can simply disable it! Aint it funny?
|
|
GuyveR800 msx guru Berichten: 3048 | Geplaatst: 08 Februari 2003, 18:51   |
|
|
Grauw msx professional Berichten: 1002 | Geplaatst: 08 Februari 2003, 18:59   |
Quote:
| GRrauw! Remove the Dot TK pop up! its ugly
|
Mark! Use the real URL! Bookmark! ;p
Quote:
| no, go to www.dot.tk and login at the mydottk section! next: dot tk linker promo where you can simply disable it! Aint it funny?
|
Ahh, nice ^_^. Ok, thanks!
Quote:
| For some reason Grauw does not want to host his pages at tni.nl ^^; : 
|
Er, yeah, that was because it doesn't have an FTP account.
Quote:
| You mention that we can use the line interupt also to perform scrollin using register 23, this is a V9958 register , isn't it ? or is it just the 'set adjust' ?
|
Yeah indeed, as said vertical scrolling can be done on the v9938, the v9958 adds horizontal scrolling to it. By the way, you can indeed do a lot of cool things on the screensplit. There also is another article on the MAP about programming screensplits, you might want to check that out aswell.
~Grauw |
|
GuyveR800 msx guru Berichten: 3048 | Geplaatst: 08 Februari 2003, 19:29   |
Quote:
|
>>For some reason Grauw does not want to host his pages at tni.nl ^^; :  <<
Er, yeah, that was because it doesn't have an FTP account.
|
Bah, you know it does. |
|
Grauw msx professional Berichten: 1002 | Geplaatst: 08 Februari 2003, 23:24   |
Quote:
| Bah, you know it does.
|
Now I do, yes, but I didn't before. And that was when I decided where to host it. Anyways the way it is now works perfectly fine, so I see no need to change it.
~Grauw |
|
snout
 msx legend Berichten: 4991 | Geplaatst: 08 Februari 2003, 23:31   |
aaaaaaaaaaaaaaaaaanyway we were talking about VDP speed here  |
|
Leo msx freak Berichten: 216 | Geplaatst: 09 Februari 2003, 11:59   |
The piece of code works just fine !
I added few commands so the screen is split between screen5 (top) and screen6 (bottom) with its own palette, it can be fully updated since it uses only 4 color.
It may be helpfull since i am trying to make an rpg in screen 12, i guess i can put the dialog portion on the bottom in high res as well with a screen12 / 7 split .
|
|
GuyveR800 msx guru Berichten: 3048 | Geplaatst: 09 Februari 2003, 14:38   |
Whoa! Screen 12?! Won't you be better off using Screen 10? In that case you still have 16 palette colors without the colorbleed. It's ideal to use the palette for moving characters, because they'll look really strange if the colors start bleeding.
Anyway, keep us in touch of your progress (development forum), it sounds very interesting! Especially because apparantly alot of people want to see a new RPG.
|
|
Leo msx freak Berichten: 216 | Geplaatst: 09 Februari 2003, 14:53   |
Well dont get so enthusiastic , i'am just starting it , i have setup the characters
dialog routines , and starting coding the field play.
I'll try to mix many style of games to make it original.
Well it is possible to fade color also in screen 12 with line_box_logical operations
it is not as fast but still possible.
In fact in Screen12 there is lack of pages ( screen 5 is ideal to have one page for view
one for the drawing , one for the patterns , and a one for character moves )
and I was wondering to use RAM <--> VRAM exchanges OR direct HD <--> VRAM
Even if they are slower.
I have recently upgared my msX2 with a V9958 , and noticed something around a Wait
pin , it is not clear to me what is its usage , but I have the guess I can be used for
faster CPU <-> VDP transfers or I/O <-> VDP transfer is it true ?
i made just this try : to see how fast a "slide show" of GE5 pictures could be done from HD.
It is not so slow , I guess if i had a 7MHz msx i could be even decent for a kind game intro
animation.
|
|
GuyveR800 msx guru Berichten: 3048 | Geplaatst: 09 Februari 2003, 18:09   |
The V9958 wait pin is not connected on MSX, so setting the wait register has no effect. (unfortunately)
About fading color, screen 10 works the same way as screen 12, except that it looses some 5000 colors to add the 16 palette colors. So there are 'only' ~14000 colors in stead of ~19000.
Screen 12 is really best suited for displaying still pictures only.
|
|
Leo msx freak Berichten: 216 | Geplaatst: 09 Februari 2003, 18:28   |
Well, it is true screen 10 has palette which can help a lot .
For the momment the graphic are scaned photos so it help to get the maximum
number of color , i can see the difference between 12,5K colors and 19,2K colors.
...
I read the page on msx - map it was very interesting on the screen split.
I am considering using screen12 or 11 with a blank split at 170, (i am already
updating the routines for that purpose ) so I can deal with 3 equivalent pages
( 2*256 ~ 3* 170 ), and i will gain speed up on copy operation as I read on the
vdp speed up section.
...
I read on the msx-map page that considering frame rate lower than 50 could be
interesting to get some more power for graphical copy/data move.
It me gave this idea:
- What about giving priority to copy operation over displaying duty of the VDP.
When a copy command occurs we disable the screen do the copy and re-enable it.
Of course it will create some slight blank portion on one image over the 50 per sec, depending on the size of the transfer.
- The trick consist in tuning how much anoyance it is possible to stand on 50 frames
per sec.
- then set a threshold :
for instance : 3 HMMM of 64x64 boxes can be done every sec , the blank portion
they will create are almost not seen.
and whenever a copy request arrived it has priority over display only if less than 3
HMMM have already been done on that 1sec interval.
Lets say, the subjective anoyance that should be standed has be comparable at the interlace in 50 Hz mode.( a bit ugly on some pictures )
|
|
GuyveR800 msx guru Berichten: 3048 | Geplaatst: 09 Februari 2003, 19:16   |
Heh, bad idea. It will look much much worse than 50Hz. I bet some people will think their monitor is broken!
BTW, screen 10 and 11 are the same from the VDP's point of view. It's just that MSX-BASIC handles them differently. Try switching between screen 10,11 and 12. Normally a screenmode switch will clear the screen, but not between those screens.
Ofcourse for an RPG a framerate of 30 or 20 is more than enough!
|
|
Leo msx freak Berichten: 216 | Geplaatst: 13 Februari 2003, 21:12   |
Does the emulators take into accout the time spent for display and the blank time?
In the NLMSX v0.38 , I have the feeling that the copy commands are always the same speed what ever is the blank retrace.
When I disable the screen display on large part of the screen and do not disable it at all
a large copy logic command in screen12 is not spedded up in the first case ??!
I guess I will have to do the sames tries on my real MSX ...
|
|
GuyveR800 msx guru Berichten: 3048 | Geplaatst: 13 Februari 2003, 23:20   |
VDP timing with partial screen blanking or partial sprite disabling is indeed not supported by most emulators. I think only openMSX does it.
|
|
Grauw msx professional Berichten: 1002 | Geplaatst: 15 Februari 2003, 01:13   |
Quote:
| Well, it is true screen 10 has palette which can help a lot. For the momment the graphic are scaned photos so it help to get the maximum number of color , i can see the difference between 12,5K colors and 19,2K colors.
|
When using photos, you might be able to see the difference. But when using 8x8 or 16x16 'pixel-art' as you probably will in case of an RPG I doubt you'll be able to. On the other hand, when making pixel-art the 16 colors could turn out to be extremely useful. A good example of a game using screen mode 10/11 is M-KID (it never got released but there exists a demo with 3 levels).
Quote:
| I read the page on msx - map it was very interesting on the screen split. I am considering using screen12 or 11 with a blank split at 170, (i am already updating the routines for that purpose ) so I can deal with 3 equivalent pages ( 2*256 ~ 3* 170 ), and i will gain speed up on copy operation as I read on the vdp speed up section.
|
That will be hard, because you can't scroll 2 pages on 1 screen with the vertical scrolling register (you can, btw, with the horizontal one), but it's not impossible if you use another screensplit halfway which switches to page 1 when it's halfway displaying the 2nd 'virtual' page. If you're trying this I'd recommend you to use 168 lines (a multiple of 8) per 'screen', which also leaves you some room for a little 'overhead'.
Quote:
| I read on the msx-map page that considering frame rate lower than 50 could be interesting to get some more power for graphical copy/data move.
It me gave this idea:
- What about giving priority to copy operation over displaying duty of the VDP.
When a copy command occurs we disable the screen do the copy and re-enable it.
Of course it will create some slight blank portion on one image over the 50 per sec, depending on the size of the transfer.
|
If you ask me, experiencing an occasional slowdown if you have to copy more than you're able to within 1 interrupt would seem a much more preferred solution. Flickering is very annoying. The idea I mentioned on the MAP consisted solely out of slowing down the screen update frequency to 30Hz by either using alternating pages or, well, the other method I described.
By the way, interlaced is flickering, but not in the same way you mentioned. If something is interlaced, it shows half of the (double amount of) lines each frame, so it still displays full-screen content every frame. When disabling the screen every other interrupt the effect will be much much worse on the eyes. Be gentle to the epileptics amongst us ;p.
Anyways don't forget that on the MSX2+ you have both a vertical and a horizontal scroll register. If you use these in most cases you won't need to copy an extreme lot of data per interrupt. If you do, I'd rather suggest you to either rethink your game design. Maybe making the moving objects a little smaller, or slowing down/dropping some frames.
~Grauw |
|
|
|
|