VOGONS


First post, by ped7g

User metadata
Rank Newbie
Rank
Newbie

How I did detect problem (a bit longer description, sorry, just be patient):

I Got Geof Crammond's "Stunt car racer" (e-mail me at ped 7gods.org ... put @ after ped... for files).
This beauty does work under Win2k w/o dosbox too, but sometimes the keys does "stuck" and it does use PC Speaker, what I don't like.
Under dosbox it does work identically to original except the speaker is silenced (when emulation is off of course :)) and keys do work w/o "stucking". And this weird bug is added in DosBox:

When I ride Division 2 track "Roller Coaster", I have there plenty of "turbo nitro" ~75 at start of race.
When it goes down to 66 or 65, suddently it does drop to 05 in dosbox!
Under w2k it does work correctly (i.e. 64, 63, ...).

As I'm experienced x86 asm programmer, I do suspect some minor bug with flags updating after some type of SUB / DEC instruction, maybe BCD number format is used, and carry/zero flags are ok, but overflow looks to be used in this game.

Honestly, this is very vague guess, because the 65 number doesn't look to be special for me in any way, both in hexa, or BCD or dec... but I didn't work with x86 asm for some time, and maybe I'm just missing something obvious.

You should check your AAS/AAA/etc.. functions behaviour, both carry and overflow flag related. (overflow = auxiliary carry in x86 terminology I think, I'm still haunted by Z80 asm ... :D)

If you are sure you have correct emulation of those, I may even try to allocate some spare time, and debug into the game to find out exact instructions for decreasing the nitro value. I know that would help greatly to identify the problem, but it would take me probably several hours/couple of days, as I never spend too much time by hunting "pokes" and creating trainers for games, I loved to write my own code since the beginning. :))))
(if some old-school x86 experienced crack/trainer creator is reading this, and he didn't forget what tools are apropriate for such job, he may try to help me :) thanks)

Please, reply to my e-mail, if possible. :) Thanks.

... err, almost forget to post this:
DosBox 0.61 was used, with all CPU core options (normal/full/dynamic).

I'm not bothering to post my system info, as the game does work correctly w/o DosBox and the problem is 90% either CPU emulation, or cache/memory rewrites.. the second one would be probably visible in more titles, while the AC flag is very good candidate, as this one is never used by C/C++ compiler (as far, as I'm aware), and not many ASM programmers use it (I did use the AC behaviour for like 5 times in my life, and I wrote more than 2MB of ASM x86 sources back in those years).

--
it's not you, it's me.

Reply 1 of 4, by Papa Lazarou

User metadata
Rank Newbie
Rank
Newbie

Hi ped7g,

Two old tools that you could use to watch the nitro values are GameTools and Cr*ckerMate386.
These are memory resident debuggers that you can use to monitor the game and look for decreasing lifes etc...

Both date from around 1992/93 - CM386 was freeware, and GT was shareware in that it would unlock an emm386 compatible version if you registered.

Google let me down, but a search with Altavista succeeded -
Gametools v3.23: http://www.gamers.org/pub/archives/uwp-uml/ro … cks/gt3-323.zip
Cr*ckerMate386: http://www.gamers.org/pub/archives/uwp-uml/ro … ks/cm386210.arj

Gametools is the more powerful of the two. Unfortunately there seems to be a problem with it in DosBox as it corrupts the screen when you view the 'user screen' or exit back to the game from it...

I hope Qbix and Snover don't mind me posting links to these two utils of ill-repute, my appologies if they do - just trying to help!

Btw. The site that I've linked to appears to have a complete mirror of the now defunct "ftp.uwp.edu" which back in the early 1990's (before the www) was a great resource for those of us 'studying' at universities!

http://www.gamers.org/pub/archives/uwp-uml/

There's lots of old code, demos and freeware/shareware for DOS and Win3.x, and the romulus directory in particular holds lots of patches, hints and cheats for the dos games of this era.
Really great to find it hasn't been lost... aah... this takes me back 😁

Reply 2 of 4, by Stiletto

User metadata
Rank l33t++
Rank
l33t++

Speaking as a moderator, I don't care too much about making mods/cracks/patches/trainers because sometimes they are the only way to play Very Old Games On New Systems. 😉

I DO, however, care about warez. Yes, patches/trainers can be used to circumvent copy protection, but you still have to get a copy of the game from somewhere. If you don't already own the game, obtaining a copy other than by purchasing is usually illegal.

That, at least, is my opinion. 😉

Also, telling people how to crack the executable is very different than distributing your crack. I would imagine the distinction is also legally different..

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

Stiletto

Reply 3 of 4, by ped7g

User metadata
Rank Newbie
Rank
Newbie

[getting way too legal can end like this:]
Actually in legal-point-of-view we are not discussing a way to crack nor modify (train) the original game, we are looking for a convenient way to reproduce an core CPU emulation bug, wich can be observed in above mentioned game.
This is for both educational purpose only and no results of reverse engineering (for educational purpose) will be presented to public, as the problematic instructions will be presented in different piece of source written solely by the hereby bug reporting person.
And the result of such action will be fix for non-commercial piece of software, so no commercial activity will gain anything of this.
[end of nonsense talking]

I'm not going to bother to hunt for the exact code, until DosBox developers ask me to. I'm really short of spare time, so I'm waiting for some developer to answer this, whether such bug is possible, and what else I should try, or whether they need my further input in this case to help it. If they don't want to look into it, because they have more important issues, I wan't not waste my and their time. 😀

--
it's not you, it's me.

Reply 4 of 4, by ped7g

User metadata
Rank Newbie
Rank
Newbie

I have issue with this forum web also, and I can't "pm" to moderators, so I'm adding it here. Either some moderator will notice it, or not, it's after all not that big issue, just very annoying.

When I hit shift+LMB in MSIE at topic at vogons, the new window is opened with topic content (this is standard and wanted behaviour), and in the old window the topic is loaded TOO (this is non-standard unwanted and annoying behaviour).
This problem also happens in mozilla, if Ctrl+LMB (new tab) is used.

I did bother to check with phpBB support at IRC, and they were kind enough to check for me, whether it is phpBB specific behaviour. It is not.

Actually some javascript of vogons forums web looks to be the problem.
Can you fix it?

--
it's not you, it's me.