DOSBox ECE (for Windows & Linux)

Developer's Forum, for discussion of bugs, code, and other developmental aspects of DOSBox.

Re: DOSBox ECE (for Windows & Linux)

Postby legluondunet » 2019-11-15 @ 16:10

I can reproduce this issue on Ubuntu 19.10 (I just updated my signature) and Manjaro XFCE Edition 18.2 freshly installed.
I remember where this midi settings came from: GOG Games Dosbox config files.
Config: Ubuntu 19.10 64 bits - NVIDIA GeForce GTX 770 - Nvidia drivers 435.21 - 1920x1080 - Processor Intel i5-3570 3,4 Ghz - 16 Go RAM
User avatar
legluondunet
Newbie
 
Posts: 34
Joined: 2012-8-29 @ 12:49

Re: DOSBox ECE (for Windows & Linux)

Postby krcroft » 2019-11-15 @ 16:41

Nice testing legluondunet; perhaps you're one of the few ECE Ubuntu 19.10 users and this is indeed a new compatibility issues on the latest OS.
Last edited by krcroft on 2019-11-15 @ 17:05, edited 2 times in total.
User avatar
krcroft
Member
 
Posts: 428
Joined: 2017-4-29 @ 15:07
Location: Ogden's Retreat

Re: DOSBox ECE (for Windows & Linux)

Postby legluondunet » 2019-11-15 @ 17:00

Perhap's it's a dependencies issue because when I compile DOSBox ECE on my Ubuntu 19.10, I can not reproduce this issue.
I have this issue only with DOSBox ECE built from official site.
Do you know on which distribution they compiled their builds?
Config: Ubuntu 19.10 64 bits - NVIDIA GeForce GTX 770 - Nvidia drivers 435.21 - 1920x1080 - Processor Intel i5-3570 3,4 Ghz - 16 Go RAM
User avatar
legluondunet
Newbie
 
Posts: 34
Joined: 2012-8-29 @ 12:49

Re: DOSBox ECE (for Windows & Linux)

Postby krcroft » 2019-11-15 @ 17:08

legluondunet wrote:Do you know on which distribution they compiled their builds?

I'm not sure, but Yesterplay80 will have the answer.
User avatar
krcroft
Member
 
Posts: 428
Joined: 2017-4-29 @ 15:07
Location: Ogden's Retreat

Re: DOSBox ECE (for Windows & Linux)

Postby Yesterplay80 » 2019-11-15 @ 17:44

I'm using the latest Linux Mint (Ubuntu based) in a VM to compile ECE. And I can mount CD images just fine, with midi enabled or disabled. So I assume a dependency problem, too.
My full-featured DOSBox SVN builds (without debugger) for Windows: Vanilla DOSBox and DOSBox ECE (Enhanced Community Edition)
User avatar
Yesterplay80
Member
 
Posts: 459
Joined: 2016-2-23 @ 11:02
Location: Germany

Re: DOSBox ECE (for Windows & Linux)

Postby Qbix » 2019-11-15 @ 19:36

how about the non-ECE build, is that one available for linux as well ?
Water flows down the stream
How to ask questions the smart way!
User avatar
Qbix
DOSBox Author
 
Posts: 10954
Joined: 2002-11-27 @ 14:50
Location: Fryslan

Re: DOSBox ECE (for Windows & Linux)

Postby legluondunet » 2019-11-15 @ 19:42

Dosbox Vanilla and Dosbox-x are available also for Linux gamers, it not too difficult to compile them.
Last edited by legluondunet on 2019-11-16 @ 14:48, edited 1 time in total.
Config: Ubuntu 19.10 64 bits - NVIDIA GeForce GTX 770 - Nvidia drivers 435.21 - 1920x1080 - Processor Intel i5-3570 3,4 Ghz - 16 Go RAM
User avatar
legluondunet
Newbie
 
Posts: 34
Joined: 2012-8-29 @ 12:49

Re: DOSBox ECE (for Windows & Linux)

Postby Yesterplay80 » 2019-11-15 @ 20:21

Qbix wrote:how about the non-ECE build, is that one available for linux as well ?

Yes. Works fine here as well.
My full-featured DOSBox SVN builds (without debugger) for Windows: Vanilla DOSBox and DOSBox ECE (Enhanced Community Edition)
User avatar
Yesterplay80
Member
 
Posts: 459
Joined: 2016-2-23 @ 11:02
Location: Germany

Re: DOSBox ECE (for Windows & Linux)

Postby Dagar » 2019-11-18 @ 19:07

Dagar wrote:There are some issues with CD Audio and DOSBox ECE that I have tested and verified.

I've been playing Betrayal At Krondor (the GOG release). If you replace the DOSBox version inside the game's DOSBox folder (which is 0.74) with DOSBox ECE the CD audio will not play. Note: You can select the CD Audio option in the games "Preferences" selection in the main menu. Replacing the DOSBox version inside the game's DOSBox folder with DOSBox SVN the CD Audio still plays properly.

The last working version of DOSBox ECE under this situation is DOSBox ECE r4168. That is, if you replace the DOSBox version inside the game's DOSBox folder with DOSBox ECE r4168 the CD audio plays properly. DOSBox ECE r4170 up until current DOSBox ECE r4288 the CD Audio will not play.


I've narrowed this problem down to the patch ---> AUDIO Patch supporting FLAC, Opus, and MP3 audio tracks :

https://www.vogons.org/viewtopic.php?f=41&t=62203

Betrayal At Krondor will not play the CD Audio when the patch is in use.
Dagar
Newbie
 
Posts: 57
Joined: 2008-1-20 @ 17:01

Re: DOSBox ECE (for Windows & Linux)

Postby Pr3tty F1y » 2019-11-19 @ 01:45

Dagar wrote:I've narrowed this problem down to the patch ---> AUDIO Patch supporting FLAC, Opus, and MP3 audio tracks :

https://www.vogons.org/viewtopic.php?f=41&t=62203

Betrayal At Krondor will not play the CD Audio when the patch is in use.


I'm thinking that this has to be something with the krondor.exe not looking for tracks but being hard coded to look up audio at specific locations on the cd and, for whatever reason, the cd image isn't perfectly matching what the exe is expecting.

I did mount the *.gog image and was able to play the BAK CDDA tracks within Windows 3.11 in DOSbox ECE r4290 using the [MCI] CD Audio driver and the Creative audio software for the SB16. So, the audio tracks will play under DOSbox and the image itself can be mounted and function as a mixed data/audio CD under Windows 3.11.

However, within the game itself, you can hear the CDDA briefly clip in for a fraction of a second before it goes silent again which to me means an alignment issue with the position of the tracks on the virtual iso. I remember long ago having a similar issue with Castlevania - Rondo of Blood on the PC Engine as PCE/TG-16 CDs are just weird in their data structure and back in the day, cd burners and iso software was not great.

My only guess is that the patch is either padding spacing between tracks too much or not enough.
Pr3tty F1y
Newbie
 
Posts: 12
Joined: 2017-8-19 @ 21:22

Re: DOSBox ECE (for Windows & Linux)

Postby krcroft » 2019-11-19 @ 05:40

Dagar, Pr3tty F1y,

I've built SVN and ECE from their latest sources on Ubuntu 19.04.
I'm using the intro-screen music to test, with Preferences -> CD Music [checked]

BIN+CUE CD-DA from eXo 4.0 archive, imgmount d krondor.cue -t iso, cd .., run.bat, select 4 CD-DA. Results:
- SVN works fine
- ECE works fine

WAV+ISO's ripped from the BIN+CUE using bchunk. Track 02 has a pregap of 3s and subsequent tracks 2s, with all INDEX 01's set to 00:00:00. Results:

- SVN does not mount the cue
- ECE mounts the cue, but the intro track is played very briefly and then stops

Adding debug statements, during the good BIN+CUE scenario's intro scene, the game asks to play track 16 at the CDROM's redbook absolute minute:second:frame (MSF) offset of 23:32:55.

This MSF value is knowledge the game holds internally and is not derived from the CUE file. However, according to the CUE as parsed by DOSBox, that requested MSF should correspond to track 14. However, because the BIN file is one big sequence of data, DOSBox's CDROM code simply seeks to the requested offset (MSF 23:32:55) and starts playing - and it's actually correct.

However, if you rip your BIN/CUE to broken out WAVs + ISO (using a tool like bchunk) and play those tracks using an audio player, you will find them to be a mess. That is, the audio starts and stops without any connection to the track file's actual start-of-file and end-of-file. So my conclusion is that the CUE file is broken, which makes it not suitable for ripping to broken-out audio tracks.

Fortunately there are other rips out there - http://redump.org/discs/quicksearch/krondor/
The first two are MODE01/2048 (similar to the broken version I have) while the third is a MODE01/2352 rip, which I suspect would extract to broken-out tracks correctly.
Last edited by krcroft on 2019-11-19 @ 06:10, edited 3 times in total.
User avatar
krcroft
Member
 
Posts: 428
Joined: 2017-4-29 @ 15:07
Location: Ogden's Retreat

Re: DOSBox ECE (for Windows & Linux)

Postby hail-to-the-ryzen » 2019-11-19 @ 05:56

I wonder if there is a list of redbook audio DOS games with any playback by redbook offset instead of by track. Is it also possible to efficiently log the event as a warning along with some data? I've also been testing and logging on the redbook audio functions - thank you for the continued improvement of your emulation.
hail-to-the-ryzen
Member
 
Posts: 347
Joined: 2017-3-09 @ 01:34

Re: DOSBox ECE (for Windows & Linux)

Postby krcroft » 2019-11-19 @ 06:04

That's great; I'm assuming you're commenting in the DEBUG 1 definition at the top of src/dos/cdrom_image.cpp (ECE) and recompiling to have it show these CDROM request details.

Very nice suggestion to warn when there's a mismatch between the game's expected track number (and offset) versus the 'physical' CDROM's track number as calculated by the cue.
This would immediately indicate that the CD rip (likely) has issues. I like it!

Edit: I haven't seen a list like that; but it certainly would be interesting. Your suggested improvement would make creating such a list possible.
Last edited by krcroft on 2019-11-19 @ 07:31, edited 1 time in total.
User avatar
krcroft
Member
 
Posts: 428
Joined: 2017-4-29 @ 15:07
Location: Ogden's Retreat

Re: DOSBox ECE (for Windows & Linux)

Postby hail-to-the-ryzen » 2019-11-19 @ 06:29

That's exactly what I tried. I tested your code with DEBUG lines active. It is thorough and allowed for evaluation of End of File for a non-file based cue/bin pair (along with eof versus general fail bit error checking).

I hope to eventually test your emulation with cd audio at a lower rate on the bin image file, given that is possible. It would allow the smaller music archive, even if uncompressed, than at the previous default.
hail-to-the-ryzen
Member
 
Posts: 347
Joined: 2017-3-09 @ 01:34

Re: DOSBox ECE (for Windows & Linux)

Postby Pr3tty F1y » 2019-11-19 @ 12:26

Thanks krcroft. Summed up much more eloquently and expertly than me.

After reading through what you said and thinking about my previous experience when the first PCE CD rips of Castlevania: Rondo of Blood came out as bin/mp3, these were the exact same issues.

It's something to do with the fact that after encoding raw CDDA as mp3 (or, in this case, ogg) that the actual duration of the audio is off (I believe it gets padded but don't quote me on that) which would then lead to the cascade of bad side effects like we're seeing here with BaK as every audio track that's off by the expected # of sectors just compounds the problem and throws the alignment off worse.

Now folks did end up working a lot to get Castlevania: Rondo of Blood working (i.e., tweaking cues/editing audio files) because, at the time, internet connections were slow and it was a special game that was never released in the west. However, I don't foresee the same interest in the GOG version of BaK ;) so that's probably not going to happen here. Also, I'm a bit appalled at GOG even releasing a bin/ogg set. Why they didn't just rip a full bin/cue including all of the original tracks is a bit disappointing (or at the very least, bin/flac).
Pr3tty F1y
Newbie
 
Posts: 12
Joined: 2017-8-19 @ 21:22

Re: DOSBox ECE (for Windows & Linux)

Postby Dagar » 2019-11-19 @ 13:06

Thank you for the detailed feedback on this issue kcroft and Pr3tty F1y.
It seems to be an issue with how GOG ripped the CD for Betrayal At Krondor.

I'll stick with the regular DOSBox SVN for this game since it does play the CD Audio.

Here's the GOG cue file for the game if it's of any help:

Code: Select all
CATALOG 7<;0>9<1:2299
FILE "bak.gog" BINARY
  TRACK 01 MODE1/2352
    INDEX 01 00:00:00
FILE "music\bak02.ogg" MP3
  TRACK 02 AUDIO
      INDEX 01 00:00:00
FILE "music\bak03.ogg" MP3
  TRACK 03 AUDIO
      INDEX 01 00:00:00
FILE "music\bak04.ogg" MP3
  TRACK 04 AUDIO
      INDEX 01 00:00:00
FILE "music\bak05.ogg" MP3
  TRACK 05 AUDIO
      INDEX 01 00:00:00
FILE "music\bak06.ogg" MP3
  TRACK 06 AUDIO
      INDEX 01 00:00:00
FILE "music\bak07.ogg" MP3
  TRACK 07 AUDIO
      INDEX 01 00:00:00
FILE "music\bak08.ogg" MP3
  TRACK 08 AUDIO
      INDEX 01 00:00:00
FILE "music\bak09.ogg" MP3
  TRACK 09 AUDIO
      INDEX 01 00:00:00
FILE "music\bak10.ogg" MP3
  TRACK 10 AUDIO
      INDEX 01 00:00:00
FILE "music\bak11.ogg" MP3
  TRACK 11 AUDIO
      INDEX 01 00:00:00
FILE "music\bak12.ogg" MP3
  TRACK 12 AUDIO
      INDEX 01 00:00:00
FILE "music\bak13.ogg" MP3
  TRACK 13 AUDIO
      INDEX 01 00:00:00
FILE "music\bak14.ogg" MP3
  TRACK 14 AUDIO
      INDEX 01 00:00:00
FILE "music\bak15.ogg" MP3
  TRACK 15 AUDIO
      INDEX 01 00:00:00
FILE "music\bak16.ogg" MP3
  TRACK 16 AUDIO
      INDEX 01 00:00:00
FILE "music\bak17.ogg" MP3
  TRACK 17 AUDIO
      INDEX 01 00:00:00
FILE "music\bak18.ogg" MP3
  TRACK 18 AUDIO
      INDEX 01 00:00:00
FILE "music\bak19.ogg" MP3
  TRACK 19 AUDIO
      INDEX 01 00:00:00
FILE "music\bak20.ogg" MP3
  TRACK 20 AUDIO
      INDEX 01 00:00:00
FILE "music\bak21.ogg" MP3
  TRACK 21 AUDIO
      INDEX 01 00:00:00
FILE "music\bak22.ogg" MP3
  TRACK 22 AUDIO
      INDEX 01 00:00:00
FILE "music\bak23.ogg" MP3
  TRACK 23 AUDIO
      INDEX 01 00:00:00
FILE "music\bak24.ogg" MP3
  TRACK 24 AUDIO
      INDEX 01 00:00:00
FILE "music\bak25.ogg" MP3
  TRACK 25 AUDIO
      INDEX 01 00:00:00
FILE "music\bak26.ogg" MP3
  TRACK 26 AUDIO
      INDEX 01 00:00:00
FILE "music\bak27.ogg" MP3
  TRACK 27 AUDIO
      INDEX 01 00:00:00
FILE "music\bak28.ogg" MP3
  TRACK 28 AUDIO
      INDEX 01 00:00:00
FILE "music\bak29.ogg" MP3
  TRACK 29 AUDIO
      INDEX 01 00:00:00
FILE "music\bak30.ogg" MP3
  TRACK 30 AUDIO
      INDEX 01 00:00:00
FILE "music\bak31.ogg" MP3
  TRACK 31 AUDIO
      INDEX 01 00:00:00
FILE "music\bak32.ogg" MP3
  TRACK 32 AUDIO
      INDEX 01 00:00:00
FILE "music\bak33.ogg" MP3
  TRACK 33 AUDIO
      INDEX 01 00:00:00
FILE "music\bak34.ogg" MP3
  TRACK 34 AUDIO
      INDEX 01 00:00:00
FILE "music\bak35.ogg" MP3
  TRACK 35 AUDIO
      INDEX 01 00:00:00
FILE "music\bak36.ogg" MP3
  TRACK 36 AUDIO
      INDEX 01 00:00:00
FILE "music\bak37.ogg" MP3
  TRACK 37 AUDIO
      INDEX 01 00:00:00
FILE "music\bak38.ogg" MP3
  TRACK 38 AUDIO
      INDEX 01 00:00:00
FILE "music\bak39.ogg" MP3
  TRACK 39 AUDIO
      INDEX 01 00:00:00
FILE "music\bak40.ogg" MP3
  TRACK 40 AUDIO
      INDEX 01 00:00:00
FILE "music\bak41.ogg" MP3
  TRACK 41 AUDIO
      INDEX 01 00:00:00
FILE "music\bak42.ogg" MP3
  TRACK 42 AUDIO
      INDEX 01 00:00:00
FILE "music\bak43.ogg" MP3
  TRACK 43 AUDIO
      INDEX 01 00:00:00
FILE "music\bak44.ogg" MP3
  TRACK 44 AUDIO
      INDEX 01 00:00:00
FILE "music\bak45.ogg" MP3
  TRACK 45 AUDIO
      INDEX 01 00:00:00
FILE "music\bak46.ogg" MP3
  TRACK 46 AUDIO
      INDEX 01 00:00:00
FILE "music\bak47.ogg" MP3
  TRACK 47 AUDIO
      INDEX 01 00:00:00
FILE "music\bak48.ogg" MP3
  TRACK 48 AUDIO
      INDEX 01 00:00:00
FILE "music\bak49.ogg" MP3
  TRACK 49 AUDIO
      INDEX 01 00:00:00
FILE "music\bak50.ogg" MP3
  TRACK 50 AUDIO
      INDEX 01 00:00:00
FILE "music\bak51.ogg" MP3
  TRACK 51 AUDIO
      INDEX 01 00:00:00
FILE "music\bak52.ogg" MP3
  TRACK 52 AUDIO
      INDEX 01 00:00:00
FILE "music\bak53.ogg" MP3
  TRACK 53 AUDIO
      INDEX 01 00:00:00
FILE "music\bak54.ogg" MP3
  TRACK 54 AUDIO
      INDEX 01 00:00:00
FILE "music\bak55.ogg" MP3
  TRACK 55 AUDIO
      INDEX 01 00:00:00
FILE "music\bak56.ogg" MP3
  TRACK 56 AUDIO
      INDEX 01 00:00:00
FILE "music\bak57.ogg" MP3
  TRACK 57 AUDIO
      INDEX 01 00:00:00
FILE "music\bak58.ogg" MP3
  TRACK 58 AUDIO
      INDEX 01 00:00:00
FILE "music\bak59.ogg" MP3
  TRACK 59 AUDIO
      INDEX 01 00:00:00
FILE "music\bak60.ogg" MP3
  TRACK 60 AUDIO
      INDEX 01 00:00:00
FILE "music\bak61.ogg" MP3
  TRACK 61 AUDIO
      INDEX 01 00:00:00
FILE "music\bak62.ogg" MP3
  TRACK 62 AUDIO
      INDEX 01 00:00:00
FILE "music\bak63.ogg" MP3
  TRACK 63 AUDIO
      INDEX 01 00:00:00

Dagar
Newbie
 
Posts: 57
Joined: 2008-1-20 @ 17:01

Re: DOSBox ECE (for Windows & Linux)

Postby collector » 2019-11-19 @ 14:23

Pr3tty F1y wrote:I did mount the *.gog image and was able to play the BAK CDDA tracks within Windows 3.11 in DOSbox ECE r4290 using the [MCI] CD Audio driver and the Creative audio software for the SB16. So, the audio tracks will play under DOSbox and the image itself can be mounted and function as a mixed data/audio CD under Windows 3.11.


A bit off topic, but I am curious as to why are you using 3.11 to play BaK? It is a DOS game. The CD included a Windows installer, but the game is still a DOS game.
User avatar
collector
l33t
 
Posts: 4401
Joined: 2003-1-15 @ 10:39

Re: DOSBox ECE (for Windows & Linux)

Postby Pr3tty F1y » 2019-11-19 @ 14:35

collector wrote:A bit off topic, but I am curious as to why are you using 3.11 to play BaK? It is a DOS game. The CD included a Windows installer, but the game is still a DOS game.


I actually wasn't using Windows 3.11 to play BaK. I was using Windows 3.11 to play the audio CD tracks from BaK ;) just to verify that the CDDA was working.

However, from the discussion here, it looks like the mechanism of accessing the audio tracks differs between the krondor.exe executable and Windows 3.11 [MCI] CD Audio which is why the bin/ogg set breaks under the real game but the audio plays from the bin/ogg mounted virtual cd in Windows 3.11.
Pr3tty F1y
Newbie
 
Posts: 12
Joined: 2017-8-19 @ 21:22

Re: DOSBox ECE (for Windows & Linux)

Postby ripsaw8080 » 2019-11-19 @ 15:06

The CD audio play command is based on a time index, not a track number. It's certainly possible that a game can assume certain indexes are the start of a track, but CD player programs are going to query the start time of each track. Many games do query the track start times; in some cases as a "CD check", in other cases because the user is free to play different background music if desired. Beginning play on an index other than a track start is not necessarily a sign of a problem -- games do that for various reasons, so any message from the system about it would be more a note than a warning.
User avatar
ripsaw8080
DOSBox Author
 
Posts: 4434
Joined: 2006-4-25 @ 23:24

Re: DOSBox ECE (for Windows & Linux)

Postby krcroft » 2019-11-19 @ 15:26

Good point ripsaw8080; indeed, some games like Jones in the Fast Lane and Stellar 7 use one (or more) huge audio tracks and ask for playback at known offsets within them (for a known duration) to play their short audio sequences and voice quips.

To take your scenarios into account, perhaps we would see what type of lookup the game is using first, and then only flag the cases where the game's assumption about track doesn't match the cue. Would probably involve a tiny bit of book keeping, but should be doable.
User avatar
krcroft
Member
 
Posts: 428
Joined: 2017-4-29 @ 15:07
Location: Ogden's Retreat

PreviousNext

Return to DOSBox Development

Who is online

Users browsing this forum: Google Feedfetcher and 1 guest