VOGONS


First post, by Nilex

User metadata
Rank Newbie
Rank
Newbie

UPDATE: Solved by robertmo in this post.

Hit and evaded every obstacle in trying to get it to work but this little commie game won't surrender without a fight.
JEMM solution (3rd link) solved the crash near the beginning but now it crashes just after the projector sequence starts (1 min). Every time at the same spot.
Btw, JEMM link (and the whole site) from that post is dead but I found a new one here.

Thing that crashes it is the "MIDI" sound option in the setup. Installer puts "sbmidi" in a single BAT file that's spat out on HDD. I think it's General MIDI but who knows. The only other available option for Music is "Adlib" which puts "adlibmsc" in BAT. This doesn't crash Intro but doesn't produce any MIDI music either so the only option is MIDI/sbmidi. Game uses a mix of CDA and MIDI music, separate to each screen. First time MIDI is used in the Intro is in the arcades screen.

Besides the Intro game behaves normal, if you don't count DOSBox 0.74 (+JEMMEX) crash upon exiting the game. Same type of errors as bellow, but that doesn't bother me. In SVN (ems=emm386) game exits cleanly. Played with blocksize/prebuffer values but it only felt like tapping in the dark. No idea if the game itself is borked or if its weirdo startup sequence, calling 4 EXEs, is a too much for DOSBox.

Here are some crash messages I collected using two DOSBox versions: 0.74, and official SVN r4063. Dunno if they help.
Sometimes the error messages showed, sometimes not. At least two runs were needed in each to produce 1st error.
SVN behaved much better, no error pop-ups just that cryptic looking message. The D:\PART0 is folder on the CD tho.
0.74 (with "JEMMEX NOEMS LOAD" trick)

Problem Event Name:	APPCRASH
Application Name: DOSBox.exe
Application Version: 0.74.0.0
Application Timestamp: 4bea7d36
Fault Module Name: DOSBox.exe
Fault Module Version: 0.74.0.0
Fault Module Timestamp: 4bea7d36
Exception Code: c00000fd
Exception Offset: 000e86f5
Additional Information 1: 539f
Additional Information 2: 539fde1cd30d8d87c2530fefee242d5a
Additional Information 3: d505
Additional Information 4: d5057d25520ca71276f40dbd6b4831d9

one more for good measure (other values remained the same):

Exception Offset:	001f6563
Additional Information 1: 82c2
Additional Information 2: 82c210bcf08d307d3a36510ded2b7ff9
Additional Information 3: 307a
Additional Information 4: 307a94f80c1541ec615e23392fa88b0a

SVN r4063 (with "ems=emm386" trick)
[attachement, message is identical every time]

Attachments

  • TBRA - Intro crash.jpg
    Filename
    TBRA - Intro crash.jpg
    File size
    102.93 KiB
    Views
    2504 views
    File license
    Fair use/fair dealing exception
Last edited by Nilex on 2017-11-11, 21:52. Edited 1 time in total.

Reply 1 of 19, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Runtime error 200 at XXXX:XXXX is a typical Borland error message for a divide exception. It is often caused by the CPU being too fast, so using limited or fixed cycles in DOSBox may avoid the problem. Alternatively, there are patch programs that can modify the problematic code to make it less susceptible, such as TPPATCH.

Reply 2 of 19, by Nilex

User metadata
Rank Newbie
Rank
Newbie

Appreciate the help. Lowering CPU cycles still made the Intro crash (same place) but without the error message. Then I tried all of these patches but game exe (ADV) is in incompatible LE-Format (don't ask).

So I focused on finding a replacement sbmidi.exe (one of three exe game calls before main exe, others are SB effects & mouse driver) and found one inside SBPro2 Installation Disks. When I discovered it has nice launch parameters I thought that's it:
wfQQBKH.jpg
But nope. Tried all combinations, together with sbpro2 DOSBox emulation, and all failed to play MIDI. No MIDI also enabled the Intro to play thru the end, like it did with Adlib, as well as not crashing with high CPU cycles. After that I went back to dealing with original SBMIDI, thinking maybe parameters would work too, but nope again. No progress.

Vanilla SBMIDI from the game CD has this launch message:
4iThKJe.jpg
and indeed the game's Music files are all in .MSC format. Couldn't find any info about them and SBMIDI seems to be custom designed just for that purpose so I couldn't find a replacement. Oh yeah I also checked couple of other Dynabyte games for possible clues but nothing helpful there.

That's all I have. My current stance is to let it go, use regular sbmidi and forget about the last 30 secs of the Intro (90% of the remainder are credits anyway). I'll be around if more ideas come about tho.

Reply 3 of 19, by robertmo

User metadata
Rank l33t++
Rank
l33t++

I just noticed something i think i missed in the past:
"emm386 d=64" in DOSBox (Big Red Adventure)

SirGraham wrote:

However, EMM386.EXE didn't work perfectly, unless I added 'noems' to the line in CONFIG.SYS; if I didn't add 'noems' I got some errors, as seen in the attached picture, and the game crashed at a specific point. Not only did it cause the crash, it also corrupted the game's files, and even when I added 'noems' again, the game kept crashing in the same location until I re-copied its files to the HD image.

Reply 6 of 19, by Nilex

User metadata
Rank Newbie
Rank
Newbie

Attach your .conf please 😀 (non-ECE SVN)
Tried some more settings but it still crashes.
Looks like the devil will be in the detail after all.

Btw, did you mean "ems=emm386"?

Thank you for the help, I feel the solution is within reach now.

Reply 7 of 19, by robertmo

User metadata
Rank l33t++
Rank
l33t++

It looks the floppy version works ok.
But the cd version doesn't.

I guess SirGraham might have also been using a floppy version cause he says something about copying files to hdd image. The CD version installer only creates tbra.bat file on hdd and doesn't copy any files. So I guess SirGraham had floppy version copied to a CD for easier handling.

btw - edited my post and corrected "ems=emm386"

Reply 8 of 19, by robertmo

User metadata
Rank l33t++
Rank
l33t++

I figured out I already fixed my floppy version.

It appears there is some music initialization problem with Potiomky.msc
I have hex edited first line 00 C0 -> C0 00 (to much other music files) and it is i think ok now.

How I figured it out is discussed in this thread (for beta testers only)
Post 242914
Lot's of bugs in this game.

Last edited by robertmo on 2017-11-12, 02:11. Edited 1 time in total.

Reply 9 of 19, by Nilex

User metadata
Rank Newbie
Rank
Newbie

Hex-hax did it!

Very good catch. Compared the file to the rest of .MSCs and all the other (that I looked) had C0 00 byte order.
Same file is also in PART1&2 folders (CD version) with 00 C0 order. Made a note about em in case those Parts
also have their own Intros, and they crash too. What an Italian job this game is...

Thank you a lot for this. I gotta ask, how did you first solve it: knowledge, experience, luck, brute force?
I'd sleep better knowing that finding a solution was never a possibility with my limited expertise in the matter 😀

Reply 10 of 19, by robertmo

User metadata
Rank l33t++
Rank
l33t++

Topic: SB MIDI interface

Srecko wrote:
I have it working. Only 3 games so far (I know of) use it: […]
Show full quote

I have it working. Only 3 games so far (I know of) use it:

Flashback - I don't have, hopefully it works.
Big Red Adventure - works. use Munt or attach real mt-32 cause you won't hear anything with general midi.
The Hidden Below (demo) - works

Mechanism is simple. Game writes 0x38 to SB DSP port and sends midi data afterwards.
Diff attached.

ATTACHMENTS
sbmidi.diff

robertmo wrote:

Flashback works too 😀

Big Red Adventure works with General MIDI (winxp default midi synth) too.

Qbix wrote:

looks allright

Srecko wrote:
robertmo wrote:

Flashback works too 😀

Big Red Adventure works with General MIDI (winxp default midi synth) too.

OK. Maybe it is only specific for my SbLive! loaded sondfont (default one from creative drivers).

vasyl wrote:

Side note. I went through all DSP commands to figure out what's missing and did not find that much. 0x38 is the most important and pretty much the only one left that was used by games. There are two more SB MIDI commands -- 0x30,0x31 -- related to input, four MIDI UART-related input 0x34-0x37, three ADPCM DMA (0x7d, 0x7f, 0x1f), six input (0x20,0x2c,0x98,0x99,0xa0,0xa8), that's pretty much about it. Ranges 0xb* and 0xc* are incomplete in CVS, and I've discovered undocumented command 0xf8 that Creative software uses to detect pre-SB16 cards -- I have fix for those. The only other issue with DSP I've seen is that the current implementation allows to use SB16-only commands on earlier cards. I have fix for that as well.

EDIT: The patch is on SF if you want to review or use it.

robertmo wrote:

It appears i haven't tested Big Red Adventure properly:

start the game, go to hall, give the key to the porter so you will be able to leave the hotel (down), go down (gum store), go up (to statute), go up the bridge, enter the park.

This will change music every time and it will mess up quickly (volume goes lower and lower, hanging notes, old music playing together with new one, new one is not playing fully, etc. The more you change music the worse it goes. The solution is to turn off the music (esc) before changing location.

ripsaw8080 wrote:

Do you need a floppy disk version of The Big Red Adventure to have MIDI music in those locations? The CD version only plays audio tracks even with the game configured for MIDI...

robertmo wrote:

yes i need floppy version. Although I wonder how Lonelines had midi tracks playing with his cd version...
Re: "emm386 d=64" in DOSBox (Big Red Adventure)

ripsaw8080 wrote:
Installed the floppy version of TBRA, but couldn't hear any MIDI music. Examining the controllers used by the game, it sends a b […]
Show full quote

Installed the floppy version of TBRA, but couldn't hear any MIDI music. Examining the controllers used by the game, it sends a bunch of channel mode messages, including "Omni On" and "Omni Off". Some time ago while testing Star Quest 1, I learned that trying to change Omni mode on the soundfont synth on my Audigy 2 ZS soundcard effectively disables MIDI output for the rest of the DOSBox session. Other models of Audigy cards may have the same issue.

The game uses controller 7 (channel volume) for fade out/in when the music changes between locations, but the fade in is 2 steps lower each time, eventually reaching zero. Also, an "All Notes Off" channel messsage is *sometimes* sent for music changes, but when it isn't there are hanging notes. Would be interested to know if these flaws appear on real systems with an SB and GM synth.

I modified the game's driver to: A) eliminate all the channel mode messages that kill MIDI output on my soundcard, and B) change the volume fade controllers to "All Notes Off", which disables the fade out/in, but I think it's better than hanging notes and eventual silence. Seems to work OK with my soundcard and Virtual Sound Canvas.

ATTACHMENTS
tbra_sbmidi_mod.zip

robertmo wrote:
midi doesn't break on: 386dx40, 486dx25(turbo off), 486dx33(turbo off), […]
Show full quote

midi doesn't break on:
386dx40,
486dx25(turbo off),
486dx33(turbo off),

midi breaks on:
486dx40(turbo off),
486dx25(turbo on),
486dx33(turbo on),
and every other faster pc 😉

also i noticed in dosbox it is sometimes ok with cycles about 3000

game's box says 486 is recommended so i guess 386 should be considered as supported too.

game is slow there, but what is strange is that screen fade out is very slow there (adlib and no music is

fast) Even with your sbmidimod. You can test that in dosbox too with cycles 3000 and using real mpu (you

should have one on your audigy card, even when no module is connected, just choose it in midi mapper)

So I don't know how this game was meant to work.

Btw i was testing on real hardware without sbeff driver, as game was hanging at the end of museum scene

(tried different sb's, memory configs, dos4gw's).

---------------
also sbeff detects sb in a funny way, i guess it is detecting by the dsp version number but by the number

after the comma, so that the results are very funny (testable in dosbox too: sb1 detected as sb16, sbpro1

as base, i think sb16 is not detected properly too as I see sb16 in the driver file (looks like sth

different than "major of sb16")).

----------------
also italy language has a bug in Intro.loc (it goes to location panoram instead of Piazzar2)
and in salagio.loc there is not needed quotation after TESTTRUE"
it looks the quotation was fixed on the cd version but the wrong location was not.
As a result intro is shorter but also doesn't freeze with midi after projector animation.
That was a result of previous music not being stopped.
I figured out i can remove the freeze in intro if i remove "MUSIC STOP" from cantina.loc file.
It appears there is some music initialization problem with Potiomky.msc
I have hex edited first line 00 C0 -> C0 00 (to much other music files) and it is i think ok now.
There is one more file with this date and replaced C0 00 Mistero.msc that i can play after hex edit and placing it in intro.loc

ripsaw8080 wrote:

The moded sbmidi driver only changes what controllers are sent to the synth; its other behaviors are not changed. I can understand that low cycles would fix the fade out/in (at max cycles the fading happens so fast you can't really perceive it), but the game animation seems too slow at even 10000 cycles... maybe there's some kind of timing issue, or the game is just not very good at syncing to system speed.

The drivers other than SBEFF.EXE were made with TP 7.0, and the intro "freeze" after the projector animation is actually a divide by zero error (runtime error 200) in SBMIDI.EXE that causes a crash. None of the drivers have the Borland CRT subroutines, so TPPATCH and the like can't help in this case.

robertmo wrote:
i also noticed that when quiting the game smmidi is not being uninstalled. so i viewed uninst.exe and here is what is there: […]
Show full quote

i also noticed that when quiting the game smmidi is not being uninstalled.
so i viewed uninst.exe and here is what is there:

ADLIBMSC+Adlib music driver succesfully uninstalled.
SBMIDIA?SoundBlaster MIDI SLOW MODE (A) driver succesfully uninstalled.
MDRV*SVGA mouse driver succesfully uninstalled.
SBMIDIB?SoundBlaster MIDI FAST MODE (B) driver succesfully uninstalled.
SBMIDICBSoundBlaster MIDI NO WAIT MODE (C) driver succesfully uninstalled.
SBMIDID?SoundBlaster MIDI TWIN MODE (D) driver succesfully uninstalled.
MPUMIDI/Roland MPU MIDI driver succesfully uninstalled.
SBEFF<SoundBlaster digital effects driver succesfully uninstalled.

So of course sbmidi cannot be uninstalled cause the uninstall files wants to uninstall files of a different name. But what is more important it looks there were way more midi drivers for this game.

The amount of serious bugs in this game suggest that cause of some reason the game was released unfinished. Or just a wrong package was sent to the factory (package that was used by midi developer for testing). Very strange no patches were released later as the shortened italian version intro should be quickly noticed by people who bought the game. Maybe the company bankrupted quickly? Or we just don't know anything about patches.

bankrupting is possible if we look here
http://www.mobygames.com/browse/games/dynabyt … ,1d/list-games/
first games by dynabyte were developed and published by them, while their last games from 1995 were published not by them and also every game by a different company.

ripsaw8080 wrote:

You can name the driver like one in the uninstall program (SBMIDIA.EXE for example), change the TBRA.BAT file to load it instead, and the driver will be uninstalled on exit... for what it's worth.

The CD version is almost like an upgrade that avoids MIDI issues using CD audio, because so far I haven't seen anything else that is improved over the floppy version. The CD audio tracks aren't all that amazing, and could just be recordings of a decent quality GM synth. Maybe the beginning of the game isn't a good overall example, but it seems like most of the music is audio tracks with MIDI in only a few places (McRomanov's is the only one I know of). An odd patchwork approach to the background music...

robertmo wrote:
i have noticed that in intro the music after turning on projector (after fixing the Potiomky.msc) doesn't play with mt32/cm32l c […]
Show full quote

i have noticed that in intro the music after turning on projector (after fixing the Potiomky.msc) doesn't play with mt32/cm32l cause sound module has been turned off by some message before i guess. When i switch to GM with enclosed MTGM.mid it works. Was wondering would it be possible to remove that turning it off message like you did for audigy? I know game was made for GM, but somehow i don't like forced disabling 😉

btw there are 80 music tracks in .msc files (3 more on cd) while 60 audio tracks. don't know if music is also run from sth other than .loc files but if only from .loc files many of them are not used.
Btw there are files Bosco1.msc and Bosco2.msc. Only Bosco2.msc is used by .loc file and almost only difference between them is that Bosco1.msc has the same bug as Potiomky.msc

ATTACHMENTS
MTGM.rar

robertmo wrote:

btw the cd audio tracks are annoying as they reset to beginning after every screen change even if the track is not changed, so when walking around the park resets the music all the time (also in intro). So in my opinion floppy version is better (after applying all the fixes from cd ver) I found a lot of them with winmerge. And i vaguely remember floppy version was even unfinishable cause of the bugs (not being able to handle camera to japan girl and i think i found that fix on the cd in Rossa.loc).

robertmo wrote:

I thought fix for mt32 support would be useful for testing munt. But i no longer agree with that. I noticed that they are trying to make fix for munt games that require mt32oldversion even though munt emulates only cm32l right now (colonel's bequest bug). But first of all same bug appears with mt32, and also that may improve munt. While i don't think any GM music could be used to finding bugs in munt as GM mid files are not very complicated so it is not very probable anyone will find a bug playing GM games with munt. Although now when i think about it again maybe there is a little chance 😉

btw isn't tbra the only GM supporting game that doesn't want to work with mt32? I guess not many people tested games (configured to use GM mode) with MT32.

Attachments

  • Filename
    MTGM.rar
    File size
    6.12 KiB
    Downloads
    96 downloads
    File license
    Fair use/fair dealing exception
  • Filename
    tbra_sbmidi_mod.zip
    File size
    5.02 KiB
    Downloads
    101 downloads
    File license
    Fair use/fair dealing exception
  • Filename
    sbmidi.diff
    File size
    1.33 KiB
    Downloads
    95 downloads
    File license
    Fair use/fair dealing exception

Reply 12 of 19, by robertmo

User metadata
Rank l33t++
Rank
l33t++

You can also use ADV.EXE (and setup.exe) from the floppy version (and the above sbmidi mod) to be able to enjoy uninterrupted midi music while switching locations. Just copy everything from the cd to your hard drive and overwrite those three files. This way you will also be able to use all the bug fixes from the cd version.

Reply 14 of 19, by Nilex

User metadata
Rank Newbie
Rank
Newbie

Oh I grabbed Nippon already although I didn't discover it until after this whole troubleshooting ordeal started 😀

Thanks for the Floppy tip. I must admit it flew over my head I could do that from the above mega-dump info.
I agree the CDA looping on scene switch is annoying buuut... it sounds so much better than MIDI. Similar to
MIDI sounding better than FM. It came down to park music having a nice beat for the first few secs before
I manage to loop it by walking off the screen. I can live with that and lean on the chair to hear the end of it.

I did take the mod file though and wrote instructions for easy-peasy switch (saves are compatible between
Floppy/CD). Plus, having a plan B can't hurt with this forgotten gem. As a side note, with the 3 Floppy files
the Intro again crashed but right at the end this time. Probably because I'm sticking with 0.74 + JEMM. Doubt
it would happen with SVN's emm386 setting. Just mentioning it so other peeps don't freak out if it happens.

Reply 16 of 19, by Nilex

User metadata
Rank Newbie
Rank
Newbie

No, I was on SC-55 emulator the whole time 😀

But I can see the appeal of MT-32 now. While 55 sounds closer to CDA it only manages to be a lower quality version of it. CDA beats it, no contest. MT-32 on the other hand sounds different enough to not be comparable. It's like a different OST, with cheerful melodies. I like it as much as CDA.

Curious you recommended mt32, is the MIDI music composed for it? Because I'm all for playing how the authors intended, even if it were a PC speaker... 😀

Reply 17 of 19, by robertmo

User metadata
Rank l33t++
Rank
l33t++

Let's maybe take the first game song - in the hotel room.
The interesting part starts to happen just before the end of the second minute.
CDA excludes itself from the competition with replaying from the beginning after a short silence when the first minute had passed 😉
So back to that second minute...
There appears to be a lot of some kind of melodies that resemble a police siren. wWw_wWw_wWw.. (the longest one does that 14 times)
mt32 and gm play that more less the same
while adlib sounds a bit different in this part

Reply 18 of 19, by Nilex

User metadata
Rank Newbie
Rank
Newbie

Police siren? More like eardrum paper cuts 😀. SC-55 calls it French Horn and it sounds better there although I prefer MT-32 overall despite its siren. Hotel track number is 47 and is indeed just 1 min long... too bad. Wish you hadn't told me, I won't be able to un-hear it now 😵

Thanks to your feedbacks I made notes for myself when I actually play this (not in this decade that's for damn sure) concerning music choice.
You can bet I ain't gonna be the only one who found them useful.

Reply 19 of 19, by robertmo

User metadata
Rank l33t++
Rank
l33t++

It is not just that one track that is short.
it looks there are only 3 cd tracks lasting 2 minutes and 6 cd tracks lasting 1 min 30 seconds
While all midi tracks are many many times longer.