Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > CSDb Discussions > Games that use VSP
2017-01-15 13:39
Comos

Registered: May 2004
Posts: 73
Games that use VSP

Firts of all, I wanted to start this thread as a small research,coz during the years I encountered few game titles,that keeps crashing for a not well reason to me,but regarding VSP and especially VSP bug,that few years back was discovered seems it might have an explanation.

Here are titles, that Im aware of,that might use this technique,because of in game random crashes.

Creatures 1,Mayhem in Monsterland, Fred's Back 4

Creatures 1

Crashes mostly during starting of the game,when the screen scrolled horizontaly from right to left.Usually when I pass this, the game runs okay.

Mayhem in Monsterland

Besides, that the use of VSP is well known here I guess, this game crashes rarely during the character movement,atleast in my case.

Fred's Back 4 (Fred's in Troubles)

Maybe it's also related to whole Fred's Back series,but mostly I had problem with the last one.20 years ago,when I played this game, the game crashed for me everytime at the same level at the same place so I considered it as a bad swapper's copy.20 years later,when I wanted to try to finish the game,I tried again the AVT crack,that I had from the beginning,but a copy from csdb,but this time, the game crashed allmost immediately when the first level got loaded.I tested several other cracks,but had the same result.WTF?

The possibilities like kill cart,remove cart, remove everything have been considered,but still no luck.
Does anyone had similar issues or knows more games,that might crash?
2017-01-15 14:57
chatGPZ

Registered: Dec 2001
Posts: 11350
"Another World" is the prime example i guess, it even constantly saves game progress, so you can reload and continue when it crashes =P

other than that, you could look at the vice log when "vsp bug" is enabled in x64sc - i think you will notice that even a lot of old stuff that doesnt explicitly use vsp triggers the bug
2017-01-16 09:25
Comos

Registered: May 2004
Posts: 73
Quote: "Another World" is the prime example i guess, it even constantly saves game progress, so you can reload and continue when it crashes =P

other than that, you could look at the vice log when "vsp bug" is enabled in x64sc - i think you will notice that even a lot of old stuff that doesnt explicitly use vsp triggers the bug


Good idea, thanks for the tip !
2017-01-16 10:37
oziphantom

Registered: Oct 2014
Posts: 490
I think Misfortune is VSP
2017-01-17 06:00
skull

Registered: Jun 2005
Posts: 6
I used VSP in Bomberland Preview
2017-01-17 15:09
Jammer

Registered: Nov 2002
Posts: 1335
Obviously Mythos Preview, hidden in Krestage 3 ;)

Circling around the scroll topic, I always wondered how games like Flimbo's Quest or Hawkeye pull off that complex second plane ;)
2017-01-17 17:07
Hein

Registered: Apr 2004
Posts: 942
Quote: Obviously Mythos Preview, hidden in Krestage 3 ;)

Circling around the scroll topic, I always wondered how games like Flimbo's Quest or Hawkeye pull off that complex second plane ;)


lda, sta.. that's it. And an obviously small game screen with a huge scoreboard.

As a sidenote: The original Hawkeye 2 (and the Onslaught version) used VSP too IIRC and Mario figured it crashed on some machines, so he decided to pass it on to his friends from X-ample.
2017-01-17 18:49
White Flame

Registered: Sep 2002
Posts: 136
The original Hawkeye 2 that came to GTW did not have VSP, and was just a regular double buffer with lots of LDA/STA. I had the VSP idea as applied to parallax and added it to the Onslaught preview when I was reworking the code to relax timing constraints. There's no attempt to keep it "safe" on VSP bugged machines, so it's either bug-resistant real hardware or emu to run.
2017-01-17 21:15
Hein

Registered: Apr 2004
Posts: 942
Quote: The original Hawkeye 2 that came to GTW did not have VSP, and was just a regular double buffer with lots of LDA/STA. I had the VSP idea as applied to parallax and added it to the Onslaught preview when I was reworking the code to relax timing constraints. There's no attempt to keep it "safe" on VSP bugged machines, so it's either bug-resistant real hardware or emu to run.

Ah, my bad. I mixed up two discussions with Mario then.
2017-01-18 09:02
enthusi

Registered: May 2004
Posts: 677
@Jammer, paralax scrolling is a different beast.
Basically you keep aside a number of chars for the back-layer and scroll the content of those chars accordingly.
(usually be toggling charsets)
2017-01-18 17:10
Jammer

Registered: Nov 2002
Posts: 1335
Yeah, I know what happens exactly in parallax ;) It's just such complex areas initially seemed to me like serious rastertime and charbook overhead (but still to be handled in one frame apparently) ;)
2017-01-18 18:47
Hein

Registered: Apr 2004
Posts: 942
There are 3 frames available for updating the dubbel screen buffer, then 1 frame for updating the color ram. Quite doable, even rolled up, if the game screen isn't too high. Both Flimbo and Hawkeye don't have a multiplexer and sorting to do. H2 does have all that AND other cool features. So yeh, VSP is a good option to help with the fast 50fps scrolling.
2017-01-18 19:00
White Flame

Registered: Sep 2002
Posts: 136
Quoting Hein
Ah, my bad. I mixed up two discussions with Mario then.

It could be that they discussed or attempted VSP internally, before the GTW version that was eventually distributed, so you might not be wrong.
2017-01-18 19:07
Jammer

Registered: Nov 2002
Posts: 1335
Just for the record - VSP has to be updated every 8th line, right? :)
2017-01-18 19:18
Digger

Registered: Mar 2005
Posts: 427
Quote: Just for the record - VSP has to be updated every 8th line, right? :)

Nope. You only need to trigger it once :) You basically trick the VIC with changing $d011 on the right cycle, depending on the desired offset. Check out LFT's thread New VSP discovery
2017-01-18 19:19
Hein

Registered: Apr 2004
Posts: 942
Only the first badline if it's full-screen. Not each badline.
2017-01-18 19:20
Scan

Registered: Dec 2015
Posts: 111
@Jammer: No, only at the beginning of where you want to trigger the VSP effect. Only drawback is that 3 weird blocks appear which you need to mask out (in Insert Name Here I did it using an invalid graphics mode, but sprites could be used as well, I guess). Here's a screenshot of a work in progress phase. The three blocks could be masked black (the lower 4 bits of the next instruction after VSP triggering determine the color, a cpx #$00 would have it turned black). Unfortunately I also triggered redrawing the last line. Since I didn't know how to cope with it I decided to mask it out using the invalid graphics mode described above.)


2017-01-18 19:27
Jammer

Registered: Nov 2002
Posts: 1335
Thx guys! I was curious being rather unsuccessful with oneshot triggering myself ;)
2017-01-18 20:18
JackAsser

Registered: Jun 2002
Posts: 2014
@scan: normally you'd line crunch away that first row of chars with a simple inc $d011 immediatly after the dec $d011 you did to start the vsp. Then mask the single line of pixels under the upper border
2017-01-18 20:25
Count Zero

Registered: Jan 2003
Posts: 1920
Just to add to the examples above: Jim Slim +8FHP also uses VSP.
2017-01-18 20:31
algorithm

Registered: May 2002
Posts: 705
Also Phobia by ratt used vsp. Great graphics, what a hard game it was however.
2017-01-18 20:53
Hein

Registered: Apr 2004
Posts: 942
Quote: Also Phobia by ratt used vsp. Great graphics, what a hard game it was however.

Thanks for the tip, looks very cool. Hadn't seen it before.
2017-01-18 21:22
Jammer

Registered: Nov 2002
Posts: 1335
Ok, I figured out it's 49/50th line where magic happens ;)
2017-01-18 21:50
Oswald

Registered: Apr 2002
Posts: 5086
Quote: Only the first badline if it's full-screen. Not each badline.

afaik, VSP can only be done on an idle line, that is either top / bottom border, or tear yourself one with "fld".

caused me big headaches when I wanted a vsp also in the middle of the screen.

basically its a dec/inc d011 iirc, and the horizontal timing of it is where the first screen column should start (or offsetted if you want) around where the dec happens will be column 0.
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Mojzesh/TGR🇬🇧
theK/ATL
Epyx/TSA
WVL/Xenon
Thunder.Bird/HF/MYD!..
katon/Lepsi De
Sychamis
Unlock/Padua/Albion
Ax!s/Onslaught - TND
Vent
MWR/Visdom
psych
hedning/G★P
Almighty God/Level 6..
Acidchild/Padua
rambo/Therapy/ Resou..
Brittle/Dentifrice^(?)
Alta
Guests online: 132
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 Mojo  (9.6)
6 Uncensored  (9.6)
7 Wonderland XIV  (9.6)
8 Comaland 100%  (9.6)
9 No Bounds  (9.6)
10 Christmas Megademo  (9.5)
Top onefile Demos
1 Layers  (9.6)
2 Party Elk 2  (9.6)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.6)
5 Libertongo  (9.5)
6 Rainbow Connection  (9.5)
7 Onscreen 5k  (9.5)
8 Morph  (9.5)
9 Dawnfall V1.1  (9.5)
10 It's More Fun to Com..  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Nostalgia  (9.3)
5 Censor Design  (9.3)
Top Graphicians
1 Mirage  (9.7)
2 Archmage  (9.7)
3 Mikael  (9.6)
4 Carrion  (9.6)
5 Sulevi  (9.6)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.074 sec.