VOGONS


Reply 420 of 476, by matze79

User metadata
Rank l33t
Rank
l33t

Whats with Preprocessing Mode ?

Preprocess MOD 2 WAV, then play it. Should even work on 4,77Mhz even with complicated MOD files 😀

Last edited by matze79 on 2020-05-08, 13:25. Edited 1 time in total.

https://dosreloaded.de - The German Retro DOS PC Community
https://www.retroianer.de - under constructing since ever

Co2 - for a endless Summer

Reply 421 of 476, by root42

User metadata
Rank Oldbie
Rank
Oldbie
matze79 wrote on 2020-05-08, 12:54:

What Preprocessing Mode ?

Preprocess MOD 2 WAV, then play it. Should even work on 4,77Mhz even with complicated MOD files 😀

Could be with MUNT32 as well. No need for an expensive MT-32 anymore!

YouTube and Bonus
80386DX@25 MHz, 8 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & BlasterBoard, PC MIDI Card + SC55 + MT32, XT CF Lite, OSSC

Reply 422 of 476, by FreddyV

User metadata
Rank Member
Rank
Member
matze79 wrote on 2020-05-08, 12:54:

Whats with Preprocessing Mode ?

Preprocess MOD 2 WAV, then play it. Should even work on 4,77Mhz even with complicated MOD files 😀

It is a Joke, I can replace Mod Master by a .WAV Player and you record the music with anything you want 😀

Reply 423 of 476, by MobyGamer

User metadata
Rank Member
Rank
Member
FreddyV wrote on 2020-05-08, 06:32:

I am motivated to start working on Tandy chip, so I need to free up some code size and it can be an opportunity to convert your .PAS Code to assembly.
I used your pascal code in case you improve Monotone (And to have the best replay possible), but it may not come soon.

MONOTONE is a "dead" product, so I'm in no hurry, really. I probably won't be coding it ever again unless I decide to completely revamp it with instrument definitions, volume envelopes, 3-voice beeper engine, etc.

I located a Tandy RLX in my collection, so I am happy to test Tandy DAC if you get that ready. Tandy DAC programming info is in tspak181.zip and you can do it either 100% using BIOS calls (!) or you can support the chip directly. I recommend supporting the chip directly, as there are two different types of DACs and you have to treat each differently. Also, I seem to recall that playing continuous auto-init DMA using BIOS calls has a click between buffers, but I could be wrong about that.

If DOSBox's Tandy DAC support is broken, let me know and I might be able to find time to code the DAC support in about 2-3 weeks.

Why not a "Tandy HX/EX" version without GUS/OPL2 driver, for Tandy 1000, PC Junior or IBM PC with 256Kb. They could play 100Kb MOD File probably.

I'd be worried about "featuritis" -- no need to go crazy supporting things that don't really have use cases. Anyone running a Tandy 1000 or PCjr these days who would want to play a MOD is going to have 640K or 768K installed. (For that matter, you really should remove the .MON support, it's a dead format!)

Since the player is in TP, it is indeed very possible to use overlays; I use them when debugging if my program won't fit into memory with the IDE loaded. This way you dedicate some RAM to overlay buffer space and then the overlay system will load only the code for file formats called on demand. Supports EMS for the overlay too. I'm very familiar with the overlay system; LMK offline if you are interested in implementing them. It doesn't take that much code change to use overlays. The only drawback is that all overlaid procedures and functions become far calls, but that's a very minor speed penalty.

Reply 424 of 476, by FreddyV

User metadata
Rank Member
Rank
Member

I like the .MON Support, don't touch it 😀

I was more talking about the 3 channels Tandy chip, for Deskmate and Sierra musics.

Tandy DAC support require a quite big change in the way the buffers are calculated, as the Tandy DAC has a fixed buffer size.
I can debug it using the sound blaster, then, simple to move to Tandy.
The Tandy having the DAC can also support sound blaster, but use the Tandy DAC can be fun anyway.

I would like to support the main file formats and audio devices found on 8088 to 80286 and support newer hardware on XT as well (Like I did for GUS).

Reply 425 of 476, by FreddyV

User metadata
Rank Member
Rank
Member
MobyGamer wrote on 2020-05-08, 14:43:

I'd be worried about "featuritis" -- no need to go crazy supporting things that don't really have use cases. Anyone running a Tandy 1000 or PCjr these days who would want to play a MOD is going to have 640K or 768K installed. (For that matter, you really should remove the .MON support, it's a dead format!)

I only need to recompile to do it. so it can be added in Mod Master XT 1.0 as "MODMT.EXE" Mod Master Tiny

My demomaker group was "Useless" 😀

Reply 426 of 476, by MobyGamer

User metadata
Rank Member
Rank
Member
FreddyV wrote on 2020-05-08, 19:01:

I was more talking about the 3 channels Tandy chip, for Deskmate and Sierra musics.

Oh, ok. Well, if you want to use the Tandy 3-voice chip for loud 4-bit PCM output without any PWM carrier whine, I have code for that too. Simple XLAT for translating an 8-bit PCM value to 4-bit volume channel output.

I have Adlib 6-bit PCM output code too 😉

Tandy DAC support require a quite big change in the way the buffers are calculated, as the Tandy DAC has a fixed buffer size.

I didn't see this in any of the tech docs, are you sure?

Reply 427 of 476, by zyga64

User metadata
Rank Member
Rank
Member
FreddyV wrote on 2020-05-07, 19:07:
zyga64 wrote on 2020-05-07, 15:37:

I've tried on both 286/20 and 486dx/33 and on DosBox. Same results.

I did not ask for the bug but to know what you think about the performance.
Is it correct on a 286 ? I never tested….

Yes. Performance is perfectly fine on 286/20. I can play everything in good quality. On SB16 clone (CMI8330), all 4channel mods at 44.1 KHz.
Most 24 channel S3Ms are good at 30-35KHz.
Therefore your player is the best module player for 286 !

1) VLSI SCAMP /286@20 /4MB /TVGA9000C /CMI8330
2) i420EX /486DX33 /16MB /Trio64V+ /AZT2316
3) i430HX /P233MMX /64MB /VirgeDX+3Dfx /Vibra16s
4) i440BX /P II 400 /256MB /FX5500/AWE64
5) i865G /E5800 /2GB /Ti4200 /YMF724

Reply 428 of 476, by FreddyV

User metadata
Rank Member
Rank
Member
MobyGamer wrote on 2020-05-08, 20:18:

Tandy DAC support require a quite big change in the way the buffers are calculated, as the Tandy DAC has a fixed buffer size.

I didn't see this in any of the tech docs, are you sure?

Yes, the Tandy DAC send an IRQ after 2Kb read, there is no register for the Buffer size as far as I checked.
To be able to manage this, I will need to do like the Trition (FT2/Demos) code is doing: Read the DMA @ in the DMA Controller to check "where" is the DAC Replay.

That is why it is not done so far, it require quite some change but at the end will be more flexible.

Fix the DMA Buffer total size to 4Kb, and mix as many 1/50th of Sec buffer as needed: Need variable buffers code and move the last buffer part going above the 4Kb at the begining.
Therefore, it will allow a dynamic number of DMA Buffer regarding the memory we allocate for them.
There is one Tandy DAC Mod Player with source existing (Tantrack) The code is not simple to read..

Last edited by FreddyV on 2020-05-09, 16:40. Edited 1 time in total.

Reply 429 of 476, by FreddyV

User metadata
Rank Member
Rank
Member
zyga64 wrote on 2020-05-09, 10:31:

Yes. Performance is perfectly fine on 286/20. I can play everything in good quality. On SB16 clone (CMI8330), all 4channel mods at 44.1 KHz.
Most 24 channel S3Ms are good at 30-35KHz.
Therefore your player is the best module player for 286 !

Nice 😀
44KHz 16Bit I suppose.
It is funny because I heard about this chip 2 weeks ago only, a friend purchased one for cheap without knowing it was SB16 compatible.

If you block the number of channels mixed to 20, you may be able to play them all at 40KHz and ear almost no difference.

Reply 430 of 476, by DevanWolf

User metadata
Rank Newbie
Rank
Newbie
FreddyV wrote on 2020-05-04, 20:57:
Hi, […]
Show full quote
DevanWolf wrote on 2020-05-02, 23:14:

Are you also going to support the special AMM file format found in PlatinumPlay?
Refer to CONV.EXE and AMM.DOC in: http://oocities.org/soho/2994/pp32src.zip

Hi,

Thanks for your comment.

Strange, I never heard about this player before.

This is a MOD/S3M Player internal format, there is surely no music originally made for it, as there is no tracker.

Why should I support a format used by no tracker ?

Like I said use CONV.EXE to generate a AMM from a choice of MOD or S3M.

Reply 431 of 476, by FreddyV

User metadata
Rank Member
Rank
Member
DevanWolf wrote on 2020-05-09, 21:15:

Like I said use CONV.EXE to generate a AMM from a choice of MOD or S3M.

I saw, but mod master support natively MOD and S3M, this is a player format, not a tracker formet.

Reply 432 of 476, by FreddyV

User metadata
Rank Member
Rank
Member

Hi, small progress screenshot:

alloyrun2.png
Filename
alloyrun2.png
File size
86.6 KiB
Views
303 views
File license
GPL-2.0-or-later
imf.png
Filename
imf.png
File size
14.25 KiB
Views
303 views
File license
GPL-2.0-or-later

Reply 436 of 476, by FreddyV

User metadata
Rank Member
Rank
Member

Hi,

Mod Master b19 New file formats demo.

I think I did quite more that what root42 Asked 😀

https://youtu.be/xAyf9O49S-o

Sometimes a file bug depending on what we played before, probably due to an adlib init problem.
I did not test on real hardware so far.

Reply 437 of 476, by root42

User metadata
Rank Oldbie
Rank
Oldbie

love it. great! i hope this will lead to a resurgence in adlib music! 😀

YouTube and Bonus
80386DX@25 MHz, 8 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & BlasterBoard, PC MIDI Card + SC55 + MT32, XT CF Lite, OSSC

Reply 439 of 476, by FreddyV

User metadata
Rank Member
Rank
Member

Here is how it looks like now with .DRO, IMF and RAW Files

I capture the command sent to the Adlib card to display the bars, Key On/Off

MODM.png
Filename
MODM.png
File size
9.15 KiB
Views
99 views
File license
Public domain