Jump to content
IGNORED

Enabling music & sound FX mixing within Jaguar Doom source.


DEATH

Recommended Posts

Found this on Atari Jaguar Fans, Facebook

 

 

"Some of you might find this interesting. I figured out how to mix music and sound in Jaguar Doom, the results however are quite terrible. The music sounds quite scratchy and choppy but everything else runs fine.

Here is a better example, apologies for the poor camera work. I was trying to film and play at the same time.

It really seems like the id Software team almost had it but ran out of time, IMO."

 

  • Like 7
Link to comment
Share on other sites

Hey thanks for sharing! This was me just messing around with the source. I'll record a better video soon so you can hear the music a bit better.

 

Anyone care to speculate as to what is happening to the music to make it sound the way it does? It's interesting that it works at all!

  • Like 1
Link to comment
Share on other sites

Here you go!

 

https://drive.google.com/file/d/1frvZZWOzosGtsqNyU6tHwOzfKEKWxaUY/view?usp=sharing

 

I've packaged it up where you can mount this folder as the c: drive in Dosbox. I threw all the source code under Jaguar\bin. You can run make to build a new doom.abs but I've left mine in there for now.

 

Now for the fun part, you want to navigate to the 2nd level and press the number 3 on the controller to fire up music and sound. You can actually hear the mixing in the intro and menus though.

 

I will stay up all night if needed to provide whatever support you need!

  • Like 1
Link to comment
Share on other sites

Some additional notes:

 

The main change I made was in "s_sound.c" where it literally has a section commented for /* run the mixing in parallel on the dsp */ . Just compare the original to mine, not a big change really.

 

I setup the number 3 to run "S_StartSong(mus_e1m2, 1);" in "p_user.c"

 

If you try pressing 3 on the first level the game will freeze because it's already still playing the intro. But you can reset it by pressing the "* #" combo on the controller.

 

If you happen to be playing with a Pro Controller, use the shoulder buttons to strafe, 10x more fun that way :)

 

Again you don't even have to start the game to hear the music struggling in the intro.

Edited by BeefMan
  • Like 2
Link to comment
Share on other sites

Tried recording another video. On my phone it sounds fairly loud so youtube must be lowering the volume. Right about the time I fire the shotgun the song loops back to the beginning where it's fairly quiet.

 

Edited by BeefMan
  • Like 2
Link to comment
Share on other sites

Could be completely wrong here (20 minutes of looking)

 

but, in dspbase.gas:

ALT_SAMPLE_P (r21) is used as the sample pointer for the audio to play

 

r21 is set in both music.gas and sfx.gas

 

You'd need to re-code one of them to use another pointer, then modify the replayer in dspbase.gas to read and mix them into the output stream.

 

Code is a bag of snakes having an orgy. Might be easier to rip it all out and replace with u235, hack it into the sample player, and use modules.

  • Like 7
Link to comment
Share on other sites

Could be completely wrong here (20 minutes of looking)

 

but, in dspbase.gas:

ALT_SAMPLE_P (r21) is used as the sample pointer for the audio to play

 

r21 is set in both music.gas and sfx.gas

 

You'd need to re-code one of them to use another pointer, then modify the replayer in dspbase.gas to read and mix them into the output stream.

 

Code is a bag of snakes having an orgy. Might be easier to rip it all out and replace with u235, hack it into the sample player, and use modules.

Thank you for taking a peak! I’m really lost when it comes to assembly but I’ll start reading up.

 

Do you think the soundFx data is basically corrupting the music data because they are sharing the same pointer?

 

It really seems like it might be possible to make this work, or am I being optimistic?

 

If so maybe we should consider setting up a bounty for someone to claim if they were to get it working. Not that it would be me lol.

 

We need a coding hero!

 

cf550d576f2af4f10cee9246a16de88a.jpg

 

 

-Chad

Edited by BeefMan
Link to comment
Share on other sites

No.

 

Quote from John Carmack:

 

 

I actually dug up all my old jaguar development hardware to give to these

guys a year or two ago.
Unfortunately, it turned out that I had lost the C compiler that I had retargeted
to the jaguar RISC engines, so DOOM was no longer buildable.
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...