Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Quasar

MBF Ported to Windows

Recommended Posts

I will soon release a Windows port of MBF, called WinMBF. Here's a screenshot:

http://eternity.mancubus.net/pics/winmbf.jpg

It took approximately 3 hours to port it. It uses Eternity's system code and is thus SDL-based. I'd release it now but there are still a few things to do like adding fullscreen support. I'll announce in this temporarily sticky thread again when it is released!

Share this post


Link to post

What's missing from PrBoom/Eternity that prevents them from being fully compatible (other than the press release support)?

Share this post


Link to post

It's a pretty good port. There's a few things that bother me though:

1. I can't seem to set "use" to mouse button 2, and mouse button 2 make me move forward even though it is not set to "move forward."

2. I only hear music in my left speaker.

Why is mouse button 2 called "junk?"

Share this post


Link to post

1. and 3. There might be issues with the mouse code. I didn't test it much. I'm not sure MBF allowed rebinding of the mouse buttons to begin with though. If not, I'm not adding it.

2. Checked your desktop pan setting? It doesn't do anything special as far as setting that goes, and the sound has always sounded centered to me.

Share this post


Link to post

seems to work great, played a couple Iwad maps in fullscreen.
now to try some TASMBF demos.... :)

Share this post


Link to post

Add -fullscreen to the command line.

Regarding remapping the mouse buttons, you can do this to a limited degree (see the cfg file), but don't have complete freedom. This was also the case in the original game, and still applies for prboom. It annoyed me for a little while, but actually forced me to adopt what I now realize is a far better control set-up than the one I was using.

Share this post


Link to post
Quasar said:

I'm not sure MBF allowed rebinding of the mouse buttons to begin with though.

huh? even vanilla lets you rebind the mouse buttons...

Share this post


Link to post

Yes but you can't do just anything with the mouse; only certain things. If I'm not mistaken Boom and its childern retain more or less Doom's mouse setup options. The keyboard setup for these engines is somewhat more liberal than Doom's, though.

Share this post


Link to post

Most of us will not have encountered this, but full screen mode is broken on computers with non-4-3 lcd panels, for example 1280x1024 is 5:4 not 4:3. I know it is possible to overcome this, since DosBox (a DOS emulator that I use for running the original Wolfenstien 3D) is also SDL based and has a "letterboxing" mode.

Can any SDL hackers out there tell me roughly how difficult it is to add that mode to SDL based programs that don't already have it?

Share this post


Link to post

I'm sure SDL supports creating fullscreen windows of that resolution, but that won't help WinMBF. It only supports 640x400 as a hires mode and to support more modes, it would need Eternity's generalized resolution code.

But I created WinMBF to be and to remain a pure port of MBF to Windows, so I don't intend to add anything to it, especially not hires modes. We just went through the pains of adding that to Eternity and I'm not gonna turn around and do it again :)

If somebody else wants to take the source and make their own Ultra-MBF out of it, that's great, but I'd question why they can't just use Eternity, or at least prboom.

Share this post


Link to post

Well, this arose because I have wanted to see a "pure" MBF port to Windows for years, but always had too many other projects on the go and no experience of graphics or sound I/O programming. I always wanted to roll my own MBF based DOOM port purely to have fun with engine functionality. As long as it runs properly on Windows in full-screen mode I couldn't give a rats ass about hi-res graphics, OpenGL, MP3, OGG or whatever. So it was very discouraging to think of having to jump through hoops just to get pictures on the screen and sound in the speakers.

I don't see "letterboxing in full-screen mode" as an "MBF purity" issue, I see it as a "hardware compatibility" issue; in fact, that is how I regard screen resolution as a whole; it is nothing to do with the "purity" of an engine at all. The screen and sound should ideally be a "black box" that the engine writes to without any knowledge of what goes on inside (this is what the EDGE team's "EPI" is supposed to eventually be).

Quite frankly, I am surprised that SDL does not automatically letterbox programs that insist on a 4:3 aspect ratio wherever the hardware cannot do it. I'd quite happily accept 640x400, but not with a copy of a quarter of the screen appearing in real-time below the "real" screenful.

As to "why MBF": well, it is the highest functionality port that is still a "pure" DOOM engine and thus I really ought to start from there. No disrespect, but Eternity, EDGE, ZDoom and, A L I E N help us, Vavoom (washes mouth out with soap :-) :-) ) are no longer pure DOOM ports. As for PrBoom, that is not 100.00% MBF-compliant; no DOOM press-release beta support, no config-in-a-pwad. In fact for me, the big kicker is that nobody seems to know exactly what is missing from PrBoom -- "most, if not all MBF features" is not exactly statment that inspires confidence, is it?

Anyway, don't worry about it, guys, I am not asking for Quasar to do it, just for a few pointers in the right direction from anyone who knows SDL. I should be able to accomplish at least this much by sheer hard work if I know where to look :-)

Share this post


Link to post

In a fundamental way Eternity & PrBoom are much purer than MBF... they can pretty much play the game like Doom can. Boom and MBF are "pure" in relation to the development paths taken by other engines that weren't as careful keeping a degree of doom-like functionality, but basically the purpose of Boom and MBF is mod-like... they are running on the same OS Doom runs, even.

PrBoom can probably do anything MBF can, except run the Beta, and the same goes with Eternity, if i'm not mistaken.

That said, I don't see anything wrong in adding a compatibility for certain types of hardware when it applies; from a functional perspective it's sometimes necessary to resort to hacks to port something as closely as possible.

Share this post


Link to post

Supporting a letter boxed mode requires quite a bit of work, actually -- it's just more than I have time to do. Eternity's delayed due to a stupid bug and CQIII hasn't been touched in ages, so I just cannot actively maintain this :/

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  
×