VOGONS


New slow down/speed up program

Topic actions

First post, by vladr

User metadata
Rank Oldbie
Rank
Oldbie

The successor of PITSET is here!

SPEEDSET allows both speeding-up and slowing-down of DOS applications. It also works with pretty much all DOS applications (as opposed to PITSET, which only worked with a limited number of games).

Attached is the first version of SPEEDSET. To install, simply unzip in any directory and use it as follows:

SPEEDSET <speed> <dos-program.exe/.com> [<dos-program-arguments> ...]

A negative value for <speed> means that the game should be sped up, whereas a positive value means that it should be slowed down. Typical values would include -3 for moderate speed-up (e.g. Monkey Island), -60 for massive speed-up (e.g. Star Control, Another World), +90 for slow-down. As usual, experiment a bit until you find the right value.

You cannot pass .BAT files as arguments to SPEEDSET! Edit the .BAT file instead and insert the call to SPEEDSET, inside the .BAT, just before the .EXE is called.

To use SPEEDSET with LaunchPad simply create a .BAT file that passes to SPEEDSET the game/program you want to run, the "Run with VDMS" the .BAT file in question.

Sample .BAT files that uses SPEEDSET:

SPEEDSET -3 MONKEY.EXE S

or

C:
CD C:\GAMES\SC2
D:\UTIL\SPEEDSET.EXE -60 .\STARCON2.EXE /s:LPT1

Cheers,
Vlad.

Attachments

  • Filename
    speedset.v0.4.zip
    File size
    23.57 KiB
    Downloads
    1372 downloads
    File license
    Fair use/fair dealing exception

Reply 3 of 29, by Stiletto

User metadata
Rank l33t++
Rank
l33t++

Nifty idea:
Detect processor speed, maintain database (somewhere) with approx. maximum processor speeds for each game (impossible IMHO), auto-divide/multiply, etc.

I doubt it would ever happen though...

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 5 of 29, by Dominus

User metadata

he he, that new util is fun 😀 Trying out which game runs and which games behaves badly is really funny.
Especially in the case of Ultima 7 (only runs with U7runs u7dpmi.com), at a certain speed setting the game loops the intro indefinitely, even if you get the chance to press "journey onward" it plays the intro again 😀

All my other games don't need it or won't start with it.
And Tyrian2k seems to ignore it completely...

Reply 6 of 29, by Deathifier

User metadata
Rank Newbie
Rank
Newbie

Quite interesting, I only have one game at the moment which runs in ultra-fast mode - Magic Carpet Plus - so I tried it on that 😀

The results were mixed, running with the VDMS launchpad (but with in-game sound disabled, since it was going beserk, more on that in another thread) on a batch file I made up (all it does is change to E:\ and call speedset, which is in the VDMS directory and so is in the path) I found the following:

The startup and intro is slowed, but once it hits the main game screen it returns to 'normal' (breakneck) speed and runs like that within the game as well 😀

A while ago I did try some 'Turbo' program, suggested on the old forums. That actually worked, however it also slowed the music and sound effects to a crawl, so I could play the game but it sounded terrible, and it also caused issues with exiting the game (like it freezing, and since the *entire* system was slow, I couldn't switch out...).

Any suggestions on how to slow the gameplay down without slowing the sound, music and my entire system with it?

- Deathifier
(System specs here)

Reply 7 of 29, by vladr

User metadata
Rank Oldbie
Rank
Oldbie

Actually speedset is not very good at slowing down right now because of the 10ms granularity it uses (which is fine for speed-up but not for slow-down, where a 1ms granularity would be better/smoother/more effective). I'll provide an improved SPEEDSET one of these days (this weekend if possible).

V.

Deathifier wrote:
Quite interesting, I only have one game at the moment which runs in ultra-fast mode - Magic Carpet Plus - so I tried it on that […]
Show full quote

Quite interesting, I only have one game at the moment which runs in ultra-fast mode - Magic Carpet Plus - so I tried it on that 😀

The results were mixed, running with the VDMS launchpad (but with in-game sound disabled, since it was going beserk, more on that in another thread) on a batch file I made up (all it does is change to E:\ and call speedset, which is in the VDMS directory and so is in the path) I found the following:

The startup and intro is slowed, but once it hits the main game screen it returns to 'normal' (breakneck) speed and runs like that within the game as well 😀

A while ago I did try some 'Turbo' program, suggested on the old forums. That actually worked, however it also slowed the music and sound effects to a crawl, so I could play the game but it sounded terrible, and it also caused issues with exiting the game (like it freezing, and since the *entire* system was slow, I couldn't switch out...).

Any suggestions on how to slow the gameplay down without slowing the sound, music and my entire system with it?

- Deathifier
(System specs here)

Reply 9 of 29, by vladr

User metadata
Rank Oldbie
Rank
Oldbie
Unregistered wrote:
Very good, I've been looking for it for a long time! But there's a little problem: when I set "-2" so as to speed up the game, i […]
Show full quote

Very good, I've been looking for it for a long time!
But there's a little problem:
when I set "-2" so as to speed up the game, it doesn't work and when I set "-3" it is too fast!!!

My OS is XP, what should I do to have the correct speed?

Treepwood
Treepwood@voila.fr

Hello,
The next version of SPEEDSET should have finer granularity at the low end of the scale (right now it more or less rounds off to 1x, 2x, 3x and so on the game's timer, but some fractional values should be achievable). Are you trying to run Monkey Island? -3 should be fine, though (at least according to my test, though I haven't played MI on a "real" DOS computer for quite a while to know what normal speed means). In any case, you can slo try DosBox which is impervious to Windows' timer limitations and runs MI relatively well (other than not having Roland support -- yet).

V.

Reply 10 of 29, by Unregistered

User metadata
vladr wrote:

Hello,
The next version of SPEEDSET should have finer granularity at the low end of the scale (right now it more or less rounds off to 1x, 2x, 3x and so on the game's timer, but some fractional values should be achievable). Are you trying to run Monkey Island? -3 should be fine, though (at least according to my test, though I haven't played MI on a "real" DOS computer for quite a while to know what normal speed means). In any case, you can slo try DosBox which is impervious to Windows' timer limitations and runs MI relatively well (other than not having Roland support -- yet).

V.

Not really. Monkey Island doesn't need to be accelerated, it runs at the right speed so I don't use Speedset for it.
But the problem is that, in fact, Speedset doesn't work (for ALL applications, not for one in particular) with the values

from +99 until -2.
So it only speeds up and only from -3 until -99. With -3, the game is too fast and with -2 Speedset doesn't change the

speed at all (it doesn't even speed up a little bit) !!!
There's another problem with Flight Of The Amazon Queen: Speedset doesn't change the speed from -99 to +99 !!!!!

Does someone else have the same problem?
Is it a bug of the program or is it the fact that I don't manage to use it?

Et Puis tiens tant que j'y suis...
I have another kind of problem that doesn't concern Speedset.
I would like to run Beneath A Steel Sky but I can't; a message appears:

INTERRUPT 0DH, GENERAL PROTECTION FAULT possible illegal address
error code = 0000
eax = 0000000C esi = 00000000 flags = 3206 ds = 01BF
ebx = 00000001 edi = 0005BDF0 eip = 0000B3D2 es = 01BF
ecx = 00000000 ebp = 00000004 cs = 01B7 fs = 0187
edx = 0005EE00 esp = 0005EDE4 ss = 01AF gs = 017F

...and the game doesn't run.

What can I do?

Thanks,
Treepwood.

Reply 11 of 29, by vladr

User metadata
Rank Oldbie
Rank
Oldbie
Unregistered wrote:

Not really. Monkey Island doesn't need to be accelerated, it runs at the right speed so I don't use Speedset for it.
But the problem is that, in fact, Speedset doesn't work (for ALL applications, not for one in particular) with the values

from +99 until -2.

Very likely. The priority for this release was to get the speed-up, since slow-down can be achieved with existing apps like MOSLO and TURBO, but there is no other app that provides speed-up AFAIK so SPEEDSET was released as soon as it was tested with the games that needed speed-up. Slow-down was also included in the design, but is not optimally implemented (try +100 if you've got guts 😁 ).


So it only speeds up and only from -3 until -99. With -3, the game is too fast and with -2 Speedset doesn't change the
speed at all (it doesn't even speed up a little bit) !!!



Yes, that's because of the granularity. If you look in the source-code you'll see the logarithmic function SPEEDSET uses and that because of roundoff -2 and -1 and 0 are about the same.


There's another problem with Flight Of The Amazon Queen: Speedset doesn't change the speed from -99 to +99 !!!!!



That's interestimg; probably due to Amazon Queen removing the IRQ6 handler used by SPEEDSET to generate INT8's. Too bad Windows doesn't properly support the slave PIC (or I did something really stupid, but one thing is certain, I can't generate IRQs on the slave PIC from NTVDM.EXE). Harekiet may provide some insight since he's been spending quite a bit of time with PIC (among other things) emulation. 😀


Does someone else have the same problem?
Is it a bug of the program or is it the fact that I don't manage to use it?



More of a limitation.

I have another kind of problem that doesn't concern Speedset. I would like to run Beneath A Steel Sky but I can't; a message ap […]
Show full quote


I have another kind of problem that doesn't concern Speedset.
I would like to run Beneath A Steel Sky but I can't; a message appears:

INTERRUPT 0DH, GENERAL PROTECTION FAULT possible illegal address
error code = 0000
eax = 0000000C esi = 00000000 flags = 3206 ds = 01BF
ebx = 00000001 edi = 0005BDF0 eip = 0000B3D2 es = 01BF
ecx = 00000000 ebp = 00000004 cs = 01B7 fs = 0187
edx = 0005EE00 esp = 0005EDE4 ss = 01AF gs = 017F

...and the game doesn't run.



Do you need to use SPEEDSET with BSS? Does BSS run fine without SPEEDSET? I managed to play BSS under NT4, with occasional crashes, but nothing save/restore couldn't fix. How about you, does it always crash at startup or in the menu?

V.

Reply 12 of 29, by Unregistered

User metadata

I’m sorry but my English isn’t perfect, so excuse me if I you don’t understand what I say (I am French).

No!!! I told you it didn’t concern SPEEDSET! It crashes as soon as I want to run the game (without Speedset!), but the config menu works. This message appears even if I don’t run it with VDMSound. It was just a single question and I asked myself if there was a solution… Do you?? (NB: is it because of the NTFS?)

-------------------------------------------

I really hope that you are about to finish the new version of Speedset with LINEAR function or better: a REALLY finer granularity scale (for exemple 2.6 or 2.68 why not!!). I am waiting for it!!! I want to play my old games!!!!!
Remember: -2 is really too slow and –3 is really too fast! I don’t understand how I could play a game with –30 like you explained!! It is inhuman to play so fast!!

I’m able to program but how could I reach the source code so as to modify it like I want? (Speedset is a freeware, isn’t it?). Do I have to use a software?

-------------------------------------------

Treepwood.

Reply 13 of 29, by vladr

User metadata
Rank Oldbie
Rank
Oldbie

OK, I dug up my copy of BSSKY, and I have some good and some bad news:

1) Good news: on Win2k it works just fine for me (starts up, I can get the bar from the wall to open the fire exit door, etc.) So if it crashes for you then your version of the game must be broken. Below are the checksums and file sizes I get in my .zip archive:

PKUNZIP (R)    FAST!    Extract Utility    Version 2.50   03-01-1999
Copr. 1989-1999 PKWARE Inc. All Rights Reserved. Shareware Version
PKUNZIP Reg. U.S. Pat. and Tm. Off.

¡ Pentium II class CPU detected.
¡ XMS version 2.00 detected.
¡ DPMI version 0.90 detected.

Searching ZIP: BSSKY.ZIP

Length Method Size Ratio Date Time CRC-32 Attr Name
------ ------ ----- ----- ---- ---- -------- ---- ----
28179 Stored 28179 0% 08-14-1998 04:47 6d0af904 --wa INSTALL.EXE
8827283 DeflatX 7617977 14% 08-14-1998 04:47 45c8a267 --wa SKY.DSK
53720 DeflatX 14027 74% 08-14-1998 04:47 be0b9468 --wa SKY.RST
11564 DeflatX 10257 12% 08-14-1998 04:47 2383f297 --wa SKY.DNR
10704 DeflatX 4202 61% 08-14-1998 04:47 5e45b3c0 --wa SKY.RPL
401452 DeflatX 146231 64% 08-14-1998 04:47 5eb60024 --wa SKY.EXE
5 Stored 5 0% 08-14-1998 04:49 1bd89e84 --wa SKY.CFG
5349 DeflatX 1389 75% 03-19-1994 20:41 04bf3400 --wa CRACK/CONTOUR.NFO
653 Stored 653 0% 03-19-1994 20:36 28d5b357 --wa CRACK/CRACK.EXE
3216 Stored 3216 0% 09-02-1994 17:07 76f81186 --wa CRACK/BSSCRK.EXE
273 DeflatX 150 46% 03-19-1994 20:38 ce6a682d --wa CRACK/FILE_ID.DIZ
------ ------ --- -------
9342398 7826286 17% 11

Also try both "SoundBlaster/Adlib" (don't forget to set IRQ to 7!!) and/or Roland (port 330), since the problem may appear with one but not with the other (in my case both work fine, but you never know).

2) Bad news: SPEEDSET doesn't work with BSSKY (I guess it's generally the case with some/all protected-mode games).

Also, the source-code for SPEEDSET should be in the SPEEDSET .zip file, no? You need a C compiler (like Borland C++, which is what I now use -- freely available from http://www.inprise.com in exchange for some personal information). Adding floating point support however would bloat the file too much (it's already way too big for its own good).

Cheers,
V.

Reply 14 of 29, by Snover

User metadata
Rank l33t++
Rank
l33t++

You need a C compiler (like Borland C++, which is what I now use -- freely available from http://www.inprise.com in exchange for some personal information). Adding floating point support however would bloat the file too much (it's already way too big for its own good).

Any reason you use Borland C++ over MSVC++ (aside from the fact that it's free)? Is it easier to use? I mean, C++ is way over my head (for now...) but it could also be that VC++ is just too damn hard.

Regarding floating point support -- I think that the size bloat would be worth it, honestly. It's an important feature, especially with all the complaints about its granularity.

Yes, it’s my fault.

Reply 15 of 29, by vladr

User metadata
Rank Oldbie
Rank
Oldbie
Snover wrote:

Any reason you use Borland C++ over MSVC++ (aside from the fact that it's free)? Is it easier to use? I mean, C++ is way over my head (for now...) but it could also be that VC++ is just too damn hard.

Regarding floating point support -- I think that the size bloat would be worth it, honestly. It's an important feature, especially with all the complaints about its granularity.

Borland C++ generates 16-bit code (DOS: good), whearas MSVC generates 32-bit code that needs either Windows or a DOS extender (DOS: bad). So it has to be Borland C++, or an old MS compiler (not "visual"), or Watcom, or some other "antiquity". 😀 If I had the time and will I'd have written the bloody thing in MASM (smaller, etc.), but frankly I've got better things to do. 😉

V.

Reply 16 of 29, by Unregistered

User metadata

Merci d'avoir porté intérêt à mon article posé sur le site de Grospixels.
Si j'avais su que tu parlais français je ne me serait pas embêté à essayer d'aligner quelques mots d'anglais!

Bah! Ca ne peut qu'être bon pour moi!

Et cette nouvelle version de Speedset, ça avance?

Cordialement,
Treepwood

Reply 17 of 29, by Snover

User metadata
Rank l33t++
Rank
l33t++

SYSTRANet translation (for those of us that DON'T speak French) with some Englishising:

Thanks for taking interest in my post on Grospixels.
If I had known that you spoke French I would not have tried to write in English!
Bah! This is good!
Does the new version of Speedset have more advancements? [?]

Yes, it’s my fault.

Reply 18 of 29, by vladr

User metadata
Rank Oldbie
Rank
Oldbie
Snover wrote:

SYSTRANet translation (for those of us that DON'T speak French) with some Englishising:

He, he... 😀

Thanks for taking interest in my post on Grospixels. If I had known that you spoke French I would not have tried to write in En […]
Show full quote


Thanks for taking interest in my post on Grospixels.
If I had known that you spoke French I would not have tried to write in English!
Bah! This is good!



"This can only be good for me"


Does the new version of Speedset have more advancements?[?]



"Is the new version of Speedset advancing?" No, not really, I haven't touched it. I only work on non-work related stuff during weekends (othere than monitoring this forum and the web, which I do daily), and right now I'm multiplexing my weekends between VDMSound, Speedset, and the MT-32 emulation + connex sub-projects (i.e. "digital probe", which eveolved into "homebrew FPGA programming", which I don't know what else it will evolve into). I'm really happy that DosBox is coming along, though.

V.