VOGONS


First post, by Turrican

User metadata
Rank Newbie
Rank
Newbie

Hi!

I'm one of the developers of turrican 2, which does not work with DOSbox, so here are some hints to get it running:

1. SMSW ax should return that the 386 is not in V86 mode (bit 1)
2. XMS handler must be installed
3. It must be possible to load the Descriptorcaches with
cli
mov al, 80h
out 70h, al
lgdt descriptor...
mov eax, cr0
or eax, 1
mov cr0, eax
4. Turrican uses a Realflat model, so it might be enough to ignore this commands (3) and enable the 0x66 opcode prefix to address the whole 4 GB of memory.

It would be very nice if you support this 😀

Greets,
Sebastian.

Reply 1 of 12, by Turrican

User metadata
Rank Newbie
Rank
Newbie

Hi!
Just realized that Turrican is working with the current CVS version, just some sound problems with the soundblaster support!!!
Gameplay works PERFECTLY!!! I'm REALLY impressed.

Maybe I'll contribute some work to the SoundBlaster emulation or write another MSD (Music System Driver) for Turrican to work in DOSBox with finest Quality 😀

Greets,
Sebastian.

Reply 2 of 12, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

We would appricate that.
We got mysterious crashes with soundblaster sometimes
(irq related)

Water flows down the stream
How to ask questions the smart way!

Reply 9 of 12, by RoKo

User metadata
Rank Newbie
Rank
Newbie

Me and another Turrican fan (the mighty Bronko) tried to get Turrican 2 working in DosBox (and also in the latest CVS version, no difference).

I think, we found out some interesting things:
At first, the game slowly shows the Turrican logo in a wrong palette - originally it does not do that.
When the start screen or a new level is loaded, DosBox likes to hang (for me it always did, for Bronko it worked sometimes).
The workaround: If the game seems to hang, decrease cycles to 1, then increase them back to the normal amount -> and the game goes on. Funny thing.
Something else, I realized, while I tried to start Turrican 2:
DosBox' env vars are case sensitive - that's wrong. I changed Program::SetEnv (in misc/programs.cpp) to fix this:

#include <ctype.h>
#include <string>

.
.
.

bool Program::SetEnv(const char * entry,const char * new_string) {
PhysPt env_read=PhysMake(psp->GetEnvironment(),0);
PhysPt env_write=env_read;
char env_string[1024];
do {
MEM_StrCopy(env_read,env_string,1024);
if (!env_string[0]) break;
env_read+=strlen(env_string)+1;
if (!strchr(env_string,'=')) continue; /* Remove corrupt entry? */
if ((strncasecmp(entry,env_string,strlen(entry))==0) &&
env_string[strlen(entry)]=='=') continue;
MEM_BlockWrite(env_write,env_string,strlen(env_string)+1);
env_write+=strlen(env_string)+1;
} while (1);
/* TODO Maybe save the program name sometime. not really needed though */
/* Save the new entry */
if (new_string[0]) {
/* env vars are case insensitive */
std::string bigentry(entry);
for (std::string::iterator it = bigentry.begin(); it != bigentry.end(); ++it) *it = toupper(*it);
sprintf(env_string,"%s=%s",bigentry.c_str(),new_string);
MEM_BlockWrite(env_write,env_string,strlen(env_string)+1);
env_write+=strlen(env_string)+1;
}
/* Clear out the final piece of the environment */
mem_writed(env_write,0);
return true;
}

Reply 12 of 12, by Joeyxp2

User metadata
Rank Newbie
Rank
Newbie

I am trying to get this game to work. I am getting gibberish and weird colors on my screen when I am trying to run the game with Dosbox. Is there a guide or a couple of steps to get the game working? I would really appreciate it.