Re: msx2 horizontal scrolling..

1999-05-22 Thread Ricardo Jurczyk Pinheiro

At 11:02 20/05/99 +0200, you wrote:
I have -almost- finished my scrollroutine...

Send them 2 us. =D


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/)




Re: msx2 horizontal scrolling..

1999-05-22 Thread Ricardo Jurczyk Pinheiro

At 08:14 20/05/99 +0100, you wrote:
HI! I know it's such an old question but I've been busy for some time.
Don't read this if someone has answered you before because it's just a
simple view.

Using Set adjust combined with a normal 8 block scroll and two screens
would result in the desired smooth horizontal scroll. (that trick was
proposed by MSX MEesXE
)
You can ask Nestor Soriano for more info. But I'll try to explain something.
Start with page 0 and set adjust set to the maximum right and scroll it to
the set adjust maximum left
then prepare page 1 8 positions scrolled to the right and change the pages
with set page. Do it again and restart!!!

Yes, it seems a bit strange, but it works!!! Try it!

Sure, I've tried, but I haven't got the desired effect, 'cause I
was using only one page. Thankx!

Ricardo Jurczyk Pinheiro - ICQ UIN:3635907 - [EMAIL PROTECTED]|_Sola  Scriptura |
http://i.am/rjp -M.Sc. Numerical Modelling (hope so!)  |_ Sola Gratia  |
UFF - Niteroi - RJ - Brazil  -  [EMAIL PROTECTED]_|  Sola Fide  |
MSX, ST, B5, X-F, Anime, Christian, Maths, CuD, Linux!_|  Solo Cristi  |
Christian, Rock, Comics, Transformers, and hate M$!  | Soli Deo Gloria |




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/)




Re: MSX2 horizontal scrolling...

1999-05-21 Thread Mark Zellenrath

Hi,

 But, unfortunately, I guess I'm doomed now...

  Well, you could also change your set up of your ISRs (Interrupt
Service Routine) with your line interrupts (r#19). First of all, disable
the V_BLANK interrupt, so you are left with only the line interrupts
from r#19. Secondly, make s#2 (status register) standard (set r#15 to
2), so you can check very fast if the VDP commands are finished. Make
sure, though, that you still read out s#0 to clear the IRQ signal.
Preferably, at the *end* of each interrupt, so you have a quick response
time to the IRQ. Especially if you also set the address to jump to for
the ISR at the next line interrupt. So you ISR starts with 

ld  hl,(ISR_vector)
jp  (hl)

and ends with

setreg  15,0
inreg
setreg  15,2
setreg  19,line_x
ld  hl,ISR_x
ld  (ISR_vector),hl
reti

  So, how does this help you? You can simulate the V_BLANK interrupt by
setting r#19 to 212 after the line interrupt at line 160. The nice thing
is that you can also change r#19 also to 230 or even to 240 and the
interrupt is still granted! This gives you more time to complete your
VDP commands.
  Or you can forget about the second line interrupt alltogether. Execute
the large copies from line 160 onwards and change r#18 when you are sure
(some of) the large copies are finished *and* that you are somewhere in
the black border (the VDP is displaying lines 212 and beyond). This
might requiring some timing, but it should also work.

  Bye, /\/\ark


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/)




Re: msx2 horizontal scrolling..

1999-05-21 Thread Maarten ter Huurne

At 11:02 AM 5/20/99 +0200, you wrote:

However, one problemo...
When I set the adjust while a VDP-command is executing, there appear some
'noise'-pixels on the screen.

Are you sure it's related to the adjust? Simply executing copies to a
visible page will give noise, even if you don't tough the adjust. If you're
copying to a visible page, always make sure that you time the copy so that
the area copied is never the same as the area sent to the monitor at that
time.

For example, if you copy an area from line 16 to 32, start the copy on line
32 or later (but not too late). If you copy an area from line 128 to 144,
start the copy on line 144 or later.

What will probably work is to devide the screen into a top and bottom part
and put a line interrupt around line 128+NY, where NY is the size of the
block you copy (for example 16). Copies for the top part are started by the
line interrupt, copies for the bottom part are started on the VBLANK
interrupt.

By the way, if any of you ever wondered why the cursor in GraphSaurus
blinks when it moves in the top region of the screen... its copy command is
issued on the VBLANK interrupt and may not be finished when the scan
reaches the top of the screen!

For example, during the screensplit I disable the screen, and at the end I
enable it again. This however gave a white line at the lowest (second) line
of the screensplit. I was able to solve this problem by making sure the
screen was enabled during the H_BLANK-period...

What do you mean by "during the screensplit"? Do you mean "when the VDP is
loaded with the new settings after a line interrupt occurs" or "the time
the scanner takes to reach the next line interrupt point"?

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/)




Re: msx2 horizontal scrolling..

1999-05-21 Thread Laurens Holst

 However, one problemo...
 When I set the adjust while a VDP-command is executing, there appear some
 'noise'-pixels on the screen.

 Are you sure it's related to the adjust? Simply executing copies to a
 visible page will give noise, even if you don't tough the adjust. If
you're
 copying to a visible page, always make sure that you time the copy so that
 the area copied is never the same as the area sent to the monitor at that
 time.

I am sure it was related to the adjust, because when I deleted the setting,
the noise was gone. Relocating the adjust-setting to the beginning or the
end of the lineinterrupt didn't matter.


 For example, if you copy an area from line 16 to 32, start the copy on
line
 32 or later (but not too late). If you copy an area from line 128 to 144,
 start the copy on line 144 or later.

 What will probably work is to devide the screen into a top and bottom part
 and put a line interrupt around line 128+NY, where NY is the size of the
 block you copy (for example 16). Copies for the top part are started by
the
 line interrupt, copies for the bottom part are started on the VBLANK
 interrupt.

My line-interrupt has to be at line 160, for that's where my screensplit is
situated.

I think you don't get what I mean with 'noise'.
When I mean noise I mean 'permanent' noise, so a wrong pixel. Not the first
half of a copy being displayed at the 'new' position and the second half
still being diplayed at the 'old' position because the copy 'crosses' the
VDP's refresh-line. I've already taken that into account (how could I forget
that)...


 For example, during the screensplit I disable the screen, and at the end
I
 enable it again. This however gave a white line at the lowest (second)
line
 of the screensplit. I was able to solve this problem by making sure the
 screen was enabled during the H_BLANK-period...

 What do you mean by "during the screensplit"? Do you mean "when the VDP is
 loaded with the new settings after a line interrupt occurs" or "the time
 the scanner takes to reach the next line interrupt point"?

The screensplit is the moment which starts when the first setting is made
and ends when the last setting is done. So with "during the screensplit" I
meant the routine changing the VDP-settings which is called when the
lineinterrupt occurs


~Grauw




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/)




Re: MSX2 horizontal scrolling...

1999-05-21 Thread Laurens Holst

   Well, you could also change your set up of your ISRs (Interrupt
 Service Routine) with your line interrupts (r#19). First of all, disable
 the V_BLANK interrupt, so you are left with only the line interrupts
 from r#19.

But I still have to set VDP(18) back to its original value at line 212, so
that won't be of any use...


 Secondly, make s#2 (status register) standard (set r#15 to
 2), so you can check very fast if the VDP commands are finished. Make
 sure, though, that you still read out s#0 to clear the IRQ signal.

I've already done that (this way, I also won't need to disable the
interrupts when testing the TR-flag before executing a VDP-command.

By the way, wasn't the screensplit-int-flag located in s#1???


 Preferably, at the *end* of each interrupt, so you have a quick response
 time to the IRQ. Especially if you also set the address to jump to for
 the ISR at the next line interrupt. So you ISR starts with

 ld hl,(ISR_vector)
 jp (hl)

 and ends with

 setreg 15,0
 inreg
 setreg 15,2
 setreg 19,line_x
 ld hl,ISR_x
 ld (ISR_vector),hl
 reti

Oh... yes!
I always test the statusregister, but this is also possible!!!
However, it will give trouble if there are other interrupts generated, like
interrupts of the MoonSound...


   So, how does this help you? You can simulate the V_BLANK interrupt by
 setting r#19 to 212 after the line interrupt at line 160. The nice thing
 is that you can also change r#19 also to 230 or even to 240 and the
 interrupt is still granted! This gives you more time to complete your
 VDP commands.

Ah... so that gives me more time to copy between the two interrupts...
Great idea!!!


   Or you can forget about the second line interrupt alltogether. Execute
 the large copies from line 160 onwards and change r#18 when you are sure
 (some of) the large copies are finished *and* that you are somewhere in
 the black border (the VDP is displaying lines 212 and beyond). This
 might requiring some timing, but it should also work.

Hmmm hmmm... I'll think 'bout that.

Hey! Thanks, this is great!


Maybe it's a good idea to compile some booklet filled with all kinds of tips
like this... I still have some in stock... I would really like to read such
a book... (Book, not webpage).


~Grauw




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/)




Re: msx2 horizontal scrolling..

1999-05-21 Thread Laurens Holst

 My line-interrupt has to be at line 160, for that's where my screensplit
is
 situated.

 You can have more than 1 line interrupt per screen: simply set the next
 line on every line interrupt.

Yes, I know that.

But I don't see the use of having more screensplits in my case... I only
need one.


~Grauw




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/)




Re: msx2 horizontal scrolling..

1999-05-20 Thread Laurens Holst

I have -almost- finished my scrollroutine...

It scrolls in all directions and it has got a screensplit at the bottom.
It uses sprites to mask the borders and takes about 50% of your VDP-time,
but with some modifications it will probably also be possible not to use
sprites.

It is based on 8x8 patterns, and it scrolls all 16 pixels (8 seemed to be
too slow). This means that your screen will be 16 pixels smaller (240x212),
but that's not a real disadvantage.

However, one problemo...
When I set the adjust while a VDP-command is executing, there appear some
'noise'-pixels on the screen. I can avoid that to happen by exact timing of
my COPY's (execute them right after the V_BLANK-interrupt), but I would like
that different (because it will also decrease the time left for other
copies, i.e. the displaying of the character).

Does anyone know a solution for that???

For example, during the screensplit I disable the screen, and at the end I
enable it again. This however gave a white line at the lowest (second) line
of the screensplit. I was able to solve this problem by making sure the
screen was enabled during the H_BLANK-period...

Is there some solution like this for the VDP_18-problem too???


Thanks in advance,
~Grauw




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/)




Re: msx2 horizontal scrolling..

1999-05-20 Thread Mark Zellenrath

Hi,

 However, one problemo...
 When I set the adjust while a VDP-command is executing, there appear some
 'noise'-pixels on the screen. I can avoid that to happen by exact timing of
 my COPY's (execute them right after the V_BLANK-interrupt), but I would like
 that different (because it will also decrease the time left for other
 copies, i.e. the displaying of the character).
 
 Does anyone know a solution for that???

  These random flickering pixels are a pretty well-known phenomenon.
They appear whenever you change r#18 (Set Adjust register), while the
VDP is executing a COPY-command. Knowing this, the solution is obvious.
Just change change r#18 *before* you give the COPY commands or *after*
the COPY-commands have been executed.

  Bye, /\/\ark


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/)




Re: msx2 horizontal scrolling..

1999-05-20 Thread Frits Hilderink



Laurens Holst wrote:

 I have -almost- finished my scrollroutine...

 It scrolls in all directions and it has got a screensplit at the bottom.
 It uses sprites to mask the borders and takes about 50% of your VDP-time,
 but with some modifications it will probably also be possible not to use
 sprites.

 It is based on 8x8 patterns, and it scrolls all 16 pixels (8 seemed to be
 too slow). This means that your screen will be 16 pixels smaller (240x212),
 but that's not a real disadvantage.

 However, one problemo...
 When I set the adjust while a VDP-command is executing, there appear some
 'noise'-pixels on the screen. I can avoid that to happen by exact timing of
 my COPY's (execute them right after the V_BLANK-interrupt), but I would like
 that different (because it will also decrease the time left for other
 copies, i.e. the displaying of the character).

 Does anyone know a solution for that???


I had the same problem with these noise-pixels about 8 years ago in a horizontal
scrol in screen 5. Just a test back then if it was possible. I used a HMMM command
to copy the screen every 8 pixels. Per pixel scrolling happened with register 18. This
HMMM command used about 1.5 or 2 frames time (50 Hz) to complete. So it uses
about 25 % of the available time. The vertical lines where placed with 'vpokes'.
My scrol had only 5 directions (up, up-right, right, down-right, down) and a screen 
split
in the top of the screen (16 pixels in height). The top-side of the screen had a 
constant
value for register 18 the scrolling part ofcourse didn't.

The solution was changing the sequence in which the vdp registers where written:
are you writing register 18 before or after the command that you are executing.


 For example, during the screensplit I disable the screen, and at the end I
 enable it again. This however gave a white line at the lowest (second) line
 of the screensplit. I was able to solve this problem by making sure the
 screen was enabled during the H_BLANK-period...

 Is there some solution like this for the VDP_18-problem too???

 Thanks in advance,
 ~Grauw

 
 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/)
 



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/)




Re: msx2 horizontal scrolling..

1999-05-20 Thread Laurens Holst

  However, one problemo...
  When I set the adjust while a VDP-command is executing, there appear
some
  'noise'-pixels on the screen. I can avoid that to happen by exact timing
of
  my COPY's (execute them right after the V_BLANK-interrupt), but I would
like
  that different (because it will also decrease the time left for other
  copies, i.e. the displaying of the character).
 
  Does anyone know a solution for that???

Mark Zellenrath wrote:

   These random flickering pixels are a pretty well-known phenomenon.
 They appear whenever you change r#18 (Set Adjust register), while the
 VDP is executing a COPY-command. Knowing this, the solution is obvious.
 Just change change r#18 *before* you give the COPY commands or *after*
 the COPY-commands have been executed.

Frits Hilderink wrote:

 The solution was changing the sequence in which the vdp registers where
written:
 are you writing register 18 before or after the command that you are
executing.


Yes. Well, I change r#18 on the interrupt and I execute my COPY right after
the V_BLANK interrupt. So at the moment there is no problem. But this
screensplit is 52 lines high, so I can't execute COPY-commands at the 160th
and the 212th line, which decreases a lot of my time left for other COPYs. I
might be able to time it very carefully so I can insert some small COPYs
between those lines, but I hoped there was another solution for my problem
so that I wouldn't have to time that careful.

But, unfortunately, I guess I'm doomed now...

However, I made up a slight solution in the meantime, I don't know if it
works yet, but if it does it will make an end to the errors: Before I change
register 18 I will check if the Command Execute status-bit is set. If so, I
will send a STOP command to the VDP, and after that I will change register
18. After I've set VDP 18 I will resend the command the VDP was executing
(which I stored). If my information (that is the tables in Stefan Boer's VDP
cursus) is correct, this should work.

But I will have to test that to know if it really works... Does anyone know
if sending the STOP-command can result in an erroneous (???correct
English???) byte displayed?


~Grauw




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/)




Re: msx2 horizontal scrolling..

1999-05-19 Thread Ivan

HI! I know it's such an old question but I've been busy for some time. Don't read this 
if someone has answered you before because it's just a simple view.

Using Set adjust combined with a normal 8 block scroll and two screens would result in 
the desired smooth horizontal scroll. (that trick was proposed by MSX MEesXE
)
You can ask Nestor Soriano for more info. But I'll try to explain something.
Start with page 0 and set adjust set to the maximum right and scroll it to the set 
adjust maximum left
then prepare page 1 8 positions scrolled to the right and change the pages with set 
page. Do it again and restart!!!

Yes, it seems a bit strange, but it works!!! Try it!
Iván


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/)




Re: msx2 horizontal scrolling..

1999-05-18 Thread BiFi

On 2+ Space Manbow was masked using the hardware masking bit. It hard to
synchronize both enlarged and normal sprite sizes (the enlarged ones for masking).

I found something strange on 2+ though, the complete screen is moved upward by (I
think) 3 pixels. On MSX-2 is correct, but on 2+ Konami made a little error with
this. Anyway, it still is one of the best shoot-em-ups Konami ever made.

Patriek Lesparre schreef:

 Tha' demo scrolled the screen horizontal!! (just like
 vdp(24), but then horizontal..) HeXx said it was a
 lil trick, but he doesn't know what is was.. (as he made
 tha' a century ago! ;) ).. Well.. Does any1 know how
 to do tha' trick??

 I suspect it scrolled very smoothly very fast?
 It probably was just screen 4. You can use set adjust to scroll 8 pixels,
 then manually copy the entire left/right one character (8 pixels). This
 will give jerky edges, but you can mask them using sprites.

 Maybe you know Space Manbow was made in screen 4 as well? Although they
 didn't mask the edges with sprites... (although on a 2+ they were masked)

 I can faintly remember Hydefos being in screen 5, but that one scrolled
 very slow so there was enough time to have the VDP copy the screen (every
 interrupt a little piece).

 Greetz,

 Patriek

 [EMAIL PROTECTED]  ,-.  ,.  ,-.
 | '-.| ,-. \ '-' Visit our homepage:
 -The New Image- | ,-'| | | | ,-.
  Software and   | '--' | | '-' | http://www.tni.nl/
Internet `--' '-'

 
 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/)
 





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/)




Re: msx2 horizontal scrolling.. (why others don't use a smooth scroll)

1999-05-10 Thread Cas Cremers

tha' a century ago! ;) ).. Well.. Does any1 know how
to do tha' trick??


The trick has been explained by others, that's not my point...

(Laurens Holst:)


I don't know why games like SD-Snatcher, Nemesis, Dragon Slayer, Akin,
etcetera scroll 'liquid'... (why, why???). It should be possible... Is it
that they (the developers) are not as smart as I am? I can hardly
imagine...


1. SD-snatcher's scroll is actually coded badly. It uses a delay of some
ints, no matter what happens, so if there is much onscreen the game is
actually slower than necessary.
2. Dragon Slayer VI has a good engine: making a soft scroll would not have
allowed (a) as many software sprites and (b) sprites moving behind objects -
all that would take up more valuable VDP time, and there would be hardly any
left.
3. Nemesis has always been MSX1 compatible, every version
4. Akin. :) If you construct an engine that has 3 layers, 100x100 sprites
and still scrolls smoothly, I'll hire you.

In general, you will need time for other things: a smooth scroll on an MSX 2
using screen 5 takes up a lot of resources (VRAM, CPU time, VDP time) and
that's fine for a demo but not for a game. And then you still have to do
sprites in either software or hardware. I would not recommend horizontal
softscroll in a screen 5 msx2 game to anyone, even when they are very smart
:)

Fortunately, Space Mambo scrolls 'liquid'... But that game is programmed in
screen 4 (which I can imagine if you need that much sprites and animation).


And in level 4 (if I remember correctly) the scroll is actually very fast..,
also screen 4 allows big monsters to be moved easily, albeit in steps of 8
pixels.

Cas

http://www.stack.nl/~cas/par/




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/)




Re: msx2 horizontal scrolling.. (why others don't use a smooth scroll)

1999-05-10 Thread Laurens Holst

1. SD-snatcher's scroll is actually coded badly. It uses a delay of some
ints, no matter what happens, so if there is much onscreen the game is
actually slower than necessary.
2. Dragon Slayer VI has a good engine: making a soft scroll would not have
allowed (a) as many software sprites and (b) sprites moving behind
objects -
all that would take up more valuable VDP time, and there would be hardly
any
left.
3. Nemesis has always been MSX1 compatible, every version

But when using a MSX2 it uses the V9938.


4. Akin. :) If you construct an engine that has 3 layers, 100x100 sprites
and still scrolls smoothly, I'll hire you.

Hmmm... Yes... those sprites, eh?


In general, you will need time for other things: a smooth scroll on an MSX
2
using screen 5 takes up a lot of resources (VRAM, CPU time, VDP time) and
that's fine for a demo but not for a game. And then you still have to do
sprites in either software or hardware. I would not recommend horizontal
softscroll in a screen 5 msx2 game to anyone, even when they are very smart
:)

Resources: 2 screen 5 pages and about 3/4 of the time available for copying
(depending on if you are running on 50/60Hz)(. Way enough left for an RPG or
so.


Fortunately, Space Mambo scrolls 'liquid'... But that game is programmed
in
screen 4 (which I can imagine if you need that much sprites and
animation).

And in level 4 (if I remember correctly) the scroll is actually very
fast..,
also screen 4 allows big monsters to be moved easily, albeit in steps of 8
pixels.

Yup.


Cas

btw, what about Core Dump???


~Grauw




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/)




Re: msx2 horizontal scrolling..

1999-05-09 Thread Laurens Holst


i have a lil q.

'bout a week ago, HeXx and I (d-fader) watched a lil
demo HeXx and Michel Onstein made 'bout a century ago..
Tha' demo scrolled the screen horizontal!! (just like
vdp(24), but then horizontal..) HeXx said it was a
lil trick, but he doesn't know what is was.. (as he made
tha' a century ago! ;) ).. Well.. Does any1 know how
to do tha' trick??

I am busy on a same kind of scroll, it's for an engine for a
smooth-scrolling RPG!!! (Yeah I know, it's cool).

It works something like this:

10 SCREEN 5:V=VDP(19) AND HF0
20 FOR I=0 to 15
30 COPY (I*16,0)-(I*16+15,211),P TO ((I*16-16) MOD 256,0),1-P
40 VDP(19)=V+(I XOR 7):NEXT
50 P=1-P:SET PAGE P,1-P
60 GOTO 20

This should work (however not tested).

This is really cool. The clipping of the right/left borders can be masked
with black lines (not with sprites, for that slows down the VDP too much).
On the bottom of the screen is a border, like in SD-Snatcher or Pumpkin
Adventure II, which I made using a marvellous screensplit.

I think that if my engine is finished, I will put it on my webpage. It can
be used for several kind of games, for example RPGs (Strategic Army 0.5!),
Real Time Strategy-games (SA but I think I won't use it; scrolling is still
too slow) and Grand Theft Auto-like games (using JoyNet!)... And, ofcourse,
when the computer it is running on is a MSX2+, it will use the features of
the MSX2+. And if you really need the speed, you can make an option that on
a normal MSX2 it can only be run in 50Hz-mode (then you've got more time
left for the COPYs).

I don't know why games like SD-Snatcher, Nemesis, Dragon Slayer, Akin,
etcetera scroll 'liquid'... (why, why???). It should be possible... Is it
that they (the developers) are not as smart as I am? I can hardly imagine...
Fortunately, Space Mambo scrolls 'liquid'... But that game is programmed in
screen 4 (which I can imagine if you need that much sprites and animation).

And by the way, does Illusion City already work on the Emulator?
And by the way 2, is Moonlight Saga being translated into English?
And by the way 3, is the new "RPG-subscription" of Umax very cool?
And by the way 4, I got stuck with the Lost World... Is somebody who
finished it willing to help me out?


~Grauw




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/)




Re: msx2 horizontal scrolling..

1999-05-08 Thread john . j

[EMAIL PROTECTED] schrieb:

 Tha' demo scrolled the screen horizontal!! (just like
 vdp(24), but then horizontal..) HeXx said it was a
 lil trick, but he doesn't know what is was.. (as he made
 tha' a century ago! ;) ).. Well.. Does any1 know how
 to do tha' trick??


1) was it on a v9958 chip?
2) were the borders "breaking away" in 8 dot units?


JJoS


--
Tilburg Team: Did a great job!!
--
I hate bugs! - I like Starship Troopers...




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/)




Re: msx2 horizontal scrolling..

1999-05-08 Thread twz

 Tha' demo scrolled the screen horizontal!! (just like
 vdp(24), but then horizontal..) HeXx said it was a
 lil trick, but he doesn't know what is was.. (as he made
 tha' a century ago! ;) ).. Well.. Does any1 know how
 to do tha' trick??


1) was it on a v9958 chip?
2) were the borders "breaking away" in 8 dot units?

nopez.. it was on a v9938.. (that's why i ask.. i know
the 58 can scroll vertical and horizontal..) 
And nopez.. the borders were not breaking away..

It's a trick.. I thought the vdp(24) is disabled if you
use it.. Maybe it flips the screen 90 degrees.. (or some
thing..)

d-fader, HeXx



---
Get free personalized email at http://www.iname.com


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/)




Re: msx2 horizontal scrolling..

1999-05-08 Thread Anne de Raad

Why should it be a trick?! Using the VDP-register 18 you can scroll
horizontally, but only a few pixels, it is the registers which in BASIC can
be controlled with VDP(19) Maybe more familiar, the SET
ADJUST-command uses it...

And the reason the border isn't flickering, well, I guess they put some
black sprites there, so no one sees the copying..

It is just a matter of copy and scroll...

Anne

p.s. And yes, of course, vertically is so much easier.Not to speak of
the V9958



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/)




Re: msx2 horizontal scrolling..

1999-05-08 Thread Maarten ter Huurne

At 07:43 PM 05/07/99 -0400, you wrote:

'bout a week ago, HeXx and I (d-fader) watched a lil
demo HeXx and Michel Onstein made 'bout a century ago..
Tha' demo scrolled the screen horizontal!! (just like
vdp(24), but then horizontal..)

I think I know the trick. Assuming it's an MSX2 demo, because horizontal
scrolling on a 2+ doesn't even require a trick, just the right register
number.

Using the same VDP register used for SET ADJUST (vdp(19)???), you can move
the screen 16 pixels horizontally. This is not like vdp(24), because the
screen doesn't wrap around, only the border widths change. So you can see
the edge of the screen moving. But the middle of the screen is scrolling OK.
Part 2 is that while you take several interrupts to scroll those 16 pixels,
you copy the entire screen to another VRAM page, 16 pixels shifted. So that
once the SET ADJUST scrolling has reached its limits, you can do a page
switch and start all over again.
Part 3 is to make the screen edge appear to be stable. If you skip this,
you get the effect of Space Manbow running on MSX2. One way is to make
solid black sprites and use them to cover pixels in the border that
shouldn't be visible. Another way is to make the VDP update the outer lines
using a command. For example, draw a black box (1 pixel wide) on the left
edge of the screen and copy a strip of GFX (1 pixel wide) on the right edge
of the screen. This requires proper timing, otherwise the outer lines will
flash.

The intro of Almost Real (skyline scroll) uses this trick (and some others).

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/)




msx2 horizontal scrolling..

1999-05-07 Thread twz

hey ppl..

i have a lil q.

'bout a week ago, HeXx and I (d-fader) watched a lil
demo HeXx and Michel Onstein made 'bout a century ago..
Tha' demo scrolled the screen horizontal!! (just like
vdp(24), but then horizontal..) HeXx said it was a 
lil trick, but he doesn't know what is was.. (as he made
tha' a century ago! ;) ).. Well.. Does any1 know how
to do tha' trick??

thnx.
HeXx and d-fader
TeddyWareZ



---
Get free personalized email at http://www.iname.com


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/)