Reply 360 of 930, by root42
- Rank
- l33t
Video with playlist, ~25 minutes of recording.
Video with playlist, ~25 minutes of recording.
FreddyV wrote on 2020-03-10, 14:23:- Big changes in the mixing adjustment code (When the mixing is too slow)
What were the changes?
I'll have the opportunity to test this on the weekend -- same 8MHz 8086 as before. Looking forward to testing 8-bit vs. 16-bit mixing quality at low volumes.
MobyGamer wrote on 2020-03-12, 05:58:What were the changes?
I'll have the opportunity to test this on the weekend -- same 8MHz 8086 as before. Looking forward to testing 8-bit vs. 16-bit mixing quality at low volumes.
Hi,
The list of channels to mix is now done before the main mixing loop, to prepare the number of channels to mix global limitation.
The increase of the minimal volume to mix when the CPU is too slow is also smoother.
Some big changes were needed to do this even if there is almost no difference in the result.
We can clearly hear a difference with high quality headset, and the difference is of course bigger if we decrease the main and /or Global volume.
(Main volume is the volume table amplification, global volume is the volume when playing)
With standard speaker, we need to be really careful to hear something, 8 bit sound is not so bad.
root42 wrote on 2020-03-11, 15:01:Video with playlist, ~25 minutes of recording.
Hi,
The link is incorrect.
FreddyV wrote on 2020-03-13, 14:11:root42 wrote on 2020-03-11, 15:01:Video with playlist, ~25 minutes of recording.
Hi,
The link is incorrect.
Corrected. New link: https://youtu.be/PrP4veCaJ18
The iOS YouTube Studio app is notoriously bad...
Tested modml v16 this weekend. Playing 16-channel .xms on an 8MHz 8086 @ 11KHz 8-bit mixing is really a treat 😁 The modml version has about 40k more room for instruments, so a few songs have more playable instruments in out-of-memory conditions. It also feels like you changed how instruments are jettisoned -- it seems like a largest-first strategy, but I could be wrong.
So far, I didn't see or hear anything odd other than playing one .XM (Inferiority Complex, ICOMPLEX.XM), a series of "u"s starting printing across the top of the screen. Debugging indicator you left in, I'm guessing, for unimplemented effects?
Enabling 16-bit mixing for 8-bit output has a very slight quality increase (less 8-bit quantization noise) with many soft channels, but there is a noticable (at 8MHz, anyway) performance hit, making it suitable only for 4-channel .mods on slow platforms. With 8-bit mixing, I could play as high as 28KHz with a Cnt3 of 0... With 16-bit mixing enabled, I could only play as high as 20 KHz with a Cnt3 of 0. This is expected, nothing is wrong; I just thought you'd like to know the numbers I'm seeing.
So far, I haven't been testing with EMS. I have a hardware EEMS 3.2 board I can put in my 8086, but what does ModM use it for? Samples, pattern data, program code?
"It also feels like you changed how instruments are jettisoned"
What do you mean ?
The 'u' is for debug, during the volume slide up in the column effect.
So, it looks like Mod Master can do 16 Bit almost as fast as GLX in 8 Bit (Because GLX can't go higher than 22KHz) 😀
The EMS is used only for samples. I can reduce more the Light version if I remove the 16Bit mixing. (18Kb More)
FreddyV wrote on 2020-03-17, 00:15:"It also feels like you changed how instruments are jettisoned"
What do you mean ?
Between last time and now, it seems like more instruments are loaded. This is likely due to your optimized internal structures for patterns. I don't recall if you've implemented sample reduction yet.
The EMS is used only for samples. I can reduce more the Light version if I remove the 16Bit mixing. (18Kb More)
No, 16-bit mixing is worth much more than 18KB RAM. I'd leave it in.
FreddyV, can you check why eskefjes.mod sounds incorrectly ?
I've checked this on my 286/20Mhz. Old modplay 2.19b by Mark Cox plays it more properly, however not ideal.
Of course there are a lot of modules which can't be played at all by Modplay even though they are 4 channel mods, your player is definitely superior !
Scamp: 286@20 /4M /CL-GD5422 /CMI8330
Aries: 486DX33 /16M /TGUI9440 /GUS+ALS100+MT32PI
Triton: K6-3+@400 /64M /Rage Pro PCI /ES1370+YMF718
Seattle: P!!!750 /256M /MX440 /Vibra16s+SBLive!
Panther Point: 3470s /8G /GTX750Ti /HDA
ModMaster XT made it onto YouTube (well, not for the first time, but still):
I'm curious on any technical reason why the pan command on .mod isn't supported. I use that a lot
leileilol wrote on 2020-03-20, 00:29:I'm curious on any technical reason why the pan command on .mod isn't supported. I use that a lot
Hi,
It is supposed to be supported, but with the GUS Only.
To support panning, we need to mix all the channels 2 Times, it is present in Mod Master 2.2, Not in Mod Master XT.
Hi,
Here a something new in Mod Master XT: (I Finally had time to put it back)
https://youtu.be/DIzqVvyHtXs
FreddyV
zyga64 wrote on 2020-03-19, 19:42:FreddyV, can you check why eskefjes.mod sounds incorrectly ?
I've checked this on my 286/20Mhz. Old modplay 2.19b by Mark Cox plays it more properly, however not ideal.Of course there are a lot of modules which can't be played at all by Modplay even though they are 4 channel mods, your player is definitely superior !
Hi,
I found the problem.
They is one more pattern in the file that what Mod Master read.
Mod Master was parsing the seguence using the Sequence Length value, and this aditional pattern was after the senquence end.
Mod Play was one of my reference when I started to write Mod MAster in, 1993. I did disassemble it to understand how it use the Sound Blaster.
FreddyV
Release b17 coming in some hours (Need to test and add one last thing)
07/04/2020 Beta 17
- Stop the music if not able to even mix one channel. (To avoid crash)
- Display of the module number during program play corrected. (root42)
- Small volume table adjustment. (2nd_pm.S3M at default volume)
- Corrected a bug in .MOD Loader (zyga64)
- Corrected a .XM File Loader Bug (Module with >14 Channels)
- Adlib Replay is now back, for .S3M and .SAT; .SAT replay may be a little bugged. (Portamento)
- OPL3 detection added.
- Added the Max mixing Channels code, to Limit the number of channels mixed to a Fixed or Automatic Value
This part can be improved and can be nice to test on 286 to play modules with a big nb of channels.
(On 8086, we need to reduce the mixing frequency too much)
On the multi channel view, Channels paused has a Yellow Spot and Channels stopped a Red Spot.
Hi,
Here it is, the Beta 17
I will do a Demonstration using DOSBox of the new feature, and things you may not know about Mod Master XT.
Last minutes Updates:
-> In the Option Menu, you can set the Channels Limit to Disables/Auto and Manual.
Set the Max number of channels in Manual Mode.
- In debug mode(F6), press Up/Down to change the channels displayed
Delete the MODMXT.CFG file before using
There is also a new youtube Video with a 12 Channels module and channels limit set to 8 on the PC1512.
https://www.youtube.com/watch?v=xtlgImJi17Y&t=5s
I also recorded DOPE.MOD with the limit activated.... This is another ultimate goal achieved.
I tried Matze79's LPT DAC the other day -- and it works. But only at ~10KHz. More and you get choppy sound. Is this expected? I guess so, since the 386 is bit banging the LPT port.
Testing Beta 17 right now with the Snark Barker. Video later...
Hi,
It is not really expected to bug at more than 10KHz. I will test one day.
I can test now with DOSBOX anyway 😀
Tested: No problem with DOSBox, so there is no software bug like buffer overflow. Maybe an hardware bug ?
10KHz on a 386 is really low
Thank you FreddyV. Now eskefjes.mod sounds OK !
But I've observed strange behavior. Looks like program is doing some calculation when it loads multichannel module first time after starting.
When first module I'm trying to load is Time... by Fugaz / ByteLand (16 channel s3m module) this module plays correctly and every other s3m after it also plays correctly.
But when I'm trying to load at first another s3m, for example Bad Weather by Well / Obfuscation I cannot play it until I load one of "good" s3m's. No matter which mixing frequency I set for this particular module. I didn't noticed this on b16. So far every 4 channel mod I've tested sounds good, everytime.
This is observed on my 286/20 with CMI8330 soundcard (which is compatible to SB16). Most multichannel mods can be played after reducing mixing frequency to 35kHz. And Amiga .mods I'm listening at 44100 Hz.
If you want me to do any tests on my machine I can do it.
Scamp: 286@20 /4M /CL-GD5422 /CMI8330
Aries: 486DX33 /16M /TGUI9440 /GUS+ALS100+MT32PI
Triton: K6-3+@400 /64M /Rage Pro PCI /ES1370+YMF718
Seattle: P!!!750 /256M /MX440 /Vibra16s+SBLive!
Panther Point: 3470s /8G /GTX750Ti /HDA