Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: How could I possibly do this when I can no longer run MSDOS programs? (Read 1365 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

How could I possibly do this when I can no longer run MSDOS programs?

Hello,

I know this is probably a very strange question but I hope someone here might have an answer for me.

These are things that I knew how to code in the old days of QBasic but I'd love to do them even when one can't run QBasic on newer computers.

- 1) Suppose I want to create a digital version of a Hilbert transform kernel. This would be stored on the left channel of a stereo Wav file while the right channel would only include a single unit impulse in such a way that the two channels would be nicely aligned in time and in amplitude. The exact time alignment would mean that if I convolve this stereo Wav file with a mono source, the left and rigth channel of the result would only be Hilbert transforms of each other and no delay would be introduced (i.e. squaring one channel would be nearly identical to the negative of squaring the other channel).

- 2) Suppose I want to make a sine sweep but I want:
a) the instantaneous frequency to rise exponentially and not linearly,
b) the instantaneous amplitude to rise in direct proportion to sqrt(freq) instead of being constant,
c) the initial and final frequency and the sweep length to be given by the user,
d) the initial phase of the sinusoid to be given by the user,
e) to apply a short fade-in and fade-out whose length is given by the user and whose envelope corresponds to sin^2 or to cos^2 (whose argument goes from 0 to pi/2), respectively.

Trouble is, I can immediately expect people telling me how I do it on Linux. But I'm running Windows here.
So what I'd love to have is some console application (or command-line application) where I could just type it all with the PC keyboard, without ever taking my hands off it.
I'm not sure if software like FFMpeg or Sox would make these things possible but these are exactly the kinds of software I would prefer -- i.e. they're both console applications. If these things would be possible via FFMpeg or via Sox or via another similar program that could work on Windows as well, that would help me enormously.

If finding a console application turns out to be difficult for Windows and if I had to use a GUI of some sort, then I would have to know how well or how badly the GUI is accessible purely via the PC keyboard (I'm using a speech synthesizer to read everything so that's why I don't use the mouse).

Any ideas on how I might go about doing these things?

Thanks a lot in advance.

Petr


Re: How could I possibly do this when I can no longer run MSDOS programs?

Reply #1
You probably could do it however you'd do it in DOS in DOSbox or FreeDOS running in qemu.

Re: How could I possibly do this when I can no longer run MSDOS programs?

Reply #2
You should be able to pick up current FreeBASIC, QB64, or SmallBASIC in no time if you know QBasic - some of them are even syntax compatible with QBasic.

Re: How could I possibly do this when I can no longer run MSDOS programs?

Reply #3
[ rutra80 beat me to it while I was typing, and gave a better answer, but I'm posting anyway, because why not? ]

I can't write a line of code to save my life (never tried to learn, that is), but I'm sure there are plenty BASIC interpreters/compilers for modern platforms, and I've even heard some people mantain QBASIC-compatible ones.
Maybe you could try that, if that's what you're looking for.

Re: How could I possibly do this when I can no longer run MSDOS programs?

Reply #4
Lots of signal processing tools run on Windows, including scipy or octave.  Matlab too, but you have to pay for that.  All of these include the hilbert transform.

Re: How could I possibly do this when I can no longer run MSDOS programs?

Reply #5
Not sure if you're aware of it, but to get your feet wet, you can run the Qbasic emulator (and many other old DOS software) available on archive.org (heck, even Nibbles.bas, Gorillas.bas and what-not, if you search for it!)

Of course there is no saving involved, but you can do quick tests and open/run several games and software available on its C: virtual drive. The built-in documentation works as well. Just remember not to press ESC to get rid of the innitial pop up screen, but navigate via tab to the option to close it and you're all set - well, sort of.

https://archive.org/details/msdos_qbasic_megapack
Listen to the music, not the media it's on.
Liberdade, igualdade, fraternidade.

Re: How could I possibly do this when I can no longer run MSDOS programs?

Reply #6
Would you consider coding in Forth?  I can point you at a Forth environment which will run on the WIndows console command line, and provide user interaction via text streams.
It's your privilege to disagree, but that doesn't make you right and me wrong.

Re: How could I possibly do this when I can no longer run MSDOS programs?

Reply #7
Would you consider coding in Forth?  I can point you at a Forth environment which will run on the WIndows console command line, and provide user interaction via text streams.
Okay, go ahead, I have no idea what that is. I may at least try.


Re: How could I possibly do this when I can no longer run MSDOS programs?

Reply #8
I have no idea what that is. I may at least try.
Eek.  Forth is a completely different kind of programming language, using interpreted tokens and stacks.  If you've never come across it before, you might find it brilliant or horrible.  However, you can build just about any kind of text-interface processing, and it will run on the command line, so you could give it a try.

Introductory primer: https://www.forth.com/starting-forth/

I'm a bit perplexed that I don't seem to be able to find the Forth interpreter on my PC.  However, you could try this: http://www.camelforth.com/page.php?7
It's your privilege to disagree, but that doesn't make you right and me wrong.