DOSBeep - New Experimental Application

AceInfinity

Emeritus, Contributor
Joined
Feb 21, 2012
Posts
1,728
Location
Canada

Here's a new experimental app i've been working on, what this does is it translates string unicode over to a frequency which is played by your system audio.

9d2IT.png
 

Attachments

Last edited by a moderator:
That looks very entertaining :grin1:. What do you plan on using it for?

haha, entertainment for when i'm bored :) that's what instigated the development of such a useless program, however it is cool. kernel32 is responsible for most of the beeps you hear on your system even on boot.
 
I learn something new every day I suppose :cool3:. I like that you have so many interesting projects going on, keeps me wanting more :lolg:.

I also have another project on the go for visual Bit encryption. A visual way of displaying a number of bytes down to an image file created from an original file's binary stream :)

How many instances of that little app can you run at one time????

As many as your computer resources can withstand if you desired :)
 
No I don't mind, actually appreciative that you did that, i'd forgotten, i'm not so used to using attachments here quite yet lol. Thankyou Laxer :)

>>Hmmm... I want to check that out if it's alright with you!

Completely fine if you want, Laxer was kind enough to add a download there, requires .NET 4, but I could reduce this if I recompiled and people request better compatibility, down to maybe 3.0 or 3.5 as well. Kernel32.dll is a GREAT resource. :)

lol, I just realized how geeky this application looks. But it's actually quite simple, (for me anyways), and another idea came to mind. Perhaps I can read Morse Code somehow in this way? I'd need to research it, as I don't know much about Morse Code, but I think it would be possible.
 
Last edited:
Yeah... I downloaded it... It didn't work as I had hoped! Each instance, rather than playing back it's own tones, just interfered with the other open instances...

Oh well... It was fun anyhow!
 
That would be an internal limitation of the kernel32.dll system beep process. I don't think it allows you to make more than one single call to the function that way. I had thought of doing this myself though in the beginning though to for curiosity, so in the beginning I was trying to play chords, and I had several textboxes playing at a single time, on multiple threads, but it seemed to be playing them in sequential order anyways. Perhaps the next thing to try would be parallel processing with CPU cores? Fooling around with affinity. I'd developed a previous application to read the bits to determine which CPU cores to use and how many are available as well, it's basically like a bunch of switches. You may have them turned on in a way something like this 0001, or 1111, or 0101, 1100, etc... This all tells you which cores are being used and which aren't, I would arrange it in a way to be using 0001, 0010, 0100, 1000 for each beep being called from kernel32.dll, and may have better luck!

As threading does have it's limitations as well, I think this would be the best bet, but it means it's a limitation of how many cores are available for your computer to use as well, whether that's 2, 4, 6, or even 8 for example. I have 4 to test with currently.

I had noticed while playing beeps FAST enough, that even at a current speed it would sometimes lag finishing and disposing of the last call to create a beep with a certain frequency, so there must be something in the kernel32.dll which queue's the calls, meaning we may or may not have better luck calling it from different CPU's cores.
 
Last edited:
I have 6... I opened that many instancess...

But wouldn't the call go over the same interrupt??? That would keep the beeps playing in sequential order...
 
I edited my last post with a bit more information. It would be up for testing, or dll investigation to see what actually happens when a call is made to create the beep from the system.
 
Well... You could remove the call to kernel.dll altogether... create a library of the beeps and associate each character with it's beep in the library...

Well, that's how I (worse than noob) thinks it should work! :lol:
 
You could remove the call to kernel.dll altogether

Could, but then I would have to find an alternative beep, which is separate from the built in system beep function.

create a library of the beeps

As a bunch of frequencies in wav/mp3 format for example? Could increase the filesize quite dramatically, and the range of frequencies for beeps would be limited unless I had a way to increase the pitch myself, but then I'd go with only one embedded sound file.

associate each character with it's beep in the library

There's 1000's of unicode characters, in which case my current application doesn't even have to "know" all of which, just how to convert it to a unicode value. To personally do that could take some time...

For the way my application is now anyways, it's much better, however, if adapted i'm sure I can figure something out, haven't had time to play with anything all day though, and it's about 3AM here now, my week as mentioned someplace else on this forum is swamped with things to do lol, I need to be on a sugar high everyday just so that I don't slow down lol. Otherwise i'll never get done the things I need to do in my personal life, letalone even online. I hate it though, can't stand having a lack of time :(
 
:lol: Trust me, I know what you mean! It's 5:30am and I just completed my 3rd Fedora install of the night... I broke the first two installs by messing around with configuration files! :rofl12:
 

Has Sysnative Forums helped you? Please consider donating to help us support the site!

Back
Top